OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [gdb-6.8/] [include/] [elf/] [arm.h] - Diff between revs 157 and 225

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 157 Rev 225
Line 1... Line 1...
/* ARM ELF support for BFD.
/* ARM ELF support for BFD.
   Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004
   Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009
   Free Software Foundation, Inc.
   Free Software Foundation, Inc.
 
 
   This file is part of BFD, the Binary File Descriptor library.
   This file is part of BFD, the Binary File Descriptor library.
 
 
   This program is free software; you can redistribute it and/or modify
   This program is free software; you can redistribute it and/or modify
Line 39... Line 39...
 
 
/* Frame unwind information */
/* Frame unwind information */
#define PT_ARM_EXIDX (PT_LOPROC + 1)
#define PT_ARM_EXIDX (PT_LOPROC + 1)
 
 
/* Other constants defined in the ARM ELF spec. version B-01.  */
/* Other constants defined in the ARM ELF spec. version B-01.  */
#define EF_ARM_SYMSARESORTED 0x04       /* NB conflicts with EF_INTERWORK */
#define EF_ARM_SYMSARESORTED 0x04       /* NB conflicts with EF_INTERWORK.  */
#define EF_ARM_DYNSYMSUSESEGIDX 0x08    /* NB conflicts with EF_APCS26 */
#define EF_ARM_DYNSYMSUSESEGIDX 0x08    /* NB conflicts with EF_APCS26.  */
#define EF_ARM_MAPSYMSFIRST 0x10        /* NB conflicts with EF_APCS_FLOAT */
#define EF_ARM_MAPSYMSFIRST 0x10        /* NB conflicts with EF_APCS_FLOAT.  */
#define EF_ARM_EABIMASK      0xFF000000
#define EF_ARM_EABIMASK      0xFF000000
 
 
/* Constants defined in AAELF.  */
/* Constants defined in AAELF.  */
#define EF_ARM_BE8          0x00800000
#define EF_ARM_BE8          0x00800000
#define EF_ARM_LE8          0x00400000
#define EF_ARM_LE8          0x00400000
Line 72... Line 72...
 
 
/* Additional section types.  */
/* Additional section types.  */
#define SHT_ARM_EXIDX      0x70000001   /* Section holds ARM unwind info.  */
#define SHT_ARM_EXIDX      0x70000001   /* Section holds ARM unwind info.  */
#define SHT_ARM_PREEMPTMAP 0x70000002   /* Section pre-emption details.  */
#define SHT_ARM_PREEMPTMAP 0x70000002   /* Section pre-emption details.  */
#define SHT_ARM_ATTRIBUTES 0x70000003   /* Section holds attributes.  */
#define SHT_ARM_ATTRIBUTES 0x70000003   /* Section holds attributes.  */
 
#define SHT_ARM_DEBUGOVERLAY   0x70000004       /* Section holds overlay debug info.  */
 
#define SHT_ARM_OVERLAYSECTION 0x70000005       /* Section holds GDB and overlay integration info.  */
 
 
/* ARM-specific values for sh_flags.  */
/* ARM-specific values for sh_flags.  */
#define SHF_ENTRYSECT      0x10000000   /* Section contains an entry point.  */
#define SHF_ENTRYSECT      0x10000000   /* Section contains an entry point.  */
#define SHF_COMDEF         0x80000000   /* Section may be multiply defined in the input to a link step.  */
#define SHF_COMDEF         0x80000000   /* Section may be multiply defined in the input to a link step.  */
 
 
Line 94... Line 96...
#define TAG_CPU_ARCH_V6                6
#define TAG_CPU_ARCH_V6                6
#define TAG_CPU_ARCH_V6KZ      7
#define TAG_CPU_ARCH_V6KZ      7
#define TAG_CPU_ARCH_V6T2      8
#define TAG_CPU_ARCH_V6T2      8
#define TAG_CPU_ARCH_V6K       9
#define TAG_CPU_ARCH_V6K       9
#define TAG_CPU_ARCH_V7                10
#define TAG_CPU_ARCH_V7                10
 
#define TAG_CPU_ARCH_V6_M       11
 
#define TAG_CPU_ARCH_V6S_M      12
 
#define MAX_TAG_CPU_ARCH        12
 
