Commit graph

53 commits

Author SHA1 Message Date
Folkert
f0ce8006d2 factor out basic_type_from_builtin 2020-12-26 00:48:40 +01:00
Chadtech
224823eb93 EmptyMap renamed to EmptyDict 2020-12-10 21:00:36 -05:00
Chadtech
4dbd4fa893 More instances of Map renamed to Dict 2020-12-08 01:40:08 -05:00
Folkert
8013af7e97 change representation of list/str 2020-11-21 22:50:33 +01:00
Folkert
2267a1174a introduce PhantomEmptyStruct 2020-11-08 03:08:12 +01:00
Folkert
3408a31453 preparations for specializing closures 2020-10-20 00:33:10 +02:00
Folkert
1439c1a21d clippy complaints 2020-10-17 22:37:15 +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
40ffca2b7b IT WORKS 2020-10-16 00:18:40 +02:00
Folkert
6318f032df first shot at implementing closure layout 2020-10-15 16:03:56 +02:00
Richard Feldman
2993d40b85 Don't support compiling to 128-bit targets 2020-09-30 08:23:44 -04:00
Folkert
f9cf4ea371 recursive tag unions 2020-08-31 14:29:09 +02: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
0e5283efd2 Merge remote-tracking branch 'origin/trunk' into infer-borrow 2020-08-19 23:56:29 +02:00
Richard Feldman
504d7b65e2 Str and List have the same layout now 2020-08-16 16:37:25 -04:00
Folkert
294273283b make shared quicksort work 2020-08-15 00:14:20 +02:00
Folkert
8f7d842d41 apply optimization passes 2020-08-10 13:34:28 +02:00
Folkert
22471167d3 introduce Ownership to list layout 2020-07-30 13:42:47 +02:00
Richard Feldman
8d92920731 Re-add Float128 and Float16 2020-06-21 22:29:28 -04:00
Richard Feldman
dec5c3a062 Get low-level ops compiling 2020-06-19 20:07:04 -04:00
Richard Feldman
952e5fa012 clippity clip clippy 2020-04-27 20:35:19 -04:00
Richard Feldman
dfb1c2d8a3 Always store collections as (usize, usize) 2020-04-27 20:05:35 -04:00
Richard Feldman
32d6615108 Attempt to store i8 arrays for collection wrappers
This ultimately didn't work because the bitcasting we wanted wasn't allowed.
2020-04-27 20:04:38 -04:00
Folkert
46062439b5 remove label from Struct layout 2020-03-23 17:55:02 +01:00
Richard Feldman
d9fe38efce Remove unnecessary lifetime annotations 2020-03-21 21:19:18 -04:00
Richard Feldman
cc8683d241 Fix use of GEP (was using byte offset, not index) 2020-03-21 21:19:18 -04:00
Richard Feldman
e6704d1fcb Streamline empty list LLVM code gen 2020-03-21 21:19:18 -04:00
Folkert
fbadd9d620 add pointer Layout 2020-03-20 11:53:21 +01:00
Richard Feldman
04f8b93a9b the clippiest of clips 2020-03-18 21:31:01 -04:00
Richard Feldman
43c4fadd6e Use usize length, no capacity for llvm List 2020-03-18 21:31:01 -04:00
Folkert
f3f135eca5 make Layout Hash 2020-03-18 23:26:17 +01:00
Folkert
0996f264e7 simplify Byte layout 2020-03-18 22:22:32 +01:00
Folkert
c11f374eb0 simplify Bool layout 2020-03-18 22:15:03 +01:00
Folkert
99db336033 Working pattern match on Result Int Int 2020-03-18 21:35:10 +01:00
Folkert
53bd47221c WIP things seem to work in theory 2020-03-18 16:44:53 +01:00
Folkert
6253d2d1af pattern match on single-tag tag unions
in LLVM and crane
2020-03-17 19:44:59 +01:00
Folkert
ba69987c1a llvm one element tag store 2020-03-17 15:29:40 +01:00
Folkert
6310341b7e Merge remote-tracking branch 'origin/trunk' into pattern-compilation 2020-03-17 12:49:30 +01:00
Richard Feldman
f9e013793c Drop unused mono::Expr::Pointer 2020-03-16 21:47:08 -04:00
Folkert
c20f777dba comment tests that fail for llvm 2020-03-17 00:36:58 +01:00
Folkert
444e3063e0 reserve tag union as array of bytes in llvm 2020-03-17 00:36:58 +01:00
Folkert
d875f8bfce implement layout for Tag 2020-03-17 00:36:58 +01:00
Richard Feldman
010e390fd6 Make using records in defs work 2020-03-15 14:31:01 -04:00
Folkert
5926ac2f01 stub out Tag layout 2020-03-15 14:42:57 +01:00
Richard Feldman
8d4331f903 Merge remote-tracking branch 'origin/trunk' into array-wrappers 2020-03-13 22:20:35 -04:00
Richard Feldman
8da7f26237 Try a different Struct approach 2020-03-10 02:56:56 -04:00
Richard Feldman
8450597a07 Try an alloca approach for structs 2020-03-10 02:56:55 -04:00
Folkert
5237408b15 do what clippy wants 2020-03-09 23:51:48 +01:00