summaryrefslogtreecommitdiff
path: root/sim/testsuite/bfin/allinsn.exp
diff options
context:
space:
mode:
Diffstat (limited to 'sim/testsuite/bfin/allinsn.exp')
-rw-r--r--sim/testsuite/bfin/allinsn.exp43
1 files changed, 43 insertions, 0 deletions
diff --git a/sim/testsuite/bfin/allinsn.exp b/sim/testsuite/bfin/allinsn.exp
new file mode 100644
index 00000000000..aa304eaa9b4
--- /dev/null
+++ b/sim/testsuite/bfin/allinsn.exp
@@ -0,0 +1,43 @@
+# Analog Devices Blackfin simulator testsuite
+
+if [istarget bfin-*-elf] {
+ # all machines
+ set all_machs "bfin"
+
+ # See if we have a preprocessor available.
+ if { [target_compile $srcdir/$subdir/usp.S compilercheck.x "preprocess" \
+ [list "incdir=$srcdir/$subdir"]] == "" } {
+ set has_cpp 1
+ } {
+ verbose -log "Can't execute preprocessor"
+ set has_cpp 0
+ }
+
+ # See if we have a compiler available.
+ if { [target_compile $srcdir/$subdir/argc.c compilercheck.x "executable" \
+ [list "incdir=$srcdir/$subdir" "additional_flags=-msim"]] == "" } {
+ set has_cc 1
+ } {
+ verbose -log "Can't execute C compiler"
+ set has_cc 0
+ }
+
+ foreach src [lsort [glob -nocomplain $srcdir/$subdir/*.\[csS\]]] {
+ # If we don't have a compiler available, skip tests :(.
+ if { $has_cpp == 0 && [string match "*.S" $src] } {
+ untested $src
+ continue
+ }
+ if { $has_cc == 0 && [string match "*.c" $src] } {
+ untested $src
+ continue
+ }
+
+ # 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
+ }
+}