Commit graph

201 commits

Author SHA1 Message Date
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
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
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
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
Folkert
8df8c19ae2
dev backend: Box.unbox and List.get str 2023-02-10 20:19:50 +01:00
Folkert
4d1a6b17a8
dev backend: box a str 2023-02-10 20:19:50 +01:00
Folkert
8421824e31
WIP 2023-02-10 20:19:49 +01:00