diff options
author | Mike Frysinger <vapier@gentoo.org> | 2015-04-05 03:17:44 -0400 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2015-04-05 03:17:44 -0400 |
commit | aad84fa6aec2c3fcfebaa322cfdea7b47365e8fb (patch) | |
tree | 2d73b686791022085981e762d1a8feab041b041b /sim | |
parent | eed64ce67576be638408a051e6df1057612a7f8e (diff) | |
download | fsf-binutils-gdb-aad84fa6aec2c3fcfebaa322cfdea7b47365e8fb.zip fsf-binutils-gdb-aad84fa6aec2c3fcfebaa322cfdea7b47365e8fb.tar.gz fsf-binutils-gdb-aad84fa6aec2c3fcfebaa322cfdea7b47365e8fb.tar.bz2 |
sim: m68hc11: add a basic testsuite
Diffstat (limited to 'sim')
-rw-r--r-- | sim/testsuite/sim/m68hc11/ChangeLog | 3 | ||||
-rw-r--r-- | sim/testsuite/sim/m68hc11/allinsn.exp | 15 | ||||
-rw-r--r-- | sim/testsuite/sim/m68hc11/pass.s | 7 | ||||
-rw-r--r-- | sim/testsuite/sim/m68hc11/testutils.inc | 53 |
4 files changed, 78 insertions, 0 deletions
diff --git a/sim/testsuite/sim/m68hc11/ChangeLog b/sim/testsuite/sim/m68hc11/ChangeLog new file mode 100644 index 0000000..d3f8b9d --- /dev/null +++ b/sim/testsuite/sim/m68hc11/ChangeLog @@ -0,0 +1,3 @@ +2015-04-05 Mike Frysinger <vapier@gentoo.org> + + * pass.s, allinsn.exp, testutils.inc: New files. diff --git a/sim/testsuite/sim/m68hc11/allinsn.exp b/sim/testsuite/sim/m68hc11/allinsn.exp new file mode 100644 index 0000000..db0cbd5 --- /dev/null +++ b/sim/testsuite/sim/m68hc11/allinsn.exp @@ -0,0 +1,15 @@ +# m68hc11 simulator testsuite + +if [istarget m68hc11-*] { + # all machines + set all_machs "m68hc11" + + foreach src [lsort [glob -nocomplain $srcdir/$subdir/*.s]] { + # If we're only testing specific files and this isn't one of them, + # skip it. + if ![runtest_file_p $runtests $src] { + continue + } + run_sim_test $src $all_machs + } +} diff --git a/sim/testsuite/sim/m68hc11/pass.s b/sim/testsuite/sim/m68hc11/pass.s new file mode 100644 index 0000000..302a7fb --- /dev/null +++ b/sim/testsuite/sim/m68hc11/pass.s @@ -0,0 +1,7 @@ +# check that the sim doesn't die immediately. +# mach: m68hc11 + +.include "testutils.inc" + + start + pass diff --git a/sim/testsuite/sim/m68hc11/testutils.inc b/sim/testsuite/sim/m68hc11/testutils.inc new file mode 100644 index 0000000..3d30de2 --- /dev/null +++ b/sim/testsuite/sim/m68hc11/testutils.inc @@ -0,0 +1,53 @@ +# MACRO: exit + .macro exit nr + ldd # \nr + # The debug insn class. + .byte 0xcd + # The exit utility function. + .byte 0x03 + .endm + +# MACRO: pass +# Write 'pass' to stdout and quit + .macro pass + # Point to the string. + # NB: See comment above _pass below. + ldx #0x8000 + # Number of bytes to write. + ldd #5 + # The debug insn class. + .byte 0xcd + # The write utility function. + .byte 0x01 + exit 0 + .endm + +# MACRO: ffail +# Write 'ffail' to stdout and quit +# Normally this would be 'fail', but m68k has a pseudo "fail" op. + .macro ffail + # Point to the string. + ldx #0x8006 + # Number of bytes to write. + ldd #5 + # The debug insn class. + .byte 0xcd + # The write utility function. + .byte 0x01 + exit 0 + .endm + +# MACRO: start +# All assembler tests should start with a call to "start" + .macro start + .text +# These need to be at the start of text as it's the only stable address. +# The sim will load all sections starting at the .text address and ignore +# the addresses for the other sections. +_pass: + .asciz "pass\n" +_fail: + .asciz "fail\n" +.global _start +_start: + .endm |