Commit graph

303 commits

Author SHA1 Message Date
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
Folkert
e12a7f4f81
refactor nasty loops into recursive functions 2023-05-03 14:43:31 +02:00
Basile Henry
9a2afbb09b gen_dev: Implement builtins Num.isNan, Num.isFinite, Num.isInfinite 2023-05-03 11:12:01 +01:00
Basile Henry
d8b658da5d gen_dev: Add is_nan_freg_reg64 2023-05-03 11:12:01 +01:00
Basile Henry
1391920d0e gen_dev: Add MOVQ/MOVD to x86 backend 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
fb123b8990
lambda set unwrapping 2023-05-02 22:31:57 +02:00
Folkert
0fa85fe91d
don't copy zero-sized types to the stack 2023-05-02 22:31:57 +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
9e8854614a
fix reading float from a pointer 2023-05-02 22:31:54 +02:00
Folkert
e4b0d77f2e
pass floats independently of general registers 2023-05-02 22:31:54 +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
29bc9a2e85
short-circuit loading field from size 0 struct 2023-05-02 22:31:52 +02:00
Folkert
6594fc0a90
fully implement our crude memcpy 2023-05-01 18:41:51 +02:00
Folkert
fa5b18685a
re-use proc's symbol 2023-05-01 18:41:50 +02:00
Folkert
9f8077c3a3
allow no_data return value 2023-05-01 18:41:50 +02:00
Folkert
2e7f53fe4a
copy of boxed 2023-05-01 18:41:50 +02:00
Folkert
5a08acba44
clippy 2023-05-01 18:41:49 +02:00
Folkert
560b48a9cb
never use the module name in exposed strings 2023-05-01 18:41:49 +02:00
Folkert
66be08d073
allow configure of whether roc_alloc is generated 2023-05-01 18:41:47 +02:00
Folkert
f921bfc1a7
fully implement exposed functions in dev backend 2023-05-01 18:39:11 +02:00
Folkert
f9f4d5eb49
infra for exposed_generic in the dev backend 2023-05-01 18:39:10 +02:00
Brendan Hansknecht
2769f3dc60
add missing symbols to dev object files on unix 2023-05-01 08:38:23 -07:00