aboutsummaryrefslogtreecommitdiff
path: root/src/interp/compiler.boot
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2008-10-01 18:26:32 +0000
committerdos-reis <gdr@axiomatics.org>2008-10-01 18:26:32 +0000
commitea832606b8ad21eb020bc71dbc98427a8068ca3e (patch)
tree43f6a28550aa782295fb62ae8922aa5f9b958b55 /src/interp/compiler.boot
parentcc8a4fee3515864990e852d3a1cfc3342c256b1d (diff)
downloadopen-axiom-ea832606b8ad21eb020bc71dbc98427a8068ca3e.tar.gz
* interp/c-util.boot ($optProclaim): New.
($optReplaceSimpleFunctions): Likewise. (setCompilerOptimizations): Likewise. Set them. (proclaimCapsuleFunction): New. * interp/compiler.boot (compileSpad2Cmd): Handle option ')optimize'. * interp/define.boot (compile): Proclaim if appropriate. * interp/sys-driver.boot (compileSpadLibrary): Honor optimization level set on commmand line. * interp/sys-utility.boot (getVMType): Tidy. * interp/types.boot (%Void): Likewise. (IntegerSection): New.
Diffstat (limited to 'src/interp/compiler.boot')
-rw-r--r--src/interp/compiler.boot4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/interp/compiler.boot b/src/interp/compiler.boot
index 121924bd..004acbb0 100644
--- a/src/interp/compiler.boot
+++ b/src/interp/compiler.boot
@@ -1683,6 +1683,7 @@ compileSpad2Cmd args ==
vartrace _
quiet _
translate _
+ optimize
)
translateOldToNew := nil
@@ -1728,6 +1729,7 @@ compileSpad2Cmd args ==
throwKeyedMsg("S2IZ0037",['")constructor"])
fun.0 := 'c
constructor := [unabbrev o for o in optargs]
+ fullopt = "optimize" => setCompilerOptimizations first optargs
throwKeyedMsg("S2IZ0036",[STRCONC('")",object2String optname)])
$InteractiveMode : local := nil
@@ -1745,6 +1747,8 @@ compileSpad2Cmd args ==
if not $buildingSystemAlgebra then
extendLocalLibdb $newConlist
terminateSystemCommand()
+ -- reset compiler optimization options
+ setCompilerOptimizations 0
spadPrompt()
convertSpadToAsFile path ==