Folkert
5557fb7e34
repl helper codegen
2023-09-14 14:39:12 +02:00
Folkert
7c584dd5d8
disable debugging info
2023-09-14 11:51:03 +02:00
Folkert
520bac2905
List.sortWith and friends
2023-09-14 11:46:52 +02:00
Folkert
51067f0ae4
add List.map*
2023-09-14 11:46:49 +02:00
Folkert
0f3da32d9d
remove unused field
2023-08-09 15:11:02 +02:00
Folkert
7fb4b60b21
move around hostexposedalias logic
2023-08-09 15:09:03 +02:00
Folkert
a2b8274ade
spelling
2023-07-30 20:44:12 +02:00
Folkert
29df340a26
pass the crash tag through
2023-07-30 20:44:11 +02:00
Folkert
bb97b9ff74
cleanup
2023-07-30 20:44:10 +02:00
Folkert
f59eed6366
so close
2023-07-30 20:44:10 +02:00
Folkert
8c99cdf817
working codegen
2023-07-30 20:44:07 +02:00
Folkert
e7f9ff8b51
WIP
2023-07-30 20:42:07 +02:00
Folkert
10aa4f58c9
WIP
2023-07-30 20:41:33 +02:00
Ayaz Hafiz
13d1232f7d
Erased functions do not take a func spec
2023-07-12 14:44:17 -05:00
Ayaz Hafiz
7ea85e44d2
Add Layout::Erased
2023-07-12 14:43:24 -05:00
Ayaz Hafiz
6312d75ee0
Add FunctionPointer layout
2023-07-12 13:59:50 -05:00
Folkert
ef39bad7c6
auto clippy fixes
2023-07-10 18:27:08 +02:00
Folkert
6d2d65bb1e
remove Boxed layout
2023-07-09 15:47:28 +02:00
Folkert
3b18494ddd
use Ptr instead of Boxed in the code-gen-help
2023-06-30 15:57:33 +02:00
Folkert
fc3004da58
free or reuse unconditionally when value is unique
2023-06-27 17:37:45 +02:00
Folkert
76dcb75ff6
add Ptr lowlevels
2023-06-24 14:49:46 +02:00
Folkert
17512873e8
add LayoutRepr::Ptr
2023-06-24 14:49:45 +02:00
Ayaz Hafiz
5274dbcd00
Add a Newtype variant to LayoutWrapper
2023-06-06 16:03:52 -05:00
Ayaz Hafiz
457cdabc5c
Make repr private and accessible only via the interner
2023-06-06 16:01:27 -05:00
Ayaz Hafiz
a67c148be7
Convert LayoutRepr::Struct into a tuple variant
2023-05-16 11:58:16 -05:00
J.Teeuwissen
93030fd3c8
ResetRef reachable
2023-05-15 00:53:14 +02:00
Ayaz Hafiz
94203ca6d9
Preserve semantic when fixing rec pointer
2023-05-10 17:25:15 -05:00
Ayaz Hafiz
1170b542b6
Remove field_order_hash from struct layouts
2023-05-10 15:49:30 -05:00
Ayaz Hafiz
f100e8753c
Introduce the concept of SemanticRepr
2023-05-10 13:51:04 -05:00
Ayaz Hafiz
c3eeb5e2cc
Wrap layouts in a LayoutRepr
constructor
...
Part 1 of support semantic layout representations.
2023-05-10 13:22:10 -05:00
Folkert
6ed899d8be
indirec inc/dec generation in mono helpers
2023-05-05 15:02:21 +02:00
Folkert
05a9b4d601
fix that inc on list was no longer recursive
2023-05-03 01:03:09 +02:00
Folkert
a7c7ad2d17
fix and optimize tail-recursive decrement
2023-04-28 17:50:30 +02:00
Folkert
a61e7a696d
use Box instead of a tag to read the refcount
2023-04-28 15:11:14 +02:00
J Teeuwissen
7439ee0c8c
Merge branch 'main' into drop_specialization
...
Signed-off-by: J Teeuwissen <jelleteeuwissen@hotmail.nl>
2023-04-26 20:26:37 +02:00
J.Teeuwissen
91533e1071
refactor
2023-04-24 13:10:14 +02:00
Folkert
b59ada4bc8
implement List.map in the dev backend
2023-04-23 17:35:17 +02:00
Folkert
be31bc5c41
add the PtrWrite lowlevel
2023-04-23 15:19:46 +02:00
J.Teeuwissen
6ece065504
implementing feedback
2023-04-13 15:54:30 +02:00
J.Teeuwissen
4f3f3caff3
Cleanup
2023-04-06 10:41:05 +02:00
J.Teeuwissen
87abe8df7d
Merge branch 'resetref' into Frame-Limited
2023-04-03 10:02:31 +02:00
J.Teeuwissen
9b410694fe
Merge branch 'main' into Frame-Limited
2023-03-30 20:38:05 +02:00
J.Teeuwissen
9e8b1c0dee
reset ref implementation
2023-03-30 09:30:09 +02:00
J.Teeuwissen
d4ed6f7778
start resetref
2023-03-29 11:57:13 +02:00
Brian Carroll
7228502965
mono: delete is_rc_implemented_yet, because everything is implemented!
2023-01-26 20:05:16 +01:00
J.Teeuwissen
957f44966c
start perceus reference count
2023-01-26 17:13:29 +01:00
Ayaz Hafiz
8750127111
Begin support for looping-back recursive pointers to their source layouts
2023-01-23 14:37:48 -06:00
Ayaz Hafiz
fa8effd3e8
Make all layouts interned in mono
2023-01-11 14:38:41 -06:00
Ayaz Hafiz
ce717dca8b
Do not require allocating Layouts in arena before interning
...
This should reduce memory spend, the interner has its own effective
arena anyway
2023-01-10 09:47:13 -06:00
Ayaz Hafiz
50826d1a83
Inline interners into the layout interner module
...
I realized that we'll need to make the layout interner more complicated
to support things like recursive pointers pointing to their parents and
to support lambda set layout caching. Since the layout interner is the
only user of intern crate right now anyway, just inline the whole thing.
2023-01-03 14:19:39 -06:00