mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 11:50:28 +02:00
* libguile/intrinsics.c (scm_bootstrap_intrinsics): * libguile/intrinsics.h (SCM_FOR_ALL_VM_INTRINSICS): Add "inexact" intrinsic. * libguile/jit.c (compile_s64_to_f64): New compiler. * libguile/vm-engine.c (s64->f64): New instruction. * module/language/cps/effects-analysis.scm (heap-numbers-equal?): * module/language/cps/reify-primitives.scm (compute-known-primitives): * module/language/cps/slot-allocation.scm (compute-var-representations): * module/language/cps/specialize-numbers.scm (fixnum->f64): (specialize-operations): * module/language/cps/type-fold.scm (scm->f64, inexact): * module/language/cps/types.scm (inexact, s64->f64): * module/language/tree-il/cps-primitives.scm (exact->inexact): * module/language/tree-il/primitives.scm (*interesting-primitive-names*): (*effect-free-primitives*): * module/system/vm/assembler.scm: Recognize exact->inexact as a primitive, and optimize it. Add compiler support for new "inexact" and "s64->f64" primcalls. |
||
---|---|---|
.. | ||
closure-conversion.scm | ||
compile-bytecode.scm | ||
contification.scm | ||
cse.scm | ||
dce.scm | ||
devirtualize-integers.scm | ||
effects-analysis.scm | ||
graphs.scm | ||
intmap.scm | ||
intset.scm | ||
licm.scm | ||
loop-instrumentation.scm | ||
optimize.scm | ||
peel-loops.scm | ||
prune-top-level-scopes.scm | ||
reify-primitives.scm | ||
renumber.scm | ||
rotate-loops.scm | ||
self-references.scm | ||
simplify.scm | ||
slot-allocation.scm | ||
spec.scm | ||
specialize-numbers.scm | ||
specialize-primcalls.scm | ||
split-rec.scm | ||
type-checks.scm | ||
type-fold.scm | ||
types.scm | ||
utils.scm | ||
verify.scm | ||
with-cps.scm |