bfd:
* elf32-arm.c (elf32_arm_merge_eabi_attributes): Copy type from input attributes if value has been copied. ld/testsuite: * ld-arm/attr-merge-2a.s, ld-arm/attr-merge-2b.s, ld-arm/attr-merge-2.attr: New. * ld-arm/arm-elf.exp (armelftests): Add new test.
This commit is contained in:
parent
cd123cb70c
commit
3cfad14c4a
@ -1,3 +1,8 @@
|
||||
2007-07-03 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
* elf32-arm.c (elf32_arm_merge_eabi_attributes): Copy type from
|
||||
input attributes if value has been copied.
|
||||
|
||||
2007-07-03 Nick Clifton <nickc@redhat.com>
|
||||
|
||||
* COPYING: Replace with GPLv3 text.
|
||||
|
@ -6934,6 +6934,23 @@ elf32_arm_merge_eabi_attributes (bfd *ibfd, bfd *obfd)
|
||||
default: /* All known attributes should be explicitly covered. */
|
||||
abort ();
|
||||
}
|
||||
|
||||
if (in_attr[i].type && !out_attr[i].type)
|
||||
switch (in_attr[i].type)
|
||||
{
|
||||
case 1:
|
||||
if (out_attr[i].i)
|
||||
out_attr[i].type = 1;
|
||||
break;
|
||||
|
||||
case 2:
|
||||
if (out_attr[i].s)
|
||||
out_attr[i].type = 2;
|
||||
break;
|
||||
|
||||
default:
|
||||
abort ();
|
||||
}
|
||||
}
|
||||
|
||||
/* Merge Tag_compatibility attributes and any common GNU ones. */
|
||||
|
@ -1,3 +1,9 @@
|
||||
2007-07-03 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
* ld-arm/attr-merge-2a.s, ld-arm/attr-merge-2b.s,
|
||||
ld-arm/attr-merge-2.attr: New.
|
||||
* ld-arm/arm-elf.exp (armelftests): Add new test.
|
||||
|
||||
2007-07-02 Nathan Sidwell <nathan@codesourcery.com>
|
||||
|
||||
* ld-scripts/alignof.exp: Skip on non-elf
|
||||
|
@ -170,6 +170,9 @@ set armelftests {
|
||||
{"EABI attribute merging" "-r" "" {attr-merge.s attr-merge.s}
|
||||
{{readelf -A attr-merge.attr}}
|
||||
"attr-merge"}
|
||||
{"EABI attribute merging 2" "-r" "" {attr-merge-2a.s attr-merge-2b.s}
|
||||
{{readelf -A attr-merge-2.attr}}
|
||||
"attr-merge-2"}
|
||||
{"callweak" "-static -T arm.ld" "" {callweak.s}
|
||||
{{objdump -dr callweak.d}}
|
||||
"callweak"}
|
||||
|
12
ld/testsuite/ld-arm/attr-merge-2.attr
Normal file
12
ld/testsuite/ld-arm/attr-merge-2.attr
Normal file
@ -0,0 +1,12 @@
|
||||
Attribute Section: aeabi
|
||||
File Attributes
|
||||
Tag_CPU_name: "ARM7TDMI"
|
||||
Tag_CPU_arch: v4T
|
||||
Tag_ABI_PCS_wchar_t: 4
|
||||
Tag_ABI_FP_denormal: Needed
|
||||
Tag_ABI_FP_exceptions: Needed
|
||||
Tag_ABI_FP_number_model: IEEE 754
|
||||
Tag_ABI_align8_needed: Yes
|
||||
Tag_ABI_align8_preserved: Yes, except leaf SP
|
||||
Tag_ABI_enum_size: small
|
||||
Tag_ABI_optimization_goals: Aggressive Debug
|
10
ld/testsuite/ld-arm/attr-merge-2a.s
Normal file
10
ld/testsuite/ld-arm/attr-merge-2a.s
Normal file
@ -0,0 +1,10 @@
|
||||
.cpu arm7tdmi
|
||||
.fpu softvfp
|
||||
.eabi_attribute 20, 1
|
||||
.eabi_attribute 21, 1
|
||||
.eabi_attribute 23, 3
|
||||
.eabi_attribute 24, 1
|
||||
.eabi_attribute 25, 1
|
||||
.eabi_attribute 26, 1
|
||||
.eabi_attribute 30, 6
|
||||
.file "attr-merge-2a.s"
|
11
ld/testsuite/ld-arm/attr-merge-2b.s
Normal file
11
ld/testsuite/ld-arm/attr-merge-2b.s
Normal file
@ -0,0 +1,11 @@
|
||||
.cpu arm7tdmi
|
||||
.fpu softvfp
|
||||
.eabi_attribute 20, 1
|
||||
.eabi_attribute 21, 1
|
||||
.eabi_attribute 23, 3
|
||||
.eabi_attribute 24, 1
|
||||
.eabi_attribute 25, 1
|
||||
.eabi_attribute 26, 1
|
||||
.eabi_attribute 30, 6
|
||||
.eabi_attribute 18, 4
|
||||
.file "attr-merge-2b.s"
|
Loading…
Reference in New Issue
Block a user