* gas/config/tc-arm.c (aeabi_set_public_attributes): Correct

handling of Tag_DIV_use.
	* gas/testsuite/gas/testsuite/gas/arm/any-idiv.d: New testcase.
	* gas/testsuite/gas/testsuite/gas/arm/any-idiv.s: Likewise.
	* gas/testsuite/gas/arm/attr-any-armv4t.d: Update expected output.
	* gas/testsuite/gas/arm/attr-any-thumbv6.d: Likewise.
	* gas/testsuite/gas/arm/attr-cpu-directive.d: Likewise.
	* gas/testsuite/gas/arm/attr-default.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv1.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv2.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv2a.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv2s.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv3.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv3m.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv4.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv4t.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv4txm.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv4xm.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv5.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv5t.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv5te.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv5tej.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv5texp.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv5txm.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6-m+os.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6-m.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6j.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6k+sec.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6k.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6kt2.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6s-m.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6t2.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6z.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6zk.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6zkt2.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv6zt2.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv7-a+mp.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv7-a+sec.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv7-a.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv7.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-armv7a.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-iwmmxt.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-iwmmxt2.d: Likewise.
	* gas/testsuite/gas/arm/attr-march-xscale.d: Likewise.
	* gas/testsuite/gas/arm/attr-mcpu.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-arm1020e.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-arm1020t.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-arm1136jf-s.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-arm1136jfs.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-arm7500fe.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-fpa.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-fpa10.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-fpa11.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-fpe.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-fpe2.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-fpe3.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-maverick.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-neon-fp16.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-neon.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-softfpa.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-softvfp+vfp.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-softvfp.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-vfp.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-vfp10-r0.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-vfp10.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-vfp3.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-vfp9.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-vfpv2.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-vfpv3-d16.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-vfpv3.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-vfpv4-d16.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-vfpv4.d: Likewise.
	* gas/testsuite/gas/arm/attr-mfpu-vfpxd.d: Likewise.
	* gas/testsuite/gas/arm/attr-order.d: Likewise.
	* gas/testsuite/gas/arm/attr-override-cpu-directive.d: Likewise.
	* gas/testsuite/gas/arm/attr-override-mcpu.d: Likewise.
	* gas/testsuite/gas/arm/eabi_attr_1.d: Likewise.
	* gas/testsuite/gas/arm/mov-highregs-any.d: Likewise.
	* gas/testsuite/gas/arm/mov-lowregs-any.d: Likewise.
	* gas/testsuite/gas/arm/pr12198-1.d: Likewise.
	* gas/testsuite/gas/arm/pr12198-2.d: Likewise.
	* ld/testsuite/ld-arm/arm-elf.exp: Add new testcases.
	* ld/testsuite/ld-arm/attr-merge-2.attr: Update ouput.
	* ld/testsuite/ld-arm/attr-merge-2a.s: Remove Tag_DIV_use test.
	* ld/testsuite/ld-arm/attr-merge-2b.s: Likewise.
	* ld/testsuite/ld-arm/attr-merge-3.attr: Updated expected output.
	* ld/testsuite/ld-arm/attr-merge-4.attr: Likewise.
	* ld/testsuite/ld-arm/attr-merge-5.attr: Likewise.
	* ld/testsuite/ld-arm/attr-merge-6.attr: Likewise.
	* ld/testsuite/ld-arm/attr-merge-7.attr: Likewise.
	* ld/testsuite/ld-arm/attr-merge-arch-1.attr: Likewise.
	* ld/testsuite/ld-arm/attr-merge-arch-2.attr: Likewise.
	* ld/testsuite/ld-arm/attr-merge-unknown-2.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-unknown-2r.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-unknown-3.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-vfp-1.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-vfp-1r.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-vfp-2.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-vfp-2r.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-vfp-3.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-vfp-3r.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-vfp-4.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-vfp-4r.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-vfp-5.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-vfp-5r.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-vfp-6.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-vfp-6r.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-wchar-00-nowarn.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-wchar-00.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-wchar-02-nowarn.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-wchar-02.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-wchar-04-nowarn.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-wchar-04.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-wchar-20-nowarn.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-wchar-20.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-wchar-22-nowarn.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-wchar-22.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-wchar-24-nowarn.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-wchar-40-nowarn.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-wchar-40.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-wchar-42-nowarn.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-wchar-44-nowarn.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-wchar-44.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge.attr: Likewise.
	* ld/testsuite/ld-arm/attr-merge-div-0.s: New testcase.
	* ld/testsuite/ld-arm/attr-merge-div-00.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-div-01-m3.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-div-01.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-div-02.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-div-1.s: Likewise.
	* ld/testsuite/ld-arm/attr-merge-div-10-m3.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-div-10.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-div-11.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-div-12.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-div-120.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-div-2.s: Likewise.
	* ld/testsuite/ld-arm/attr-merge-div-20.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-div-21.d: Likewise.
	* ld/testsuite/ld-arm/attr-merge-div-22.d: Likewise.
