2009-01-26 Andrew Stubbs <ams@codesourcery.com>

gas/
	* config/tc-arm.c (attributes_set_explicitly): New array.
	(s_arm_eabi_attribute): Check return value from s_vendor_attribute.
	(cpu_arch): Add ARM_ARCH_V5T.
	(aeabi_set_attribute_int): New function.
	(aeabi_set_attribute_string): New function.
	(aeabi_set_public_attributes): Set attributes according to the user's
	intentions, rather than the actual state of the binary.
	Use aeabi_set_attribute_int and aeabi_set_attribute_string instead of
	bfd_elf_add_proc_attr_int and bfd_elf_add_proc_attr_string.
	Support WMMXv2. Use attribute names instead of numbers.
	* read.c (s_vendor_attribute): Change return type to int.
	Return the tag number that was set.
	* read.h (s_vendor_attribute): Change return type to int.

	gas/testsuite/
	* gas/arm/attr-cpu-directive.d: New file.
	* gas/arm/attr-cpu-directive.s: New file.
	* gas/arm/attr-default.d: New file.
	* gas/arm/attr-march-all.d: New file.
	* gas/arm/attr-march-armv1.d: New file.
	* gas/arm/attr-march-armv2.d: New file.
	* gas/arm/attr-march-armv2a.d: New file.
	* gas/arm/attr-march-armv2s.d: New file.
	* gas/arm/attr-march-armv3.d: New file.
	* gas/arm/attr-march-armv3m.d: New file.
	* gas/arm/attr-march-armv4.d: New file.
	* gas/arm/attr-march-armv4t.d: New file.
	* gas/arm/attr-march-armv4txm.d: New file.
	* gas/arm/attr-march-armv4xm.d: New file.
	* gas/arm/attr-march-armv5.d: New file.
	* gas/arm/attr-march-armv5t.d: New file.
	* gas/arm/attr-march-armv5te.d: New file.
	* gas/arm/attr-march-armv5tej.d: New file.
	* gas/arm/attr-march-armv5texp.d: New file.
	* gas/arm/attr-march-armv5txm.d: New file.
	* gas/arm/attr-march-armv6-m.d: New file.
	* gas/arm/attr-march-armv6.d: New file.
	* gas/arm/attr-march-armv6j.d: New file.
	* gas/arm/attr-march-armv6k.d: New file.
	* gas/arm/attr-march-armv6kt2.d: New file.
	* gas/arm/attr-march-armv6t2.d: New file.
	* gas/arm/attr-march-armv6z.d: New file.
	* gas/arm/attr-march-armv6zk.d: New file.
	* gas/arm/attr-march-armv6zkt2.d: New file.
	* gas/arm/attr-march-armv6zt2.d: New file.
	* gas/arm/attr-march-armv7-a.d: New file.
	* gas/arm/attr-march-armv7-m.d: New file.
	* gas/arm/attr-march-armv7-r.d: New file.
	* gas/arm/attr-march-armv7.d: New file.
	* gas/arm/attr-march-armv7a.d: New file.
	* gas/arm/attr-march-armv7m.d: New file.
	* gas/arm/attr-march-armv7r.d: New file.
	* gas/arm/attr-march-iwmmxt.d: New file.
	* gas/arm/attr-march-iwmmxt2.d: New file.
	* gas/arm/attr-march-xscale.d: New file.
	* gas/arm/attr-mcpu.d: New file.
	* gas/arm/attr-mfpu-arm1020e.d: New file.
	* gas/arm/attr-mfpu-arm1020t.d: New file.
	* gas/arm/attr-mfpu-arm1136jf-s.d: New file.
	* gas/arm/attr-mfpu-arm1136jfs.d: New file.
	* gas/arm/attr-mfpu-arm7500fe.d: New file.
	* gas/arm/attr-mfpu-fpa.d: New file.
	* gas/arm/attr-mfpu-fpa10.d: New file.
	* gas/arm/attr-mfpu-fpa11.d: New file.
	* gas/arm/attr-mfpu-fpe.d: New file.
	* gas/arm/attr-mfpu-fpe2.d: New file.
	* gas/arm/attr-mfpu-fpe3.d: New file.
	* gas/arm/attr-mfpu-maverick.d: New file.
	* gas/arm/attr-mfpu-neon-fp16.d: New file.
	* gas/arm/attr-mfpu-neon.d: New file.
	* gas/arm/attr-mfpu-softfpa.d: New file.
	* gas/arm/attr-mfpu-softvfp+vfp.d: New file.
	* gas/arm/attr-mfpu-softvfp.d: New file.
	* gas/arm/attr-mfpu-vfp.d: New file.
	* gas/arm/attr-mfpu-vfp10-r0.d: New file.
	* gas/arm/attr-mfpu-vfp10.d: New file.
	* gas/arm/attr-mfpu-vfp3.d: New file.
	* gas/arm/attr-mfpu-vfp9.d: New file.
	* gas/arm/attr-mfpu-vfpv2.d: New file.
	* gas/arm/attr-mfpu-vfpv3-d16.d: New file.
	* gas/arm/attr-mfpu-vfpv3.d: New file.
	* gas/arm/attr-mfpu-vfpxd.d: New file.
	* gas/arm/attr-order.d: Update Tag_ARM_ISA_use and Tag_THUMB_ISA_use.
	* gas/arm/attr-override-cpu-directive.d: New file.
	* gas/arm/attr-override-cpu-directive.s: New file.
	* gas/arm/attr-override-mcpu.d: New file.
	* gas/arm/attr-override-mcpu.s: New file.
	* gas/arm/blank.s: New file.
	* gas/arm/eabi_attr_1.d: Update Tag_ARM_ISA_use and Tag_THUMB_ISA_use.

	ld/testsuite/
	* ld-arm/attr-merge-3.attr: Update following gas change.
	* ld-arm/attr-merge-2.attr: Update Tag_ARM_ISA_use and
	Tag_THUMB_ISA_use following gas changes.
	* ld-arm/attr-merge-4.attr: Likewise.
	* ld-arm/attr-merge-5.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-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.
