| # |
| # Some generic m68k tests |
| # |
| if [istarget "m68hc11-*-*"] then { |
| return |
| } |
| if [istarget "m68hc12-*-*"] then { |
| return |
| } |
| if [istarget "m6811-*-*"] then { |
| return |
| } |
| if [istarget "m6812-*-*"] then { |
| return |
| } |
| if { [istarget m68*-*-*] || [istarget fido*-*-*] } then { |
| gas_test "t2.s" "" "" "cross-section branch" |
| if [istarget m68*-motorola-sysv] then { |
| run_dump_test t2 |
| } |
| |
| gas_test "pic1.s" "" "" "PIC generation" |
| |
| gas_test "disperr.s" "-m68020" "" "Incorrect Displacement too long error" |
| |
| gas_test_error "p2410.s" "" "out-of-range 'bras'" |
| |
| # Reloc types etc. need changing for aout and coff to pass. |
| setup_xfail "*-*" |
| clear_xfail "*-*-*elf*" "*-*-sysv4*" "*-*-rtems" "*-*-*gnu*" "*-*-psos*" |
| run_dump_test pcrel |
| |
| # Since fido is basically CPU32, it does not support those |
| # instructions beyond CPU32. Disable those tests that test them. |
| if ![istarget fido-*-*] then { |
| run_dump_test operands |
| run_dump_test cas |
| run_dump_test bitfield |
| } else { |
| # Test fido-specific instructions. |
| run_dump_test fido |
| } |
| |
| run_dump_test link |
| |
| # fido does not have a floating point unit. |
| if ![istarget fido-*-*] then { |
| run_dump_test fmoveml |
| } |
| |
| run_dump_test mcf-mov3q |
| run_dump_test mcf-movsr |
| run_dump_test mode5 |
| run_dump_test mcf-mac |
| run_dump_test mcf-emac |
| run_dump_test mcf-coproc |
| run_dump_test mcf-fpu |
| run_dump_test mcf-trap |
| run_dump_test mcf-wdebug |
| if { [istarget *-*-elf] || [istarget *-*-linux*] } then { |
| run_dump_test arch-cpu-1 |
| } |
| run_dump_test cpu32 |
| |
| run_dump_test br-isaa |
| run_dump_test br-isab |
| run_dump_test br-isac |
| |
| run_dump_test ctrl-1 |
| run_dump_test ctrl-2 |
| |
| if { [istarget *-*-netbsd] } then { |
| run_dump_test p3041 |
| } |
| |
| set testname "68000 operands" |
| gas_run "operands.s" "-m68000" "2>err.out" |
| if ![string match "child process exited abnormally" $comp_output] then { |
| send_log "$comp_output\n" |
| verbose "$comp_output" 3 |
| fail $testname |
| } else { |
| if [regexp_diff "err.out" "$srcdir/$subdir/op68000.d"] then { |
| fail $testname |
| } else { |
| pass $testname |
| } |
| } |
| } |
| if [info exists errorInfo] then { |
| unset errorInfo |
| } |