aboutsummaryrefslogtreecommitdiff
path: root/src/interp/nruncomp.boot
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2008-04-07 10:34:36 +0000
committerdos-reis <gdr@axiomatics.org>2008-04-07 10:34:36 +0000
commitda9f79f1d47983d726e90858f85b074dc88d0866 (patch)
tree1091fb7e2473a9910eb0592fa553856c5562df78 /src/interp/nruncomp.boot
parent498b53ea49bdd7d640fc4f8426e8ecf6b0128cc5 (diff)
downloadopen-axiom-da9f79f1d47983d726e90858f85b074dc88d0866.tar.gz
* interp/compiler.boot (compWithMappingMode): Use getShellEntry.
* interp/define.boot (compDefineFunctor1): Use setShellEntry. (canCacheLocalDomain): Likewise. (compilerCases): Likewise. (doIt): Likewise. * interp/functor.boot (setVector0): Likewise. (setVector3): Likewise. (setVector4part4): Likewise. (setVector5): Likewise. (mkVectorWithDeferral): Likewise. (DescendCodeAdd1): Likewise. (DescendCode): Likewise. (ConsantCreator): Likewise. (SetFunctionSlots): Likewise. (CheckVector): Likewise. * interp/g-opt.boot (optCall): Use getShellEntry. (optSpecialCall): Likewise. * interp/i-util.boot (devaluate): Likewise. * interp/nruncomp.boot (buildFunctor): Use setShellEntry. (NRTsetVector4a): Likewise. (NRTputInLocalReferences): Use getShellEntry. (NRTputInHead): Likewise. * interp/nrunopt.boot (augmentPredVector): Use setShellEntry. * interp/nruntime.boot (getShellEntry): New. (setShellEntry): Likewise. * interp/package.boot (processPackage): Use getShellEntry. (PackageDescendCode): Use setShellEntry. * interp/sys-globals.boot ($QuickCode): Remove. * interp/template.boot (NRTdescendCodeTran): Use setShellEntry. * interp/types.boot (%Void): New. (%Shell): New. * interp/wi2.boot (compDefineFunctor1): Use setShellEntry.
Diffstat (limited to 'src/interp/nruncomp.boot')
-rw-r--r--src/interp/nruncomp.boot8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/interp/nruncomp.boot b/src/interp/nruncomp.boot
index 457fa052..3203c699 100644
--- a/src/interp/nruncomp.boot
+++ b/src/interp/nruncomp.boot
@@ -428,7 +428,7 @@ buildFunctor($definition is [name,:args],sig,code,$locals,$e) ==
['LET,domname,['LIST,MKQ CAR $definition,:ASSOCRIGHT $devaluateList]]
createViewCode:= ['LET,'$,["newShell", $NRTbase + $NRTdeltaLength]]
setVector0Code:=[$setelt,'$,0,'dv_$]
- slot3Code := ['QSETREFV,'$,3,['LET,'pv_$,predBitVectorCode1]]
+ slot3Code := ["setShellEntry",'$,3,['LET,'pv_$,predBitVectorCode1]]
slamCode:=
isCategoryPackageName opOf $definition => nil
[NRTaddToSlam($definition,'$)]
@@ -575,7 +575,7 @@ NRTsetVector4a(sig,form,cond) ==
NRTmakeSlot1 domainShell ==
opDirectName := INTERN STRCONC(PNAME first $definition,'";opDirect")
fun := '(function lookupInCompactTable)
- [($QuickCode=>'QSETREFV;'SETELT), '$,1, ['LIST,fun,'$,opDirectName]]
+ ["setShellEntry", '$,1, ['LIST,fun,'$,opDirectName]]
NRTmakeSlot1Info() ==
-- 4 cases:
@@ -691,7 +691,7 @@ NRTsubstDelta(initSig) ==
updateSlot1DataBase [name,info] == HPUT($Slot1DataBase,name,info)
NRTputInLocalReferences bod ==
- $elt: local := ($QuickCode => 'QREFELT; 'ELT)
+ $elt: local := "getShellEntry"
NRTputInHead bod
NRTputInHead bod ==
@@ -699,7 +699,7 @@ NRTputInHead bod ==
bod is ['SPADCALL,:args,fn] =>
NRTputInTail rest bod --NOTE: args = COPY of rest bod
-- The following test allows function-returning expressions
- fn is [elt,dom,ind] and not (dom='$) and MEMQ(elt,'(ELT QREFELT CONST)) =>
+ fn is [elt,dom,ind] and not (dom='$) and MEMQ(elt,'(getShellEntry ELT QREFELT CONST)) =>
k:= NRTassocIndex dom => RPLACA(LASTNODE bod,[$elt,'_$,k])
nil
NRTputInHead fn