This commit is contained in:
Andrew Stubbs 2009-01-26 14:36:43 +00:00
parent 17f4880d2f
commit ee3c0378c3
106 changed files with 1138 additions and 41 deletions

View File

@ -1,3 +1,19 @@
2009-01-26 Andrew Stubbs <ams@codesourcery.com>
* config/tc-arm.c (attributes_set_explicitly): New array.
(s_arm_eabi_attribute): Check return value from s_vendor_attribute.
(cpu_arch): Add ARM_ARCH_V5T.
(aeabi_set_attribute_int): New function.
(aeabi_set_attribute_string): New function.
(aeabi_set_public_attributes): Set attributes according to the user's
intentions, rather than the actual state of the binary.
Use aeabi_set_attribute_int and aeabi_set_attribute_string instead of
bfd_elf_add_proc_attr_int and bfd_elf_add_proc_attr_string.
Support WMMXv2. Use attribute names instead of numbers.
* read.c (s_vendor_attribute): Change return type to int.
Return the tag number that was set.
* read.h (s_vendor_attribute): Change return type to int.
2009-01-26 Eric B. Weddington <eric.weddington@atmel.com>
PR 9789

View File

@ -241,6 +241,8 @@ static int meabi_flags = EABI_DEFAULT;
static int meabi_flags = EF_ARM_EABI_UNKNOWN;
# endif
static int attributes_set_explicitly[NUM_KNOWN_OBJ_ATTRIBUTES];
bfd_boolean
arm_is_eabi (void)
{
@ -3884,7 +3886,10 @@ s_arm_unwind_raw (int ignored ATTRIBUTE_UNUSED)
static void
s_arm_eabi_attribute (int ignored ATTRIBUTE_UNUSED)
{
s_vendor_attribute (OBJ_ATTR_PROC);
int tag = s_vendor_attribute (OBJ_ATTR_PROC);
if (tag < NUM_KNOWN_OBJ_ATTRIBUTES)
attributes_set_explicitly[tag] = 1;
}
#endif /* OBJ_ELF */
@ -20716,6 +20721,7 @@ static const cpu_arch_ver_table cpu_arch_ver[] =
{1, ARM_ARCH_V4},
{2, ARM_ARCH_V4T},
{3, ARM_ARCH_V5},
{3, ARM_ARCH_V5T},
{4, ARM_ARCH_V5TE},
{5, ARM_ARCH_V5TEJ},
{6, ARM_ARCH_V6},
@ -20729,6 +20735,25 @@ static const cpu_arch_ver_table cpu_arch_ver[] =
{0, ARM_ARCH_NONE}
};
/* Set an attribute if it has not already been set by the user. */
static void
aeabi_set_attribute_int (int tag, int value)
{
if (tag < 1
|| tag >= NUM_KNOWN_OBJ_ATTRIBUTES
|| !attributes_set_explicitly[tag])
bfd_elf_add_proc_attr_int (stdoutput, tag, value);
}
static void
aeabi_set_attribute_string (int tag, const char *value)
{
if (tag < 1
|| tag >= NUM_KNOWN_OBJ_ATTRIBUTES
|| !attributes_set_explicitly[tag])
bfd_elf_add_proc_attr_string (stdoutput, tag, value);
}
/* Set the public EABI object attributes. */
static void
aeabi_set_public_attributes (void)
@ -20775,49 +20800,47 @@ aeabi_set_public_attributes (void)
for (i = 0; p[i]; i++)
p[i] = TOUPPER (p[i]);
}
bfd_elf_add_proc_attr_string (stdoutput, 5, p);
aeabi_set_attribute_string (Tag_CPU_name, p);
}
/* Tag_CPU_arch. */
bfd_elf_add_proc_attr_int (stdoutput, 6, arch);
aeabi_set_attribute_int (Tag_CPU_arch, arch);
/* Tag_CPU_arch_profile. */
if (ARM_CPU_HAS_FEATURE (flags, arm_ext_v7a))
bfd_elf_add_proc_attr_int (stdoutput, 7, 'A');
aeabi_set_attribute_int (Tag_CPU_arch_profile, 'A');
else if (ARM_CPU_HAS_FEATURE (flags, arm_ext_v7r))
bfd_elf_add_proc_attr_int (stdoutput, 7, 'R');
aeabi_set_attribute_int (Tag_CPU_arch_profile, 'R');
else if (ARM_CPU_HAS_FEATURE (flags, arm_ext_m))
bfd_elf_add_proc_attr_int (stdoutput, 7, 'M');
aeabi_set_attribute_int (Tag_CPU_arch_profile, 'M');
/* Tag_ARM_ISA_use. */
if (ARM_CPU_HAS_FEATURE (arm_arch_used, arm_arch_full))
bfd_elf_add_proc_attr_int (stdoutput, 8, 1);
if (ARM_CPU_HAS_FEATURE (flags, arm_ext_v1)
|| arch == 0)
aeabi_set_attribute_int (Tag_ARM_ISA_use, 1);
/* Tag_THUMB_ISA_use. */
if (ARM_CPU_HAS_FEATURE (thumb_arch_used, arm_arch_full))
bfd_elf_add_proc_attr_int (stdoutput, 9,
ARM_CPU_HAS_FEATURE (thumb_arch_used, arm_arch_t2) ? 2 : 1);
if (ARM_CPU_HAS_FEATURE (flags, arm_ext_v4t)
|| arch == 0)
aeabi_set_attribute_int (Tag_THUMB_ISA_use,
ARM_CPU_HAS_FEATURE (flags, arm_arch_t2) ? 2 : 1);
/* Tag_VFP_arch. */
if (ARM_CPU_HAS_FEATURE (thumb_arch_used, fpu_vfp_ext_d32)
|| ARM_CPU_HAS_FEATURE (arm_arch_used, fpu_vfp_ext_d32))
bfd_elf_add_proc_attr_int (stdoutput, 10, 4);
else if (ARM_CPU_HAS_FEATURE (thumb_arch_used, fpu_vfp_ext_v3)
|| ARM_CPU_HAS_FEATURE (arm_arch_used, fpu_vfp_ext_v3))
bfd_elf_add_proc_attr_int (stdoutput, 10, 3);
else if (ARM_CPU_HAS_FEATURE (thumb_arch_used, fpu_vfp_ext_v2)
|| ARM_CPU_HAS_FEATURE (arm_arch_used, fpu_vfp_ext_v2))
bfd_elf_add_proc_attr_int (stdoutput, 10, 2);
else if (ARM_CPU_HAS_FEATURE (thumb_arch_used, fpu_vfp_ext_v1)
|| ARM_CPU_HAS_FEATURE (arm_arch_used, fpu_vfp_ext_v1)
|| ARM_CPU_HAS_FEATURE (thumb_arch_used, fpu_vfp_ext_v1xd)
|| ARM_CPU_HAS_FEATURE (arm_arch_used, fpu_vfp_ext_v1xd))
bfd_elf_add_proc_attr_int (stdoutput, 10, 1);
if (ARM_CPU_HAS_FEATURE (flags, fpu_vfp_ext_d32))
aeabi_set_attribute_int (Tag_VFP_arch, 3);
else if (ARM_CPU_HAS_FEATURE (flags, fpu_vfp_ext_v3))
aeabi_set_attribute_int (Tag_VFP_arch, 4);
else if (ARM_CPU_HAS_FEATURE (flags, fpu_vfp_ext_v2))
aeabi_set_attribute_int (Tag_VFP_arch, 2);
else if (ARM_CPU_HAS_FEATURE (flags, fpu_vfp_ext_v1)
|| ARM_CPU_HAS_FEATURE (flags, fpu_vfp_ext_v1xd))
aeabi_set_attribute_int (Tag_VFP_arch, 1);
/* Tag_WMMX_arch. */
if (ARM_CPU_HAS_FEATURE (thumb_arch_used, arm_cext_iwmmxt)
|| ARM_CPU_HAS_FEATURE (arm_arch_used, arm_cext_iwmmxt))
bfd_elf_add_proc_attr_int (stdoutput, 11, 1);
/* Tag_NEON_arch. */
if (ARM_CPU_HAS_FEATURE (flags, arm_cext_iwmmxt2))
aeabi_set_attribute_int (Tag_WMMX_arch, 2);
else if (ARM_CPU_HAS_FEATURE (flags, arm_cext_iwmmxt))
aeabi_set_attribute_int (Tag_WMMX_arch, 1);
/* Tag_Advanced_SIMD_arch (formerly Tag_NEON_arch). */
if (ARM_CPU_HAS_FEATURE (flags, fpu_neon_ext_v1))
bfd_elf_add_proc_attr_int (stdoutput, 12, 1);
/* Tag_NEON_FP16_arch. */
aeabi_set_attribute_int (Tag_Advanced_SIMD_arch, 1);
/* Tag_VFP_HP_extension (formerly Tag_NEON_FP16_arch). */
if (ARM_CPU_HAS_FEATURE (flags, fpu_neon_fp16))
bfd_elf_add_proc_attr_int (stdoutput, 36, 1);
aeabi_set_attribute_int (Tag_VFP_HP_extension, 1);
}
/* Add the default contents for the .ARM.attributes section. */

