Start testing the new cleangcc pass
[oota-llvm.git] / test / Feature / TestOptimizer.sh
1 #!/bin/sh
2 LD_LIBRARY_PATH=../lib/Debug
3 export LD_LIBRARY_PATH
4
5 AS=../tools/Debug/as
6 DIS=../tools/Debug/dis
7 OPT=../tools/Debug/opt
8 export AS
9 export DIS
10 export OPT
11
12 $AS < $1 | $OPT -q -inline -dce -constprop -dce | $DIS | $AS > $1.bc.1 || exit 1
13
14 # Should not be able to optimize further!
15 $OPT -q -constprop -dce < $1.bc.1 > $1.bc.2 || exit 2
16
17 $DIS < $1.bc.1 > $1.ll.1 || exit 3
18 $DIS < $1.bc.2 > $1.ll.2 || exit 3
19 diff $1.ll.[12] || exit 3
20
21 # Try out SCCP & CleanGCC
22 $AS < $1 | $OPT -q -inline -dce -cleangcc -sccp -dce | $DIS | $AS > $1.bc.3 || exit 1
23
24 # Should not be able to optimize further!
25 #$OPT -q -sccp -dce < $1.bc.3 > $1.bc.4 || exit 2
26
27 #diff $1.bc.[34] || exit 3
28 rm $1.bc.[123] $1.ll.[12]
29