diff options
author | Paul Brook <paul@codesourcery.com> | 2005-10-08 17:07:19 +0000 |
---|---|---|
committer | Paul Brook <paul@codesourcery.com> | 2005-10-08 17:07:19 +0000 |
commit | ee065d83ee798906655323c4c20065788175d3d6 (patch) | |
tree | fdfb630b278b322edbd89c03697d003a30b394b2 /gas/testsuite | |
parent | 19590ef7f6590cb0dd72cae7752dc47ec5224182 (diff) | |
download | gdb-ee065d83ee798906655323c4c20065788175d3d6.zip gdb-ee065d83ee798906655323c4c20065788175d3d6.tar.gz gdb-ee065d83ee798906655323c4c20065788175d3d6.tar.bz2 |
2005-10-08 Paul Brook <paul@codesourcery.com>
bfd/
* elf32-arm.c: Move #include "elf/arm.h" after libbfd.h.
(NUM_KNOWN_ATTRIBUTES): Define.
(aeabi_attribute, aeabi_attribute_list): Define.
(elf32_arm_obj_tdata): Add known_eabi_attributes and
other_eabi_attributes.
(uleb128_size, is_default_attr, eabi_attr_size,
elf32_arm_eabi_attr_size, write_uleb128, write_eabi_attribute,
elf32_arm_set_eabi_attr_contents, elf32_arm_bfd_final_link,
elf32_arm_new_eabi_attr, attr_strdup, elf32_arm_add_eabi_attr_int,
elf32_arm_add_eabi_attr_compat, copy_eabi_attributes,
elf32_arm_merge_eabi_attributes): New functions.
(elf32_arm_copy_private_bfd_data): Copy EABI object attributes.
(elf32_arm_fake_sections): Handle .ARM.attributes.
(elf32_arm_parse_attributes): New function.
(elf32_arm_section_from_shdr): Use it.
(bfd_elf32_bfd_final_link): Define.
gas/
* config/tc-arm.c: Don't provide fallback default for CPU_DEFAULT.
(arm_arch_used, thumb_arch_used, selected_cpu, selected_cpu_name):
New variables.
(arm_cpu_option_table): Add canonical_name.
(arm_cpus): Populate canonical_name field.
(s_arm_eabi_attribute, s_arm_arch, s_arm_cpu, s_arm_fpu,
aeabi_set_public_attributes, arm_md_end): New functions.
(md_pseudo_table): Add "cpu", "arch", "fpu" and "eabi_attribute".
(md_assemble): Set thumb_arch_used and arm_arch_used.
(md_begin): Set defaut cpu if CPU_DEFAULT not defined.
* config/tc-arm.h (md_end): Define.
* doc/c-arm.texi: Document .cpu, .arch, .fpu and .eabi_attribute.
gas/testsuite/
* gas/arm/eabi_attr_1.s: New test.
* gas/arm/eabi_attr_1.d: New test.
* gas/arm/arm7t.d: Only disassemble code sections.
* gas/arm/bignum1.d: Ignore Arm object attribute sections.
* gas/arm/mapping.d: Ditto.
* gas/arm/unwind.d: Ditto.
* gas/elf/section0.d: Ditto.
* gas/elf/section1.d: Ditto.
* gas/elf/elf.exp: Set target_machine for Arm EABI based targets.
* gas/elf/section2.e-armeabi: New file.
include/elf/
* arm.h: Add prototypes for BFD object attribute routines.
ld/testsuite/
* ld-arm/arm-rel31.d: Ignore Arm object attribute sections.
* ld-arm/arm-target1-abs.d: Ditto.
* ld-arm/arm-target1-rel.d: Ditto.
* ld-arm/arm-target2-abs.d: Ditto.
* ld-arm/arm-target2-got-rel.d: Ditto.
* ld-arm/arm-target2-rel.d: Ditto.
Diffstat (limited to 'gas/testsuite')
-rw-r--r-- | gas/testsuite/ChangeLog | 13 | ||||
-rw-r--r-- | gas/testsuite/gas/arm/arm7t.d | 2 | ||||
-rw-r--r-- | gas/testsuite/gas/arm/bignum1.d | 2 | ||||
-rw-r--r-- | gas/testsuite/gas/arm/eabi_attr_1.d | 13 | ||||
-rw-r--r-- | gas/testsuite/gas/arm/eabi_attr_1.s | 9 | ||||
-rw-r--r-- | gas/testsuite/gas/arm/mapping.d | 2 | ||||
-rw-r--r-- | gas/testsuite/gas/arm/unwind.d | 2 | ||||
-rw-r--r-- | gas/testsuite/gas/elf/elf.exp | 6 | ||||
-rw-r--r-- | gas/testsuite/gas/elf/section0.d | 2 | ||||
-rw-r--r-- | gas/testsuite/gas/elf/section1.d | 2 |
10 files changed, 52 insertions, 1 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index fa3cd2a..6896141 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,16 @@ +2005-10-08 Paul Brook <paul@codesourcery.com> + + * gas/arm/eabi_attr_1.s: New test. + * gas/arm/eabi_attr_1.d: New test. + * gas/arm/arm7t.d: Only disassemble code sections. + * gas/arm/bignum1.d: Ignore Arm object attribute sections. + * gas/arm/mapping.d: Ditto. + * gas/arm/unwind.d: Ditto. + * gas/elf/section0.d: Ditto. + * gas/elf/section1.d: Ditto. + * gas/elf/elf.exp: Set target_machine for Arm EABI based targets. + * gas/elf/section2.e-armeabi: New file. + 2005-10-06 Khem Raj <kraj@mvista.com> NIIBE Yutaka <gniibe@m17n.org> diff --git a/gas/testsuite/gas/arm/arm7t.d b/gas/testsuite/gas/arm/arm7t.d index 768ce13..17e4e9d 100644 --- a/gas/testsuite/gas/arm/arm7t.d +++ b/gas/testsuite/gas/arm/arm7t.d @@ -1,4 +1,4 @@ -#objdump: -Dr --prefix-addresses --show-raw-insn +#objdump: -dr --prefix-addresses --show-raw-insn #name: ARM arm7t #as: -mcpu=arm7t -EL diff --git a/gas/testsuite/gas/arm/bignum1.d b/gas/testsuite/gas/arm/bignum1.d index e75c1fb..cef2036 100644 --- a/gas/testsuite/gas/arm/bignum1.d +++ b/gas/testsuite/gas/arm/bignum1.d @@ -8,3 +8,5 @@ Contents of section .data: 0000 [08]0000000 000000[08]0 11111111 11111111 \.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\. +# Ignore .ARM.attributes section +#... diff --git a/gas/testsuite/gas/arm/eabi_attr_1.d b/gas/testsuite/gas/arm/eabi_attr_1.d new file mode 100644 index 0000000..0e97add --- /dev/null +++ b/gas/testsuite/gas/arm/eabi_attr_1.d @@ -0,0 +1,13 @@ +# as: -meabi=4 +# 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: "ARM1136JF-S" + Tag_CPU_arch: v6 + Tag_ARM_ISA_use: Yes + Tag_ABI_VFP_args: VFP registers + Tag_compatibility: flag = 3, vendor = GNU + Tag_unknown_128: 1234 \(0x4d2\) + Tag_unknown_129: "bar" diff --git a/gas/testsuite/gas/arm/eabi_attr_1.s b/gas/testsuite/gas/arm/eabi_attr_1.s new file mode 100644 index 0000000..3375acd --- /dev/null +++ b/gas/testsuite/gas/arm/eabi_attr_1.s @@ -0,0 +1,9 @@ +.text +.cpu arm1136jf-s +foo: +bx lr +.eabi_attribute 32, 3, "GNU" +.eabi_attribute 28, 1 +.eabi_attribute 128, 1234 +.eabi_attribute 129, "bar" + diff --git a/gas/testsuite/gas/arm/mapping.d b/gas/testsuite/gas/arm/mapping.d index 7d05107..e6db1a9 100644 --- a/gas/testsuite/gas/arm/mapping.d +++ b/gas/testsuite/gas/arm/mapping.d @@ -16,5 +16,7 @@ SYMBOL TABLE: 0+00 l .data 0+0 \$d 0+00 l d foo 0+0 (|foo) 0+00 l foo 0+0 \$t +#Maybe section symbol for .ARM.attributes +#... 0+00 g .text 0+0 mapping 0+08 g F .text 0+0 thumb_mapping diff --git a/gas/testsuite/gas/arm/unwind.d b/gas/testsuite/gas/arm/unwind.d index 2a04d44..b42bf73 100644 --- a/gas/testsuite/gas/arm/unwind.d +++ b/gas/testsuite/gas/arm/unwind.d @@ -37,3 +37,5 @@ Contents of section .ARM.exidx: 0000 00000000 (b0b0a880 04000000|80a8b0b0 00000004) 00000000 .* 0010 (08000000 0c000000 0c000000 1c000000|00000008 0000000c 0000000c 0000001c) .* 0020 (10000000 08849780|00000010 80978408) .* +# Ignore .ARM.attributes section +#... diff --git a/gas/testsuite/gas/elf/elf.exp b/gas/testsuite/gas/elf/elf.exp index 89dffe8..4068253 100644 --- a/gas/testsuite/gas/elf/elf.exp +++ b/gas/testsuite/gas/elf/elf.exp @@ -50,6 +50,12 @@ if { ([istarget "*-*-*elf*"] if {[istarget m32r*-*-*]} then { set target_machine -m32r } + if { ([istarget "*arm*-*-*"] + || [istarget "xscale*-*-*"]) + && ([istarget "*-*-*eabi"] + || [istarget "*-*-symbianelf"])} then { + set target_machine -armeabi + } run_dump_test "ehopt0" run_dump_test "group0a" run_dump_test "group0b" diff --git a/gas/testsuite/gas/elf/section0.d b/gas/testsuite/gas/elf/section0.d index 286327c..6978d0a 100644 --- a/gas/testsuite/gas/elf/section0.d +++ b/gas/testsuite/gas/elf/section0.d @@ -13,3 +13,5 @@ Contents of section B: 0+000 02 ?02 ?02 ?02 ?02 ?02 ?02 ?02 ?02 ?02 ?02 ?02 ?02 ?02 ?02 ?02.* Contents of section C: 0+000 03 ?03 ?03 ?03 ?03 ?03 ?03 ?03 ?03 ?03 ?03 ?03 ?03 ?03 ?03 ?03.* +# Arm includes a .ARM.attributes section here +#... diff --git a/gas/testsuite/gas/elf/section1.d b/gas/testsuite/gas/elf/section1.d index 4084752..c6b7fd4 100644 --- a/gas/testsuite/gas/elf/section1.d +++ b/gas/testsuite/gas/elf/section1.d @@ -13,3 +13,5 @@ Contents of section B: 0+000 02 ?02 ?02 ?02 ?02 ?02 ?02 ?02 ?02 ?02 ?02 ?02 ?02 ?02 ?02 ?02.* Contents of section C: 0+000 03 ?03 ?03 ?03 ?03 ?03 ?03 ?03 ?03 ?03 ?03 ?03 ?03 ?03 ?03 ?03.* +# Arm includes a .ARM.attributes section here +#... |