Folkert
fc905b505c
codegen for letrec
2020-03-26 14:53:38 +01:00
Folkert
1108e56750
add Bool.not
2020-03-26 14:48:11 +01:00
Folkert
08403b0a1f
enable tail-call elimination in llvm
2020-03-26 14:02:53 +01:00
Richard Feldman
a561f343b2
Remove Cranelift for now.
2020-03-25 20:19:58 -04:00
Richard Feldman
a07acd875f
Fix test compilation error
2020-03-25 20:07:10 -04:00
Richard Feldman
8390bd966a
Revert "Try using special struct return values"
...
This reverts commit 0628c104513d1cae44859c1d804177c4a1e33c95.
2020-03-25 19:47:28 -04:00
Richard Feldman
fcd917c9fe
Re-disable cranelift test_gen tests for now
2020-03-25 19:47:28 -04:00
Richard Feldman
2491b2e43b
Restore some more things to how they were before
2020-03-25 19:47:28 -04:00
Richard Feldman
0951f8048e
Try using special struct return values
2020-03-25 19:47:28 -04:00
Richard Feldman
aae69e8b55
Try having main return multiple values
2020-03-25 19:47:28 -04:00
Richard Feldman
72742f3e4c
Restore some things to how they were before
2020-03-25 19:47:28 -04:00
Richard Feldman
f27f324c4c
Make clone_list more robust in crane build
2020-03-25 19:47:28 -04:00
Richard Feldman
5d28ae5fa6
Let us never speak of this again.
2020-03-25 19:47:28 -04:00
Richard Feldman
bb26692983
Fix load_list_ptr
2020-03-25 19:47:28 -04:00
Richard Feldman
8b881d90d9
Enable cranelift on all test_gen tests
2020-03-25 19:47:28 -04:00
Richard Feldman
3672900aaa
Update a comment
2020-03-25 19:47:28 -04:00
Richard Feldman
97ff5620ab
Clean up some cranelift stuff
2020-03-25 19:47:28 -04:00
Richard Feldman
aa1cbab373
Fix phi node bug
2020-03-25 19:47:28 -04:00
Richard Feldman
2c27e459b0
Inline list_set comparison
2020-03-25 19:47:28 -04:00
Richard Feldman
c560b7a6c5
Share code on LLVM List.set
2020-03-25 19:47:28 -04:00
Richard Feldman
56f4d553e5
More progress on List.set in Cranelift
2020-03-25 19:47:28 -04:00
Richard Feldman
41b39c0629
Add more llvm verification
2020-03-25 19:46:11 -04:00
Richard Feldman
bf129a7299
Progress on List.set in Cranelift
2020-03-25 19:46:11 -04:00
Folkert
579d0d9eff
fix booleans in crane
2020-03-24 15:59:11 +01:00
Richard Feldman
bed356f93e
Merge branch 'trunk' into cleanup-mono
2020-03-24 06:28:45 -04:00
Folkert
39fb78b2d5
remove Jump/Label from mono::Expr
2020-03-24 00:11:02 +01:00
Folkert
958f3f9ad4
change pattern destructuring stores
...
they are now tracked in the Cond/Switch variants, rather than merged into the branch constructors. Required for 'beans'
2020-03-23 23:35:45 +01:00
Folkert
2bb69f333f
always Cond on a symbol
...
this will make 'beans' easier
2020-03-23 20:00:15 +01:00
Folkert
3dbdb64a93
fix merge conflict
2020-03-23 17:56:38 +01:00
Folkert
baeb8ad96a
test unit type patterns
2020-03-23 17:55:02 +01:00
Folkert
b9613fcdc5
clean up tag pattern match conversion
2020-03-23 17:55:02 +01:00
Folkert
a7b5768c47
use a custom type to store Union variants
2020-03-23 17:55:02 +01:00
Folkert
46062439b5
remove label from Struct layout
2020-03-23 17:55:02 +01:00
Folkert
e2a7c970bc
refactor Access into AccessAtIndex
2020-03-23 17:55:02 +01:00
Chad Stearns
6a6912cbb1
Merge branch 'trunk' of github.com:rtfeldman/roc into more-reports
2020-03-22 22:01:29 -04:00
Chad Stearns
57cf650ac7
All report text types rendered in color with tests
2020-03-22 21:56:22 -04:00
Chad Stearns
3ea27dab39
Cleaned up report tests
2020-03-22 21:24:08 -04:00
Chad Stearns
1478fbca3f
Region with line numbers of different string length need to pad shorter line numbers
2020-03-22 21:22:59 -04:00
Richard Feldman
ee12e56d1c
Fix set_shared_list_oob test
2020-03-22 11:34:36 -04:00
Folkert
c6fa301d8b
fix bug in is_unique
2020-03-22 13:22:52 +01:00
Richard Feldman
db502fe2e7
Revise some tests
2020-03-21 22:51:11 -04:00
Richard Feldman
39249f3905
Add test for List.set bounds checking
2020-03-21 22:14:02 -04:00
Richard Feldman
52bfe3ce9e
Add bounds checking to List.setInPlace
2020-03-21 22:12:51 -04:00
Richard Feldman
3e71b5a38d
Extract bounds_check_comparison
2020-03-21 22:11:06 -04:00
Richard Feldman
ef38095003
Fix optimization test
...
The reason this was failing was that `x` was getting
dropped by dead code elimination, and therefore wasn't
considered a reason to share any values it used.
2020-03-21 21:19:18 -04:00
Richard Feldman
a0dd31ee51
Add bounds checking for List.set in LLVM
2020-03-21 21:19:18 -04:00
Richard Feldman
63a8daa4c7
Reproduce no bounds checking on List.set in LLVM
2020-03-21 21:19:18 -04:00
Richard Feldman
d9fe38efce
Remove unnecessary lifetime annotations
2020-03-21 21:19:18 -04:00
Richard Feldman
d0a1adfef9
Fix set_shared_int_list for LLVM
2020-03-21 21:19:18 -04:00
Richard Feldman
8a26cac3f2
Add a test of just List.set by itself
2020-03-21 21:19:18 -04:00