aboutsummaryrefslogtreecommitdiff
path: root/include/elf
diff options
context:
space:
mode:
Diffstat (limited to 'include/elf')
-rw-r--r--include/elf/msp430.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/include/elf/msp430.h b/include/elf/msp430.h
index e060804..ce2cf5b 100644
--- a/include/elf/msp430.h
+++ b/include/elf/msp430.h
@@ -58,6 +58,47 @@
#define OFBA_MSPABI_Tag_ISA 4
#define OFBA_MSPABI_Tag_Code_Model 6
#define OFBA_MSPABI_Tag_Data_Model 8
+#define OFBA_MSPABI_Tag_enum_size 10 /* Unused by GNU. */
+
+/* GNU Object attribute tags. */
+enum
+{
+ /* 0-3 are generic. */
+
+ /* Define a GNU attribute for keeping track of whether the compiler has
+ generated code assuming that the upper region could be in use.
+ Added by the assembler based on the -mdata-region option.
+ This tag is ignored unless the large memory model is in use. */
+ Tag_GNU_MSP430_Data_Region = 4,
+};
+
+/* Object attribute values. */
+enum
+{
+ /* Values defined for OFBA_MSPABI_Tag_ISA. */
+ OFBA_MSPABI_Val_ISA_NONE = 0,
+ OFBA_MSPABI_Val_ISA_MSP430 = 1,
+ OFBA_MSPABI_Val_ISA_MSP430X = 2,
+
+ /* Values defined for OFBA_MSPABI_Tag_Code_Model. */
+ OFBA_MSPABI_Val_Code_Model_NONE = 0,
+ OFBA_MSPABI_Val_Code_Model_SMALL = 1,
+ OFBA_MSPABI_Val_Code_Model_LARGE = 2,
+
+ /* Values defined for OFBA_MSPABI_Tag_Data_Model. */
+ OFBA_MSPABI_Val_Data_Model_NONE = 0,
+ OFBA_MSPABI_Val_Data_Model_SMALL = 1,
+ OFBA_MSPABI_Val_Data_Model_LARGE = 2,
+ OFBA_MSPABI_Val_Data_Model_RESTRICTED = 3, /* Unused by GNU. */
+
+ /* Values defined for Tag_GNU_MSP430_Data_Region. */
+ Val_GNU_MSP430_Data_Region_NONE = 0,
+ /* The default data region. Assumes all data is below address 0x10000. */
+ Val_GNU_MSP430_Data_Region_Lower = 1,
+ /* Set if -mdata-region={none,upper,either}. Assumes
+ data could be placed at or above address 0x10000. */
+ Val_GNU_MSP430_Data_Region_Any = 2,
+};
/* Relocations. */
START_RELOC_NUMBERS (elf_msp430_reloc_type)