aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/ada/acats/run_all.sh
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/ada/acats/run_all.sh')
-rwxr-xr-xgcc/testsuite/ada/acats/run_all.sh27
1 files changed, 26 insertions, 1 deletions
diff --git a/gcc/testsuite/ada/acats/run_all.sh b/gcc/testsuite/ada/acats/run_all.sh
index d11c6d7ee8f..033bf407a0f 100755
--- a/gcc/testsuite/ada/acats/run_all.sh
+++ b/gcc/testsuite/ada/acats/run_all.sh
@@ -71,10 +71,12 @@ rm -f $dir/acats.sum $dir/acats.log
display " === acats configuration ==="
+target=`$GCC -dumpmachine`
+
display target gcc is $GCC
display `$GCC -v 2>&1`
display host=`gcc -dumpmachine`
-display target=`$GCC -dumpmachine`
+display target=$target
display `type gnatmake`
gnatls -v >> $dir/acats.log
display ""
@@ -88,9 +90,32 @@ cd $dir/support
cp $testdir/support/*.ada $testdir/support/*.a $testdir/support/*.tst $dir/support
+# Find out the size in bit of an address on the target
+target_gnatmake $testdir/support/impbit.adb >> $dir/acats.log 2>&1
+target_run $dir/support/impbit > $dir/support/impbit.out 2>&1
+target_bit=`cat $dir/support/impbit.out`
+echo target_bit="$target_bit" >> $dir/acats.log
+
+# Find out a suitable asm statement
+# Adapted from configure.ac gcc_cv_as_dwarf2_debug_line
+case "$target" in
+ ia64*-*-* | s390*-*-*)
+ target_insn="nop 0"
+ ;;
+ mmix-*-*)
+ target_insn="swym 0"
+ ;;
+ *)
+ target_insn="nop"
+ ;;
+esac
+echo target_insn="$target_insn" >> $dir/acats.log
+
sed -e "s,ACATS4GNATDIR,$dir,g" \
< $testdir/support/impdef.a > $dir/support/impdef.a
sed -e "s,ACATS4GNATDIR,$dir,g" \
+ -e "s,ACATS4GNATBIT,$target_bit,g" \
+ -e "s,ACATS4GNATINSN,$target_insn,g" \
< $testdir/support/macro.dfs > $dir/support/MACRO.DFS
sed -e "s,ACATS4GNATDIR,$dir,g" \
< $testdir/support/tsttests.dat > $dir/support/TSTTESTS.DAT