Commit graph

1137 commits

Author SHA1 Message Date
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
b3e4a9feb6 Fix storing of all params 2018-09-20 12:16:32 -04:00
Justin Ethier
cb97cfbac7 WIP 2018-09-19 18:51:41 -04:00
Justin Ethier
b5248cb965 Set lambda args in adb 2018-09-19 18:35:09 -04:00
Justin Ethier
47da3d5be6 Added all-args to adbf 2018-09-19 17:45:22 -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
d0fccf44f8 Keep track of closure sizes 2018-09-18 17:50:17 -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
6dfe91fdc6 Added cgen-id parameter 2018-09-14 18:20:08 -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
Justin Ethier
927856ec55 Export convenience functions 2018-09-14 18:00:19 -04:00
Justin Ethier
8eb447d11b Added c-macro-return-direct-with-closure 2018-09-14 15:17:07 -04:00
Justin Ethier
8f7b785ec3 Additional debugging 2018-09-14 12:36:05 -04:00
Justin Ethier
dbd1e4799f Integrate code for well-known lambdas 2018-09-14 12:07:34 -04:00
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
c4de5b057e More ast lambda conversions 2018-09-11 17:34:04 -04:00
Justin Ethier
f8af9833e1 WIP 2018-09-11 12:47:58 -04:00
Justin Ethier
8b74b495fb WIP 2018-09-07 17:39:10 -04:00
Justin Ethier
941930af35 WIP - AST lambda integration 2018-09-06 18:55:43 -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
a5489fca46 Issue #275 - Allow pretty printing of bytevectors 2018-09-05 18:00:55 -04:00
Justin Ethier
4cf407ebe6 Issue #275 - Return #f instead of raising error 2018-09-05 17:41:47 -04:00
Justin Ethier
9d606f9d43 Fix for AST output for wrap-mutables 2018-09-05 17:45:02 -04:00
Justin Ethier
cc1bfea6f0 Update (free-vars) to include AST support 2018-09-05 12:51:21 -04:00
Justin Ethier
7b76453591 WIP - passing AST lambda's to closure-convert 2018-09-04 19:00:22 -04:00
Justin Ethier
8f8df24b15 WIP, generate proper AST output from wrap-muts 2018-09-04 13:09:50 -04:00
Justin Ethier
b2f4502651 WIP - preserve AST through to closure-conversion 2018-08-31 19:50:58 -04:00
Justin Ethier
21616727d1 Stage 0.9.3 2018-08-27 11:00:58 -04:00
Justin Ethier
dd77c46400 Issue #272 - Added more predicates 2018-08-16 18:06:47 -04:00
Justin Ethier
081088ae40 Issue #272 - Optimize-out simple (if) expressions 2018-08-16 17:53:17 -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