Mercurial > projects > ldc
view tests/runtest @ 323:0d52412d5b1a trunk
[svn r344] Fixed some very minor issues with the usage listing when calling llvmdc with no arguments.
Changed the way moduleinfo is registered to use the same approach as DMD, this eliminates the need for correct linking order and should make the way for using a natively compiled runtime library. This should speed up linking tremendously and should now be possible.
Fixed the llvm.used array to only be emitted if really necessary.
author | lindquist |
---|---|
date | Wed, 09 Jul 2008 23:43:51 +0200 |
parents | 1aaf6ff7f685 |
children | d7e42b5d8ccd |
line wrap: on
line source
#!/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 BASEPATH=`pwd` 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 echo "Remember to make sure you have an up to date runtime!" echo if [ -z "$DMD" ] ; then echo "Testing with llvmdc. Set DMD environment variable to select compiler." DMD="llvmdc -O0 -I$BASEPATH/testincludes" echo "Default is $DMD" 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 -name "*\.exe" -exec rm {} \;