Commit graph

4447 commits

Author SHA1 Message Date
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
c084ff06b3
allow unused 2023-05-14 18:25:57 +02:00
Folkert de Vries
125eeca841
Merge pull request #5397 from roc-lang/semantic-layouts-non-recursive-tag-unions
Get started with semantic layouts for tag unions
2023-05-14 18:16:48 +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
317a8880c1
better debug info if dec on invalid pointer 2023-05-14 18:01:47 +02:00
Folkert
dd8739b847
better debug info if inc on invalid pointer 2023-05-14 15:20:43 +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
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
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
Folkert
4e8aea50c9
fix how scan_ast works with join points 2023-05-14 15:20:08 +02:00
Richard Feldman
922a10db52
Merge pull request #5389 from agu-z/agu-z/record-builder-syntax
Record Builder Syntax
2023-05-13 22:47:03 -04:00
Agustin Zubiaga
232f5fd84c Take self by value in RecordField::to_* fns 2023-05-13 21:21:12 -03:00
Agustin Zubiaga
4a10ead0e4 Do not use unit for RecordField to_* fn errors 2023-05-13 21:15:54 -03:00
Agustin Zubiaga
f94004d137 Parse builders without backtracking from records 2023-05-13 20:05:42 -03: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
4b7f09b175
Only compare repr equality in wasm backend 2023-05-11 09:30:45 -05:00
Ayaz Hafiz
bfbe493fe4
Turn on test that depends on semantic layouts 2023-05-11 09:24:36 -05:00
Ayaz Hafiz
931d26206f
Only check for repr equality in codegen 2023-05-11 09:23:45 -05:00
Ayaz Hafiz
8ca71c7eda
Get started with semantic layouts for tag unions 2023-05-10 18:47:10 -05:00
Ayaz Hafiz
24e65cbf8d
Update mono tests 2023-05-10 17:45:46 -05:00
Ayaz Hafiz
4d50817968
Preserve semantic when reifying recursion layouts 2023-05-10 17:29:00 -05:00
Ayaz Hafiz
94203ca6d9
Preserve semantic when fixing rec pointer 2023-05-10 17:25:15 -05:00
Ayaz Hafiz
fa787b9b48
Unused imports 2023-05-10 17:25:05 -05:00
Ayaz Hafiz
49b8886b82
Hide semantic repr in layout 2023-05-10 17:24:45 -05:00
Ayaz Hafiz
31c9cc8227
Hide away SemanticRepr definition 2023-05-10 17:10:58 -05:00
Ayaz Hafiz
a37a0f1770
DbgDeep for semantic reprs 2023-05-10 17:09:50 -05:00
Ayaz Hafiz
4296d5a349
Drop Layout::struct_no_name_order 2023-05-10 15:58:51 -05:00
Ayaz Hafiz
1170b542b6
Remove field_order_hash from struct layouts 2023-05-10 15:49:30 -05:00
Ayaz Hafiz
43d4135dc8
Semantic layouts for tuples 2023-05-10 15:40:44 -05:00
Ayaz Hafiz
c06ffc434b
Begin generating semantic reprs for records 2023-05-10 15:38:25 -05:00
Ayaz Hafiz
6714a6fd92
Use LayoutRepr directly when possible 2023-05-10 15:28:11 -05:00
Ayaz Hafiz
7b2d149deb
Move repr-specific functions to LayoutRepr and impl deref 2023-05-10 15:26:31 -05:00
Ayaz Hafiz
58fe2bb4e0
Ignore all semantic layouts for now 2023-05-10 15:21:01 -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
Agustin Zubiaga
71a2990e21 Tip replacing <- with : for static values 2023-05-09 23:37:24 -03:00
Agustin Zubiaga
088193c93b Fix clippy error 2023-05-08 22:18:56 -03:00
Agustin Zubiaga
9c614540a4 Remove unneeded todo 2023-05-08 21:15:38 -03:00
Agustin Zubiaga
d2a57112fd Unapplied record builder error 2023-05-08 20:16:38 -03:00
Agustin Zubiaga
6670fbb1ab Multiple record builder error 2023-05-08 19:26:47 -03:00
Agustin Zubiaga
20f8133b6c Test record builder desugaring 2023-05-08 18:45:25 -03:00