Commit graph

148 commits

Author SHA1 Message Date
Brendan Hansknecht
b8fb83af86
get wasm dev backend working 2024-07-21 19:53:36 -07:00
Brendan Hansknecht
507d339691
fix infinite recursion in dev rc generation 2024-07-15 09:04:50 -07:00
Brendan Hansknecht
afda757433
avoid extra joinpoint and loop for list refcounting 2024-07-13 10:39:57 -07:00
Brendan Hansknecht
6712824891
correct arg mapping for inline refcounting calls 2024-07-13 10:39:56 -07:00
Brendan Hansknecht
f92d1934d4
add missing symbol in call 2024-07-13 10:39:55 -07:00
Brendan Hansknecht
ba9b15f7d6
generate elem refcount function and pass it into decref lowlevel 2024-07-13 10:39:55 -07:00
Brendan Hansknecht
516afaff41
minor arg correction 2024-07-13 10:39:55 -07:00
Brendan Hansknecht
927eff0bf4
generate indirect refcount calls in wasm backend 2024-07-13 10:39:55 -07:00
Brendan Hansknecht
0ad638b17d
minor cleanup 2024-07-13 10:39:54 -07:00
Brendan Hansknecht
d0b564360b
correct low level calling for list incref/decref 2024-07-13 10:39:54 -07:00
Brendan Hansknecht
23154c41aa
Revert "start correct list refcount function generation"
This reverts commit a8b4d0ef7f492215ce2228a34c6046c4790cc6db.
2024-07-13 10:39:54 -07:00
Brendan Hansknecht
e92cf1be42
Revert "attempt to correct list refcount generation in dev backends"
This reverts commit 0854a1a53a2db441c648140bdd24de91125ec645.
2024-07-13 10:39:54 -07:00
Brendan Hansknecht
36bc8bfac4
attempt to correct list refcount generation in dev backends 2024-07-13 10:39:54 -07:00
Brendan Hansknecht
94fe0820d5
start correct list refcount function generation 2024-07-13 10:39:54 -07:00
Brendan Hansknecht
61784629e7
update todos around list refcount func generation 2024-07-13 10:39:54 -07:00
Brendan Hansknecht
9e70308952
cleanup misc minor issues 2024-07-13 10:39:53 -07:00
Brendan Hansknecht
48eb9c31a9
update list generated refcounting functions for dev and wasm 2024-07-13 10:39:53 -07:00
Brendan Hansknecht
d5e91ed61e
Update dev and wasm backend to use new list bitcode args 2024-07-13 10:39:52 -07:00
Luke Boswell
a28cd251ab
spelling 2024-04-14 13:45:01 +10:00
Brendan Hansknecht
6dc5bfb1b7
Use roc_target over target_lexicon
Tailors a target class for our needs.
Replaces tons of uses across the entire compiler.
This is a base for later adding new targets like thumb.
2024-03-31 10:50:26 -07:00
Richard Feldman
739565e836
Revert "Remove obsolete ListLenUsize"
This reverts commit ad1bca4ac9c40d336522f944df60d61a814435dd.
2024-02-17 13:20:34 -05:00
Richard Feldman
87d4760356
Remove obsolete ListLenUsize 2024-02-17 13:20:34 -05:00
Richard Feldman
ada83561e5
Split ListLen into ListLenU64 and ListLenUsize
The usize one gets used internally for things like
pattern matches. This is both more efficient (means
they don't have to do unnecessary casts) and also
less error-prone due to e.g. comparing length to
capacity, which is usize.
2024-02-14 21:00:49 -05:00
Folkert
32221a2e99
fix dropping the wrong argument for List.map when it captures 2023-11-27 23:02:44 +01:00
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
J.Teeuwissen
80faf0eeee
removed borrow.rs 2023-07-30 14:03:38 +02:00
Folkert
334253f47f
check inside a lambda set for whether it is reference counted 2023-07-26 20:06:37 +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
d64930c17f
remove box and unbox expressions 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
e95d093461
in dev/wasm backends, always clear tag id bits from a reset pointer 2023-06-27 20:50:43 +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