view tests/runtest @ 339:385a18242485 trunk

[svn r360] Another mostly rewrite of DtoArrayInit. Should be much more robust now, and probably faster code generated for the most common cases too! Fixed issues with slice initialization (!!!) of multidimensional static arrays. Attempt to fix issue with referencing nested 'this' pointers introduced in DMD 1.033 merge.
author lindquist
date Sun, 13 Jul 2008 01:29:49 +0200
parents d7e42b5d8ccd
children c4e7003136ab
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 -L$BASEPATH/testincludes/libtangobos-partial.a"
	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 {} \;