aboutsummaryrefslogtreecommitdiff
path: root/src/interp/sys-macros.lisp
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2010-05-27 23:53:34 +0000
committerdos-reis <gdr@axiomatics.org>2010-05-27 23:53:34 +0000
commite8df6a1fe9e9f218b8d9147a3de55f6d60fcc080 (patch)
treef46a06b99b7e3fe8c9990530c19e8f80ac64325b /src/interp/sys-macros.lisp
parent307e4ad0a2676ef94b42121e79e71888f4778883 (diff)
downloadopen-axiom-e8df6a1fe9e9f218b8d9147a3de55f6d60fcc080.tar.gz
* interp/sys-macros.lisp (eval): Expand opcodes before calling EVAL.
* interp/slam.boot (reportFunctionCompilation): Tidy. Take extra care when generating code that access global variables. (reportFunctionCacheAll): Likewise. * interp/i-util.boot (isLocallyBound): Define. * interp/i-spec1.boot (upCOLLECT1): Bind $iteratorVars to nil. (upLoopIterSTEP): Call mkIteratorVariable instead of mkLocalVar. (upLoopIterIN): Likewise. (upStreamIterIN): Likewise. (upStreamIterSTEP): Likewise. (collectOneStream): Tidy. (mkAndApplyPredicates): Likewise. (mkIterFun): Lose last parameter. Tidy. (declare): Use isLocallyBound. (getAndEvalConstructorArgument): Likewise. (mkIteratorVariable): New. ($iteratorVars): New. * interp/i-spec2.boot (upREPEAT1): Bind $iteratorVars to nil. (isLocalPred): Use isLocallyBound. (compileIs): Likewise. (evalLETput): Likewise. (evalLETchangeValue): Likewise. (isType): Likewise. * interp/i-analy.boot (bottomUp): Likewise. (bottomUpDefaultCompile): Likewise. * interp/i-eval.boot (evalForm): Likewise. (getMappingArgValue): Likewise. * interp/i-map.boot (findLocalVars1): Likewise. (findLocalsInLoop): Tidy. Filter out iterator variables. (isLocalVar): Remove. * interp/g-util.boot (mkCacheName): Define here. (mkAuxiliaryName): Likewise. * interp/c-util.boot (backendCompileSLAM): Use mkCacheName. (backendCompileSPADSLAM): Likewise. * interp/clam.boot (compClam): Likewise. (clearCategoryCaches): Likewise. (clearCategoryCache): Likewise. * interp/g-timer.boot (timedEVALFUN): expandToVMForm is now implicitly called by eval.
Diffstat (limited to 'src/interp/sys-macros.lisp')
-rw-r--r--src/interp/sys-macros.lisp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/interp/sys-macros.lisp b/src/interp/sys-macros.lisp
index d0f934ad..34ad5fcc 100644
--- a/src/interp/sys-macros.lisp
+++ b/src/interp/sys-macros.lisp
@@ -371,7 +371,7 @@
(the (values t) (funcall (car ,gi) ,@args (cdr ,gi))))))
(defmacro |eval| (form)
- `(EVAL ,form))
+ `(EVAL (|expandToVMForm| ,form)))
;;
;; -*- Arithmetics -*-