1 # Run some tests of gas macros.
3 proc run_list_test { name opts } {
5 set testname "macros $name"
6 set file $srcdir/$subdir/$name
7 gas_run ${name}.s $opts ">&dump.out"
8 if { [regexp_diff "dump.out" "${file}.l"] } then {
10 verbose "output is [file_contents "dump.out"]" 2
16 if { ![istarget hppa*-*-*] || [istarget *-*-linux*] } {
20 if { ![istarget *c54x*-*-*] && ![istarget *c4x*-*-*] } {
26 if { ![istarget *c54x*-*-*] && ![istarget *c4x*-*-*] } {
33 gas_test_error "err.s" "" "macro infinite recursion"
35 # The tic4x-coff target fails the next test because it defines '&'
36 # as its line separator character, so the expression "(0 & TFLAG_C)"
37 # becomes divided up into two lines and the parser complains about
38 # a missing closing parenthesis for the first line.
39 setup_xfail "tic4x*-*"
40 gas_test "and.s" "" "" "logical and in macro definition"
42 case $target_triplet in {
43 { hppa*-*-* } { if [istarget *-*-linux*] { run_dump_test semi } }
51 if { ![istarget hppa*-*-*] || [istarget *-*-linux*] } {
52 # FIXME: Due to macro mishandling of ONLY_STANDARD_ESCAPES.
53 setup_xfail "avr-*" "cris-*" "crisv32-*" "msp430-*"
55 # These fail due to NO_STRING_ESCAPES
56 setup_xfail "powerpc*-*-aix*" "powerpc*-*-beos*" "powerpc*-*-macos*"
57 setup_xfail "powerpc*-*-pe" "powerpc*-*-*win*"
58 setup_xfail "rs6000-*-*"
60 # FIXME: Due to difference in what "consecutive octets" means.
61 setup_xfail "*c4x*-*-*" "*c54x*-*"
70 run_list_test badarg ""
71 case $target_triplet in {
78 default { run_list_test dot "-alm" }
81 run_list_test redef ""