aboutsummaryrefslogtreecommitdiff
path: root/src/interp
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2010-12-30 08:50:00 +0000
committerdos-reis <gdr@axiomatics.org>2010-12-30 08:50:00 +0000
commite46eacc852aacf74de6d98ed5aad9249f41eabb0 (patch)
tree7d8c05190be1e45ee6d47cd2415fbb6ee3f048ce /src/interp
parent865e926e0c7b9f8ad6201315a41a89b2258d77a7 (diff)
downloadopen-axiom-e46eacc852aacf74de6d98ed5aad9249f41eabb0.tar.gz
* interp/vmlisp.lisp (QSTRING): Remove.
(QSTRINGLENGTH): Likewise. (STRINGLENGTH): Likewise. * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %i2s. * interp/g-util.boot: Expand it. * interp/debug.lisp (/LOCATE): Replace STRINGLENGTH with LENGTH. * algebra/fortran.spad.pamphlet: Don't use STRINGIMAGE from Lisp. * algebra/generic.spad.pamphlet: Likewise. * algebra/naalg.spad.pamphlet: Likewise. * algebra/naalgc.spad.pamphlet: Likewise. * algebra/outform.spad.pamphlet: Likewise. * algebra/string.spad.pamphlet: Likewise.
Diffstat (limited to 'src/interp')
-rw-r--r--src/interp/debug.lisp2
-rw-r--r--src/interp/g-opt.boot2
-rw-r--r--src/interp/g-util.boot1
-rw-r--r--src/interp/vmlisp.lisp6
4 files changed, 3 insertions, 8 deletions
diff --git a/src/interp/debug.lisp b/src/interp/debug.lisp
index 3ed6ea3d..2c951e31 100644
--- a/src/interp/debug.lisp
+++ b/src/interp/debug.lisp
@@ -310,7 +310,7 @@
(NOT (make-input-filename INFILE)))
(RETURN NIL))
(SETQ FT (UPCASE (|object2Identifier| (|pathnameType| INFILE))))
- (SETQ KEYLENGTH (STRINGLENGTH KEY))
+ (SETQ KEYLENGTH (LENGTH KEY))
(WHEN (> INITRECNO 1) ;; we think we know where it is
(POINT INITRECNO |$InputStream|)
(SETQ LN (READ-LINE |$InputStream| NIL NIL))
diff --git a/src/interp/g-opt.boot b/src/interp/g-opt.boot
index cd078397..a25c25a3 100644
--- a/src/interp/g-opt.boot
+++ b/src/interp/g-opt.boot
@@ -451,7 +451,7 @@ $VMsideEffectFreeOperators ==
%nil %pair? %lconcat %llength %lfirst %lsecond %lthird
%lreverse %lempty? %hash %ismall? %string? %f2s
%ccst %ceq %clt %cle %cgt %cge %c2i %i2c %s2c %sname
- %strlength
+ %strlength %i2s
%vref %vlength %before?)
++ List of simple VM operators
diff --git a/src/interp/g-util.boot b/src/interp/g-util.boot
index 3a2504cf..b3e1d1ac 100644
--- a/src/interp/g-util.boot
+++ b/src/interp/g-util.boot
@@ -434,6 +434,7 @@ for x in [
['%integer?,:'INTEGERP],
['%iodd?, :'ODDP],
['%ismall?, :'FIXNUMP],
+ ['%i2s, :'WRITE_-TO_-STRING],
-- binary integer operations.
['%iadd, :"+"],
['%igcd, :'GCD],
diff --git a/src/interp/vmlisp.lisp b/src/interp/vmlisp.lisp
index 696c8821..7845b25e 100644
--- a/src/interp/vmlisp.lisp
+++ b/src/interp/vmlisp.lisp
@@ -395,9 +395,6 @@
(defmacro qstimes (x y)
`(the fixnum (* (the fixnum ,x) (the fixnum ,y))))
-(defmacro qstringlength (x)
- `(the fixnum (length (the simple-string ,x))))
-
(defmacro qszerop (x)
`(zerop (the fixnum ,x)))
@@ -449,9 +446,6 @@
(defmacro smintp (n)
`(typep ,n 'fixnum))
-(defmacro stringlength (x)
- `(length (the string ,x)))
-
(defmacro subrp (x)
`(compiled-function-p ,x))