Commit graph

600 commits

Author SHA1 Message Date
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
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
5363b95c5f
move with sign extension 2023-04-27 19:40:57 +02:00
Folkert
0bf3eefbf2
dev backend: Num.isMultipleOf 2023-04-27 13:50:27 +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
c6c28e7c5d
implement Crash 2023-04-27 00:29:21 +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
dd85f51745
actually expose Num.rem 2023-04-26 14:32:17 +02:00
Folkert
9bdf9e4b99
make mov between different-sized registers more robust 2023-04-26 14:28:40 +02:00
Folkert
17fde9dd9d
complete unbox_to_stack 2023-04-26 14:25:00 +02:00
Folkert
43624ade27
assembly for irem and urem 2023-04-26 14:16:24 +02:00
Folkert
74444d2883
128-bit mul and shift in dev backend 2023-04-26 14:10:17 +02:00
Folkert
e8532c2f3c
rename some temporary symbol usages 2023-04-26 14:09:10 +02:00
Folkert
d56d3311d4
implement and test all regn_regn moves 2023-04-24 21:39:15 +02:00
Anton-4
7bbb37a843
put lifetime back, flake fixes 2023-04-24 12:11:36 +02:00
Folkert
2e41ef68b0
cleanup 2023-04-23 20:23:35 +02:00
Folkert
b663db56f0
NumIntCast 2023-04-23 19:58:46 +02:00
Folkert
af2ab24525
simplify and fully implement comparisons 2023-04-23 19:58:31 +02:00
Folkert
cefc1c775e
add NumAddWrap 2023-04-23 18:47:50 +02:00
Folkert
8162de7eab
implement code_gen_help equality in the dev backend 2023-04-23 18:47:40 +02:00
Folkert
d99a912230
don't attempt tail recursion in dev backend 2023-04-23 18:47:17 +02:00
Folkert
dd3d0a188e
string is empty for dev backend 2023-04-23 18:16:08 +02:00
Folkert
f45e4ed858
implement Num.toStr for the dev backend 2023-04-23 18:04:34 +02:00
Folkert
f7e3254a35
unwrap lamda set to runtime representation 2023-04-23 17:56:23 +02:00
Folkert
9e2051670f
implement unboxing to the stack 2023-04-23 17:56:02 +02:00
Folkert
b59ada4bc8
implement List.map in the dev backend 2023-04-23 17:35:17 +02:00
Folkert
b62ee37d8e
fix BOOL_TRUE and BOOL_FALSE 2023-04-23 17:31:52 +02:00
Folkert
be31bc5c41
add the PtrWrite lowlevel 2023-04-23 15:19:46 +02:00
Folkert
c22f33ec8a
add support for getting a function pointer from a function symbol 2023-04-23 15:17:49 +02:00
Folkert
5a297248e2
add support for the LEA instruction 2023-04-23 15:16:06 +02:00
Anton-4
6c884cf365
clippy 2023-04-22 18:27:56 +02:00
Folkert
4cd8f0a056 clippy --fix fixes 2023-04-21 12:05:51 +02:00
Brendan Hansknecht
26846e14aa
Merge pull request #5289 from Aurelius333/aarch64-float
Add some aarch64 gen_dev float instructions
2023-04-20 18:18:56 +00:00
Ajai Nelson
e6de71ccfb
Use cast instead of .try_into().unwrap() 2023-04-20 01:05:38 -04:00
Ajai Nelson
3dbec4760b
Fix clippy warnings 2023-04-19 19:03:25 -04:00
Ajai Nelson
f3d85bce3c
Fix badly indented comments 2023-04-19 18:53:48 -04:00