1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-20 02:30:23 +02:00
guile/module/language/cps
Andy Wingo 03998db647 Add new pass to optimize branch chains to table dispatch
* module/language/cps/switch.scm: New pass.

* module/Makefile.am (SOURCES):
* am/bootstrap.am (SOURCES): Add switch.scm.

* module/system/base/optimize.scm (available-optimizations):
* module/language/cps/optimize.scm (optimize-first-order-cps): Run
  switch optimization at level 2.

* libguile/hash.c (JENKINS_LOOKUP3_HASHWORD2): Add note regarding
  cross-compilation.

* module/language/cps/graphs.scm (intmap-select): New definition.
* module/language/cps/utils.scm (compute-singly-referenced-labels): Move
  here, from various places.  Doesn't take a body intset argument.

* module/language/cps/contification.scm:
* module/language/cps/closure-conversion.scm:
* module/language/cps/simplify.scm: Use compute-singly-referenced-labels
  from utils.

* module/language/cps/effects-analysis.scm (annotation->memory-kind*):
  (annotation->memory-kind): Add symbol annotation cases.
2020-08-12 23:30:08 +02:00
..
closure-conversion.scm Add new pass to optimize branch chains to table dispatch 2020-08-12 23:30:08 +02:00
compile-bytecode.scm Add $switch CPS term kind 2020-08-12 23:30:08 +02:00
contification.scm Add new pass to optimize branch chains to table dispatch 2020-08-12 23:30:08 +02:00
cse.scm Add $switch CPS term kind 2020-08-12 23:30:08 +02:00
dce.scm Add $switch CPS term kind 2020-08-12 23:30:08 +02:00
devirtualize-integers.scm Add $switch CPS term kind 2020-08-12 23:30:08 +02:00
effects-analysis.scm Add new pass to optimize branch chains to table dispatch 2020-08-12 23:30:08 +02:00
graphs.scm Add new pass to optimize branch chains to table dispatch 2020-08-12 23:30:08 +02:00
intmap.scm Fix intmap-intersect edge case 2019-06-11 12:56:23 +02:00
intset.scm Replace bit-position with bitvector-position 2020-04-12 22:39:55 +02:00
licm.scm Add $switch CPS term kind 2020-08-12 23:30:08 +02:00
loop-instrumentation.scm Add $switch CPS term kind 2020-08-12 23:30:08 +02:00
optimize.scm Add new pass to optimize branch chains to table dispatch 2020-08-12 23:30:08 +02:00
peel-loops.scm Add $switch CPS term kind 2020-08-12 23:30:08 +02:00
prune-top-level-scopes.scm cache-current-module, etc use immediate primcall parameters 2017-11-05 15:00:16 +01:00
reify-primitives.scm CPS compiler reduces eq? on constant to eq-constant? 2020-08-03 22:19:18 +02:00
renumber.scm Add $switch CPS term kind 2020-08-12 23:30:08 +02:00
rotate-loops.scm Add $switch CPS term kind 2020-08-12 23:30:08 +02:00
self-references.scm Add $switch CPS term kind 2020-08-12 23:30:08 +02:00
simplify.scm Add new pass to optimize branch chains to table dispatch 2020-08-12 23:30:08 +02:00
slot-allocation.scm Add $switch CPS term kind 2020-08-12 23:30:08 +02:00
spec.scm Define new "lowering" phase in compiler 2020-05-08 17:07:56 +02:00
specialize-numbers.scm Add $switch CPS term kind 2020-08-12 23:30:08 +02:00
specialize-primcalls.scm Compiler allocates boxed flonums in unmarked space 2019-08-26 10:19:24 +02:00
split-rec.scm Add $switch CPS term kind 2020-08-12 23:30:08 +02:00
switch.scm Add new pass to optimize branch chains to table dispatch 2020-08-12 23:30:08 +02:00
type-checks.scm $branch is now a distinct CPS term type 2018-01-03 16:16:39 +01:00
type-fold.scm Add $switch CPS term kind 2020-08-12 23:30:08 +02:00
types.scm Add new pass to optimize branch chains to table dispatch 2020-08-12 23:30:08 +02:00
utils.scm Add new pass to optimize branch chains to table dispatch 2020-08-12 23:30:08 +02:00
verify.scm Add $switch CPS term kind 2020-08-12 23:30:08 +02:00
with-cps.scm Add missing files 2015-07-22 18:27:37 +02:00