Andy Wingo
0dd7c54075
Merge remote-tracking branch 'origin/stable-2.0'
...
Conflicts:
libguile/deprecated.c
libguile/ports.c
libguile/ports.h
libguile/strports.c
test-suite/tests/cse.test
2012-06-22 13:18:02 +02:00
Andy Wingo
4d1ae11279
cse: expressions evaluated for effect do not provide predicates
...
* module/language/tree-il/cse.scm (cse): When trying to fold
conditionals, only look at entries in the database that were added in
test context.
* test-suite/tests/cse.test ("cse"): Add a test case.
2012-06-22 12:33:20 +02:00
Andy Wingo
74bbb99457
Merge remote-tracking branch 'origin/stable-2.0'
...
Conflicts:
module/language/tree-il/analyze.scm
module/language/tree-il/effects.scm
module/language/tree-il/fix-letrec.scm
module/language/tree-il/peval.scm
test-suite/tests/cse.test
test-suite/tests/peval.test
2012-05-21 19:20:27 +02:00
Andy Wingo
63216d80de
cse passes a lookup procedure to the effects analyzer
...
* module/language/tree-il/cse.scm (cse): Arrange to pass a lookup
procedure to compute-effects, for better effects analysis.
2012-05-15 17:23:06 +02:00
Andy Wingo
dc1ee62046
CSE in tail position
...
* module/language/tree-il/cse.scm (singly-valued-expression?, cse):
Allow CSE to propagate lexicals to tail positions, if the expression
is singly-valued.
2012-05-15 17:20:01 +02:00
Andy Wingo
1fb39dc55f
mvoe tree-il=? and tree-il-hash to tree-il.scm
...
* module/language/tree-il.scm (tree-il=?, tree-il-hash): Move these
helpers here, from cse.scm. Export them.
* module/language/tree-il/cse.scm (cse): Adapt accordingly.
2012-05-15 12:25:37 +02:00
Andy Wingo
9d8a10a94c
Merge remote-tracking branch 'origin/stable-2.0'
...
Conflicts:
test-suite/tests/cse.test
2012-04-26 23:40:57 +02:00
Andy Wingo
0ea5ba9ab9
Merge commit ' f66cbb99ee
'
2012-04-26 23:36:02 +02:00
Andy Wingo
f66cbb99ee
new pass: cse
...
* module/language/tree-il/cse.scm: New pass, some simple common
subexpression elimination with effects analysis.
* test-suite/tests/cse.test: New test.
* test-suite/Makefile.am:
* module/Makefile.am: Adapt.
2012-04-23 21:52:24 +02:00
Andy Wingo
73001b06f6
fix replacement of CSE with lexical-ref
...
* module/language/tree-il/cse.scm (cse): Fix dominator unrolling for
lexical propagation.
* test-suite/tests/cse.test ("cse"): Add test.
2012-04-23 21:52:24 +02:00
Andy Wingo
3db8f60977
cse hashing tweak
...
* module/language/tree-il/cse.scm (cse): Minor tweak to hash depth based
on time profile of compiling peval.scm.
2012-04-23 21:52:24 +02:00