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 |
|
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 |
|
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 |
|
Folkert
|
3c6c5a3e53
|
add windows cc implementation of new register picker
|
2023-05-03 17:57:54 +02: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
|
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
|
f383ff14f8
|
helper for generating dec functions
|
2023-05-02 22:31:56 +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
|
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
|
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 |
|
Anton-4
|
b0d10a134a
|
clippy fix
|
2023-05-01 13:17:39 +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 |
|
J.Teeuwissen
|
b8a2ea1bf2
|
Merge branch 'main' into drop_specialization
|
2023-04-29 18:31:12 +02:00 |
|
Anton-4
|
ff6ec21a09
|
Merge pull request #5324 from roc-lang/rust_version_upgrade
WIP Rust version upgrade
|
2023-04-29 18:01:04 +02:00 |
|
Folkert
|
23cc8046b1
|
fix build_ptr_cast (it was completely wrong)
|
2023-04-28 21:53:51 +02:00 |
|
Folkert
|
5363b95c5f
|
move with sign extension
|
2023-04-27 19:40:57 +02:00 |
|
Folkert
|
10a497fdde
|
sign extension WIP
|
2023-04-27 12:24:25 +02:00 |
|
Folkert
|
d10ae2412a
|
num conversion
|
2023-04-27 11:36:56 +02:00 |
|
Folkert
|
1dd4b470dd
|
more casts, u128 literals
|
2023-04-27 11:18:11 +02:00 |
|
Folkert
|
2aca07d889
|
asserted restrictions have been lifted
|
2023-04-27 00:43:59 +02:00 |
|
Folkert
|
fc391b1ab2
|
clippy
|
2023-04-27 00:39:30 +02:00 |
|
Folkert
|
f95c79bb53
|
copy arguments that are not size multiple of 8
|
2023-04-26 23:58:01 +02:00 |
|
Folkert
|
048615e6a5
|
fix wrong temp symbol used
|
2023-04-26 23:33:39 +02:00 |
|
Folkert
|
eaef21f7d4
|
intcast cases (probably wrong)
|
2023-04-26 22:26:39 +02:00 |
|
Folkert
|
b648507a91
|
128-bit value passing code
|
2023-04-26 22:19:47 +02:00 |
|
Folkert
|
f6ebeff298
|
unboxing of non-recursive tag unions
|
2023-04-26 22:17:18 +02:00 |
|
Folkert
|
0f058c8b46
|
128-bit multiplication
|
2023-04-26 21:58:02 +02:00 |
|
Folkert
|
2b849f167f
|
rename register function
|
2023-04-26 21:56:59 +02:00 |
|
Folkert
|
3ebc4bb9ad
|
128-bit integer equality
|
2023-04-26 21:11:46 +02:00 |
|
Folkert
|
9bdf9e4b99
|
make mov between different-sized registers more robust
|
2023-04-26 14:28:40 +02:00 |
|