View File

@ -2060,8 +2060,9 @@ skip_past_char (char ** str, char c)
}
#define skip_past_comma(str) skip_past_char (str, ',')
/* Parse an attribute directive for VENDOR. */
void
/* Parse an attribute directive for VENDOR.
Returns the attribute number read, or zero on error. */
int
s_vendor_attribute (int vendor)
{
expressionS exp;
@ -2104,7 +2105,7 @@ s_vendor_attribute (int vendor)
{
as_bad (_("Attribute name not recognised: %s"), name);
ignore_rest_of_line ();
return;
return 0;
}
}
@ -2119,7 +2120,7 @@ s_vendor_attribute (int vendor)
{
as_bad (_("expected numeric constant"));
ignore_rest_of_line ();
return;
return 0;
}
i = exp.X_add_number;
}
@ -2128,7 +2129,7 @@ s_vendor_attribute (int vendor)
{
as_bad (_("expected comma"));
ignore_rest_of_line ();
return;
return 0;
}
if (type & 2)
{
@ -2156,14 +2157,15 @@ s_vendor_attribute (int vendor)
}
demand_empty_rest_of_line ();
return;
return tag;
bad_string:
as_bad (_("bad string constant"));
ignore_rest_of_line ();
return;
return 0;
bad:
as_bad (_("expected <tag> , <value>"));
ignore_rest_of_line ();
return 0;
}
/* Parse a .gnu_attribute directive. */

