4 proc run_errors_test
{ name opts tname
} {
7 set file $srcdir
/$subdir
/$
name
8 gas_run $
{name}.s $opts
">&${name}.out"
9 if { [regexp_diff
"${name}.out" "${file}.l"] } then {
11 verbose
"output is [file_contents "${name}.out"]" 2
17 if {[istarget
*arm
*-*-*] ||
[istarget
"xscale-*-*"]} then {
19 if {[istarget
*-wince
-*]} then {
20 run_dump_test
"wince_inst"
21 run_dump_test
"wince_ldconst"
22 run_dump_test
"wince_arm7t"
23 run_dump_test
"wince_copro"
26 run_dump_test
"ldconst"
33 run_errors_test
"armv1-bad" "-mcpu=arm7m" "ARM v1 errors"
35 gas_test
"arm3.s" "-mcpu=arm3" $stdoptlist "Arm 3 instructions"
37 gas_test
"arm6.s" "-mcpu=arm6" $stdoptlist "Arm 6 instructions"
39 gas_test
"arm7dm.s" "-mcpu=arm7dm" $stdoptlist "Arm 7DM instructions"
41 if {! [istarget arm
*-*-aout
] && ![istarget arm
-*-pe
]} then {
42 # The arm
-aout port does not support Thumb
mode.
43 gas_test
"thumb.s" "-mcpu=arm7t" $stdoptlist "Thumb instructions"
46 gas_test
"arch4t.s" "-march=armv4t" $stdoptlist "Arm architecture 4t instructions"
48 run_dump_test
"arch5tej"
50 gas_test
"immed.s" "" $stdoptlist "immediate expressions"
52 gas_test
"float.s" "-mcpu=arm7tdmi -mfpu=fpa" $stdoptlist "Core floating point instructions"
54 run_dump_test
"fpa-monadic"
56 run_dump_test
"fpa-dyadic"
58 run_dump_test
"fpa-mem"
60 run_dump_test
"vfp1xD"
64 run_errors_test
"vfp-bad" "-mfpu=vfp" "VFP errors"
66 run_dump_test
"xscale"
70 run_errors_test
"req" "-mcpu=arm7m" ".req errors"
72 run_dump_test
"maverick"
74 run_dump_test
"archv6"
76 run_dump_test
"thumbv6"
78 run_errors_test
"r15-bad" "" "Invalid use of r15 errors"
80 if {[istarget
*-*-elf
*] ||
[istarget
*-*-linux
*]} then {
83 run_dump_test
"mapping"
86 gas_test
"offset.s" "" $stdoptlist "OFFSET_IMM regression"
89 # Not all arm targets are bi
-endian
, so only run this test
on ones
90 # we know that are. FIXME
: We should probably also
key off armeb
/armel.
92 if [istarget arm
-*-pe
] {
93 run_dump_test
"le-fpconst"
95 # Since big
-endian numbers have the
normal format
, this doesn
't exist.
96 #run_dump_test "be-fpconst"
99 if [istarget xscale-*] {
100 run_dump_test "iwmmxt"
101 run_errors_test "iwmmxt-bad" "-mcpu=iwmmxt" "iWMMXt errors"