Justin Ethier
|
149e10257c
|
Remove debug trace
|
2018-10-26 13:19:52 -04:00 |
|
Justin Ethier
|
6bc445e9ed
|
Cleanup, check for proper index of "self" in clo
|
2018-10-25 18:27:14 -04:00 |
|
Justin Ethier
|
8bd87a8ef6
|
Refactoring
|
2018-10-25 17:42:02 -04:00 |
|
Justin Ethier
|
6577d9d462
|
Added find-closure-assigned-var-index!
|
2018-10-25 17:47:41 -04:00 |
|
Justin Ethier
|
6f47046be0
|
Properly reference closures
|
2018-10-24 22:43:32 -04:00 |
|
Justin Ethier
|
7e6ad07d9f
|
Alloc closures as needed
|
2018-10-24 18:18:42 -04:00 |
|
Justin Ethier
|
c914d80e7f
|
Pass params to continue_or_gc since already reassigned
|
2018-10-24 17:26:46 -04:00 |
|
Justin Ethier
|
02df0f9fb2
|
Re-enable iteration
|
2018-10-24 13:36:31 -04:00 |
|
Justin Ethier
|
c10d38e170
|
Support alloca of basic arithmetic operations
|
2018-10-24 13:29:34 -04:00 |
|
Justin Ethier
|
be5a5f1c6b
|
WIP - optionally emit alloca-based prims
|
2018-10-24 13:17:44 -04:00 |
|
Justin Ethier
|
b2a981b7e5
|
WIP
|
2018-10-23 18:09:02 -04:00 |
|
Justin Ethier
|
49c2c093fd
|
Reassign args when doing C iteration
Reassign arguments when optimizing to use C iteration in place of recursive function calls.
|
2018-10-23 13:31:01 -04:00 |
|
Justin Ethier
|
d0564e991e
|
WIP
|
2018-10-23 12:16:33 -04:00 |
|
Justin Ethier
|
c39183500a
|
WIP
|
2018-10-23 12:03:52 -04:00 |
|
Justin Ethier
|
1989d32664
|
Added continue_or_gc macros
|
2018-10-23 11:33:05 -04:00 |
|
Justin Ethier
|
870a9a9763
|
Added TODO
|
2018-10-22 17:28:25 -04:00 |
|
Justin Ethier
|
fb8de77d37
|
Detect actual recursive calls
|
2018-10-22 17:16:25 -04:00 |
|
Justin Ethier
|
8930d9c8df
|
Added TODO
|
2018-10-22 13:35:33 -04:00 |
|
Justin Ethier
|
c1e8996ddd
|
Added TODO
|
2018-10-22 13:34:16 -04:00 |
|
Justin Ethier
|
88f0db1547
|
Fix TODO
|
2018-10-19 13:33:47 -04:00 |
|
Justin Ethier
|
23aaae8f05
|
WIP
|
2018-10-19 13:23:18 -04:00 |
|
Justin Ethier
|
5f760e4a2c
|
Use alloca_pair instead of make_pair for literals
|
2018-10-18 13:10:32 -04:00 |
|
Justin Ethier
|
ad6e2c5f78
|
Added return_direct_with_clo and return_direct_with_obj
|
2018-09-28 11:53:54 -04:00 |
|
Justin Ethier
|
03b4f21b66
|
Make it easier to enable/disable WKL
|
2018-09-27 17:49:04 -04:00 |
|
Justin Ethier
|
e49a319ec6
|
Enable well-known-function code
|
2018-09-26 13:18:52 -04:00 |
|
Justin Ethier
|
31e99da295
|
Bugfix - swap when we use num-lambda
|
2018-09-26 12:25:08 -04:00 |
|
Justin Ethier
|
92fb2c176d
|
WIP
|
2018-09-26 11:10:49 -04:00 |
|
Justin Ethier
|
ea7f401e77
|
Use ast lambda ID's in C code
|
2018-09-25 18:43:18 -04:00 |
|
Justin Ethier
|
cb9d143187
|
WIP
|
2018-09-25 17:42:19 -04:00 |
|
Justin Ethier
|
32c8ad1949
|
WIP, added TODO's
|
2018-09-25 17:12:26 -04:00 |
|
Justin Ethier
|
bad93ae229
|
Temporarily disable well-known fnc changes
|
2018-09-25 12:38:30 -04:00 |
|
Justin Ethier
|
a27a62d65b
|
Fix dereferencing closure from gc_ret fnc
|
2018-09-21 17:47:29 -04:00 |
|
Justin Ethier
|
6d35fb6fe7
|
Deref closure param
|
2018-09-21 13:32:36 -04:00 |
|
Justin Ethier
|
fe08c5ae96
|
Bug fixes
|
2018-09-21 13:22:05 -04:00 |
|
Justin Ethier
|
40a2131fef
|
Add a type check
|
2018-09-21 13:06:37 -04:00 |
|
Justin Ethier
|
ade50748b6
|
Only emit new return macro when clo can be omitted
|
2018-09-21 12:44:18 -04:00 |
|
Justin Ethier
|
cc5f14f63e
|
WIP
|
2018-09-21 12:24:54 -04:00 |
|
Justin Ethier
|
9e082f3c0c
|
WIP - emit gc ret functions
|
2018-09-21 11:59:41 -04:00 |
|
Justin Ethier
|
107f5ce75a
|
Pass appropriate lambda ID when compiling closure
|
2018-09-20 17:52:29 -04:00 |
|
Justin Ethier
|
3b0a6b2fd6
|
Added TODO
|
2018-09-20 13:19:08 -04:00 |
|
Justin Ethier
|
dd82dba750
|
Temporarily disable emitting new code
Need to debug lambda ID code first, before this change can hope to work.
|
2018-09-20 13:12:39 -04:00 |
|
Justin Ethier
|
cb97cfbac7
|
WIP
|
2018-09-19 18:51:41 -04:00 |
|
Justin Ethier
|
bd8e5cb1de
|
Added c-compile-closure-element-ref
|
2018-09-19 13:31:36 -04:00 |
|
Justin Ethier
|
7cb83e17d8
|
Pass enclosing lambda AST ID when compiling expr's
|
2018-09-19 13:24:04 -04:00 |
|
Justin Ethier
|
5d1ed67c48
|
WIP - emitting obj instead of closure
|
2018-09-18 18:51:59 -04:00 |
|
Justin Ethier
|
9c377cd872
|
Emit return_direct_with_clo when possible.
This speeds up compilation slightly but the real benefit (I hope) will be when we can leverage it to eliminate certain closures.
|
2018-09-17 13:12:15 -04:00 |
|
Justin Ethier
|
189728d571
|
Store cgen-id in the analysis DB
|
2018-09-16 18:54:31 -04:00 |
|
Justin Ethier
|
a9c5d5d268
|
WIP
|
2018-09-14 18:26:03 -04:00 |
|
Justin Ethier
|
f461e26fa4
|
WIP - store allocated lambda id
|
2018-09-14 18:14:32 -04:00 |
|
Justin Ethier
|
d4e3c65ca7
|
Staging initial cgen changes
|
2018-09-14 18:06:50 -04:00 |
|