Commit graph

130 commits

Author SHA1 Message Date
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
Ayaz Hafiz
bc41db2a34
Get rid of passing target_info a bunch 2023-06-17 18:13:00 -05:00
Folkert
515d60a138
many extra gen_primitives tests for gen-dev 2023-06-07 12:52:33 +02:00
Folkert
0e43510103
fix struct equality using pointer equalty ?! 2023-06-07 12:51:15 +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
Folkert de Vries
f2a033d0da
Merge pull request #5406 from JTeeuwissen/cross-layout-reuse
Cross layout reuse
2023-05-15 15:20:23 +02:00
J.Teeuwissen
e26a1f2aaa
fixed resetref wasm 2023-05-15 00:53:14 +02:00
J.Teeuwissen
93030fd3c8
ResetRef reachable 2023-05-15 00:53:14 +02:00
Folkert
c084ff06b3
allow unused 2023-05-14 18:25:57 +02:00
Folkert
79daa102a0
simplify list RC joinpoint 2023-05-14 18:13:44 +02:00
Folkert
12975bdffb
shift pointer by one if string slice 2023-05-14 18:02:51 +02:00
Folkert
c19ad4ecfd
fix list decrement in dev backend 2023-05-14 15:20:42 +02:00
Folkert
1c6b55584a
fix list inc/dec wrt slices 2023-05-14 15:20:42 +02:00
Folkert
736b7c6a83
inc/dec string slices 2023-05-14 15:20:41 +02:00
Folkert
62dac6bdf8
don't calculate RC pointer in STR decrement function
we now decrement based on the data pointer; further logic is all in zig now
2023-05-14 15:20:41 +02:00
Brian Carroll
17d8ef2aa7
Support refcounting Str seamless slices for dev backends 2023-05-14 15:20:40 +02:00
Brian Carroll
5c53530c81
Support refcounting List seamless slices for dev backends 2023-05-14 15:20:40 +02:00