aboutsummaryrefslogtreecommitdiff
path: root/src/interp
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2010-07-23 10:19:22 +0000
committerdos-reis <gdr@axiomatics.org>2010-07-23 10:19:22 +0000
commited3e1857fc3a67db0a36911d26d6bc1f50ee29ec (patch)
tree0a64173f14d00d9495992cee970a88fe2a6258ee /src/interp
parente6a83a9d4ebfb2abf0254ca7c41f2828fafa7b19 (diff)
downloadopen-axiom-ed3e1857fc3a67db0a36911d26d6bc1f50ee29ec.tar.gz
* interp/g-opt.boot (optMINUS): Remove.
(opt_-): Likewise.
Diffstat (limited to 'src/interp')
-rw-r--r--src/interp/g-opt.boot41
1 files changed, 10 insertions, 31 deletions
diff --git a/src/interp/g-opt.boot b/src/interp/g-opt.boot
index 7e4b8443..887cbb94 100644
--- a/src/interp/g-opt.boot
+++ b/src/interp/g-opt.boot
@@ -407,51 +407,38 @@ optSEQ ["SEQ",:l] ==
aft:= after(l,before)
null before => ["SEQ",:aft]
null aft => ["COND",:transform,'((QUOTE T) (conderr))]
- true => ["COND",:transform,['(QUOTE T),optSEQ ["SEQ",:aft]]]
+ ["COND",:transform,['(QUOTE T),optSEQ ["SEQ",:aft]]]
tryToRemoveSEQ l ==
l is ["SEQ",[op,a]] and op in '(EXIT RETURN THROW) => a
l
optRECORDELT ["RECORDELT",name,ind,len] ==
len=1 =>
- ind=0 => ["%head",name]
+ ind=0 => ['%head,name]
keyedSystemError("S2OO0002",[ind])
len=2 =>
- ind=0 => ["%head",name]
- ind=1 => ["%tail",name]
+ ind=0 => ['%head,name]
+ ind=1 => ['%tail,name]
keyedSystemError("S2OO0002",[ind])
["QVELT",name,ind]
optSETRECORDELT ["SETRECORDELT",name,ind,len,expr] ==
len=1 =>
- ind=0 => ["PROGN",["RPLACA",name,expr],["%head",name]]
+ ind=0 => ["PROGN",["RPLACA",name,expr],['%head,name]]
keyedSystemError("S2OO0002",[ind])
len=2 =>
- ind=0 => ["PROGN",["RPLACA",name,expr],["%head",name]]
- ind=1 => ["PROGN",["RPLACD",name,expr],["%tail",name]]
+ ind=0 => ["PROGN",['%store,['%head,name],expr],['%head,name]]
+ ind=1 => ["PROGN",['%store,['%tail,name],expr],['%tail,name]]
keyedSystemError("S2OO0002",[ind])
["QSETVELT",name,ind,expr]
optRECORDCOPY ["RECORDCOPY",name,len] ==
- len=1 => ["LIST",["CAR",name]]
- len=2 => ["CONS",["CAR",name],["CDR",name]]
+ len=1 => ["LIST",['%head,name]]
+ len=2 => ["CONS",['%head,name],['%tail,name]]
["REPLACE",["MAKE_-VEC",len],name]
---mkRecordAccessFunction(ind,len) ==
--- stringOfDs:= $EmptyString
--- for i in 0..(ind-1) do stringOfDs:= strconc(stringOfDs,PNAME "D")
--- prefix:= if ind=len-1 then PNAME "C" else PNAME "CA"
--- if $QuickCode then prefix:=strconc("Q",prefix)
--- INTERN(strconc(prefix,stringOfDs,PNAME "R"))
-
optSuchthat [.,:u] == ["SUCHTHAT",:u]
-optMINUS u ==
- u is ['MINUS,v] =>
- integer? v => -v
- u
- u
-
optQSMINUS u ==
u is ['QSMINUS,v] =>
integer? v => -v
@@ -464,18 +451,12 @@ opt_- u ==
u
u
-optLESSP u ==
- u is ['LESSP,a,b] =>
- b = 0 => ['MINUSP,a]
- ['GREATERP,b,a]
- u
-
++ List of VM side effect free operators.
$VMsideEffectFreeOperators ==
'(CAR CDR LENGTH SIZE EQUAL EQL EQ NOT NULL OR AND
SPADfirst QVELT _+ _- _* _< _= _<_= _> _>_= ASH INTEGER_-LENGTH
QEQCAR QCDR QCAR IDENTP SYMBOLP
- MINUSP GREATERP ZEROP ODDP FLOAT_-RADIX FLOAT FLOAT_-SIGN
+ GREATERP ZEROP ODDP FLOAT_-RADIX FLOAT FLOAT_-SIGN
CGREATERP GGREATERP CHAR GET BVEC_-GREATER %false %true
%and %or %not %peq %ieq %ilt %ile %igt %ige %head %tail %integer?
%beq %blt %ble %bgt %bge %bitand %bitior %bitnot %bcompl
@@ -755,10 +736,8 @@ for x in '( (%call optCall) _
(%isub optIsub)_
(%imul optImul)_
(LIST optLIST)_
- (MINUS optMINUS)_
(QSMINUS optQSMINUS)_
(_- opt_-)_
- (LESSP optLESSP)_
(SPADCALL optSPADCALL)_
(_| optSuchthat)_
(CATCH optCatch)_