Commit graph

164 commits

Author SHA1 Message Date
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
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
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
Folkert
4cd8f0a056 clippy --fix fixes 2023-04-21 12:05:51 +02: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
Ajai Nelson
4d7a85070e
Use existing FloatWidth enum instead of FloatType 2023-04-19 18:53:48 -04:00
Ajai Nelson
69dad4c3bf
Add doc comments 2023-04-19 18:53:48 -04:00
Ajai Nelson
dbf85e5461
Add comments about floating point instructions at bottom 2023-04-19 18:53:48 -04:00
Ajai Nelson
d8f1310ce1
Add aarch64 to_float conversions 2023-04-19 18:53:47 -04:00
Ajai Nelson
61148d1eca
Inline encode functions 2023-04-19 18:53:47 -04:00
Ajai Nelson
ec14c9a9f1
Add immediate operation for setting floats to 0.0 2023-04-19 18:53:47 -04:00
Ajai Nelson
616b45f366
Add aarch64 fmov immediate 2023-04-19 18:53:47 -04:00
Ajai Nelson
d3962592cb
Add aarch64 mov_freg64_freg64 2023-04-19 18:53:46 -04:00
Ajai Nelson
2501260eb7
Add some aarch64 gen_dev float instructions 2023-04-19 18:53:46 -04:00
Brendan Hansknecht
a282995fa8
Merge pull request #5114 from Aurelius333/more-dev-aarch64-instructions
Add more gen_dev aarch64 instructions
2023-04-09 21:23:04 +00:00
Ajai Nelson
be3cf0abd3
Add comments in aarch64 branch functions 2023-04-09 14:33:43 -04:00
Ajai Nelson
c71d7bb648
Simplify aarch64 mov_reg64_reg64 by delegating to orr_reg64_reg64_reg64 2023-04-09 14:11:59 -04:00
Ajai Nelson
ca0ef8f88f
Add structs to make new method parameters more readable in aarch64 2023-04-09 14:07:25 -04:00
Ajai Nelson
260c080d41
Fix clippy warnings 2023-04-09 13:02:27 -04:00
Ajai Nelson
5f831b6f50
Add aarch64 signed_compare_reg64 and unsigned_compare_reg64 2023-04-09 13:02:19 -04:00
Ajai Nelson
f9e31b828b
Merge branch 'main' into more-dev-aarch64-instructions
Fix merge conflict with fdffcc8b36:
- Add unused _register_width arguments
- Delete comparison functions,
  add empty signed_compare_reg64 and unsigned_compare_reg64 functions
2023-04-09 13:01:51 -04:00
Folkert
9f8fb61281
fix assert 2023-04-09 16:49:19 +02:00
Folkert
cd95920d60
implement passing of non-recursive tag unions to functions 2023-04-09 15:15:56 +02:00
Folkert
679337e4c4
fix alignment issue in union creation 2023-04-09 15:13:24 +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
ab2cc76717
special-case true/false loading 2023-04-08 13:30:35 +02:00
Folkert
a7aa9530b6
load literal symbols when inserting a jump 2023-04-08 13:15:22 +02:00
Folkert
1947bbcd0e
encode Bool.true/Bool.false more intelligently 2023-04-08 12:57:52 +02:00
Ajai Nelson
d30fdb9a8f
Add aarch64 instruction doc comments 2023-04-07 01:00:42 -04:00
Ajai Nelson
e39e434d20
Add aarch64 multiplication 2023-04-01 02:01:41 -04:00
Ajai Nelson
0302a92cfa
Add aarch64 division 2023-03-31 23:25:29 -04:00
Ajai Nelson
e6026ec1f9
Allow dead code for ConditionCode 2023-03-23 00:33:55 -04:00
Ajai Nelson
63164b70a0
Move ALL_CONDITIONS to tests module 2023-03-23 00:33:04 -04:00
Ajai Nelson
070033b054
Add jump instructions for aarch64 2023-03-23 00:26:11 -04:00
Ajai Nelson
827b88872e
Format 2023-03-23 00:08:30 -04:00
Ajai Nelson
a8fe356e42
Start using added aarch64 instructions 2023-03-22 02:36:55 -04:00