Teach the compiler about more boolean and function primitives.
authorTaylor R Campbell <campbell@mumble.net>
Sat, 1 Dec 2018 15:32:48 +0000 (15:32 +0000)
committerTaylor R Campbell <campbell@mumble.net>
Sat, 1 Dec 2018 15:32:48 +0000 (15:32 +0000)
src/compiler/base/utils.scm

index 4b0358bf127b1d8e906d23d2c1a8b259f294d6d6..57e8f267945353edcb923d0a217195c89a6bb4bc 100644 (file)
@@ -295,7 +295,22 @@ USA.
        (ucode-primitive fixnum?)
        (ucode-primitive flonum-equal?)
        (ucode-primitive flonum-greater?)
+       (ucode-primitive flonum-integer?)
+       (ucode-primitive flonum-is-equal?)
+       (ucode-primitive flonum-is-finite?)
+       (ucode-primitive flonum-is-greater-or-equal?)
+       (ucode-primitive flonum-is-greater?)
+       (ucode-primitive flonum-is-infinite?)
+       (ucode-primitive flonum-is-less-or-equal?)
+       (ucode-primitive flonum-is-less-or-greater?)
+       (ucode-primitive flonum-is-less?)
+       (ucode-primitive flonum-is-nan?)
+       (ucode-primitive flonum-is-negative?)
+       (ucode-primitive flonum-is-normal?)
+       (ucode-primitive flonum-is-unordered?)
+       (ucode-primitive flonum-is-zero?)
        (ucode-primitive flonum-less?)
+       (ucode-primitive flonum-nan-quiet?)
        (ucode-primitive flonum-negative?)
        (ucode-primitive flonum-positive?)
        (ucode-primitive flonum-zero?)
@@ -359,33 +374,67 @@ USA.
        (ucode-primitive fixnum-and)
        (ucode-primitive fixnum-andc)
        (ucode-primitive fixnum-lsh)
+       (ucode-primitive fixnum-negate)
        (ucode-primitive fixnum-not)
        (ucode-primitive fixnum-or)
        (ucode-primitive fixnum-quotient)
        (ucode-primitive fixnum-remainder)
        (ucode-primitive fixnum-xor)
+       (ucode-primitive fixnum->flonum)
        (ucode-primitive floating-vector-length)
        (ucode-primitive floating-vector-ref)
        (ucode-primitive flonum-abs)
        (ucode-primitive flonum-acos)
+       (ucode-primitive flonum-acosh)
        (ucode-primitive flonum-add)
        (ucode-primitive flonum-asin)
+       (ucode-primitive flonum-asinh)
        (ucode-primitive flonum-atan)
        (ucode-primitive flonum-atan2)
+       (ucode-primitive flonum-atanh)
+       (ucode-primitive flonum-cbrt)
        (ucode-primitive flonum-ceiling)
+       (ucode-primitive flonum-ceiling->exact)
+       (ucode-primitive flonum-copysign)
        (ucode-primitive flonum-cos)
+       (ucode-primitive flonum-cosh)
+       (ucode-primitive flonum-denormalize)
        (ucode-primitive flonum-divide)
+       (ucode-primitive flonum-erf)
+       (ucode-primitive flonum-erfc)
        (ucode-primitive flonum-exp)
+       (ucode-primitive flonum-expm1)
+       (ucode-primitive flonum-expt)
        (ucode-primitive flonum-floor)
+       (ucode-primitive flonum-floor->exact)
+       (ucode-primitive flonum-gamma)
+       (ucode-primitive flonum-hypot)
+       (ucode-primitive flonum-j0)
+       (ucode-primitive flonum-j1)
+       (ucode-primitive flonum-jn)
+       (ucode-primitive flonum-lgamma)
        (ucode-primitive flonum-log)
+       (ucode-primitive flonum-log1p)
+       (ucode-primitive flonum-make-nan)
+       (ucode-primitive flonum-modulo)
        (ucode-primitive flonum-multiply)
+       (ucode-primitive flonum-nan-payload)
        (ucode-primitive flonum-negate)
+       (ucode-primitive flonum-nextafter)
+       (ucode-primitive flonum-normalize)
        (ucode-primitive flonum-round)
+       (ucode-primitive flonum-round->exact)
        (ucode-primitive flonum-sin)
+       (ucode-primitive flonum-sinh)
        (ucode-primitive flonum-sqrt)
        (ucode-primitive flonum-subtract)
        (ucode-primitive flonum-tan)
+       (ucode-primitive flonum-tanh)
        (ucode-primitive flonum-truncate)
+       (ucode-primitive flonum-truncate->exact)
+       (ucode-primitive flonum-y0)
+       (ucode-primitive flonum-y1)
+       (ucode-primitive flonum-yn)
        (ucode-primitive gcd-fixnum)
        (ucode-primitive integer->char)
        (ucode-primitive integer-add)