[2/2] sim: microblaze: start a testsuite
Commit Message
Since the sim doesn't have any debug support in it, we can only exit
cleanly. But this is still better than nothing.
Change the default microblaze sim to not dump the debug load output
when running. No other does this, and it breaks the testsuite.
Committed.
---
sim/microblaze/ChangeLog | 4 ++++
sim/microblaze/interp.c | 2 +-
sim/testsuite/sim/microblaze/ChangeLog | 3 +++
sim/testsuite/sim/microblaze/allinsn.exp | 15 +++++++++++++++
sim/testsuite/sim/microblaze/pass.s | 8 ++++++++
sim/testsuite/sim/microblaze/testutils.inc | 29 +++++++++++++++++++++++++++++
6 files changed, 60 insertions(+), 1 deletion(-)
create mode 100644 sim/testsuite/sim/microblaze/ChangeLog
create mode 100644 sim/testsuite/sim/microblaze/allinsn.exp
create mode 100644 sim/testsuite/sim/microblaze/pass.s
create mode 100644 sim/testsuite/sim/microblaze/testutils.inc
@@ -1,5 +1,9 @@
2015-03-29 Mike Frysinger <vapier@gentoo.org>
+ * interp.c (sim_load): Set verbose to 0 when calling sim_load_file.
+
+2015-03-29 Mike Frysinger <vapier@gentoo.org>
+
* configure.ac: Call SIM_AC_OPTION_ENDIAN, SIM_AC_OPTION_ALIGNMENT,
SIM_AC_OPTION_HOSTENDIAN, SIM_AC_OPTION_ENVIRONMENT, and
SIM_AC_OPTION_INLINE.
@@ -820,7 +820,7 @@ sim_load (SIM_DESC sd, const char *prog, bfd *abfd, int from_tty)
/* from sh -- dac */
prog_bfd = sim_load_file (sd, myname, callback, prog, abfd,
/* sim_kind == SIM_OPEN_DEBUG, */
- 1,
+ 0,
0, sim_write);
if (prog_bfd == NULL)
return SIM_RC_FAIL;
new file mode 100644
@@ -0,0 +1,3 @@
+2015-03-29 Mike Frysinger <vapier@gentoo.org>
+
+ * pass.s, allinsn.exp, testutils.inc: New files.
new file mode 100644
@@ -0,0 +1,15 @@
+# microblaze simulator testsuite
+
+if [istarget microblaze-*] {
+ # all machines
+ set all_machs "microblaze"
+
+ 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
+ }
+}
new file mode 100644
@@ -0,0 +1,8 @@
+# check that the sim doesn't die immediately.
+# mach: microblaze
+# output:
+
+.include "testutils.inc"
+
+ start
+ pass
new file mode 100644
@@ -0,0 +1,29 @@
+# MACRO: exit
+ .macro exit nr
+ addi r3, r0, \nr;
+ bri 0;
+ .endm
+
+# MACRO: pass
+# Write 'pass' to stdout and quit
+ .macro pass
+ exit 0
+ .data
+ 1: .asciz "pass\n"
+ .endm
+
+# MACRO: fail
+# Write 'fail' to stdout and quit
+ .macro fail
+ exit 1
+ .data
+ 1: .asciz "fail\n"
+ .endm
+
+# MACRO: start
+# All assembler tests should start with a call to "start"
+ .macro start
+ .text
+.global _start
+_start:
+ .endm