View File

@ -186,5 +186,5 @@ extern void stringer (int append_zero);
extern void s_xstab (int what);
extern void s_rva (int);
extern void s_incbin (int);
extern void s_vendor_attribute (int);
extern int s_vendor_attribute (int);
extern void s_weakref (int);

View File

@ -1,3 +1,80 @@
2009-01-26 Andrew Stubbs <ams@codesourcery.com>
* gas/arm/attr-cpu-directive.d: New file.
* gas/arm/attr-cpu-directive.s: New file.
* gas/arm/attr-default.d: New file.
* gas/arm/attr-march-all.d: New file.
* gas/arm/attr-march-armv1.d: New file.
* gas/arm/attr-march-armv2.d: New file.
* gas/arm/attr-march-armv2a.d: New file.
* gas/arm/attr-march-armv2s.d: New file.
* gas/arm/attr-march-armv3.d: New file.
* gas/arm/attr-march-armv3m.d: New file.
* gas/arm/attr-march-armv4.d: New file.
* gas/arm/attr-march-armv4t.d: New file.
* gas/arm/attr-march-armv4txm.d: New file.
* gas/arm/attr-march-armv4xm.d: New file.
* gas/arm/attr-march-armv5.d: New file.
* gas/arm/attr-march-armv5t.d: New file.
* gas/arm/attr-march-armv5te.d: New file.
* gas/arm/attr-march-armv5tej.d: New file.
* gas/arm/attr-march-armv5texp.d: New file.
* gas/arm/attr-march-armv5txm.d: New file.
* gas/arm/attr-march-armv6-m.d: New file.
* gas/arm/attr-march-armv6.d: New file.
* gas/arm/attr-march-armv6j.d: New file.
* gas/arm/attr-march-armv6k.d: New file.
* gas/arm/attr-march-armv6kt2.d: New file.
* gas/arm/attr-march-armv6t2.d: New file.
* gas/arm/attr-march-armv6z.d: New file.
* gas/arm/attr-march-armv6zk.d: New file.
* gas/arm/attr-march-armv6zkt2.d: New file.
* gas/arm/attr-march-armv6zt2.d: New file.
* gas/arm/attr-march-armv7-a.d: New file.
* gas/arm/attr-march-armv7-m.d: New file.
* gas/arm/attr-march-armv7-r.d: New file.
* gas/arm/attr-march-armv7.d: New file.
* gas/arm/attr-march-armv7a.d: New file.
* gas/arm/attr-march-armv7m.d: New file.
* gas/arm/attr-march-armv7r.d: New file.
* gas/arm/attr-march-iwmmxt.d: New file.
* gas/arm/attr-march-iwmmxt2.d: New file.
* gas/arm/attr-march-xscale.d: New file.
* gas/arm/attr-mcpu.d: New file.
* gas/arm/attr-mfpu-arm1020e.d: New file.
* gas/arm/attr-mfpu-arm1020t.d: New file.
* gas/arm/attr-mfpu-arm1136jf-s.d: New file.
* gas/arm/attr-mfpu-arm1136jfs.d: New file.
* gas/arm/attr-mfpu-arm7500fe.d: New file.
* gas/arm/attr-mfpu-fpa.d: New file.
* gas/arm/attr-mfpu-fpa10.d: New file.
* gas/arm/attr-mfpu-fpa11.d: New file.
* gas/arm/attr-mfpu-fpe.d: New file.
* gas/arm/attr-mfpu-fpe2.d: New file.
* gas/arm/attr-mfpu-fpe3.d: New file.
* gas/arm/attr-mfpu-maverick.d: New file.
* gas/arm/attr-mfpu-neon-fp16.d: New file.
* gas/arm/attr-mfpu-neon.d: New file.
* gas/arm/attr-mfpu-softfpa.d: New file.
* gas/arm/attr-mfpu-softvfp+vfp.d: New file.
* gas/arm/attr-mfpu-softvfp.d: New file.
* gas/arm/attr-mfpu-vfp.d: New file.
* gas/arm/attr-mfpu-vfp10-r0.d: New file.
* gas/arm/attr-mfpu-vfp10.d: New file.
* gas/arm/attr-mfpu-vfp3.d: New file.
* gas/arm/attr-mfpu-vfp9.d: New file.
* gas/arm/attr-mfpu-vfpv2.d: New file.
* gas/arm/attr-mfpu-vfpv3-d16.d: New file.
* gas/arm/attr-mfpu-vfpv3.d: New file.
* gas/arm/attr-mfpu-vfpxd.d: New file.
* gas/arm/attr-order.d: Update Tag_ARM_ISA_use and Tag_THUMB_ISA_use.
* gas/arm/attr-override-cpu-directive.d: New file.
* gas/arm/attr-override-cpu-directive.s: New file.
* gas/arm/attr-override-mcpu.d: New file.
* gas/arm/attr-override-mcpu.s: New file.
* gas/arm/blank.s: New file.
* gas/arm/eabi_attr_1.d: Update Tag_ARM_ISA_use and Tag_THUMB_ISA_use.
2009-01-26 Nick Clifton <nickc@redhat.com>
* gas/arm/attr-order.d: Do not run this test for non-ELF based ARM

