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