aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2009-03-02 08:01:57 +0000
committerdos-reis <gdr@axiomatics.org>2009-03-02 08:01:57 +0000
commit4eff9ac27bbd21e51053b5366558c18e561ae0fd (patch)
tree204fadfc204f6c26a51610a764772776c47737b6
parentf2592f61b346e61ce99d3443f7533f7aa6bac643 (diff)
downloadopen-axiom-4eff9ac27bbd21e51053b5366558c18e561ae0fd.tar.gz
* interp/compiler.boot (modeIsAggregateOf): Use RepIfRepHack.
* interp/g-opt.boot (optimizeFunctionDef): Tidy. * interp/i-syscmd.boot (compileSpad2Cmd): Support ')report' option. * interp/sys-driver.boot (initializeGlobalState): Likewise.
-rwxr-xr-xconfigure18
-rw-r--r--configure.ac2
-rw-r--r--configure.ac.pamphlet2
-rw-r--r--src/ChangeLog7
-rw-r--r--src/interp/compiler.boot3
-rw-r--r--src/interp/g-opt.boot2
-rw-r--r--src/interp/i-syscmd.boot9
-rw-r--r--src/interp/sys-driver.boot5
8 files changed, 29 insertions, 19 deletions
diff --git a/configure b/configure
index 9dcfd6ab..f21ccdab 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.60 for OpenAxiom 1.3.0-2009-02-22.
+# Generated by GNU Autoconf 2.60 for OpenAxiom 1.3.0-2009-03-02.
#
# Report bugs to <open-axiom-bugs@lists.sf.net>.
#
@@ -713,8 +713,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME='OpenAxiom'
PACKAGE_TARNAME='openaxiom'
-PACKAGE_VERSION='1.3.0-2009-02-22'
-PACKAGE_STRING='OpenAxiom 1.3.0-2009-02-22'
+PACKAGE_VERSION='1.3.0-2009-03-02'
+PACKAGE_STRING='OpenAxiom 1.3.0-2009-03-02'
PACKAGE_BUGREPORT='open-axiom-bugs@lists.sf.net'
ac_unique_file="src/Makefile.pamphlet"
@@ -1406,7 +1406,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures OpenAxiom 1.3.0-2009-02-22 to adapt to many kinds of systems.
+\`configure' configures OpenAxiom 1.3.0-2009-03-02 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1476,7 +1476,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of OpenAxiom 1.3.0-2009-02-22:";;
+ short | recursive ) echo "Configuration of OpenAxiom 1.3.0-2009-03-02:";;
esac
cat <<\_ACEOF
@@ -1580,7 +1580,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-OpenAxiom configure 1.3.0-2009-02-22
+OpenAxiom configure 1.3.0-2009-03-02
generated by GNU Autoconf 2.60
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1594,7 +1594,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by OpenAxiom $as_me 1.3.0-2009-02-22, which was
+It was created by OpenAxiom $as_me 1.3.0-2009-03-02, which was
generated by GNU Autoconf 2.60. Invocation command line was
$ $0 $@
@@ -26817,7 +26817,7 @@ exec 6>&1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by OpenAxiom $as_me 1.3.0-2009-02-22, which was
+This file was extended by OpenAxiom $as_me 1.3.0-2009-03-02, which was
generated by GNU Autoconf 2.60. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -26866,7 +26866,7 @@ Report bugs to <bug-autoconf@gnu.org>."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-OpenAxiom config.status 1.3.0-2009-02-22
+OpenAxiom config.status 1.3.0-2009-03-02
configured by $0, generated by GNU Autoconf 2.60,
with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff --git a/configure.ac b/configure.ac
index e987c8ab..ef263419 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,6 +1,6 @@
sinclude(config/open-axiom.m4)
sinclude(config/aclocal.m4)
-AC_INIT([OpenAxiom], [1.3.0-2009-02-22],
+AC_INIT([OpenAxiom], [1.3.0-2009-03-02],
[open-axiom-bugs@lists.sf.net])
AC_CONFIG_AUX_DIR(config)
diff --git a/configure.ac.pamphlet b/configure.ac.pamphlet
index 1ab81290..00390bdf 100644
--- a/configure.ac.pamphlet
+++ b/configure.ac.pamphlet
@@ -1140,7 +1140,7 @@ information:
<<Autoconf init>>=
sinclude(config/open-axiom.m4)
sinclude(config/aclocal.m4)
-AC_INIT([OpenAxiom], [1.3.0-2009-02-22],
+AC_INIT([OpenAxiom], [1.3.0-2009-03-02],
[open-axiom-bugs@lists.sf.net])
@
diff --git a/src/ChangeLog b/src/ChangeLog
index 80c21881..06cd80b8 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,10 @@
+2009-03-02 Gabriel Dos Reis <gdr@cs.tamu.edu>
+
+ * interp/compiler.boot (modeIsAggregateOf): Use RepIfRepHack.
+ * interp/g-opt.boot (optimizeFunctionDef): Tidy.
+ * interp/i-syscmd.boot (compileSpad2Cmd): Support ')report' option.
+ * interp/sys-driver.boot (initializeGlobalState): Likewise.
+
2009-03-01 Gabriel Dos Reis <gdr@cs.tamu.edu>
* interp/g-opt.boot (optimize): Remove non-qualified
diff --git a/src/interp/compiler.boot b/src/interp/compiler.boot
index 7f903248..b2906c81 100644
--- a/src/interp/compiler.boot
+++ b/src/interp/compiler.boot
@@ -2144,8 +2144,7 @@ modeIsAggregateOf(ListOrVector,m,e) ==
1=#mList => first mList
name:=
m is [fn,:.] => fn
- m="$" => "Rep"
- m
+ RepIfRepHack m
get(name,"value",e) is [[ =ListOrVector,R],:.] => [m,R]
--% VECTOR ITERATORS
diff --git a/src/interp/g-opt.boot b/src/interp/g-opt.boot
index 2631049c..e78ceb7a 100644
--- a/src/interp/g-opt.boot
+++ b/src/interp/g-opt.boot
@@ -51,7 +51,7 @@ optimizeFunctionDef(def) ==
if $reportOptimization then
sayBrightlyI bright '"Optimized LISP code:"
pp def'
- sayBrightlyI bright '"Final LISP code:"
+
[name,[slamOrLam,args,body]] := def'
body':=
diff --git a/src/interp/i-syscmd.boot b/src/interp/i-syscmd.boot
index e43562eb..4963d78f 100644
--- a/src/interp/i-syscmd.boot
+++ b/src/interp/i-syscmd.boot
@@ -1,6 +1,6 @@
-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd.
-- All rights reserved.
--- Copyright (C) 2007-2008, Gabriel Dos Reis.
+-- Copyright (C) 2007-2009, Gabriel Dos Reis.
-- All rights reserved.
--
-- Redistribution and use in source and binary forms, with or without
@@ -783,7 +783,8 @@ compileSpad2Cmd args ==
vartrace _
quiet _
translate _
- optimize
+ optimize _
+ report
)
translateOldToNew := nil
@@ -830,6 +831,10 @@ compileSpad2Cmd args ==
fun.0 := 'c
constructor := [unabbrev o for o in optargs]
fullopt = "optimize" => setCompilerOptimizations first optargs
+ fullopt = "report" =>
+ null optargs => throwKeyedMsg("S2IZ0037",['")report"])
+ if MEMQ("insn",optargs) then
+ $reportOptimization := true
throwKeyedMsg("S2IZ0036",[STRCONC('")",object2String optname)])
$InteractiveMode : local := nil
diff --git a/src/interp/sys-driver.boot b/src/interp/sys-driver.boot
index 69d97844..ffe4af23 100644
--- a/src/interp/sys-driver.boot
+++ b/src/interp/sys-driver.boot
@@ -1,6 +1,4 @@
--- Copyright (C) 2007-2008 Gabriel Dos Reis
--- All rights reserved.
--- Copyright (C) 2007-2008, Gabriel Dos Reis.
+-- Copyright (C) 2007-2009 Gabriel Dos Reis
-- All rights reserved.
--
-- Redistribution and use in source and binary forms, with or without
@@ -192,6 +190,7 @@ initializeGlobalState() ==
$bootStrapMode := getOptionValue "bootstrap"
$compileExportsOnly := getOptionValue "exports-only"
$compileDefaultsOnly := getOptionValue "defaults-only"
+ $reportOptimization := getOptionValue "show-insn"
GCMSG(NIL)
if have_to then
$superHash := MAKE_-HASHTABLE('UEQUAL)