View File

@ -0,0 +1,14 @@
# name: EABI attributes from directives
# source: attr-cpu-directive.s
# as:
# 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-A8"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Application
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2

View File

@ -0,0 +1 @@
.cpu cortex-a8

View File

@ -0,0 +1,11 @@
# name: EABI attribute defaults
# source: blank.s
# as:
# 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 @@
# name: attributes for -march=all
# source: blank.s
# as: -march=all
# 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: "all"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Application
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2

View File

@ -0,0 +1,12 @@
# name: attributes for -march=armv1
# source: blank.s
# as: -march=armv1
# 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: "1"
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes

View File

@ -0,0 +1,12 @@
# name: attributes for -march=armv2
# source: blank.s
# as: -march=armv2
# 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: "2"
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes

View File

@ -0,0 +1,12 @@
# name: attributes for -march=armv2a
# source: blank.s
# as: -march=armv2a
# 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: "2A"
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes

View File

@ -0,0 +1,12 @@
# name: attributes for -march=armv2s
# source: blank.s
# as: -march=armv2s
# 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: "2S"
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes

View File

@ -0,0 +1,12 @@
# name: attributes for -march=armv3
# source: blank.s
# as: -march=armv3
# 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: "3"
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes

View File

@ -0,0 +1,12 @@
# name: attributes for -march=armv3m
# source: blank.s
# as: -march=armv3m
# 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: "3M"
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes

View File

@ -0,0 +1,12 @@
# name: attributes for -march=armv4
# source: blank.s
# as: -march=armv4
# 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: "4"
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv4t
# source: blank.s
# as: -march=armv4t
# 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: "4T"
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv4txm
# source: blank.s
# as: -march=armv4txm
# 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: "4TXM"
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1

View File

@ -0,0 +1,12 @@
# name: attributes for -march=armv4xm
# source: blank.s
# as: -march=armv4xm
# 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: "4XM"
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes

View File

