Folkert
a5862a9398
use data ptr instead of rc pointer to shrink IR size
2023-04-28 15:51:38 +02:00
Folkert
cf54304cf4
add lowlevel to inc/dec a data pointer
2023-04-28 15:30:23 +02:00
Folkert
a61e7a696d
use Box instead of a tag to read the refcount
2023-04-28 15:11:14 +02:00
J.Teeuwissen
b0a4dd3e52
newlines
2023-04-26 20:25:15 +02:00
J.Teeuwissen
804e617497
undo mono unique
2023-04-26 20:17:19 +02:00
J.Teeuwissen
74f2b0afda
Updated refcount logic
2023-04-26 18:14:16 +02:00
J.Teeuwissen
91533e1071
refactor
2023-04-24 13:10:14 +02:00
Folkert
fa6d5c6955
fix ptr returned by wasm reset
2023-04-18 21:59:13 +02:00
Folkert
cabbfa52d5
fix alignment calculation in wasm reset
2023-04-18 21:59:13 +02:00
J.Teeuwissen
af3c4f01da
fix folkert NumSubSaturated
2023-04-18 13:59:06 +02:00
J.Teeuwissen
363e2e1074
Merge branch 'main' into Frame-Limited
2023-04-18 07:19:54 +02:00
Folkert
c848a85eb4
fix index bug in recursive decrements
2023-04-17 14:22:27 +02:00
Folkert
e0b5a76a04
correct alignment calculation in RC code
2023-04-17 13:53:54 +02:00
J.Teeuwissen
ed947b773d
Cleanup
2023-04-05 19:44:17 +02:00
J.Teeuwissen
87abe8df7d
Merge branch 'resetref' into Frame-Limited
2023-04-03 10:02:31 +02:00
J.Teeuwissen
9e8b1c0dee
reset ref implementation
2023-03-30 09:30:09 +02:00
Folkert
587c5c18d7
mono refcount: use box instaed of non-nullable unwrapped
2023-02-10 20:19:49 +01:00
Brian Carroll
e0b5247f3e
mono code_gen_help: decref should use element alignment, not List alignment
2023-01-26 20:05:16 +01:00
Brian Carroll
7228502965
mono: delete is_rc_implemented_yet, because everything is implemented!
2023-01-26 20:05:16 +01:00
Ayaz Hafiz
8edbd3b378
Eliminate uses of RECURSIVE_PTR directly
2023-01-23 16:04:55 -06: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
Folkert de Vries
61a2091b27
Merge pull request #4851 from JTeeuwissen/main
...
replace borrowed boolean with ownership enum
2023-01-09 23:24:39 +01:00
J.Teeuwissen
b28b32cdc4
moved Ownership to borrow
2023-01-09 18:15:34 +01:00
J.Teeuwissen
6ec977bf1c
imports
2023-01-04 13:34:31 +01:00
J.Teeuwissen
6c95bc1fb9
replace borrowed boolean with ownership enum
2023-01-04 13:30:42 +01: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
Ayaz Hafiz
fdbc0ebdad
Thread LayoutInterner trait through
2023-01-03 11:48:46 -06:00
Ayaz Hafiz
e4b5252e51
List takes interned element
2022-12-29 08:52:37 -06:00
Ayaz Hafiz
1878fc1c4f
Allow too many args
2022-12-28 18:52:26 -06:00
Ayaz Hafiz
7ab7fdfa7b
Push interned layouts as mut throughout the backend, and intern box layouts
2022-12-28 18:51:26 -06:00
Ayaz Hafiz
3b4b1838b8
Push layout interner further through Layout
2022-08-31 14:33:52 -05:00
Brian Carroll
50326f7e0b
Merge branch 'trunk' of github.com:rtfeldman/roc into wasm-code-gen-fixes-i3448
2022-08-06 10:12:24 +01:00
Brian Carroll
aa0e9e8d31
wasm: Get RC reset/reuse working correctly
2022-08-06 09:58:47 +01:00
Folkert
96414cb03f
cleanup
2022-07-14 08:52:38 +02:00
Folkert
6c26d8812f
remove dict/hash stuff from the zig builtins
2022-07-13 11:59:46 +02:00
Folkert
4d55b756bb
remove dict/set layout
2022-07-13 11:41:19 +02:00
Brian Carroll
6b1e9c75c8
mono: generate refcounting helper functions for Boxed layout
2022-07-03 23:31:49 +01:00
Anton-4
eee85fa45d
moved all crates into seperate folder + related path fixes
2022-07-01 17:37:43 +02:00