X-Git-Url: https://oss.titaniummirror.com/gitweb?p=msp430-binutils.git;a=blobdiff_plain;f=include%2Felf%2Farm.h;h=61328c3c8695b70af4fb9dd37cd81a9617b95b79;hp=e701883387863a19cc6ad4e46dd5301cb07ce1e4;hb=88750007d7869f178f0ba528f41efd3b74c424cf;hpb=6df9443a374e2b81278c61b8afc0a1eef7db280b diff --git a/include/elf/arm.h b/include/elf/arm.h index e701883..61328c3 100644 --- a/include/elf/arm.h +++ b/include/elf/arm.h @@ -1,5 +1,5 @@ /* 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. This file is part of BFD, the Binary File Descriptor library. @@ -41,9 +41,9 @@ #define PT_ARM_EXIDX (PT_LOPROC + 1) /* Other constants defined in the ARM ELF spec. version B-01. */ -#define EF_ARM_SYMSARESORTED 0x04 /* NB conflicts with EF_INTERWORK */ -#define EF_ARM_DYNSYMSUSESEGIDX 0x08 /* NB conflicts with EF_APCS26 */ -#define EF_ARM_MAPSYMSFIRST 0x10 /* NB conflicts with EF_APCS_FLOAT */ +#define EF_ARM_SYMSARESORTED 0x04 /* NB conflicts with EF_INTERWORK. */ +#define EF_ARM_DYNSYMSUSESEGIDX 0x08 /* NB conflicts with EF_APCS26. */ +#define EF_ARM_MAPSYMSFIRST 0x10 /* NB conflicts with EF_APCS_FLOAT. */ #define EF_ARM_EABIMASK 0xFF000000 /* Constants defined in AAELF. */ @@ -71,9 +71,11 @@ #define STT_ARM_16BIT STT_HIPROC /* A Thumb label. */ /* Additional section types. */ -#define SHT_ARM_EXIDX 0x70000001 /* Section holds ARM unwind info. */ -#define SHT_ARM_PREEMPTMAP 0x70000002 /* Section pre-emption details. */ -#define SHT_ARM_ATTRIBUTES 0x70000003 /* Section holds attributes. */ +#define SHT_ARM_EXIDX 0x70000001 /* Section holds ARM unwind info. */ +#define SHT_ARM_PREEMPTMAP 0x70000002 /* Section pre-emption details. */ +#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. */ #define SHF_ENTRYSECT 0x10000000 /* Section contains an entry point. */ @@ -85,17 +87,23 @@ #define PF_ARM_ABS 0x40000000 /* Segment must be loaded at its base address. */ /* Values for the Tag_CPU_arch EABI attribute. */ -#define TAG_CPU_ARCH_PRE_V4 0 -#define TAG_CPU_ARCH_V4 1 -#define TAG_CPU_ARCH_V4T 2 -#define TAG_CPU_ARCH_V5T 3 -#define TAG_CPU_ARCH_V5TE 4 -#define TAG_CPU_ARCH_V5TEJ 5 -#define TAG_CPU_ARCH_V6 6 -#define TAG_CPU_ARCH_V6KZ 7 -#define TAG_CPU_ARCH_V6T2 8 -#define TAG_CPU_ARCH_V6K 9 -#define TAG_CPU_ARCH_V7 10 +#define TAG_CPU_ARCH_PRE_V4 0 +#define TAG_CPU_ARCH_V4 1 +#define TAG_CPU_ARCH_V4T 2 +#define TAG_CPU_ARCH_V5T 3 +#define TAG_CPU_ARCH_V5TE 4 +#define TAG_CPU_ARCH_V5TEJ 5 +#define TAG_CPU_ARCH_V6 6 +#define TAG_CPU_ARCH_V6KZ 7 +#define TAG_CPU_ARCH_V6T2 8 +#define TAG_CPU_ARCH_V6K 9 +#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. */ @@ -234,7 +242,8 @@ START_RELOC_NUMBERS (elf_arm_reloc_type) 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_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 /* EABI object attributes. */ @@ -250,7 +259,7 @@ enum Tag_THUMB_ISA_use, Tag_VFP_arch, Tag_WMMX_arch, - Tag_NEON_arch, + Tag_Advanced_SIMD_arch, Tag_PCS_config, Tag_ABI_PCS_R9_use, Tag_ABI_PCS_RW_data, @@ -270,7 +279,21 @@ enum Tag_ABI_WMMX_args, Tag_ABI_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