@ -0,0 +1,12 @@
# name: attributes for -march=armv5
# source: blank.s
# as: -march=armv5
# 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: "5"
Tag_CPU_arch: v5T
Tag_ARM_ISA_use: Yes

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv5t
# source: blank.s
# as: -march=armv5t
# 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: "5T"
Tag_CPU_arch: v5T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv5te
# source: blank.s
# as: -march=armv5te
# 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: "5TE"
Tag_CPU_arch: v5TE
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv5tej
# source: blank.s
# as: -march=armv5tej
# 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: "5TEJ"
Tag_CPU_arch: v5TEJ
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv5texp
# source: blank.s
# as: -march=armv5texp
# 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: "5TEXP"
Tag_CPU_arch: v5TE
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv5txm
# source: blank.s
# as: -march=armv5txm
# 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: "5TXM"
Tag_CPU_arch: v5T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv6-m
# source: blank.s
# as: -march=armv6-m
# 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: "6-M"
Tag_CPU_arch: v6-M
Tag_CPU_arch_profile: Microcontroller
Tag_THUMB_ISA_use: Thumb-1

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv6
# source: blank.s
# as: -march=armv6
# 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: "6"
Tag_CPU_arch: v6
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv6j
# source: blank.s
# as: -march=armv6j
# 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: "6J"
Tag_CPU_arch: v6
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv6k
# source: blank.s
# as: -march=armv6k
# 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: "6K"
Tag_CPU_arch: v6K
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv6kt2
# source: blank.s
# as: -march=armv6kt2
# 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: "6KT2"
Tag_CPU_arch: v6T2
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv6t2
# source: blank.s
# as: -march=armv6t2
# 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: "6T2"
Tag_CPU_arch: v6T2
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv6z
# source: blank.s
# as: -march=armv6z
# 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: "6Z"
Tag_CPU_arch: v6KZ
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv6zk
# source: blank.s
# as: -march=armv6zk
# 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: "6ZK"
Tag_CPU_arch: v6K
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv6zkt2
# source: blank.s
# as: -march=armv6zkt2
# 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: "6ZKT2"
Tag_CPU_arch: v6T2
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv6zt2
# source: blank.s
# as: -march=armv6zt2
# 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: "6ZT2"
Tag_CPU_arch: v6T2
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2

View File

@ -0,0 +1,14 @@
# name: attributes for -march=armv7-a
# source: blank.s
# as: -march=armv7-a
# 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: "7-A"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Application
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv7-m
# source: blank.s
# as: -march=armv7-m
# 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: "7-M"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Microcontroller
Tag_THUMB_ISA_use: Thumb-2

View File

@ -0,0 +1,14 @@
# name: attributes for -march=armv7-r
# source: blank.s
# as: -march=armv7-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: "7-R"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Realtime
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2

View File

@ -0,0 +1,12 @@
# name: attributes for -march=armv7
# source: blank.s
# as: -march=armv7
# 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: "7"
Tag_CPU_arch: v7
Tag_THUMB_ISA_use: Thumb-2

View File

@ -0,0 +1,14 @@
# name: attributes for -march=armv7a
# source: blank.s
# as: -march=armv7a
# 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: "7A"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Application
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2

View File

@ -0,0 +1,13 @@
# name: attributes for -march=armv7m
# source: blank.s
# as: -march=armv7m
# 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: "7M"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Microcontroller
Tag_THUMB_ISA_use: Thumb-2

View File

@ -0,0 +1,14 @@
# name: attributes for -march=armv7r
# source: blank.s
# as: -march=armv7r
# 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: "7R"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Realtime
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2

View File

@ -0,0 +1,14 @@
# name: attributes for -march=iwmmxt
# source: blank.s
# as: -march=iwmmxt
# 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: "iwmmxt"
Tag_CPU_arch: v5TE
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_WMMX_arch: WMMXv1

View File

@ -0,0 +1,14 @@
# name: attributes for -march=iwmmxt2
# source: blank.s
# as: -march=iwmmxt2
# 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: "iwmmxt2"
Tag_CPU_arch: v5TE
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_WMMX_arch: WMMXv2

View File

@ -0,0 +1,13 @@
# name: attributes for -march=xscale
# source: blank.s
# as: -march=xscale
# 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: "xscale"
Tag_CPU_arch: v5TE
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1

View File

@ -0,0 +1,16 @@
# name: EABI attributes from command line
# source: blank.s
# as: -mcpu=cortex-a8
# 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-A8"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Application
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_VFP_arch: VFPv3
Tag_Advanced_SIMD_arch: NEONv1

View File

@ -0,0 +1,12 @@
# name: attributes for -mfpu=arm1020e
# source: blank.s
# as: -mfpu=arm1020e
# 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_VFP_arch: VFPv2

View File

@ -0,0 +1,12 @@
# name: attributes for -mfpu=arm1020t
# source: blank.s
# as: -mfpu=arm1020t
# 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_VFP_arch: VFPv1

View File

@ -0,0 +1,12 @@
# name: attributes for -mfpu=arm1136jf-s
# source: blank.s
# as: -mfpu=arm1136jf-s
# 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_VFP_arch: VFPv2

View File

@ -0,0 +1,12 @@
# name: attributes for -mfpu=arm1136jfs
# source: blank.s
# as: -mfpu=arm1136jfs
# 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_VFP_arch: VFPv2

View File

