-EDG_BIN="edg"
-EDG_CFLAGS="--c --gnu=400002 -I/usr/lib/gcc-lib/i686-pc-linux-gnu/4.1.1/include"
+#!/bin/sh
+
+EDG_BIN="eccp"
+EDG_CFLAGS="${ADDCFLAGS} -O3 -c -D__builtin_memcpy=memcpy -D__builtin_memset=memset -D__builtin_strlen=strlen -D__builtin_strcpy=strcpy -D__builtin_strcmp=strcmp -DNO_TRAMPOLINES"
GCC_CFLAGS="-O3 -g -fomit-frame-pointer"
LINKFLAGS="-lm"
+TIMEOUT_COMPILE=300
+TIMEOUT_RUN=30
CFILES="*.c"
OUTPUTDIR="stats-`date +%d.%m.%y`"
# so endless apps stop at some point...
#ulimit -t2
-for file in ${CFILES}; do
+basedir=`pwd`
+
+DIRS=". gcc-testsuite gcc-testsuite/ieee langshootout"
+test -n "$1" && DIRS="$1"
+
+for dir in $DIRS; do
+ curdir=$basedir/$dir
+ echo "<section name=\"$curdir/\">" >> $XMLRES
+for file in $curdir/$CFILES; do
COMPILE_RES="ok"
LINK_RES="omitted"
GCC_RES="ok"
echo "Building $name"
echo "Results for $name" > $res
echo "*** EDG/FIRM Compile" >> $res
- CMD="${EDG_BIN} ${EDG_CFLAGS} $file"
+ CMD="ulimit -t${TIMEOUT_COMPILE} ; ${EDG_BIN} ${EDG_CFLAGS} $file"
echo "$CMD" >> $res
- $CMD >> $res 2>&1 || COMPILE_RES="failed"
+ /bin/bash -c "ulimit -t${TIMEOUT_COMPILE} ; ${EDG_BIN} ${EDG_CFLAGS} $file" >> $res 2>&1 || COMPILE_RES="failed"
if [ ${COMPILE_RES} == "ok" ]; then
LINK_RES="ok"
- CMD="mv $name.s build_firm/$name.s"
+ CMD="mv $curdir/$name.s build_firm/$name.s"
echo "$CMD" >> $res
$CMD >> $res 2>&1
echo "*** Linking" >> $res
GCC_RUN_RES="ok"
echo "*** Run GCC" >> $res
- CMD="build_gcc/$name.exe > $OUTPUTDIR/result_gcc_$name.txt 2>&1"
+ CMD="ulimit -t${TIMEOUT_RUN} ; build_gcc/$name.exe > $OUTPUTDIR/result_gcc_$name.txt 2>&1"
echo "$CMD" >> $res
- /bin/bash -c "ulimit -t2 ; build_gcc/$name.exe" > $OUTPUTDIR/result_gcc_$name.txt 2>&1 || GCC_RUN_RES="failed"
+ /bin/bash -c "ulimit -t${TIMEOUT_RUN} ; build_gcc/$name.exe" > $OUTPUTDIR/result_gcc_$name.txt 2>&1 || GCC_RUN_RES="failed"
fi
if [ ${LINK_RES} = "ok" ]; then
FIRM_RUN_RES="ok"
echo "*** Run Firm" >> $res
- CMD="build_firm/$name.exe > $OUTPUTDIR/result_gcc_$name.txt 2>&1"
+ CMD="ulimit -t${TIMEOUT_RUN} ; build_firm/$name.exe > $OUTPUTDIR/result_gcc_$name.txt 2>&1"
echo "$CMD" >> $res
- /bin/bash -c "ulimit -t2 ; build_firm/$name.exe" > $OUTPUTDIR/result_firm_$name.txt 2>&1 || FIRM_RUN_RES="failed"
+ /bin/bash -c "ulimit -t${TIMEOUT_RUN} ; build_firm/$name.exe" > $OUTPUTDIR/result_firm_$name.txt 2>&1 || FIRM_RUN_RES="failed"
fi
if [ ${GCC_RUN_RES} = "ok" -a ${FIRM_RUN_RES} = "ok" ]; then
<diff>$DIFF_RES</diff>
</result>
__END__
+done
+ echo "</section>" >> $XMLRES
done
echo "</results>" >> $XMLRES