Richard Feldman
|
52dfb75dc0
|
Fix some Int8s that should have been Int1s
|
2020-06-21 16:52:22 -04:00 |
|
Richard Feldman
|
ddf980e475
|
Use RunLowLevel over calling Bool.and
|
2020-06-21 15:25:03 -04:00 |
|
Richard Feldman
|
dec5c3a062
|
Get low-level ops compiling
|
2020-06-19 20:07:04 -04:00 |
|
Richard Feldman
|
c49abfe2de
|
Add layout to CallByName
|
2020-05-09 22:41:59 -04:00 |
|
Richard Feldman
|
2904f29c36
|
Have mono::expr::Env use IdentIds::gen_unique
|
2020-05-04 20:29:36 -04:00 |
|
Folkert
|
4530aa8c07
|
handle Unboxed
|
2020-04-23 21:55:21 +02:00 |
|
Folkert
|
848764cb25
|
improve formatting of records in pattern exhaustiveness errors
|
2020-04-23 21:49:24 +02:00 |
|
Folkert
|
b2a713915b
|
fix ordering bug in pattern exhaustiveness
|
2020-04-23 20:12:40 +02:00 |
|
Folkert
|
f0aa598ff9
|
use tag id instead of name in exhaustiveness checking
|
2020-04-21 16:24:43 +02:00 |
|
Folkert
|
c69b0d69e5
|
fix enum and bool pattern match suggestions
|
2020-04-12 21:47:15 +02: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
|
46062439b5
|
remove label from Struct layout
|
2020-03-23 17:55:02 +01:00 |
|
Folkert
|
9a0234e5dd
|
make bound variables available in guards
|
2020-03-22 01:11:19 +01:00 |
|
Folkert
|
1f3b8f7d68
|
guard exhaustiveness
|
2020-03-21 23:33:37 +01:00 |
|
Folkert
|
a16d48a6a9
|
code gen for simple guards
Guards cannot use variables bound in the pattern yet
|
2020-03-21 22:27:36 +01:00 |
|
Folkert
|
0f22cbbf7d
|
fix incorrect layout for Switch
|
2020-03-20 19:56:50 +01:00 |
|
Folkert
|
d0da300042
|
fix equality/hash issue
lead to tests not being merged/shared
|
2020-03-20 16:23:56 +01:00 |
|
Folkert
|
e062404a63
|
support more complex nested patterns
|
2020-03-20 14:27:07 +01:00 |
|
Folkert
|
f44fea42bb
|
Boolean and/or in cranelift
|
2020-03-20 00:59:26 +01:00 |
|
Folkert
|
82655556ab
|
exhaustiveness for record guards
|
2020-03-19 22:34:08 +01:00 |
|
Folkert
|
9745d86efb
|
add tests
|
2020-03-19 14:59:05 +01:00 |
|
Folkert
|
b93fe4e341
|
make arbitrary AccessAtIndex work
it now uses that actual layout, not a hardcoded one
|
2020-03-19 00:25:16 +01:00 |
|
Folkert
|
0996f264e7
|
simplify Byte layout
|
2020-03-18 22:22:32 +01:00 |
|
Folkert
|
c11f374eb0
|
simplify Bool layout
|
2020-03-18 22:15:03 +01:00 |
|
Folkert
|
99db336033
|
Working pattern match on Result Int Int
|
2020-03-18 21:35:10 +01:00 |
|
Folkert
|
53bd47221c
|
WIP things seem to work in theory
|
2020-03-18 16:44:53 +01:00 |
|
Folkert
|
845e30658e
|
WIP
|
2020-03-18 02:20:21 +01:00 |
|
Folkert
|
b5abed5f54
|
variables in pattern matches on single tags
|
2020-03-17 16:27:09 +01:00 |
|
Folkert
|
c20f777dba
|
comment tests that fail for llvm
|
2020-03-17 00:36:58 +01:00 |
|
Folkert
|
72ca6d675c
|
further tag support in Cranelift
|
2020-03-17 00:36:58 +01:00 |
|
Folkert
|
c9a90c32e3
|
prepare for Tag code gen
|
2020-03-17 00:36:58 +01:00 |
|
Folkert
|
e742b77e0b
|
parity with old implementation
|
2020-03-17 00:36:58 +01:00 |
|
Folkert
|
d875f8bfce
|
implement layout for Tag
|
2020-03-17 00:36:58 +01:00 |
|
Folkert
|
8c7124aba6
|
first pass
|
2020-03-17 00:36:58 +01:00 |
|