Justin Ethier
17213d94ac
Added a TODO
2018-09-12 17:41:44 -04:00
Justin Ethier
c9fd208a72
Added stub
2018-09-12 17:17:31 -04:00
Justin Ethier
d45c44388f
Allow AST to track well-known procedures
2018-09-12 17:01:24 -04:00
Justin Ethier
39e92c1be7
Added TODO
2018-09-12 13:33:47 -04:00
Justin Ethier
8359f7a6f9
WIP - emit AST lambda's from closure convert
2018-09-06 13:32:01 -04:00
Justin Ethier
8e75b435d7
WIP, emit AST lambda's from closure convert
2018-09-05 18:56:57 -04:00
Justin Ethier
7b76453591
WIP - passing AST lambda's to closure-convert
2018-09-04 19:00:22 -04:00
Justin Ethier
b2f4502651
WIP - preserve AST through to closure-conversion
2018-08-31 19:50:58 -04:00
Justin Ethier
4a79e764f6
Take function scope into account when using adbv:mutated-indirectly
2018-08-15 13:20:38 -04:00
Justin Ethier
11f3963864
Store scopes in mutated-indirectly field
2018-08-15 13:14:46 -04:00
Justin Ethier
3065eae9a4
Added TODO items
2018-08-15 09:51:17 -04:00
Justin Ethier
7b5fd98695
Detect loops before optimizing CPS
2018-08-14 17:22:01 -04:00
Justin Ethier
3629e7892b
Do not beta expand recursive calls
2018-06-18 13:29:27 -04:00
Justin Ethier
6a57b69517
Do not beta expand a recursive function w/itself
2018-06-15 19:04:47 -04:00
Justin Ethier
d5e4603e14
Added additional debugging
2018-06-04 13:46:32 -04:00
Justin Ethier
ff94309bcc
Check continuation for direct rec calls
2018-06-04 13:16:40 -04:00
Justin Ethier
2cdc9336c0
Added TODO
2018-06-01 16:49:58 -04:00
Justin Ethier
d379d1bfb3
Track direct recursive calls
2018-06-01 13:42:24 -04:00
Justin Ethier
d4633314fc
Integrate finding direct rec calls
2018-06-01 13:11:37 -04:00
Justin Ethier
f24c711f93
Remove trace statements
2018-05-25 15:11:22 -04:00
Justin Ethier
be25f055f0
If param is referenced in a loop (but defined outside) do not inline function into the loop
2018-05-24 16:37:04 -04:00
Justin Ethier
5a73c7b83e
Integrate finding named let's
2018-05-23 18:28:33 -04:00
Justin Ethier
e92be3e80b
Integrating code to find named lets
2018-05-23 14:00:51 -04:00
Justin Ethier
c1cdad0065
Issue #257 - Prevent possible infinite loop
2018-05-04 02:17:01 +00:00
Justin Ethier
ebc68e6746
Issue #248 - Ensure unique lambda ID's/args
...
During a beta expansion, renumber lambda ID's and rename lambda args if necessary so that we do not introduce duplicates. Dupes are a problem as they throw of the analysis DB and can lead to the optimizer inserting the wrong values when code is optimized-out.
2018-03-24 19:23:30 -04:00
Justin Ethier
c5ddd79aff
Added opt:add-inlinable-functions
2017-08-23 16:30:18 +00:00
Justin Ethier
8684c93e20
Possible TODO
2017-08-02 13:07:52 +00:00
Justin Ethier
69a54ecb6a
Added constant folding back
2017-08-01 18:43:33 -04:00
Justin Ethier
9a9bb4079f
Disabling cyc-seq for now, since it breaks gcbench
...
Compiling with this seems to cause crashes (segfaults, etc) on the gcbench program.
2017-08-01 18:08:12 -04:00
Justin Ethier
0e5257eb91
Reverting constant folding for now
2017-08-01 13:27:49 +00:00
Justin Ethier
e8aa42e247
Issue #207 - Added comments
2017-07-27 11:43:49 +00:00
Justin Ethier
67ca9edbec
WIP
2017-07-26 19:02:31 -04:00
Justin Ethier
a758111aad
Issue #207 - Added constant folding
2017-07-26 14:52:03 +00:00
Justin Ethier
f2db6235e0
Issue #206 - Fix cyc-seq, and only do it as an optimization
2017-07-18 17:41:33 -04:00
Justin Ethier
d78a516138
WIP - experimental optimization
2017-07-11 18:53:06 -04:00
Justin Ethier
37d510a41f
Only use Cyc-seq for non-CPSing arguments
2017-07-10 13:26:30 +00:00
Justin Ethier
8ed042573a
WIP, eliminating more unused lambda's
2017-07-07 14:14:16 +00:00
Justin Ethier
2fd88a15e6
Relocate closure conversion
2017-07-07 13:03:30 +00:00
Justin Ethier
5390802816
Added adbv:ref-count
2017-05-26 15:49:56 +00:00
Justin Ethier
da2f2bb05f
Issue #201 - disabling for now
2017-05-26 15:41:46 +00:00
Justin Ethier
4e83e93cd7
Added TODO
2017-05-26 14:21:00 +00:00
Justin Ethier
a6093601de
Issue #201 - Inline if expressions
2017-05-26 14:10:25 +00:00
Justin Ethier
ce6b24cc10
WIP
2017-05-25 18:54:55 -04:00
Justin Ethier
7cdabc02b6
WIP
2017-05-25 17:46:41 -04:00
Justin Ethier
85a74f3a1e
WIP
2017-05-25 16:20:10 +00:00
Justin Ethier
7606eeeb5c
WIP
2017-05-25 13:25:03 +00:00
Justin Ethier
6118325ff4
Added opt:beta-expand
2017-05-15 18:50:37 +00:00
Justin Ethier
eee5695c1f
Bug fixes for beta expansion
2017-05-15 13:37:30 +00:00
Justin Ethier
7794f3edce
Ensure list of formals before performing list ops
2017-05-15 11:21:13 +00:00
Justin Ethier
1d36fec61e
WIP
2017-05-12 19:42:38 -04:00