Folkert
1d7ca32101
passing tests!
2021-05-20 22:43:55 +02:00
Folkert
910a7e5113
fix bug where results of top-level thunks are not RC'd
2021-05-20 22:39:14 +02:00
Folkert
6347b64af7
enable perceus stuff
2021-05-20 21:22:13 +02:00
Folkert
083f8275bf
update morphic
2021-05-19 22:51:33 +02:00
Folkert
8f55706d5d
fix list gen tests
2021-05-19 22:45:30 +02:00
Folkert
f3199ed2a7
work on dicts
2021-05-19 22:32:31 +02:00
Folkert
d01d539d6b
first pass for List.keep
2021-05-19 21:30:43 +02:00
Folkert
e3b102e0c3
fix List.map3
2021-05-19 16:41:12 +02:00
Folkert
d2b0ecdd04
fix List.map2
2021-05-19 16:07:50 +02:00
Folkert
87b9f866d3
WIP fixing the borrowing in HOFs
2021-05-19 15:28:20 +02:00
tarjei
f45d89270b
Implement basic List.drop that satisfies tests
...
Issues with uniqueness and copying which leaks memory obviously needs to be fixed.
2021-05-18 22:59:55 +02:00
Folkert
653d745dc5
fix closure RC increments
2021-05-18 21:35:21 +02:00
Folkert
c5bb041edd
fix closure RC increments
2021-05-18 21:35:02 +02:00
Folkert
04968d6394
fix closure RC increments
2021-05-18 21:34:37 +02:00
Folkert
184c71d669
implement RC
2021-05-18 20:53:50 +02:00
Eric Henry
d34f984169
Starting to add no arg tag union
2021-05-17 17:07:19 -04:00
Folkert
925355eb4e
use add_unknown_with
2021-05-17 19:51:46 +02:00
Folkert
c5bd06db66
Merge remote-tracking branch 'origin/trunk' into morphic-lib
2021-05-17 19:32:58 +02:00
Folkert
8dddf952a8
WIP List.map + RC'd closure troubles
2021-05-17 19:31:52 +02:00
Richard Feldman
b3758727e5
Merge branch 'trunk' into gen-dev/div-i64
2021-05-17 00:04:14 -04:00
Richard Feldman
bc4ba31ed2
Merge pull request #1312 from rtfeldman/gen_dev_num_abs_float
...
Dev Backend Num.abs on f64
2021-05-17 00:04:02 -04:00
Richard Feldman
74ed66524d
Merge branch 'trunk' into gen-dev/div-i64
2021-05-16 23:32:28 -04:00
rvcas
0cd454f21a
test: Num.abs for f64 in the dev backend
2021-05-16 19:22:55 -04:00
rvcas
a263f1eac3
test: andpd_freg64_freg64 X86
2021-05-16 19:20:38 -04:00
rvcas
db11453327
feat(gen_dev): implement abs_freg64_freg64 for X86
2021-05-16 19:19:46 -04:00
rvcas
d1cf968c9b
feat(gen_dev): stub abs_freg64_freg64 for arm 64
2021-05-16 19:19:14 -04:00
rvcas
388caf9460
feat(gen_dev): Backend64
...
implement build_num_abs_f64 for generic 64 bit archs
2021-05-16 19:17:00 -04:00
rvcas
65cc9b54fa
feat(gen_dev): add method to Assembler trait
2021-05-16 19:16:01 -04:00
rvcas
92505444dd
feat(gen_dev): add match case for Float64 to Backend
2021-05-16 19:10:01 -04:00
rvcas
365f1a1f7c
feat(gen_dev): add build_num_abs_f64
2021-05-16 19:08:02 -04:00
Folkert
2b72f9e733
add HigherOrderLowLevel
2021-05-16 22:49:57 +02:00
Brendan Hansknecht
2fc46b8752
WIP:struct
2021-05-16 13:28:21 -07:00
Folkert
e675bac893
make higher-order distinction in lowlevels
2021-05-16 22:13:13 +02:00
Folkert
917acac843
Merge remote-tracking branch 'origin/increment-many' into specialize-lowlevel
2021-05-16 21:57:15 +02:00
Folkert
bb3fe92251
Revert "add ir unknowninc instruction"
...
This reverts commit ebd62485df
.
2021-05-16 21:52:30 +02:00
Folkert
7520dfee06
Revert "formatting"
...
This reverts commit 3540a048d8
.
2021-05-16 21:52:20 +02:00
Folkert
4afd3cfce6
fixup
2021-05-16 21:32:45 +02:00
Folkert
353e161f77
expose support for multi-increment
2021-05-16 21:25:47 +02:00
Folkert
de7b06e411
refactor + clippy
2021-05-16 21:17:34 +02:00
Folkert
febb578773
rework refcount code gen to accept unknown inc values
2021-05-16 20:28:45 +02:00
Folkert
3540a048d8
formatting
2021-05-16 20:25:18 +02:00
Folkert
ebd62485df
add ir unknowninc instruction
2021-05-16 17:25:01 +02:00
Folkert
c2108d4ecd
rework refcount code gen to accept unknown inc values
2021-05-16 16:15:27 +02:00
Folkert
3ca6ffade9
make List.map borrow based on passed function
2021-05-16 14:09:39 +02:00
Brendan Hansknecht
b46a2cb4b5
Merge branch 'trunk' into gen-dev/div-i64
2021-05-15 23:36:48 -07:00
Brendan Hansknecht
e56c46ff54
enable record updating tests since they already pass
2021-05-15 23:26:59 -07:00
Brendan Hansknecht
6a38ec03ed
enable returning structs
...
That being said the support is very limited. It really only supports
single field structs and the special case of 2 ints. I realized that
general support for returning structs requires a calling conv extension
for returning them. Instead of adding all of the calling conv versions,
I just added a few basic cases that are shared accross calling conv. It
turns out that the calling conv extension is quite detailed for how it
works in Arm. X86 isn't too detailed overall.
2021-05-15 23:01:23 -07:00
Brendan Hansknecht
ba58e1bbf4
expand supported record tests
2021-05-15 21:17:47 -07:00
Brendan Hansknecht
210004529d
float and nested records to the dev backend
2021-05-15 21:05:51 -07:00
Brendan Hansknecht
950d380ea0
Add records to the dev backend
2021-05-15 20:18:04 -07:00