Folkert
69588a3b76
fix wasm tests
2023-08-09 16:04:48 +02:00
Folkert
0f3da32d9d
remove unused field
2023-08-09 15:11:02 +02:00
Folkert
7fb4b60b21
move around hostexposedalias logic
2023-08-09 15:09:03 +02:00
Folkert
bec0e52f1e
make glue and mono look at the same type
2023-08-08 19:57:11 +02:00
Folkert
3d86ccf167
remove as Fx
from platform types
2023-08-08 16:37:47 +02:00
Folkert
a2b8274ade
spelling
2023-07-30 20:44:12 +02:00
Folkert
29df340a26
pass the crash tag through
2023-07-30 20:44:11 +02:00
Folkert
bb97b9ff74
cleanup
2023-07-30 20:44:10 +02:00
Folkert
f59eed6366
so close
2023-07-30 20:44:10 +02:00
Folkert
8c99cdf817
working codegen
2023-07-30 20:44:07 +02:00
Folkert
e7f9ff8b51
WIP
2023-07-30 20:42:07 +02:00
Folkert
10aa4f58c9
WIP
2023-07-30 20:41:33 +02:00
Folkert
44d03eebfa
switch over to alloca expr
2023-07-30 18:48:35 +02:00
Folkert
cdd2aab217
add alloca as an expression
2023-07-30 18:46:00 +02:00
J.Teeuwissen
80faf0eeee
removed borrow.rs
2023-07-30 14:03:38 +02:00
Folkert
334253f47f
check inside a lambda set for whether it is reference counted
2023-07-26 20:06:37 +02:00
Folkert
a7bf9bc639
annotations are still optional
2023-07-24 22:18:58 +02:00
Folkert
126c3f1536
simplify information passed to mono
2023-07-24 21:54:39 +02:00
Folkert
e549ea78fe
simplify HostSpecializations
2023-07-24 21:33:05 +02:00
Folkert
2756c9af35
switching constraint order fixes things
2023-07-24 21:24:34 +02:00
Folkert
557c3987e0
make it work
2023-07-24 21:24:33 +02:00
Folkert
43adf0635e
freshen annotations
2023-07-24 21:24:33 +02:00
Ayaz
6225b80e01
Merge pull request #5668 from roc-lang/checkmate
...
Add "checkmate", a tool for the solver
2023-07-19 12:38:20 -05:00
Richard Feldman
aafefb12b2
Fix lambda set numbering issue
2023-07-17 14:09:17 -04:00
Ayaz Hafiz
d7a30966c1
Add explicit casts
...
For some reason these can no longer be inferred.
2023-07-17 09:50:37 -05:00
Ayaz
b36ad76cdd
Merge pull request #5576 from roc-lang/spike-erasure
...
Implement function erasure
2023-07-17 03:27:29 -05:00
Folkert
48fa4f7a8e
When possible, prefer NonNullableUnwrapped over NullableWrapped
...
e.g. in the scenario of `[ A Str, B, C, D ]`, rather than having one tag be nullable, we want
to store the tag id in the pointer. This generally saves 8 bytes for
every allocation, and prevents an allocations for all tags except A.
2023-07-16 20:06:46 +02:00
Ayaz Hafiz
00730be6fb
Fix doc comments
2023-07-12 17:16:12 -05:00
Ayaz Hafiz
937e042c8f
Fixed erased with nullable unwrapped union
2023-07-12 16:01:44 -05:00
Ayaz Hafiz
5e9a06e537
Boxed helpers
2023-07-12 15:55:25 -05:00
Ayaz Hafiz
a8d821bf87
Remove all box references
2023-07-12 15:50:00 -05:00
Ayaz Hafiz
8d9c6d09b9
Load as a stack pointer
2023-07-12 14:46:11 -05:00
Ayaz Hafiz
fde75d5432
Correct calling branches
2023-07-12 14:45:03 -05:00
Ayaz Hafiz
fcb907b0c9
Don't pass empty captures
2023-07-12 14:45:02 -05:00
Ayaz Hafiz
13c45151a4
Mono IR checker: check wanted function pointer layout
2023-07-12 14:45:01 -05:00
Ayaz Hafiz
13d1232f7d
Erased functions do not take a func spec
2023-07-12 14:44:17 -05:00
Ayaz Hafiz
cd64134b0a
Allow direct packing, unpacking of erased types
2023-07-12 14:43:25 -05:00
Ayaz Hafiz
1d1db83cc7
Add needed file
2023-07-12 14:43:24 -05:00
Ayaz Hafiz
dc56a0ffef
First pass update erasure IR
2023-07-12 14:43:24 -05:00
Ayaz Hafiz
7ea85e44d2
Add Layout::Erased
2023-07-12 14:43:24 -05:00
Ayaz Hafiz
283b9d53d6
Add Expr::ErasedLoad
2023-07-12 14:42:46 -05:00
Ayaz Hafiz
2c838aa5c2
Add mono Expr::ErasedMake
2023-07-12 14:40:16 -05:00
Ayaz Hafiz
3e3d3cc7f3
Type fixes
2023-07-12 14:21:28 -05:00
Ayaz Hafiz
b2d3b52bd5
First compile of erased lambdas
2023-07-12 14:21:28 -05:00
Ayaz Hafiz
cf74f849e1
Unpack erased captures
2023-07-12 14:21:28 -05:00
Ayaz Hafiz
fbad6bcb90
First pass at specialized erased
2023-07-12 14:21:28 -05:00
Ayaz Hafiz
2cb2e37fd7
Specialize erased
2023-07-12 14:21:28 -05:00
Ayaz Hafiz
d17d8c72ad
Exercise building erased function
2023-07-12 14:21:28 -05:00
Ayaz Hafiz
a1eb641bb6
how to build an erased fn
2023-07-12 14:21:27 -05:00
Ayaz Hafiz
cf30f02e01
Expr::FunctionPointer
2023-07-12 14:21:27 -05:00