aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorTerry Guo <terry.guo@arm.com>2014-12-25 09:50:48 +0800
committerTerry Guo <terry.guo@arm.com>2014-12-25 09:55:03 +0800
commit5c294fee9abb6bb259519d9cf164c34b81b83312 (patch)
tree93e78a59109412656e4a0dcb3e37bba1c09dd0f6 /include
parentd274fbe8a43db3164b133772b2d0f557052561b5 (diff)
downloadfsf-binutils-gdb-5c294fee9abb6bb259519d9cf164c34b81b83312.zip
fsf-binutils-gdb-5c294fee9abb6bb259519d9cf164c34b81b83312.tar.gz
fsf-binutils-gdb-5c294fee9abb6bb259519d9cf164c34b81b83312.tar.bz2
ARM: Add support for value 3 of Tag_ABI_VFP_args attribute
*** bfd/ChangeLog *** 2014-12-25 Thomas Preud'homme <thomas.preudhomme@arm.com> * elf32-arm.c (elf32_arm_merge_eabi_attributes): Handle new Tag_ABI_VFP_args value and replace hardcoded values by enum values. (elf32_arm_post_process_headers): Set e_flags in ELF header as hard float only when Tag_ABI_VFP_args is 1, using new enum value AEABI_VFP_args_vfp to check that. *** binutils/ChangeLog *** 2014-12-25 Thomas Preud'homme <thomas.preudhomme@arm.com> * readelf.c (arm_attr_tag_ABI_VFP_args): Add "compatible". *** gdb/ChangeLog *** 2014-12-25 Thomas Preud'homme <thomas.preudhomme@arm.com> * arm-tdep.c (arm_gdbarch_init): Explicitely handle value 3 of Tag_ABI_VFP_args. Also replace hardcoded values by enum values in the switch handling the different values of Tag_ABI_VFP_args. *** gold/ChangeLog *** 2014-12-25 Thomas Preud'homme <thomas.preudhomme@arm.com> * arm.cc (Target_arm::do_adjust_elf_header): Set e_flags in ELF header as hard float only when Tag_ABI_VFP_args is 1, using new enum value AEABI_VFP_args_vfp to check that. (Target_arm::merge_object_attributes): Handle new Tag_ABI_VFP_args value and replace hardcoded values by enum values. *** include/elf/ChangeLog *** 2014-12-25 Thomas Preud'homme <thomas.preudhomme@arm.com> * arm.h: New AEABI_FP_number_model_* and AEABI_VFP_args_* enum values. *** ld/testsuite/ChangeLog *** 2014-12-25 Thomas Preud'homme <thomas.preudhomme@arm.com> * ld-arm/attr-merge-2a.s: Add Tag_ABI_VFP_args. * ld-arm/attr-merge-2b.s: Likewise. * ld-arm/attr-merge-2.attr: Likewise. * ld-arm/attr-merge-4a.s: Add Tag_ABI_FP_number_model and Tag_ABI_VFP_args. * ld-arm/attr-merge-4b.s: Likewise. * ld-arm/attr-merge-4.attr: Likewise. * ld-arm/attr-merge-6a.s: Likewise. * ld-arm/attr-merge-6b.s: Likewise. * ld-arm/attr-merge-6.attr: Add Tag_ABI_FP_number_model.
Diffstat (limited to 'include')
-rw-r--r--include/elf/ChangeLog4
-rw-r--r--include/elf/arm.h17
2 files changed, 21 insertions, 0 deletions
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog
index f4f7107..942923d 100644
--- a/include/elf/ChangeLog
+++ b/include/elf/ChangeLog
@@ -1,3 +1,7 @@
+2014-12-25 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ * arm.h: New AEABI_FP_number_model_* and AEABI_VFP_args_* enum values.
+
2014-12-06 Eric Botcazou <ebotcazou@adacore.com>
* common.h (EM_VISIUM): Define.
diff --git a/include/elf/arm.h b/include/elf/arm.h
index 34afdfd..e85536b 100644
--- a/include/elf/arm.h
+++ b/include/elf/arm.h
@@ -319,6 +319,23 @@ enum
Tag_VFP_HP_extension = Tag_FP_HP_extension
};
+/* Values for Tag_ABI_FP_number_model. */
+enum
+{
+ AEABI_FP_number_model_none = 0,
+ AEABI_FP_number_model_ieee754_number = 1,
+ AEABI_FP_number_model_rtabi = 2,
+ AEABI_FP_number_model_ieee754_all = 3
+};
+
+/* Values for Tag_ABI_VFP_args. */
+enum
+{
+ AEABI_VFP_args_base = 0,
+ AEABI_VFP_args_vfp = 1,
+ AEABI_VFP_args_toolchain = 2,
+ AEABI_VFP_args_compatible = 3
+};
#endif
/* The name of the note section used to identify arm variants. */