1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-11 14:21:10 +02:00
guile/module/language/tree-il
Andy Wingo 8f18b71b7a Remove add1 and sub1
* libguile/vm-engine.c: Remove add1 and sub1 instructions.  Will replace
  with add/immediate and sub/immediate.
* module/language/tree-il/peval.scm (peval): If we reify a new
  <primcall>, expand it.  Removes 1- and similar primcalls.
* module/language/tree-il/primitives.scm: Don't specialize (+ x 1) to 1+.
  (expand-primcall): New export, does a single primcall expansion.
  (expand-primitives): Use the new helper.
* module/language/cps/effects-analysis.scm:
* module/language/cps/primitives.scm:
* module/language/cps/types.scm:
* module/system/vm/assembler.scm: Remove support for add1 and sub1 CPS
  primitives.
* test-suite/tests/peval.test ("partial evaluation"): Adapt tests that
  expect 1+/1- to expect +/-.
2015-12-01 11:30:55 +01:00
..
analyze.scm Merge branch 'stable-2.0' 2014-09-30 03:50:47 -04:00
canonicalize.scm Inline escape-only prompt bodies in the Tree-IL 2013-08-11 16:45:31 +02:00
compile-cps.scm bv-f{32,64}-{ref,set!} take unboxed u64 index 2015-12-01 11:30:54 +01:00
debug.scm <prompt> body and handler are lambdas; add escape-only? field 2013-07-06 20:27:21 +09:00
effects.scm Effects analysis distinguishes between struct fields 2013-11-10 12:05:35 +01:00
fix-letrec.scm Tree-il post-order rewriter no longer destructive 2013-06-10 22:46:08 +02:00
optimize.scm Wire up `guild compile -O0 foo.scm' 2015-10-22 17:44:17 +00:00
peval.scm Remove add1 and sub1 2015-12-01 11:30:55 +01:00
primitives.scm Remove add1 and sub1 2015-12-01 11:30:55 +01:00
spec.scm Rename CPS2 to CPS 2015-07-22 17:19:04 +02:00