Files
ldc/tests/runtest
Tomas Lindquist Olsen d03c3a7757 [svn r233] Added: -oq command line option for writing fully qualified object names.
Added: started support for x86 80bit floating point.
Changed: aggregates passed by value now use the llvm 'byval' parameter attribute, also lays ground work for
using other attributes.
Changed: eliminated a lot more std::vectorS, these showed up pretty much at the top when profiling!
Changed: performed other misc. cleanups.
Changed: halt expression now call the new llvm trap intrinsic instead of an assert(0).
Changed: dstress suite now passes -O0 by default, this only eliminates unreferenced globals, which speeds up
linking quite a bit.
2008-06-05 06:38:36 +02:00

57 lines
1.6 KiB
Bash
Executable File

#!/bin/bash
# check for command line arguments
if [ -z $1 ] ; then
echo "Usage: `basename $0` <test result file>"
exit
fi
TARGETFILE=$1
# check for dstress
if ! [ -d dstress ] ; then
echo "Testing requires DStress to be checked out into dstress/"
exit
fi
cd dstress
# remove excessive tests
sed -e 's/torture-//g' -i Makefile
# make sure only .d files in 'run' tests are run
sed -e 's/find run -type f |/find run -type f -name "*\\\\.d" |/' -i Makefile
sed -e 's/find norun -type f |/find norun -type f -name "*\\\\.d" |/' -i Makefile
# make sure linker-generated bc files are deleted
sed -e 's/find run -type f -name "\*\\\\\.exe" |/find run -type f -name "*\\\\.exe" -o -name "*\\\\.bc" |/' -i Makefile
sed -e 's/find norun -type f -name "\*\\\\\.exe" |/find norun -type f -name "*\\\\.exe" -o -name "*\\\\.bc" |/' -i Makefile
# impose more conservative constraints (10s and 256 MB)
sed -e 's/crashRun 30 1000/crashRun 10 256/' -i dstress.c
echo
echo "Running new test and storing result in $TARGETFILE ..."
echo
if [ -z $DMD ] ; then
echo "Testing with llvmdc. Set DMD environment variable to select compiler."
DMD="llvmdc -O0"
else
echo "Using compiler given by DMD environment variable: $DMD"
fi
echo
echo "This will take a while, try 'tail -f $TARGETFILE' to follow progress."
echo "Note that aborting is tricky. Try killing the processes by the name of"
echo "run.sh, compile.sh, nocompile.sh and norun.sh as well as this one."
echo
DMD=$DMD make compile nocompile run norun > ../$TARGETFILE
cd ..
echo
echo "Cleanup... (removing all .bc and .exe files)"
echo
find dstress -name "*\.bc" -o "*\.exe" -exec rm {} \;