#!/bin/sh
unset noclobber
ulimit -s unlimited
ulimit -c 0
case `uname -m` in
  i[3456]86)
    s="-d0 -d1 -d5 -d6 -Ob -Om -On -Or -Ot -k -architecture IA32"
    c="-copt -O3 -copt -fomit-frame-pointer -copt -Wall -copt -freg-struct-return";;
  sun4*)
    s="-d0 -d1 -d5 -d6 -Ob -Om -On -Or -Ot -k -sparc"
    c="-copt -O3 -copt -fomit-frame-pointer -copt -Wall -copt -freg-struct-return";;
  IP*)
    s="-d0 -d1 -d5 -d6 -Ob -Om -On -Or -Ot -k -mips"
    c="-copt -O3 -copt -fomit-frame-pointer -copt -Wall -copt -freg-struct-return";;
  alpha)
    s="-d0 -d1 -d5 -d6 -Ob -Om -On -Or -Ot -k -alpha"
    c="-copt -O3 -copt -fomit-frame-pointer -copt -Wall -copt -ieee";;
  *)
    echo "Cannot (yet) run Stalin on this architecture"
  esac
o="$s $c"
echo compile $1
sed -f stalin.sed $1.sc >$1-stalin.sc
time stalin-instrumented -c $o $2 $1-stalin
instrument $1-stalin
gcc -o $1-stalin-instrumented -I ~/stalin/stalin-0.10/include\
    -O2 -fomit-frame-pointer -Wall -freg-struct-return\
    $1-stalin-instrumented.c -L ~/stalin/stalin-0.10/include -lm -lstalin -lgc
echo run $1
time ./$1-stalin-instrumented >/dev/null