@ -0,0 +1,11 @@
# name: attributes for -mfpu=arm7500fe
# source: blank.s
# as: -mfpu=arm7500fe
# 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,11 @@
# name: attributes for -mfpu=fpa
# source: blank.s
# as: -mfpu=fpa
# 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,11 @@
# name: attributes for -mfpu=fpa10
# source: blank.s
# as: -mfpu=fpa10
# 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,11 @@
# name: attributes for -mfpu=fpa11
# source: blank.s
# as: -mfpu=fpa11
# 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,11 @@
# name: attributes for -mfpu=fpe
# source: blank.s
# as: -mfpu=fpe
# 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,11 @@
# name: attributes for -mfpu=fpe2
# source: blank.s
# as: -mfpu=fpe2
# 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,11 @@
# name: attributes for -mfpu=fpe3
# source: blank.s
# as: -mfpu=fpe3
# 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,11 @@
# name: attributes for -mfpu=maverick
# source: blank.s
# as: -mfpu=maverick
# 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 @@
# name: attributes for -mfpu=neon-fp16
# source: blank.s
# as: -mfpu=neon-fp16
# 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_VFP_arch: VFPv3
Tag_Advanced_SIMD_arch: NEONv1
Tag_VFP_HP_extension: Allowed

View File

@ -0,0 +1,13 @@
# name: attributes for -mfpu=neon
# source: blank.s
# as: -mfpu=neon
# 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_VFP_arch: VFPv3
Tag_Advanced_SIMD_arch: NEONv1

View File

@ -0,0 +1,11 @@
# name: attributes for -mfpu=softfpa
# source: blank.s
# as: -mfpu=softfpa
# 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,12 @@
# name: attributes for -mfpu=softvfp+vfp
# source: blank.s
# as: -mfpu=softvfp+vfp
# 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_VFP_arch: VFPv2

View File

@ -0,0 +1,11 @@
# name: attributes for -mfpu=softvfp
# source: blank.s
# as: -mfpu=softvfp
# 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,12 @@
# name: attributes for -mfpu=vfp
# source: blank.s
# as: -mfpu=vfp
# 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_VFP_arch: VFPv2

View File

@ -0,0 +1,12 @@
# name: attributes for -mfpu=vfp10-r0
# source: blank.s
# as: -mfpu=vfp10-r0
# 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_VFP_arch: VFPv1

View File

@ -0,0 +1,12 @@
# name: attributes for -mfpu=vfp10
# source: blank.s
# as: -mfpu=vfp10
# 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_VFP_arch: VFPv2

View File

@ -0,0 +1,12 @@
# name: attributes for -mfpu=vfp3
# source: blank.s
# as: -mfpu=vfp3
# 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_VFP_arch: VFPv3

View File

@ -0,0 +1,12 @@
# name: attributes for -mfpu=vfp9
# source: blank.s
# as: -mfpu=vfp9
# 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_VFP_arch: VFPv2

View File

@ -0,0 +1,12 @@
# name: attributes for -mfpu=vfpv2
# source: blank.s
# as: -mfpu=vfpv2
# 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_VFP_arch: VFPv2

View File

@ -0,0 +1,12 @@
# name: attributes for -mfpu=vfpv3-d16
# source: blank.s
# as: -mfpu=vfpv3-d16
# 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_VFP_arch: VFPv3-D16

View File

@ -0,0 +1,12 @@
# name: attributes for -mfpu=vfpv3
# source: blank.s
# as: -mfpu=vfpv3
# 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_VFP_arch: VFPv3

View File

@ -0,0 +1,12 @@
# name: attributes for -mfpu=vfpxd
# source: blank.s
# as: -mfpu=vfpxd
# 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_VFP_arch: VFPv1

View File

@ -11,6 +11,8 @@ File Attributes
Tag_nodefaults: True
Tag_CPU_name: "ARM7TDMI"
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_unknown_63: "val"
Tag_also_compatible_with: v6-M
Tag_T2EE_use: Allowed

View File

@ -0,0 +1,12 @@
# name: EABI attributes .eabi_attribute overrides .cpu
# source: attr-override-cpu-directive.s
# as:
# 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: "custom name"
Tag_CPU_arch: v7
Tag_THUMB_ISA_use: \?\?\? \(10\)

View File

@ -0,0 +1,5 @@
.cpu arm7tdmi
.eabi_attribute Tag_CPU_name, "custom name"
.eabi_attribute Tag_CPU_arch, 10
.eabi_attribute Tag_ARM_ISA_use, 0
.eabi_attribute Tag_THUMB_ISA_use, 10

View File

@ -0,0 +1,13 @@
# name: EABI attributes .cpu overrides -mcpu
# source: attr-override-mcpu.s
# as: -mcpu=cortex-a8
# 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: "ARM7TDMI"
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1

View File

@ -0,0 +1,2 @@
.cpu arm7tdmi
.fpu softfpa

View File

@ -0,0 +1 @@
@ this file left intentionally blank

View File

@ -7,6 +7,7 @@ File Attributes
Tag_CPU_name: "ARM1136JF-S"
Tag_CPU_arch: v6
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_ABI_VFP_args: VFP registers
Tag_compatibility: flag = 3, vendor = GNU
Tag_unknown_128: 1234 \(0x4d2\)

View File