/* Pseudo-architecture to allow objects to be compatible with the subset of
 
   armv4t and armv6-m.  This value should never be stored in object files.  */
 
#define TAG_CPU_ARCH_V4T_PLUS_V6_M (MAX_TAG_CPU_ARCH + 1)
 
 
/* Relocation types.  */
/* Relocation types.  */
 
 
START_RELOC_NUMBERS (elf_arm_reloc_type)
START_RELOC_NUMBERS (elf_arm_reloc_type)
/* AAELF official names and numbers.  */
/* AAELF official names and numbers.  */
Line 232... Line 240...
     GNU usage.  */
     GNU usage.  */
  FAKE_RELOC (R_ARM_GOTPC,              R_ARM_BASE_PREL)  /* 32 bit PC relative offset to GOT.  */
  FAKE_RELOC (R_ARM_GOTPC,              R_ARM_BASE_PREL)  /* 32 bit PC relative offset to GOT.  */
  FAKE_RELOC (R_ARM_GOT32,              R_ARM_GOT_BREL)   /* 32 bit GOT entry.  */
  FAKE_RELOC (R_ARM_GOT32,              R_ARM_GOT_BREL)   /* 32 bit GOT entry.  */
  FAKE_RELOC (R_ARM_ROSEGREL32,         R_ARM_SBREL31)    /* ??? */
  FAKE_RELOC (R_ARM_ROSEGREL32,         R_ARM_SBREL31)    /* ??? */
  FAKE_RELOC (R_ARM_AMP_VCALL9,         R_ARM_BREL_ADJ)   /* Thumb-something.  Not used.  */
  FAKE_RELOC (R_ARM_AMP_VCALL9,         R_ARM_BREL_ADJ)   /* Thumb-something.  Not used.  */
END_RELOC_NUMBERS (R_ARM_max)
 
 
END_RELOC_NUMBERS (R_ARM_max = 256)
 
 
#ifdef BFD_ARCH_SIZE
#ifdef BFD_ARCH_SIZE
/* EABI object attributes.  */
/* EABI object attributes.  */
 
 
enum
enum
Line 248... Line 257...
  Tag_CPU_arch_profile,
  Tag_CPU_arch_profile,
  Tag_ARM_ISA_use,
  Tag_ARM_ISA_use,
  Tag_THUMB_ISA_use,
  Tag_THUMB_ISA_use,
  Tag_VFP_arch,
  Tag_VFP_arch,
  Tag_WMMX_arch,
  Tag_WMMX_arch,
  Tag_NEON_arch,
  Tag_Advanced_SIMD_arch,
  Tag_PCS_config,
  Tag_PCS_config,
  Tag_ABI_PCS_R9_use,
  Tag_ABI_PCS_R9_use,
  Tag_ABI_PCS_RW_data,
  Tag_ABI_PCS_RW_data,
  Tag_ABI_PCS_RO_data,
  Tag_ABI_PCS_RO_data,
  Tag_ABI_PCS_GOT_use,
  Tag_ABI_PCS_GOT_use,
Line 268... Line 277...
  Tag_ABI_HardFP_use,
  Tag_ABI_HardFP_use,
  Tag_ABI_VFP_args,
  Tag_ABI_VFP_args,
  Tag_ABI_WMMX_args,
  Tag_ABI_WMMX_args,
  Tag_ABI_optimization_goals,
  Tag_ABI_optimization_goals,
  Tag_ABI_FP_optimization_goals,
  Tag_ABI_FP_optimization_goals,
  /* 32 is generic.  */
  /* 32 is generic (Tag_compatibility).  */
 
  Tag_undefined33 = 33,
 
  Tag_CPU_unaligned_access,
 
  Tag_undefined35,
 
  Tag_VFP_HP_extension,
 
  Tag_undefined37,
 
  Tag_ABI_FP_16bit_format,
 
  Tag_undefined39,
 
  Tag_nodefaults = 64,
 
  Tag_also_compatible_with,
 
  Tag_T2EE_use,
 
  Tag_conformance,
 
  Tag_Virtualization_use,
 
  Tag_undefined69,
 
  Tag_MPextension_use
};
};
 
 
#endif
#endif
 
 
/* The name of the note section used to identify arm variants.  */
/* The name of the note section used to identify arm variants.  */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.