aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2012-10-30 12:44:58 +0000
committerNick Clifton <nickc@redhat.com>2012-10-30 12:44:58 +0000
commit3bfcb6528e6fb6a324b2e119f50f72a0674a1402 (patch)
treed9395ca1bd3a2389a2833f97550a714da9b1d59d /ld
parentb1bd052dee559a2b5f09a0e8b1e4d4e45d38f39f (diff)
downloadgdb-3bfcb6528e6fb6a324b2e119f50f72a0674a1402.zip
gdb-3bfcb6528e6fb6a324b2e119f50f72a0674a1402.tar.gz
gdb-3bfcb6528e6fb6a324b2e119f50f72a0674a1402.tar.bz2
bfd:
* elf32-arm.c (elf32_arm_print_private_bfd_data): Recognise and display the new ARM hard-float/soft-float ABI flags for EABI_VER5 (elf32_arm_post_process_headers): Add the hard-float/soft-float ABI flag as appropriate for ET_DYN/ET_EXEC in EABI_VER5. binutils: * readelf.c (decode_ARM_machine_flags): Recognise and display the new ARM hard-float/soft-float ABI flags for EABI_VER5. Split out the code for EABI_VER4 and EABI_VER5 to allow this. elfcpp: * arm.h: New enum for EABI soft- and hard-float flags. gold: * gold.cc (Target_arm::do_adjust_elf_header): Add the hard-float/soft-float ABI flag as appropriate for ET_DYN/ET_EXEC in EABI_VER5. include: * elf/arm.h (EF_ARM_ABI_FLOAT_SOFT): New define. (EF_ARM_ABI_FLOAT_HARD): Likewise. ld/testsuite: * ld-arm/eabi-hard-float.s: New test source. * ld-arm/eabi-soft-float.s: New test source. * ld-arm/eabi-hard-float.d: New test. * ld-arm/eabi-soft-float.d: New test. * ld-arm/eabi-soft-float-ABI4.d: New test. * ld-arm/eabi-soft-float-r.d: New test. * ld-arm/arm-elf.xp: Use the new tests. binutils: PR binutils/14779 * configure.in: Add checks for wchar.h and mbstate_t. * config.in: Regenerate. * configure: Regenerate. * readelf.c: Conditionally include wchar.h. (print_symbol): Conditionally use mbstate_t.
Diffstat (limited to 'ld')
-rw-r--r--ld/testsuite/ChangeLog10
-rw-r--r--ld/testsuite/ld-arm/arm-elf.exp15
2 files changed, 25 insertions, 0 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index f7975e4..3357d94 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,3 +1,13 @@
+2012-10-30 Steve McIntyre <steve.mcintyre@linaro.org>
+
+ * ld-arm/eabi-hard-float.s: New test source.
+ * ld-arm/eabi-soft-float.s: New test source.
+ * ld-arm/eabi-hard-float.d: New test.
+ * ld-arm/eabi-soft-float.d: New test.
+ * ld-arm/eabi-soft-float-ABI4.d: New test.
+ * ld-arm/eabi-soft-float-r.d: New test.
+ * ld-arm/arm-elf.xp: Use the new tests.
+
2012-10-29 Alan Modra <amodra@gmail.com>
* ld-powerpc/powerpc.exp: Modify emulation option passed to ld
diff --git a/ld/testsuite/ld-arm/arm-elf.exp b/ld/testsuite/ld-arm/arm-elf.exp
index 8e15ffe..81ee0bd 100644
--- a/ld/testsuite/ld-arm/arm-elf.exp
+++ b/ld/testsuite/ld-arm/arm-elf.exp
@@ -271,6 +271,21 @@ set armelftests_common {
{"Simple non-PIC shared library (no PLT check)" "-shared" "" {arm-lib.s}
{{objdump -Rw arm-lib.r}}
"arm-lib.so"}
+ {"EABI soft-float ET_EXEC ABI flag" "-T arm.ld" "-mfloat-abi=soft -meabi=5" {eabi-soft-float.s}
+ {{readelf -h eabi-soft-float.d}}
+ "eabi-soft-float"}
+ {"EABI hard-float ET_EXEC ABI flag" "-T arm.ld" "-mfloat-abi=hard -meabi=5" {eabi-hard-float.s}
+ {{readelf -h eabi-hard-float.d}}
+ "eabi-hard-float"}
+ {"EABI hard-float ET_DYN ABI flag" "-shared" "-mfloat-abi=hard -meabi=5" {eabi-hard-float.s}
+ {{readelf -h eabi-hard-float.d}}
+ "eabi-hard-float.so"}
+ {"EABI ABI flags wrong ABI version" "-T arm.ld" "-mfloat-abi=soft -meabi=4" {eabi-soft-float.s}
+ {{readelf -h eabi-soft-float-ABI4.d}}
+ "eabi-soft-float-no-flags"}
+ {"EABI ABI flags ld -r" "-r" "-mfloat-abi=soft -meabi=5" {eabi-soft-float.s}
+ {{readelf -h eabi-soft-float-r.d}}
+ "eabi-soft-float-r.o"}
}
set armelftests_nonacl {