Commit graph

70 commits

Author SHA1 Message Date
Folkert
cc98237a0a closure_env_layout 2021-06-16 22:15:55 +02:00
Folkert
b622202d97 rename joinpoint field 2021-06-14 21:12:24 +02:00
Folkert
86f35c33cd work on higher order lowlevels 2021-06-12 23:05:06 +02:00
Folkert
9476f63e07 WIP 2021-06-09 19:21:24 +02:00
Anton-4
314503cf7f fixed typos, added typos checking to CI 2021-06-05 20:02:54 +02:00
Folkert
03cc96f4ed rename Rethrow -> Resume 2021-05-30 14:44:46 +02:00
Folkert
64576ddab5 add exception id to invoke/rethrow 2021-05-29 23:27:43 +02:00
Folkert
fbb711b2ca Merge remote-tracking branch 'origin/trunk' into specialize-lowlevel 2021-05-24 15:11:40 +02:00
Folkert
3946a8631d remove incorrect debug assert 2021-05-22 19:44:07 +02:00
Folkert
43c4f24515 Remove extra case from ByName calls
we now always call by name, so we can just assert that the function is
defined
2021-05-22 14:53:38 +02:00
Folkert
ae5b0d8cfd remove by-pointer calls 2021-05-22 13:52:06 +02:00
Folkert
910a7e5113 fix bug where results of top-level thunks are not RC'd 2021-05-20 22:39:14 +02:00
Folkert
d01d539d6b first pass for List.keep 2021-05-19 21:30:43 +02:00
Folkert
e3b102e0c3 fix List.map3 2021-05-19 16:41:12 +02:00
Folkert
d2b0ecdd04 fix List.map2 2021-05-19 16:07:50 +02:00
Folkert
87b9f866d3 WIP fixing the borrowing in HOFs 2021-05-19 15:28:20 +02:00
Folkert
8dddf952a8 WIP List.map + RC'd closure troubles 2021-05-17 19:31:52 +02:00
Folkert
2b72f9e733 add HigherOrderLowLevel 2021-05-16 22:49:57 +02:00
Folkert
bb3fe92251 Revert "add ir unknowninc instruction"
This reverts commit ebd62485df.
2021-05-16 21:52:30 +02:00
Folkert
7520dfee06 Revert "formatting"
This reverts commit 3540a048d8.
2021-05-16 21:52:20 +02:00
Folkert
3540a048d8 formatting 2021-05-16 20:25:18 +02:00
Folkert
ebd62485df add ir unknowninc instruction 2021-05-16 17:25:01 +02:00
Folkert
3ca6ffade9 make List.map borrow based on passed function 2021-05-16 14:09:39 +02:00
Folkert
27f8465e9c clippy 2021-05-15 23:59:54 +02:00
Folkert
16fe609464 remove Expr::FunctionPointer 2021-05-15 21:29:10 +02:00
Folkert
357f93a2ee store the layout of a function passed to a lowlevel 2021-05-15 20:54:26 +02:00
Folkert
acd6fde083 fix invoke codegen 2021-05-14 23:11:59 +02:00
Folkert
16f17cba88 comments/whitespace 2021-05-14 22:57:39 +02:00
Folkert
8799973ffe add update mode variables 2021-05-09 01:03:29 +02:00
Folkert
2dab9c81d1 use invoke 2021-04-23 11:22:32 +02:00
Folkert
55cb780249 don't clone Layout 2021-03-22 14:08:48 +01:00
Folkert
207a5eb537 change how invoke refcounting works (the live variable calculation was incorrect) 2021-02-19 17:11:29 +01:00
Folkert
0b6975fa77 de-alias same symbol with different layouts in borrow inference 2021-02-18 15:53:37 +01:00
Folkert
c788965182 only reference count closures if the captured values are RC'd 2021-02-16 22:00:15 +01:00
Folkert
9d3db2f507 revise RC for function pointers 2021-02-11 15:27:46 +01:00
Folkert
55eff1dba1 fix oversights 2021-01-28 15:32:22 +01:00
Folkert
936bf459eb initial version of rc optimization 2021-01-28 13:14:54 +01:00
Folkert
42f63ceac1 update other places 2021-01-22 01:17:57 +01:00
Folkert
15cbadf652 add inc field to Inc instruction 2021-01-22 00:16:20 +01:00
Folkert
e005dbde4c rename Unreachable -> Rethrow 2021-01-07 20:19:12 +01:00
Folkert
6e0f57d7eb make invoke work 2021-01-02 00:55:09 +01:00
Folkert
f8a8c26d2d clippy 2021-01-01 20:27:43 +01:00
Folkert
0ef70f55ea invoke in mono 2021-01-01 20:14:05 +01:00
Folkert
0893aa7369 call changes in mono 2021-01-01 16:11:31 +01:00
Folkert
6bc0cf33a5 add unreachable instruction to the mono IR 2021-01-01 02:26:56 +01:00
Folkert
5859568d92 remove Cond 2020-12-31 20:58:30 +01:00
Folkert
a6e39e66f1 generate signature for foreign symbols 2020-11-06 23:46:31 +01:00
Folkert
2f42463a97 do the IR stuff for foreign call 2020-11-05 23:50:01 +01:00
Richard Feldman
491ae7a775 Drop unnecessary pub 2020-10-31 21:28:02 -04:00
Folkert
f857203673 Merge remote-tracking branch 'origin/trunk' into recursive-layouts 2020-09-07 16:53:15 +02:00