Commit graph

333 commits

Author SHA1 Message Date
Hannes
97fa6758d0 Rename trimLeft to trimStart and trimRight to trimEnd 2023-06-19 13:17:59 +08:00
Ayaz Hafiz
bc41db2a34
Get rid of passing target_info a bunch 2023-06-17 18:13:00 -05:00
Folkert
2eaf158053
fix register not cleared before reading bool 2023-06-11 15:29:20 +02: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
f28aeb8dbf
fix renamed function 2023-06-07 12:55:27 +02:00
Folkert
7546726866
use existing base pointer constant 2023-06-07 12:53:26 +02:00
Folkert
e7791443e6
impl and tests for big recursive tag unions 2023-06-07 12:53:25 +02:00
Folkert
f5578e71b6
movzx function return values, to clear upper bits in zig function results 2023-06-07 12:52:35 +02:00
Folkert
515d60a138
many extra gen_primitives tests for gen-dev 2023-06-07 12:52:33 +02:00
Folkert
ea2a016fd0
small recursive unions, too 2023-06-07 12:51:11 +02:00
Folkert
27ccf4a6b3
implement nonnullableunwrapped 2023-06-07 12:50:27 +02:00
Ayaz Hafiz
80a98668d5
Fix type errors 2023-06-06 16:07:51 -05:00
Ayaz Hafiz
c0e52f9e54
Fix mono tests 2023-06-06 16:04:43 -05: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
f6fafdb019
nullable unwrapped for the dev backend 2023-06-01 00:02:38 +02:00
Folkert
4af9788b51
fix register logic bug in reset/reuse 2023-05-31 23:57:38 +02:00
Folkert
0ace44ae8c
implement reset/reuse in the dev backend 2023-05-31 23:57:38 +02:00
Folkert
8833096a07
clippy 2023-05-31 23:57:37 +02:00
Folkert
c24312a045
fix logic error 2023-05-31 23:57:37 +02:00
Folkert
58d4ae91d2
clippy 2023-05-31 23:57:36 +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
Folkert
97aba2da41
add static offset to ptr read 2023-05-31 23:57:35 +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
Brian Carroll
cfcd2a5289
Merge pull request #5312 from roc-lang/dev-refcount-seamless-slice
Dev refcount seamless slice
2023-05-14 18:37:23 +01:00
Brendan Hansknecht
b32cd5687b
Merge pull request #5407 from roc-lang/last-seen-join-points
Last seen join points
2023-05-14 16:29:44 +00:00
Folkert
c19ad4ecfd
fix list decrement in dev backend 2023-05-14 15:20:42 +02:00
Folkert
8ba3fd082d
dev backend: treat box like a machine-sized integer when storing to register 2023-05-14 15:20:42 +02: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
741d242486
Fix repr matching in dev backend 2023-05-11 15:16:12 -05:00
Ayaz Hafiz
744e8ca68d
Use layout repr to determine register width 2023-05-11 14:15:58 -05:00
Ayaz Hafiz
172eae735d
Drop unused variables in gen_dev 2023-05-11 12:49:06 -05:00
Ayaz Hafiz
1b84cbafe3
Only compare reprs in gen_dev 2023-05-11 12:48:38 -05: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
44e5d7459e
fix lambda set case not handled 2023-05-07 20:31:45 +02: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
Richard Feldman
df0ab01128
Merge pull request #5348 from basile-henry/basile/num-is-nan
Implement builtins for Num.isNan, Num.isInfinite, and Num.isFinite
2023-05-05 06:15:18 -04:00
Folkert
04081ae8b3
centralize list argument passing and dec fn pointer generation 2023-05-03 18:23:16 +02:00
Folkert
3c6c5a3e53
add windows cc implementation of new register picker 2023-05-03 17:57:54 +02:00
Ayaz
ba1f8ffe5f
Merge pull request #5272 from extemporalgenome/markdown-typos-20230410
markdown typo fixes
2023-05-03 10:24:52 -05:00