diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/ChangeLog | 4 | ||||
-rw-r--r-- | src/interp/clam.boot | 7 | ||||
-rw-r--r-- | src/interp/g-opt.boot | 7 |
3 files changed, 8 insertions, 10 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 1decdafa..ea523bed 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,9 @@ 2011-12-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + * interp/g-opt.boot (optSeq): Remove. Adjust callers. + +2011-12-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + * interp/g-opt.boot (replaceableTemporary?): Remove. (optSeq,getRidOfTemps): Likewise. (optSeq): Rewrite. diff --git a/src/interp/clam.boot b/src/interp/clam.boot index 9df15798..a0c57a41 100644 --- a/src/interp/clam.boot +++ b/src/interp/clam.boot @@ -229,7 +229,7 @@ compHash(op,argl,body,cacheNameOrNil,eqEtc,countFl) == ['tableValue,cacheNameOrNil,MKQ op],MKQ eqEtc] ['lassocShift,cacheArgKey,['tableValue,cacheNameOrNil,MKQ op]] ['tableValue,cacheName,g1] - secondPredPair:= [g2,optSeq ['%seq,:hitCountCode,returnFoundValue]] + secondPredPair:= [g2,mkSeq [:hitCountCode,returnFoundValue]] putCode:= null argl => cacheNameOrNil => @@ -247,9 +247,8 @@ compHash(op,argl,body,cacheNameOrNil,eqEtc,countFl) == ['UNWIND_-PROTECT,['PROG1,putCode,['%store,g2,'%true]], ['%when,[['%not,g2],['tableRemove!,cacheName,MKQ op]]]] thirdPredPair:= ['%otherwise,putCode] - codeBody:= optSeq - ['%seq,:callCountCode, - ['%bind,[[g2,getCode]],['%when,secondPredPair,thirdPredPair]]] + codeBody:= mkSeq [:callCountCode, + mkBind([[g2,getCode]],['%when,secondPredPair,thirdPredPair])] lamex:= ['LAM,arg,codeBody] mainFunction:= [op,lamex] computeFunction:= [auxfn,['LAMBDA,argl,:body]] diff --git a/src/interp/g-opt.boot b/src/interp/g-opt.boot index 6c68c642..54206ca3 100644 --- a/src/interp/g-opt.boot +++ b/src/interp/g-opt.boot @@ -333,7 +333,7 @@ cancelScopeLeave! x == walkWith!(x,function f) where optimize! x == x := spliceSeq! packWhen! transformIF! x changeVariableDefinitionToStore(x,nil) - simplifyVMForm spliceSeq! packWhen! inlineLocals! + simplifyVMForm cancelScopeLeave! spliceSeq! packWhen! inlineLocals! groupTranscients! cancelScopeLeave! removeJunk! reduceXLAM! x ++ A non-mutating version of `optimize!'. @@ -573,10 +573,6 @@ EqualBarGensym(x,y) == x isnt [.,:.] or y isnt [.,:.] => false fn(first x,first y) and fn(rest x,rest y) -optSeq x == - x is ['%seq,[op,a]] and op in '(%exit RETURN %leave %return) => a - x - optSuchthat [.,:u] == ["SUCHTHAT",:u] ++ List of VM side effect free operators. @@ -970,7 +966,6 @@ optIquo(x is ['%iquo,a,b]) == --% for x in '((%call optCall) _ - (%seq optSeq)_ (%bind optBind)_ (%try optTry)_ (%not optNot)_ |