summaryrefslogtreecommitdiff
path: root/module/language/tree-il/primitives.scm
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2017-11-21 16:09:30 +0100
committerAndy Wingo <wingo@pobox.com>2017-11-24 10:37:50 +0100
commit980de88902ec7002b174c63a817c0f1cfe73fa1a (patch)
tree922415e011fc96822128750821ff5a3f06586198 /module/language/tree-il/primitives.scm
parent72c31075394b6b6f365c7a78964dc8feeb068ade (diff)
downloadguile-980de88902ec7002b174c63a817c0f1cfe73fa1a.tar.gz
Add exact-integer? as interesting Tree-IL effect-free primitive
* module/language/tree-il/primitives.scm (*interesting-primitive-names*): (*effect-free-primitives*, *effect+exception-free-primitives*): Detect use of exact-integer?. * module/language/tree-il/compile-cps.scm (canonicalize): Compile exact-integer? to a fixnum?-or-bignum? check.
Diffstat (limited to 'module/language/tree-il/primitives.scm')
-rw-r--r--module/language/tree-il/primitives.scm3
1 files changed, 3 insertions, 0 deletions
diff --git a/module/language/tree-il/primitives.scm b/module/language/tree-il/primitives.scm
index 646eea0c1..c9e1fc0e4 100644
--- a/module/language/tree-il/primitives.scm
+++ b/module/language/tree-il/primitives.scm
@@ -57,6 +57,7 @@
procedure? thunk?
complex? real? rational? inf? nan? integer? exact? inexact? even? odd?
+ exact-integer?
char<? char<=? char>=? char>?
@@ -174,6 +175,7 @@
symbol? variable? vector? struct? string? number? char?
bytevector? keyword? bitvector? atomic-box?
complex? real? rational? inf? nan? integer? exact? inexact? even? odd?
+ exact-integer?
char<? char<=? char>=? char>?
integer->char char->integer number->string string->number
struct-vtable
@@ -194,6 +196,7 @@
not
pair? null? nil? list?
symbol? variable? vector? struct? string? number? char?
+ exact-integer?
bytevector? keyword? bitvector?
procedure? thunk? atomic-box?
acons cons cons* list vector))