Commit graph

117 commits

Author SHA1 Message Date
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
6594fc0a90
fully implement our crude memcpy 2023-05-01 18:41:51 +02:00
Folkert
2e7f53fe4a
copy of boxed 2023-05-01 18:41:50 +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
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
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
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
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
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
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
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
c22f33ec8a
add support for getting a function pointer from a function symbol 2023-04-23 15:17:49 +02:00
Folkert
4cd8f0a056 clippy --fix fixes 2023-04-21 12:05:51 +02:00
Folkert
079dd4c51e
ensure literal loading happens independently in branches 2023-04-09 14:41:16 +02:00
Folkert
67281b2712
handle lambda set when passed as a function argument 2023-04-08 20:14:15 +02:00
Folkert
fdffcc8b36
handle all comparison widths 2023-04-08 19:17:11 +02:00
Folkert
9dd69f6f9c
Revert "WIP fix for zig functions returning Bool (strEqual)"
This reverts commit 09b01893c6.
2023-04-08 16:56:25 +02:00
Folkert
09b01893c6
WIP fix for zig functions returning Bool (strEqual) 2023-04-08 16:11:04 +02:00
Folkert
b54912b79b
handle lambda set in a couple more cases 2023-04-08 16:10:38 +02:00
Folkert
1947bbcd0e
encode Bool.true/Bool.false more intelligently 2023-04-08 12:57:52 +02:00
Folkert
44f08f9e47
implement sqrt and log in the dev backend 2023-02-26 21:41:25 +01:00
Folkert
6a40d75353
float comparisions 2023-02-26 18:14:11 +01:00
Folkert
f1fa014524
support 128-bit literals 2023-02-26 15:11:49 +01:00
Folkert
9897367038
fix merge conflict in the dev backend 2023-02-22 13:13:40 +01:00
Folkert de Vries
34340de60c
Merge pull request #5020 from roc-lang/dev-unbox-u32
dev backend: reading and writing 32, 16 and 8-bit values
2023-02-21 17:33:21 +01:00
Folkert
93fb1c73e6
str splits 2023-02-18 16:42:46 +01:00
Folkert
aa113f169c
string equality 2023-02-18 16:42:45 +01:00
Folkert
816828040d
tests for boxing/unboxing floats 2023-02-18 16:42:45 +01:00
Folkert
78000b3f19
enable more list tests 2023-02-18 16:42:44 +01:00
Folkert
92539fe3b0
Revert "implment 8bit logical operators"
This reverts commit 87c49679e1ac5bcfb710b6d432a9f503db3ee501.
2023-02-18 16:42:42 +01:00