@ -1,3 +1,33 @@
2009-01-26 Andrew Stubbs <ams@codesourcery.com>
* ld-arm/attr-merge-3.attr: Update following gas change.
* ld-arm/attr-merge-2.attr: Update Tag_ARM_ISA_use and
Tag_THUMB_ISA_use following gas changes.
* ld-arm/attr-merge-4.attr: Likewise.
* ld-arm/attr-merge-5.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-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.
2009-01-21 Alan Modra <amodra@bigpond.net.au>
* ld-spu/icache1.d: Add --non-ia-text to ld options.

View File

@ -2,6 +2,8 @@ Attribute Section: aeabi
File Attributes
Tag_CPU_name: "ARM7TDMI"
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_ABI_PCS_wchar_t: 4
Tag_ABI_FP_denormal: Needed
Tag_ABI_FP_exceptions: Needed

View File

@ -2,7 +2,7 @@ Attribute Section: aeabi
File Attributes
Tag_nodefaults: True
Tag_CPU_name: "ARM9E"
Tag_CPU_arch: v5TE
Tag_CPU_arch: v5T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_VFP_arch: VFPv3

View File

@ -3,4 +3,6 @@ File Attributes
Tag_CPU_name: "ARM7TDMI"
Tag_CPU_arch: v4T
Tag_CPU_arch_profile: Microcontroller
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_also_compatible_with: v6-M

View File

@ -1,3 +1,5 @@
Attribute Section: aeabi
File Attributes
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_compatibility: flag = 1, vendor = gnu

View File

@ -2,3 +2,5 @@ Attribute Section: aeabi
File Attributes
Tag_CPU_name: "ARM v7"
Tag_CPU_arch: v7
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2

View File

@ -3,3 +3,5 @@ File Attributes
Tag_CPU_raw_name: "arch_v6k"
Tag_CPU_name: "MPCORE"
Tag_CPU_arch: v6K
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1

View File

@ -4,7 +4,11 @@
#ld:
#warning: Unknown EABI object attribute 82
#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

@ -4,7 +4,11 @@
#ld:
#warning: Unknown EABI object attribute 82
#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

@ -4,8 +4,12 @@
#ld:
#warning: Unknown EABI object attribute 82
#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_unknown_82: 1 \(0x1\)

View File

@ -3,11 +3,15 @@
#as:
#ld: -r --no-wchar-size-warning
#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: "ARM7TDMI"
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_ABI_FP_denormal: Needed
Tag_ABI_FP_exceptions: Needed
Tag_ABI_FP_number_model: IEEE 754

View File

@ -3,11 +3,15 @@
#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_CPU_name: "ARM7TDMI"
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_ABI_FP_denormal: Needed
Tag_ABI_FP_exceptions: Needed
Tag_ABI_FP_number_model: IEEE 754

View File

@ -3,11 +3,15 @@
#as:
#ld: -r --no-wchar-size-warning
#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: "ARM7TDMI"
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_ABI_PCS_wchar_t: 2
Tag_ABI_FP_denormal: Needed
Tag_ABI_FP_exceptions: Needed

View File

@ -3,11 +3,15 @@
#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_CPU_name: "ARM7TDMI"
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_ABI_PCS_wchar_t: 2
Tag_ABI_FP_denormal: Needed
Tag_ABI_FP_exceptions: Needed

View File

@ -3,11 +3,15 @@
#as:
#ld: -r --no-wchar-size-warning
#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: "ARM7TDMI"
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_ABI_PCS_wchar_t: 4
Tag_ABI_FP_denormal: Needed
Tag_ABI_FP_exceptions: Needed

View File

@ -3,11 +3,15 @@
#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_CPU_name: "ARM7TDMI"
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_ABI_PCS_wchar_t: 4
Tag_ABI_FP_denormal: Needed
Tag_ABI_FP_exceptions: Needed

View File

@ -3,11 +3,15 @@
#as:
#ld: -r --no-wchar-size-warning
#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: "ARM7TDMI"
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_ABI_PCS_wchar_t: 2
Tag_ABI_FP_denormal: Needed
Tag_ABI_FP_exceptions: Needed

View File

@ -3,11 +3,15 @@
#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_CPU_name: "ARM7TDMI"
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_ABI_PCS_wchar_t: 2
Tag_ABI_FP_denormal: Needed
Tag_ABI_FP_exceptions: Needed

View File

@ -3,11 +3,15 @@
#as:
#ld: -r --no-wchar-size-warning
#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: "ARM7TDMI"
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_ABI_PCS_wchar_t: 2
Tag_ABI_FP_denormal: Needed
Tag_ABI_FP_exceptions: Needed

View File

@ -3,11 +3,15 @@
#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_CPU_name: "ARM7TDMI"
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_ABI_PCS_wchar_t: 2
Tag_ABI_FP_denormal: Needed
Tag_ABI_FP_exceptions: Needed

View File

@ -3,11 +3,15 @@
#as:
#ld: -r --no-wchar-size-warning
#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: "ARM7TDMI"
Tag_CPU_arch: v4T
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-1
Tag_ABI_PCS_wchar_t: 2
Tag_ABI_FP_denormal: Needed
Tag_ABI_FP_exceptions: Needed

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