coreboot-kgpe-d16/util/romcc/tests.sh
Stefan Reinauer 14e2277962 Since some people disapprove of white space cleanups mixed in regular commits
while others dislike them being extra commits, let's clean them up once and
for all for the existing code. If it's ugly, let it only be ugly once :-)

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5507 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2010-04-27 06:56:47 +00:00

69 lines
2.1 KiB
Bash

#!/bin/sh
# Allow core dumps
ulimit -c hard
set -x
N=''
root=simple_test
#root=simple_test
#root=linux_test
#root=raminit_test
if [ -n "$2" -a -n "$1" ] ; then
root=$1
N=$2
elif [ -n "$1" ] ; then
root=$1
else
echo "too few arguments"
exit 1
fi
ROMCC=./romcc
stem="$root$N"
base=tests/$stem
op="-Itests/include"
op="$op -feliminate-inefectual-code -fsimplify -fscc-transform "
#op="$op -O2 "
#op="$op -mmmx -msse"
op="$op -finline-policy=defaulton"
#op="$op -finline-policy=nopenalty"
#op="$op -finline-policy=never"
op="$op -fdebug -fdebug-triples -fdebug-interference -fdebug-verification"
op="$op -fdebug-fdominators"
op="$op -fdebug-inline"
op="$op -fdebug-calls"
#op="$op -mnoop-copy"
#op="$op -fsimplify -fno-simplify-op -fno-simplify-phi -fno-simplify-label -fno-simplify-branch -fno-simplify-copy -fno-simplify-arith -fno-simplify-shift -fno-simplify-bitwise -fno-simplify-logical"
#op="$op -fdebug-rebuild-ssa-form"
op="$op -fmax-allocation-passes=8"
op="$op -fdebug-live-range-conflicts"
op="$op -fdebug-scc-transform"
op="$op -fdebug-scc-transform2"
#-fdebug-coalescing
#-fdebug-coalesing2
#-fno-simplify-call "
#-fno-always-inline"
#
#op="-O2 -mmmx -msse --debug=4294967295"
#op="-fdebug -fdebug-triples -fdebug-inline -O2 -mmmx -msse -fno-always-inline "
#op="-fdebug -fdebug-inline -O2 -mmmx "
#op="-fdebug -fdebug-live-range-conflicts -fdebug-live-range-conflicts2 -fno-debug-interference -fdebug-color-graph -fdebug-coalescing -fmax-allocation-passes=10 -O2 -mmmx -msse"
#op="-fdebug -O2 -mmmx -msse"
#op="-fdebug -fdebug-inline -fno-eliminate-inefectual-code -fno-always-inline -mmmx"
#op="-fdebug -fdebug-inline -fno-always-inline -mmmx"
export ALLOC_CHECK_=2
rm -f core $base.S $base.debug $base.debug2 $base.elf $base.out &&
make romcc &&
$ROMCC $op -o $base.S $base.c 2>&1 > $base.debug | tee $base.debug2
if [ '(' -f $base.c ')' -a '(' '!' -f core ')' -a '(' -f $base.S ')' ]; then
if [ "$stem" = "linux_test$N" ] ; then
as $base.S -o $base.o &&
ld -T tests/ldscript.ld $base.o -o $base.elf &&
./$base.elf > $base.out &&
diff -u results/$stem.out $base.out
else
/bin/true
fi
else
/bin/false
fi