1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-28 14:00:31 +02:00
guile/module/language/cps
Andy Wingo 0d42f5467f Lower logtest branches to instead be 'zero? logand'
* module/language/cps/compile-bytecode.scm (compile-function): Rename
  the binary* helper back to binary, update uses, and remove logtest
  branch as we no longer put logtest in test context.
* module/language/cps/primitives.scm (*comparisons*): Remove logtest.
* module/language/cps/type-fold.scm: Remove logtest folder.
  (logbit?): Fold to logand.
* module/language/cps/types.scm (logtest): Update to be a type inferrer
  and not a predicate inferrer.
* module/language/tree-il/peval.scm (peval): Transform logtest and
  logbit? to (zero? (logand _ _)).
2017-10-30 11:50:45 +01:00
..
closure-conversion.scm Simplify $branch to always take a $primcall 2017-10-29 10:05:24 +01:00
compile-bytecode.scm Lower logtest branches to instead be 'zero? logand' 2017-10-30 11:50:45 +01:00
constructors.scm Unbox indexes of vectors, strings, and structs 2015-12-01 15:42:24 +01:00
contification.scm Simplify $branch to always take a $primcall 2017-10-29 10:05:24 +01:00
cse.scm Add hacks around lack of allocation sinking 2017-10-29 20:33:35 +01:00
dce.scm Simplify $branch to always take a $primcall 2017-10-29 10:05:24 +01:00
effects-analysis.scm Remove compiler support for u64-scm comparisons 2017-10-29 21:02:56 +01:00
elide-values.scm Add missing files 2015-07-22 18:27:37 +02:00
handle-interrupts.scm Improve handle-interrupts placement 2016-12-18 23:05:15 +01:00
intmap.scm Move thread bindings to (ice-9 threads) 2016-10-23 22:29:44 +02:00
intset.scm Move thread bindings to (ice-9 threads) 2016-10-23 22:29:44 +02:00
licm.scm Loop-invariant code motion 2015-07-24 16:50:58 +02:00
optimize.scm Include missing #:simplify? option in (language cps optimize). 2016-01-04 22:43:30 +01:00
peel-loops.scm Simplify $branch to always take a $primcall 2017-10-29 10:05:24 +01:00
primitives.scm Lower logtest branches to instead be 'zero? logand' 2017-10-30 11:50:45 +01:00
prune-bailouts.scm Add missing files 2015-07-22 18:27:37 +02:00
prune-top-level-scopes.scm Add missing files 2015-07-22 18:27:37 +02:00
reify-primitives.scm Move thread bindings to (ice-9 threads) 2016-10-23 22:29:44 +02:00
renumber.scm Add missing files 2015-07-22 18:27:37 +02:00
rotate-loops.scm Simplify $branch to always take a $primcall 2017-10-29 10:05:24 +01:00
self-references.scm Simplify $branch to always take a $primcall 2017-10-29 10:05:24 +01:00
simplify.scm Simplify $branch to always take a $primcall 2017-10-29 10:05:24 +01:00
slot-allocation.scm Add untag-fixnum instruction 2017-10-29 19:56:51 +01:00
spec.scm Fix guild compile --to=cps / --from=cps 2017-02-23 11:37:44 +01:00
specialize-numbers.scm Inline u64/scm comparisons 2017-10-29 20:35:30 +01:00
specialize-primcalls.scm Add ursh/immediate and ulsh/immediate ops 2015-12-02 22:11:19 +01:00
split-rec.scm Simplify $branch to always take a $primcall 2017-10-29 10:05:24 +01:00
type-checks.scm Factor out compute-effects/elide-type-checks from dce.scm 2015-07-24 11:39:18 +02:00
type-fold.scm Lower logtest branches to instead be 'zero? logand' 2017-10-30 11:50:45 +01:00
types.scm Lower logtest branches to instead be 'zero? logand' 2017-10-30 11:50:45 +01:00
utils.scm Fix bug in intmap-map 2015-12-26 22:12:09 +01:00
verify.scm Simplify $branch to always take a $primcall 2017-10-29 10:05:24 +01:00
with-cps.scm Add missing files 2015-07-22 18:27:37 +02:00