Commit graph

147 commits

Author SHA1 Message Date
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
Folkert
09779f65ad
add NullPointer to mono::ir::Expr 2023-03-30 20:18:04 +02:00
Ajai Nelson
0b2567cf26
Add sub_reg64_reg64_reg64 instruction for aarch64 2023-03-05 02:10:39 -05: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
808262892e
fix off-by-one error in loop condition 2023-02-18 16:42:47 +01:00
Folkert
b2a875c355
use debug_assert_eq 2023-02-18 16:42:47 +01:00
Folkert
03867fdc1f
str to num 2023-02-18 16:42:46 +01:00
Folkert
93fb1c73e6
str splits 2023-02-18 16:42:46 +01:00
Folkert
a3d5e7bee5
fully implement sign/zero extension 2023-02-18 16:42:46 +01:00
Folkert
4e38a4ce32
enable some utf8 conversion tests 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
b968122bee
simplify systemv argument storing and loading 2023-02-18 16:42:45 +01:00
Folkert
89201676ef
make is_primitive look through LambdaSet 2023-02-18 16:42:44 +01:00
Folkert
4b31c77b37
paramter ownership is not important for codegen 2023-02-18 16:42:44 +01:00
Folkert
78000b3f19
enable more list tests 2023-02-18 16:42:44 +01:00
Folkert
a66320b00c
count utf bytes 2023-02-18 16:42:43 +01:00
Folkert
e48a604862
add Str.appendScalar 2023-02-18 16:42:43 +01:00
Folkert
92539fe3b0
Revert "implment 8bit logical operators"
This reverts commit 87c49679e1ac5bcfb710b6d432a9f503db3ee501.
2023-02-18 16:42:42 +01:00
Folkert
f6fbfa002b
implment 8bit logical operators 2023-02-18 16:42:42 +01:00
Folkert
4afeb1d67a
store big strings on the heap; enable a lot more string tests 2023-02-18 16:42:42 +01:00
Folkert
1e1da8a61b
reduce linecount 2023-02-18 16:42:41 +01:00
Folkert
38b66765ab
enable more string tests 2023-02-18 16:42:41 +01:00
Folkert
6a84d6ee83
centralize stack movement 2023-02-18 16:42:41 +01:00
Folkert
8ec3ab0963
centralize reading a pointer to some stack location 2023-02-18 16:42:40 +01:00
Folkert
b31edead54
centralize writing a stack value to a pointer 2023-02-18 16:42:40 +01:00
Folkert
ee79a311f9
dev: box and unbox 16-bit and 8-bit values 2023-02-18 16:42:40 +01:00
Folkert
49d52f5d9a
dev: box and unbox 32-bit value 2023-02-18 16:42:39 +01:00
Folkert
6ecafb85a4
add mov_reg32_base32_offset32 2023-02-18 16:42:39 +01:00
Folkert
541039f700
add register names for 32-bit, 16-bit and 8-bit 2023-02-18 16:42:39 +01:00
Ahmad Sattar
3c01ae10c6
Add Lowlevel::Not 2023-02-16 22:47:55 +01:00
Ahmad Sattar
214ee6ed8e
Add Lowlevel::Or 2023-02-16 22:47:54 +01:00
Ahmad Sattar
f8b0a99e6d
Add Lowlevel::And 2023-02-16 22:47:54 +01:00
Ahmad Sattar
82c0aa083d
Support boolean comparisons 2023-02-16 20:58:54 +01:00
Folkert
eb48f01f63
Str.startsWith, str.endsWith and friends 2023-02-11 00:51:04 +01:00