Commit graph

130 commits

Author SHA1 Message Date
Folkert
d64930c17f
remove box and unbox expressions 2023-07-09 15:47:28 +02:00
Folkert
f27cb83a02
remove Reuse 2023-06-29 18:40:26 +02:00
Folkert
463f739c06
add reuse info to normal Tag ir constructor 2023-06-29 18:40:26 +02:00
Folkert
fc3004da58
free or reuse unconditionally when value is unique 2023-06-27 17:37:45 +02:00
Folkert
654cf7b861
changes after review 2023-06-24 14:49:57 +02:00
Folkert
052ce8f2aa
clippy 2023-06-24 14:49:47 +02:00
Folkert
51f3752c94
wasm backend struggles 2023-06-24 14:49:47 +02:00
Folkert
0247237fe8
WIP 2023-06-24 14:49:46 +02:00
Hannes
97fa6758d0 Rename trimLeft to trimStart and trimRight to trimEnd 2023-06-19 13:17:59 +08:00
Folkert
59da1ea891
consistently name function symbols
previously the dev backend did not take into account lambda name information to generate function names. This could cause the same function name to be defined twice
2023-06-11 13:39:43 +02:00
Folkert
58c6c664fd
pass LambdaName down for builtin functions 2023-06-11 13:39:43 +02:00
Folkert
b048cb38a6
take lambda name into account when generating function id in dev backend 2023-06-11 13:39:43 +02:00
Folkert
728f982aa5
dev backend NumCompare 2023-06-11 13:39:42 +02:00
Tero Laxström
f0741ca5d2
Formatting all code with cargo fmt --all 2023-06-10 18:29:17 +03:00
Tero Laxström
fcbe177c07
Move old num_mul to num_mul_wrap and use that from num_mul 2023-06-10 15:36:29 +03:00
Folkert
515d60a138
many extra gen_primitives tests for gen-dev 2023-06-07 12:52:33 +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
Folkert
0ace44ae8c
implement reset/reuse in the dev backend 2023-05-31 23:57:38 +02:00
Folkert
e33c2b3c84
first working linked list test 2023-05-31 23:57:36 +02:00
Folkert
3364d03fcc
fix debug asserts in dev backend 2023-05-31 23:57:36 +02:00
Brendan Hansknecht
b4c359588e
Seed Dict and Set
This changes Dict and Set to have a compilation depedent seed.
The seed is not exposed to userland in anyway.
This gets a much more DOS resistant Dict and Set with no cost.
2023-05-25 09:55:48 -07:00
Ayaz Hafiz
a67c148be7
Convert LayoutRepr::Struct into a tuple variant 2023-05-16 11:58:16 -05:00
Folkert
8770668688
implement add saturated for the dev backend 2023-05-14 15:20:42 +02:00
Folkert
4e8aea50c9
fix how scan_ast works with join points 2023-05-14 15:20:08 +02: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 de Vries
deb1e9952d
Merge pull request #5365 from roc-lang/dev-backend-cli
Dev backend list tests
2023-05-07 14:47:39 +02:00
Folkert
6ed899d8be
indirec inc/dec generation in mono helpers 2023-05-05 15:02:21 +02:00
Folkert
04081ae8b3
centralize list argument passing and dec fn pointer generation 2023-05-03 18:23:16 +02:00
Basile Henry
9a2afbb09b gen_dev: Implement builtins Num.isNan, Num.isFinite, Num.isInfinite 2023-05-03 11:12:01 +01:00
Folkert
d6885ec17a
implement List.dropAt 2023-05-02 23:30:06 +02:00
Folkert
a48618e34a
List.releaseExcessCapacity 2023-05-02 23:00:07 +02:00
Folkert
35c507a33f
array literal arg loading was moved 2023-05-02 22:31:56 +02:00
Folkert
4ec99764cb
an implementation of sublist that segfaults (sometimes) 2023-05-02 22:31:56 +02:00
Folkert
f383ff14f8
helper for generating dec functions 2023-05-02 22:31:56 +02:00
Folkert
13e52844c7
implement ForeignCall function calls 2023-05-02 22:31:55 +02:00
Folkert
ac64e4ab87
fix for re-used DEV_TMP symbol 2023-05-02 22:31:55 +02:00
Folkert
ce36069d57
thread layout_ids through for future inc/dec function codegen 2023-05-02 22:31:55 +02:00
Folkert
cd8c865a66
List.reverse 2023-05-02 22:31:54 +02:00
Folkert
1b5d88b002
literal helpers 2023-05-02 22:31:53 +02:00
Folkert
668e3e3151
add List.subList 2023-05-02 22:31:52 +02:00
Folkert
66be08d073
allow configure of whether roc_alloc is generated 2023-05-01 18:41:47 +02:00
Folkert
f9f4d5eb49
infra for exposed_generic in the dev backend 2023-05-01 18:39:10 +02:00
Folkert de Vries
a5a91d428f
Merge pull request #5336 from roc-lang/dev-backend-list-map
dev backend: many more builtins
2023-05-01 10:20:15 +02:00
Folkert
b9cc3b7823
don't check a non-recursive tag union for uniqueness 2023-04-28 18:46:07 +02:00
Folkert
cf54304cf4
add lowlevel to inc/dec a data pointer 2023-04-28 15:30:23 +02:00
Folkert
0bf3eefbf2
dev backend: Num.isMultipleOf 2023-04-27 13:50:27 +02:00
Folkert
c6c28e7c5d
implement Crash 2023-04-27 00:29:21 +02:00
Folkert
0f058c8b46
128-bit multiplication 2023-04-26 21:58:02 +02:00