summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--share/txr/stdlib/asm.tl4
-rw-r--r--share/txr/stdlib/vm-param.tl3
2 files changed, 4 insertions, 3 deletions
diff --git a/share/txr/stdlib/asm.tl b/share/txr/stdlib/asm.tl
index bf2da421..58bd72b2 100644
--- a/share/txr/stdlib/asm.tl
+++ b/share/txr/stdlib/asm.tl
@@ -302,8 +302,8 @@
(defun small-op-p (val)
(with-lev-idx (lv ix) val
- (and (< -1 ix %sm-lev-size%)
- (<= 0 lv %max-sm-lev-idx%))))
+ (and (<= 0 ix %max-sm-lev-idx%)
+ (<= 0 lv %max-sm-lev%))))
(defun enc-small-op (val)
(with-lev-idx (lv ix) val
diff --git a/share/txr/stdlib/vm-param.tl b/share/txr/stdlib/vm-param.tl
index bac6287e..3ce993c4 100644
--- a/share/txr/stdlib/vm-param.tl
+++ b/share/txr/stdlib/vm-param.tl
@@ -31,5 +31,6 @@
(defsymacro %max-v-lev% (macro-time (ppred %max-lev%)))
(defsymacro %imm-width% 32)
(defsymacro %sm-lev-size% 64)
-(defsymacro %max-sm-lev-idx% 15)
+(defsymacro %max-sm-lev-idx% (macro-time (pred %sm-lev-size%)))
+(defsymacro %max-sm-lev% 15)
(defsymacro %sm-lev-bits% 6)