Commit graph

322 commits

Author SHA1 Message Date
Folkert
154b5cc29f get RBTree.balance to compile 2020-11-14 02:49:28 +01:00
Folkert
8db74298a2 Merge remote-tracking branch 'origin/trunk' into red-black-tree 2020-11-13 01:45:31 +01:00
Folkert
a431af660d give better debug info for unresolved type variables 2020-11-12 22:28:58 +01:00
lrosa007
5c69fd1205 start Layout::Union case 2020-11-09 20:21:44 -05:00
Folkert
c20b40a7d2 fix zero-sized closures 2020-11-08 03:08:13 +01:00
Folkert
2267a1174a introduce PhantomEmptyStruct 2020-11-08 03:08:12 +01:00
Folkert
3d092cb9b7 in theory allow non-function effects values
this does not work due to limitations with functions in tag unions
2020-11-08 03:07:59 +01:00
Folkert
2a872f180a some foundations for zero-sized values in closures 2020-11-08 01:55:06 +01:00
Folkert
3d0f2751f5 commit some crimes 2020-11-05 23:18:28 +01:00
Folkert
c933888690 differentiate between 0-arity thunks and function pointers 2020-11-02 22:50:12 +01:00
Folkert
ef1cee6c41 HUGE WIP 2020-10-28 01:13:04 +01:00
Folkert
5fbcfe18d3 new recvar design 2020-10-26 16:16:01 +01:00
Folkert
7d2cc3aac2 WIP 2020-10-25 22:16:27 +01:00
Folkert
4db09b10aa refactor ClosureLayout 2020-10-21 13:38:46 +02:00
Folkert
c8c1a0678a code gen for variably-sized closures 2020-10-21 13:01:27 +02:00
Folkert
b0121097c9 store closures in data structures 2020-10-20 20:01:01 +02:00
Folkert
3408a31453 preparations for specializing closures 2020-10-20 00:33:10 +02:00
Folkert
7b4e87a671 use layout first to determine if something is a closure 2020-10-18 23:04:28 +02:00
Folkert
fd77a18908 fix clippy thing 2020-10-18 21:06:34 +02:00
Folkert
4acbe876cc centralize closure layout creation 2020-10-18 20:12:20 +02:00
Folkert
e9d9c9acc2 more clippy things 2020-10-17 23:03:15 +02:00
Folkert
1439c1a21d clippy complaints 2020-10-17 22:37:15 +02:00
Folkert
15600a8f2b allow byte/bool closure sizes 2020-10-17 22:35:08 +02:00
Folkert
607799b96e steps towards closures and Effects 2020-10-17 20:53:57 +02:00
Folkert
6227a3480e cleanup 2020-10-17 02:51:42 +02:00
Folkert
1708484eb5 fix mono tests 2020-10-17 02:39:44 +02:00
Folkert
8b490b6221 make closure layout more robust 2020-10-17 01:48:55 +02:00
Folkert
d0f031fe6c use captured_symbols to determine the closure type 2020-10-15 16:17:59 +02:00
Folkert
6318f032df first shot at implementing closure layout 2020-10-15 16:03:56 +02:00
Folkert
31e963fad6 make sure that the jit is linked in when running the repl 2020-10-14 21:30:35 +02:00
Folkert
2bceaf0503 implement LayoutCache on top of ena 2020-10-13 16:10:38 +02:00
Folkert
06bc187f8b all tests passing + clippy satisfied 2020-10-12 01:42:03 +02:00
Folkert
c7b251d6b4 Merge remote-tracking branch 'origin/trunk' into gen-modules 2020-10-08 01:29:32 +02:00
Folkert
c8e5acf142 code gen Accessor 2020-10-03 21:44:04 +02:00
Folkert
2e1e87ad6a add closure size variable 2020-10-02 00:53:02 +02:00
Folkert
f857203673 Merge remote-tracking branch 'origin/trunk' into recursive-layouts 2020-09-07 16:53:15 +02:00
Folkert
127dd06586 fix bug with optional record fields 2020-09-07 14:13:22 +02:00
Folkert
46755973d6 wip 2020-09-06 18:53:26 +02:00
Folkert
ceb938c9af get tests working again 2020-09-06 00:26:41 +02:00
Chadtech
2ae63c87d6
Update compiler/mono/src/layout.rs
Co-authored-by: Richard Feldman <oss@rtfeldman.com>
2020-08-31 17:02:02 -04:00
Folkert
f9cf4ea371 recursive tag unions 2020-08-31 14:29:09 +02:00
Chad Stearns
6b351d0375 Comply with clippy 2020-08-29 23:14:32 -04:00
Folkert
ba186bfe09 can store, but not load recursive fields 2020-08-22 16:01:04 +02:00
Folkert
f4e1aa046d basic infrastruture for recursive layouts 2020-08-21 00:14:24 +02:00
Folkert
294273283b make shared quicksort work 2020-08-15 00:14:20 +02:00
Richard Feldman
a4f4da7f5a Add Debug to LayoutCache 2020-08-12 23:05:51 -04:00
Folkert
20ddbeb528 implement optional fields in function pattern matches 2020-08-13 00:09:57 +02:00
Folkert
b4c5c2f793 add variable to list
stores the list type, so we can know whether it is unique
2020-08-10 21:05:57 +02:00
Folkert
9e75252ddb centralize decision on what is refcounted 2020-08-10 12:59:10 +02:00
Folkert
078c6df677 Merge remote-tracking branch 'origin/trunk' into refcount 2020-08-08 22:34:14 +02:00