From: ceriel Date: Tue, 21 Jun 1988 15:20:49 +0000 (+0000) Subject: run peephole optimizer after inline substitution X-Git-Tag: release-5-5~3178 X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=46c8b743f257a469db12024298664dd14449c6d4;p=ack.git run peephole optimizer after inline substitution --- diff --git a/util/ego/em_ego/em_ego b/util/ego/em_ego/em_ego index 0db2b0453..e9a07b955 100755 --- a/util/ego/em_ego/em_ego +++ b/util/ego/em_ego/em_ego @@ -3,6 +3,8 @@ DDUMP=$TMP.dd.$$ PDUMP=$TMP.pd.$$ PHASES='' FLAGS='' +EM=$1 +shift while : @@ -15,7 +17,7 @@ do case $A in *.m|*.ma) ICARG="$ICARG $A"; continue;; -P) OPT="$1"; shift; continue;; - -IL) PHASES="$PHASES il cf " ; continue;; + -IL) PHASES="$PHASES il cf caopt ic cf " ; continue;; -CS) PHASES="$PHASES cs " ; continue;; -SR) PHASES="$PHASES sr " ; continue;; -UD) PHASES="$PHASES ud " ; continue;; @@ -42,7 +44,7 @@ fi for i in $PASSES do INFILES=$OUTFILES OUTFILES="$TMP.p.$c.$$ $TMP.d.$c.$$ $TMP.l.$c.$$ $TMP.b.$c.$$" - trap "rm -f $INFILES $OUTFILES $PDUMP $DDUMP; exit 1" 1 2 15 + trap "rm -f $INFILES $OUTFILES $PDUMP $DDUMP $TMPOPT; exit 1" 1 2 15 case $i in ic) if $OPT/ic $INFILES - - $OUTFILES $ICARG then : @@ -50,11 +52,23 @@ do INFILES=$OUTFILES fi ;; ca) if $OPT/ca $INFILES $PDUMP $DDUMP - - then - rm -f $INFILES $PDUMP $DDUMP + rm -f $INFILES $PDUMP $DDUMP $TMPOPT else - rm -f $INFILES $PDUMP $DDUMP + rm -f $INFILES $PDUMP $DDUMP $TMPOPT exit 1 fi;; + caopt) rm -f $TMPOPT + TMPOPT=$TMP.o.$$ + if $OPT/ca $INFILES $PDUMP $DDUMP - - | $EM/lib/em_opt2 > $TMPOPT + then + rm -f $INFILES $PDUMP $DDUMP + else + rm -f $INFILES $PDUMP $DDUMP $TMPOPT + exit 1 + fi + ICARG=$TMPOPT + OUTFILES="$PDUMP $DDUMP" + ;; *) if $OPT/$i $INFILES $OUTFILES $FLAGS then rm -f $INFILES