This commit is contained in:
Matthew Gretton-Dann 2012-03-16 14:02:33 +00:00
parent d668828207
commit 692392805b
142 changed files with 361 additions and 128 deletions

View File

@ -1,3 +1,8 @@
2012-03-16 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
* config/tc-arm.c (aeabi_set_public_attributes): Correct
handling of Tag_DIV_use.
2012-03-15 Thomas Schwinge <thomas@codesourcery.com>
* doc/as.texinfo (Bundle directives): Fix typo.

View File

@ -23698,6 +23698,7 @@ static void
aeabi_set_public_attributes (void)
{
int arch;
char profile;
int virt_sec = 0;
arm_feature_set flags;
arm_feature_set tmp;
@ -23775,11 +23776,16 @@ aeabi_set_public_attributes (void)
/* Tag_CPU_arch_profile. */
if (ARM_CPU_HAS_FEATURE (flags, arm_ext_v7a))
aeabi_set_attribute_int (Tag_CPU_arch_profile, 'A');
profile = 'A';
else if (ARM_CPU_HAS_FEATURE (flags, arm_ext_v7r))
aeabi_set_attribute_int (Tag_CPU_arch_profile, 'R');
profile = 'R';
else if (ARM_CPU_HAS_FEATURE (flags, arm_ext_m))
aeabi_set_attribute_int (Tag_CPU_arch_profile, 'M');
profile = 'M';
else
profile = '\0';
if (profile != '\0')
aeabi_set_attribute_int (Tag_CPU_arch_profile, profile);
/* Tag_ARM_ISA_use. */
if (ARM_CPU_HAS_FEATURE (flags, arm_ext_v1)
@ -23828,13 +23834,19 @@ aeabi_set_public_attributes (void)
if (ARM_CPU_HAS_FEATURE (flags, fpu_vfp_fp16))
aeabi_set_attribute_int (Tag_VFP_HP_extension, 1);
/* Tag_DIV_use. */
if (ARM_CPU_HAS_FEATURE (flags, arm_ext_adiv))
/* Tag_DIV_use.
We set Tag_DIV_use to two when integer divide instructions have been used
in ARM state, or when Thumb integer divide instructions have been used,
but we have no architecture profile set, nor have we any ARM instructions.
For new architectures we will have to check these tests. */
gas_assert (arch <= TAG_CPU_ARCH_V7E_M);
if (ARM_CPU_HAS_FEATURE (flags, arm_ext_adiv)
|| (profile == '\0'
&& ARM_CPU_HAS_FEATURE (flags, arm_ext_div)
&& !ARM_CPU_HAS_FEATURE (arm_arch_used, arm_arch_any)))
aeabi_set_attribute_int (Tag_DIV_use, 2);
else if (ARM_CPU_HAS_FEATURE (flags, arm_ext_div))
aeabi_set_attribute_int (Tag_DIV_use, 0);
else
aeabi_set_attribute_int (Tag_DIV_use, 1);
/* Tag_MP_extension_use. */
if (ARM_CPU_HAS_FEATURE (flags, arm_ext_mp))

View File

@ -1,3 +1,86 @@
2012-03-16 Matthew Gretton-Dann <matther.gretton-dann@arm.com>
* gas/testsuite/gas/arm/any-idiv.d: New testcase.
* gas/testsuite/gas/arm/any-idiv.s: Likewise.
* gas/arm/attr-any-armv4t.d: Update expected output.
* gas/arm/attr-any-thumbv6.d: Likewise.
* gas/arm/attr-cpu-directive.d: Likewise.
* gas/arm/attr-default.d: Likewise.
* gas/arm/attr-march-armv1.d: Likewise.
* gas/arm/attr-march-armv2.d: Likewise.
* gas/arm/attr-march-armv2a.d: Likewise.
* gas/arm/attr-march-armv2s.d: Likewise.
* gas/arm/attr-march-armv3.d: Likewise.
* gas/arm/attr-march-armv3m.d: Likewise.
* gas/arm/attr-march-armv4.d: Likewise.
* gas/arm/attr-march-armv4t.d: Likewise.
* gas/arm/attr-march-armv4txm.d: Likewise.
* gas/arm/attr-march-armv4xm.d: Likewise.
* gas/arm/attr-march-armv5.d: Likewise.
* gas/arm/attr-march-armv5t.d: Likewise.
* gas/arm/attr-march-armv5te.d: Likewise.
* gas/arm/attr-march-armv5tej.d: Likewise.
* gas/arm/attr-march-armv5texp.d: Likewise.
* gas/arm/attr-march-armv5txm.d: Likewise.
* gas/arm/attr-march-armv6-m+os.d: Likewise.
* gas/arm/attr-march-armv6-m.d: Likewise.
* gas/arm/attr-march-armv6.d: Likewise.
* gas/arm/attr-march-armv6j.d: Likewise.
* gas/arm/attr-march-armv6k+sec.d: Likewise.
* gas/arm/attr-march-armv6k.d: Likewise.
* gas/arm/attr-march-armv6kt2.d: Likewise.
* gas/arm/attr-march-armv6s-m.d: Likewise.
* gas/arm/attr-march-armv6t2.d: Likewise.
* gas/arm/attr-march-armv6z.d: Likewise.
* gas/arm/attr-march-armv6zk.d: Likewise.
* gas/arm/attr-march-armv6zkt2.d: Likewise.
* gas/arm/attr-march-armv6zt2.d: Likewise.
* gas/arm/attr-march-armv7-a+mp.d: Likewise.
* gas/arm/attr-march-armv7-a+sec.d: Likewise.
* gas/arm/attr-march-armv7-a.d: Likewise.
* gas/arm/attr-march-armv7.d: Likewise.
* gas/arm/attr-march-armv7a.d: Likewise.
* gas/arm/attr-march-iwmmxt.d: Likewise.
* gas/arm/attr-march-iwmmxt2.d: Likewise.
* gas/arm/attr-march-xscale.d: Likewise.
* gas/arm/attr-mcpu.d: Likewise.
* gas/arm/attr-mfpu-arm1020e.d: Likewise.
* gas/arm/attr-mfpu-arm1020t.d: Likewise.
* gas/arm/attr-mfpu-arm1136jf-s.d: Likewise.
* gas/arm/attr-mfpu-arm1136jfs.d: Likewise.
* gas/arm/attr-mfpu-arm7500fe.d: Likewise.
* gas/arm/attr-mfpu-fpa.d: Likewise.
* gas/arm/attr-mfpu-fpa10.d: Likewise.
* gas/arm/attr-mfpu-fpa11.d: Likewise.
* gas/arm/attr-mfpu-fpe.d: Likewise.
* gas/arm/attr-mfpu-fpe2.d: Likewise.
* gas/arm/attr-mfpu-fpe3.d: Likewise.
* gas/arm/attr-mfpu-maverick.d: Likewise.
* gas/arm/attr-mfpu-neon-fp16.d: Likewise.
* gas/arm/attr-mfpu-neon.d: Likewise.
* gas/arm/attr-mfpu-softfpa.d: Likewise.
* gas/arm/attr-mfpu-softvfp+vfp.d: Likewise.
* gas/arm/attr-mfpu-softvfp.d: Likewise.
* gas/arm/attr-mfpu-vfp.d: Likewise.
* gas/arm/attr-mfpu-vfp10-r0.d: Likewise.
* gas/arm/attr-mfpu-vfp10.d: Likewise.
* gas/arm/attr-mfpu-vfp3.d: Likewise.
* gas/arm/attr-mfpu-vfp9.d: Likewise.
* gas/arm/attr-mfpu-vfpv2.d: Likewise.
* gas/arm/attr-mfpu-vfpv3-d16.d: Likewise.
* gas/arm/attr-mfpu-vfpv3.d: Likewise.
* gas/arm/attr-mfpu-vfpv4-d16.d: Likewise.
* gas/arm/attr-mfpu-vfpv4.d: Likewise.
* gas/arm/attr-mfpu-vfpxd.d: Likewise.
* gas/arm/attr-order.d: Likewise.
* gas/arm/attr-override-cpu-directive.d: Likewise.
* gas/arm/attr-override-mcpu.d: Likewise.
* gas/arm/eabi_attr_1.d: Likewise.
* gas/arm/mov-highregs-any.d: Likewise.
* gas/arm/mov-lowregs-any.d: Likewise.
* gas/arm/pr12198-1.d: Likewise.
* gas/arm/pr12198-2.d: Likewise.
2012-03-15 Alan Modra <amodra@gmail.com>
* gas/i386/bundle-lock.d: Ignore trailing nops.

View File

@ -0,0 +1,11 @@
# name: attributes for 'any' CPU with Thumb integer divide
# as:
# readelf: -A
# This test is only valid on EABI based ports.
# target: *-*-*eabi
Attribute Section: aeabi
File Attributes
Tag_CPU_arch: v7
Tag_THUMB_ISA_use: Thumb-2
Tag_DIV_use: Allowed in v7-A with integer division extension

View File

@ -0,0 +1,4 @@
.syntax unified
.text
.thumb
udiv r0, r1, r2

View File

@ -10,4 +10,3 @@ File Attributes
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -9,4 +9,3 @@ Attribute Section: aeabi
File Attributes
Tag_CPU_arch: v6
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -12,5 +12,4 @@ File Attributes
Tag_CPU_arch_profile: Application
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_DIV_use: Not allowed
Tag_Virtualization_use: TrustZone

View File

@ -9,4 +9,3 @@ Attribute Section: aeabi
File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_CPU_name: "1"
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_CPU_name: "2"
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_CPU_name: "2A"
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_CPU_name: "2S"
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_CPU_name: "3"
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_CPU_name: "3M"
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_CPU_name: "4"
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_CPU_name: "4XM"
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_CPU_name: "5"
Tag_CPU_arch: v5T
Tag_ARM_ISA_use: Yes
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_CPU_arch: v5T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_CPU_arch: v5TE
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_CPU_arch: v5TEJ
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_CPU_arch: v5TE
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_CPU_arch: v5T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_CPU_arch: v6S-M
Tag_CPU_arch_profile: Microcontroller
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_CPU_arch: v6-M
Tag_CPU_arch_profile: Microcontroller
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_CPU_arch: v6
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_CPU_arch: v6
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -11,5 +11,4 @@ File Attributes
Tag_CPU_arch: v6KZ
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed
Tag_Virtualization_use: TrustZone

View File

@ -11,4 +11,3 @@ File Attributes
Tag_CPU_arch: v6K
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_CPU_arch: v6T2
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_CPU_arch: v6-M
Tag_CPU_arch_profile: Microcontroller
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_CPU_arch: v6T2
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_DIV_use: Not allowed

View File

@ -11,5 +11,4 @@ File Attributes
Tag_CPU_arch: v6KZ
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed
Tag_Virtualization_use: TrustZone

View File

@ -11,5 +11,4 @@ File Attributes
Tag_CPU_arch: v6KZ
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed
Tag_Virtualization_use: TrustZone

View File

@ -11,5 +11,4 @@ File Attributes
Tag_CPU_arch: v6T2
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_DIV_use: Not allowed
Tag_Virtualization_use: TrustZone

View File

@ -11,5 +11,4 @@ File Attributes
Tag_CPU_arch: v6T2
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_DIV_use: Not allowed
Tag_Virtualization_use: TrustZone

View File

@ -13,4 +13,3 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_MPextension_use: Allowed
Tag_DIV_use: Not allowed

View File

@ -12,5 +12,4 @@ File Attributes
Tag_CPU_arch_profile: Application
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_DIV_use: Not allowed
Tag_Virtualization_use: TrustZone

View File

@ -12,4 +12,3 @@ File Attributes
Tag_CPU_arch_profile: Application
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_CPU_name: "7"
Tag_CPU_arch: v7
Tag_THUMB_ISA_use: Thumb-2
Tag_DIV_use: Not allowed

View File

@ -12,4 +12,3 @@ File Attributes
Tag_CPU_arch_profile: Application
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_DIV_use: Not allowed

View File

@ -12,4 +12,3 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_WMMX_arch: WMMXv1
Tag_DIV_use: Not allowed

View File

@ -12,4 +12,3 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_WMMX_arch: WMMXv2
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_CPU_arch: v5TE
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -14,5 +14,4 @@ File Attributes
Tag_THUMB_ISA_use: Thumb-2
Tag_FP_arch: VFPv3
Tag_Advanced_SIMD_arch: NEONv1
Tag_DIV_use: Not allowed
Tag_Virtualization_use: TrustZone

View File

@ -10,4 +10,3 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_FP_arch: VFPv2
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_FP_arch: VFPv1
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_FP_arch: VFPv2
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_FP_arch: VFPv2
Tag_DIV_use: Not allowed

View File

@ -9,4 +9,3 @@ Attribute Section: aeabi
File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -9,4 +9,3 @@ Attribute Section: aeabi
File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -9,4 +9,3 @@ Attribute Section: aeabi
File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -9,4 +9,3 @@ Attribute Section: aeabi
File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -9,4 +9,3 @@ Attribute Section: aeabi
File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -9,4 +9,3 @@ Attribute Section: aeabi
File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -9,4 +9,3 @@ Attribute Section: aeabi
File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -9,4 +9,3 @@ Attribute Section: aeabi
File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -12,4 +12,3 @@ File Attributes
Tag_FP_arch: VFPv3
Tag_Advanced_SIMD_arch: NEONv1
Tag_FP_HP_extension: Allowed
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_THUMB_ISA_use: Thumb-1
Tag_FP_arch: VFPv3
Tag_Advanced_SIMD_arch: NEONv1
Tag_DIV_use: Not allowed

View File

@ -9,4 +9,3 @@ Attribute Section: aeabi
File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_FP_arch: VFPv2
Tag_DIV_use: Not allowed

View File

@ -9,4 +9,3 @@ Attribute Section: aeabi
File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_FP_arch: VFPv2
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_FP_arch: VFPv1
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_FP_arch: VFPv2
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_FP_arch: VFPv3
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_FP_arch: VFPv2
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_FP_arch: VFPv2
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_FP_arch: VFPv3-D16
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_FP_arch: VFPv3
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_THUMB_ISA_use: Thumb-1
Tag_FP_arch: VFPv4-D16
Tag_FP_HP_extension: Allowed
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_THUMB_ISA_use: Thumb-1
Tag_FP_arch: VFPv4
Tag_FP_HP_extension: Allowed
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_THUMB_ISA_use: Thumb-1
Tag_FP_arch: VFPv1
Tag_ABI_HardFP_use: SP only
Tag_DIV_use: Not allowed

View File

@ -13,7 +13,6 @@ File Attributes
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed
Tag_unknown_63: "val"
Tag_also_compatible_with: v6-M
Tag_T2EE_use: Allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_CPU_name: "custom name"
Tag_CPU_arch: v7
Tag_THUMB_ISA_use: \?\?\? \(10\)
Tag_DIV_use: Not allowed

View File

@ -11,4 +11,3 @@ File Attributes
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -10,6 +10,5 @@ File Attributes
Tag_THUMB_ISA_use: Thumb-1
Tag_ABI_VFP_args: VFP registers
Tag_compatibility: flag = 3, vendor = GNU
Tag_DIV_use: Not allowed
Tag_unknown_128: 1234 \(0x4d2\)
Tag_unknown_129: "bar"

View File

@ -5,5 +5,4 @@ Attribute Section: aeabi
File Attributes
Tag_CPU_arch: v4T
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -5,5 +5,4 @@ Attribute Section: aeabi
File Attributes
Tag_CPU_arch: v6
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -9,4 +9,3 @@ Attribute Section: aeabi
File Attributes
Tag_CPU_arch: v4T
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -10,4 +10,3 @@ File Attributes
Tag_CPU_arch: v6S-M
Tag_CPU_arch_profile: Microcontroller
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -1,3 +1,64 @@
2012-03-16 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
* ld-arm/arm-elf.exp: Add new testcases.
* ld-arm/attr-merge-2.attr: Update ouput.
* ld-arm/attr-merge-2a.s: Remove Tag_DIV_use test.
* ld-arm/attr-merge-2b.s: Likewise.
* ld-arm/attr-merge-3.attr: Updated expected output.
* ld-arm/attr-merge-4.attr: Likewise.
* ld-arm/attr-merge-5.attr: Likewise.
* ld-arm/attr-merge-6.attr: Likewise.
* ld-arm/attr-merge-7.attr: Likewise.
* ld-arm/attr-merge-arch-1.attr: Likewise.
* ld-arm/attr-merge-arch-2.attr: Likewise.
* ld-arm/attr-merge-unknown-2.d: Likewise.
* ld-arm/attr-merge-unknown-2r.d: Likewise.
* ld-arm/attr-merge-unknown-3.d: Likewise.
* ld-arm/attr-merge-vfp-1.d: Likewise.
* ld-arm/attr-merge-vfp-1r.d: Likewise.
* ld-arm/attr-merge-vfp-2.d: Likewise.
* ld-arm/attr-merge-vfp-2r.d: Likewise.
* ld-arm/attr-merge-vfp-3.d: Likewise.
* ld-arm/attr-merge-vfp-3r.d: Likewise.
* ld-arm/attr-merge-vfp-4.d: Likewise.
* ld-arm/attr-merge-vfp-4r.d: Likewise.
* ld-arm/attr-merge-vfp-5.d: Likewise.
* ld-arm/attr-merge-vfp-5r.d: Likewise.
* ld-arm/attr-merge-vfp-6.d: Likewise.
* ld-arm/attr-merge-vfp-6r.d: Likewise.
* ld-arm/attr-merge-wchar-00-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-00.d: Likewise.
* ld-arm/attr-merge-wchar-02-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-02.d: Likewise.
* ld-arm/attr-merge-wchar-04-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-04.d: Likewise.
* ld-arm/attr-merge-wchar-20-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-20.d: Likewise.
* ld-arm/attr-merge-wchar-22-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-22.d: Likewise.
* ld-arm/attr-merge-wchar-24-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-40-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-40.d: Likewise.
* ld-arm/attr-merge-wchar-42-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-44-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-44.d: Likewise.
* ld-arm/attr-merge.attr: Likewise.
* ld-arm/attr-merge-div-0.s: New testcase.
* ld-arm/attr-merge-div-00.d: Likewise.
* ld-arm/attr-merge-div-01-m3.d: Likewise.
* ld-arm/attr-merge-div-01.d: Likewise.
* ld-arm/attr-merge-div-02.d: Likewise.
* ld-arm/attr-merge-div-1.s: Likewise.
* ld-arm/attr-merge-div-10-m3.d: Likewise.
* ld-arm/attr-merge-div-10.d: Likewise.
* ld-arm/attr-merge-div-11.d: Likewise.
* ld-arm/attr-merge-div-12.d: Likewise.
* ld-arm/attr-merge-div-120.d: Likewise.
* ld-arm/attr-merge-div-2.s: Likewise.
* ld-arm/attr-merge-div-20.d: Likewise.
* ld-arm/attr-merge-div-21.d: Likewise.
* ld-arm/attr-merge-div-22.d: Likewise.
2012-03-16 Alan Modra <amodra@gmail.com>
* ld-gc/pr13683.d: Accept powerpc64 function descriptor syms.

View File

@ -690,6 +690,18 @@ set armeabitests {
}
run_ld_link_tests $armeabitests
run_dump_test "attr-merge-div-00"
run_dump_test "attr-merge-div-01"
run_dump_test "attr-merge-div-10"
run_dump_test "attr-merge-div-01-m3"
run_dump_test "attr-merge-div-10-m3"
run_dump_test "attr-merge-div-11"
run_dump_test "attr-merge-div-12"
run_dump_test "attr-merge-div-120"
run_dump_test "attr-merge-div-21"
run_dump_test "attr-merge-div-22"
run_dump_test "attr-merge-div-02"
run_dump_test "attr-merge-div-20"
run_dump_test "attr-merge-wchar-00"
run_dump_test "attr-merge-wchar-02"
run_dump_test "attr-merge-wchar-04"

View File

@ -12,4 +12,3 @@ File Attributes
Tag_ABI_align_preserved: 8-byte, except leaf SP
Tag_ABI_enum_size: small
Tag_ABI_optimization_goals: Aggressive Debug
Tag_DIV_use: Allowed in v7-A with integer division extension

View File

@ -7,5 +7,4 @@
.eabi_attribute 25, 1
.eabi_attribute 26, 1
.eabi_attribute 30, 6
.eabi_attribute Tag_DIV_use, 1
.file "attr-merge-2a.s"

View File

@ -8,5 +8,4 @@
.eabi_attribute 26, 1
.eabi_attribute 30, 6
.eabi_attribute 18, 4
.eabi_attribute Tag_DIV_use, 2
.file "attr-merge-2b.s"

View File

@ -27,5 +27,6 @@ File Attributes
Tag_CPU_unaligned_access: v6
Tag_FP_HP_extension: Allowed
Tag_MPextension_use: Allowed
Tag_DIV_use: Not allowed
Tag_T2EE_use: Allowed
Tag_Virtualization_use: TrustZone

View File

@ -5,5 +5,4 @@ File Attributes
Tag_CPU_arch_profile: Microcontroller
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed
Tag_also_compatible_with: v6-M

View File

@ -3,4 +3,3 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_compatibility: flag = 1, vendor = gnu
Tag_DIV_use: Not allowed

View File

@ -6,5 +6,4 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_MPextension_use: Allowed
Tag_DIV_use: Not allowed
Tag_Virtualization_use: TrustZone

View File

@ -6,5 +6,4 @@ File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_MPextension_use: Allowed
Tag_DIV_use: Not allowed
Tag_Virtualization_use: TrustZone

View File

@ -4,4 +4,3 @@ File Attributes
Tag_CPU_arch: v7
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_DIV_use: Not allowed

View File

@ -5,4 +5,3 @@ File Attributes
Tag_CPU_arch: v6K
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -0,0 +1 @@
.eabi_attribute Tag_DIV_use, 0

View File

@ -0,0 +1,12 @@
#source: attr-merge-div-0.s
#source: attr-merge-div-0.s
#as:
#ld: -r
#readelf: -A
# This test is only valid on ELF based ports.
# not-target: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix*
Attribute Section: aeabi
File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1

View File

@ -0,0 +1,14 @@
#source: attr-merge-div-0.s
#source: attr-merge-div-1.s
#as: -mcpu=cortex-m3
#ld: -r
#readelf: -A
# This test is only valid on ELF based ports.
# not-target: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix*
Attribute Section: aeabi
File Attributes
Tag_CPU_name: "Cortex-M3"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Microcontroller
Tag_THUMB_ISA_use: Thumb-2

View File

@ -0,0 +1,13 @@
#source: attr-merge-div-0.s
#source: attr-merge-div-1.s
#as:
#ld: -r
#readelf: -A
# This test is only valid on ELF based ports.
# not-target: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix*
Attribute Section: aeabi
File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -0,0 +1,13 @@
#source: attr-merge-div-0.s
#source: attr-merge-div-2.s
#as:
#ld: -r
#readelf: -A
# This test is only valid on ELF based ports.
# not-target: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix*
Attribute Section: aeabi
File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Allowed in v7-A with integer division extension

Some files were not shown because too many files have changed in this diff Show More