aboutsummaryrefslogtreecommitdiff
path: root/gas/testsuite
diff options
context:
space:
mode:
authorPaul Brook <paul@codesourcery.com>2005-10-08 17:07:19 +0000
committerPaul Brook <paul@codesourcery.com>2005-10-08 17:07:19 +0000
commitee065d83ee798906655323c4c20065788175d3d6 (patch)
treefdfb630b278b322edbd89c03697d003a30b394b2 /gas/testsuite
parent19590ef7f6590cb0dd72cae7752dc47ec5224182 (diff)
downloadgdb-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/ChangeLog13
-rw-r--r--gas/testsuite/gas/arm/arm7t.d2
-rw-r--r--gas/testsuite/gas/arm/bignum1.d2
-rw-r--r--gas/testsuite/gas/arm/eabi_attr_1.d13
-rw-r--r--gas/testsuite/gas/arm/eabi_attr_1.s9
-rw-r--r--gas/testsuite/gas/arm/mapping.d2
-rw-r--r--gas/testsuite/gas/arm/unwind.d2
-rw-r--r--gas/testsuite/gas/elf/elf.exp6
-rw-r--r--gas/testsuite/gas/elf/section0.d2
-rw-r--r--gas/testsuite/gas/elf/section1.d2
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
+#...