aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ChangeLog5
-rw-r--r--src/interp/nruncomp.boot8
2 files changed, 8 insertions, 5 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 930d0a02..59611be8 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,10 @@
2008-11-29 Gabriel Dos Reis <gdr@cs.tamu.edu>
+ * interp/nruncomp.boot (deltaTran): Don't encode signature again.
+ (genDeltaEntry): Remove dead pattern match.
+
+2008-11-29 Gabriel Dos Reis <gdr@cs.tamu.edu>
+
* interp/compiler.boot (setqSingle): Use setShellEntry.
* interp/wi1.boot (setqSingle): Likewise.
* interp/functor.boot (setVector4): Likewise.
diff --git a/src/interp/nruncomp.boot b/src/interp/nruncomp.boot
index 73e3b796..0abae2c3 100644
--- a/src/interp/nruncomp.boot
+++ b/src/interp/nruncomp.boot
@@ -100,15 +100,14 @@ deltaTran(item,compItem) ==
[op,:modemap] := item
[dcSig,[.,[kind,:.]]] := modemap
[dc,:sig] := dcSig
- sig := MSUBST('$,dc,substitute("$$",'$,sig))
+ -- NOTE: sig is already in encoded form since it comes from $NRTdeltaList;
+ -- so we need only encode dc. -- gdr 2008-11-28.
dcCode :=
dc = '$ => 0
dc = $NRTaddForm => 5
NRTassocIndex dc or keyedSystemError("S2NR0004",[dc])
- formalSig:= SUBLISLIS($FormalMapVariableList,$formalArgList,sig)
kindFlag:= (kind = 'CONST => 'CONST; nil)
- newSig := [NRTassocIndex x or x for x in formalSig]
- [newSig,dcCode,op,:kindFlag]
+ [sig,dcCode,op,:kindFlag]
NRTreplaceAllLocalReferences(form) ==
$devaluateList :local := []
@@ -188,7 +187,6 @@ optDeltaEntry(op,sig,dc,eltOrConst) ==
genDeltaEntry opMmPair ==
--called from compApplyModemap
--$NRTdeltaLength=0.. always equals length of $NRTdeltaList
- [.,[odc,:.],.] := opMmPair
[op,[dc,:sig],[.,cform:=[eltOrConst,.,nsig]]] := opMmPair
if $profileCompiler = true then profileRecord(dc,op,sig)
eltOrConst = 'XLAM => cform