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
|
6253d2d1af
|
pattern match on single-tag tag unions
in LLVM and crane
|
2020-03-17 19:44:59 +01:00 |
|
Folkert
|
b5abed5f54
|
variables in pattern matches on single tags
|
2020-03-17 16:27:09 +01:00 |
|
Folkert
|
9d756a3b2c
|
generate unpacked tags in Crane
|
2020-03-17 15:26:21 +01:00 |
|
Folkert
|
c3d550116b
|
make patterns store their bound variables
|
2020-03-17 14:04:26 +01:00 |
|
Folkert
|
6310341b7e
|
Merge remote-tracking branch 'origin/trunk' into pattern-compilation
|
2020-03-17 12:49:30 +01:00 |
|
Richard Feldman
|
77bf2547ac
|
Add sfe_to_memcpy
|
2020-03-16 21:55:24 -04:00 |
|
Richard Feldman
|
f9e013793c
|
Drop unused mono::Expr::Pointer
|
2020-03-16 21:47:08 -04:00 |
|
Richard Feldman
|
bfe7c1b330
|
Update a comment
|
2020-03-16 21:27:49 -04:00 |
|
Folkert
|
c20f777dba
|
comment tests that fail for llvm
|
2020-03-17 00:36:58 +01:00 |
|
Folkert
|
ab332a37c3
|
take the maximum of all tags when calculating layout
|
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 |
|
Richard Feldman
|
455fabbe88
|
c to the l to the i p p y
|
2020-03-15 15:21:33 -04:00 |
|
Richard Feldman
|
6cd8afd5d6
|
Fix using structs with records
|
2020-03-15 15:13:52 -04:00 |
|
Richard Feldman
|
010e390fd6
|
Make using records in defs work
|
2020-03-15 14:31:01 -04:00 |
|
Folkert
|
6e97734211
|
ensure Bit/Enum patterns are considered exhaustive
|
2020-03-15 14:42:57 +01:00 |
|
Folkert
|
8a46765fee
|
add debug assert for possible invariant
|
2020-03-15 14:42:57 +01:00 |
|
Folkert
|
3ea748e532
|
remove extra check
|
2020-03-15 14:42:57 +01:00 |
|
Folkert
|
9207145792
|
remove unneeded error vec
|
2020-03-15 14:42:57 +01:00 |
|
Folkert
|
58fd1d64ff
|
do exhaustiveness on mono patterns
|
2020-03-15 14:42:57 +01:00 |
|
Folkert
|
58c09aeaba
|
First pass at pattern exhaustivess checking
|
2020-03-15 14:42:57 +01:00 |
|
Folkert
|
5926ac2f01
|
stub out Tag layout
|
2020-03-15 14:42:57 +01:00 |
|
Folkert
|
6088a22cb6
|
WIP first version that runs
|
2020-03-15 14:42:57 +01:00 |
|
Richard Feldman
|
a54db8bf92
|
Merge remote-tracking branch 'origin/trunk' into array-wrappers
|
2020-03-14 20:49:59 -04:00 |
|
Richard Feldman
|
5bf82fa42c
|
Fix Cranelift gen of nonempty lists
|
2020-03-14 20:44:39 -04:00 |
|
Richard Feldman
|
e9a0c8b3ef
|
Fix mono for empty list
|
2020-03-13 22:41:55 -04:00 |
|
Richard Feldman
|
8d4331f903
|
Merge remote-tracking branch 'origin/trunk' into array-wrappers
|
2020-03-13 22:20:35 -04:00 |
|
Richard Feldman
|
4c19dd86ff
|
First pass at some List implementation stuff
|
2020-03-13 22:15:26 -04:00 |
|
Folkert
|
b43be95b19
|
add record_var to Access and Accessor
|
2020-03-14 01:13:44 +01:00 |
|
Folkert
|
e62ddc9ef5
|
make record variable names clearer
|
2020-03-14 01:01:14 +01:00 |
|
Folkert
|
1a8f380033
|
Merge remote-tracking branch 'origin/trunk' into mono-if
|
2020-03-14 01:00:25 +01:00 |
|
Folkert
|
1570e9b96e
|
make mono patterns nicer
|
2020-03-14 00:10:11 +01:00 |
|
Folkert
|
129be86233
|
clean up when to Cond conversion
|
2020-03-13 21:24:42 +01:00 |
|
Folkert
|
05a3e8c3d8
|
equality for Byte and Bool
|
2020-03-13 17:01:18 +01:00 |
|
Folkert
|
242679b841
|
fix clippy complaints
|
2020-03-13 16:14:37 +01:00 |
|
Folkert
|
bfde5c596d
|
remove dead code
|
2020-03-13 15:17:37 +01:00 |
|
Folkert
|
735358c577
|
implement isEq for Float/Int
|
2020-03-13 15:15:10 +01:00 |
|
Folkert
|
a3b1ec3be0
|
pull tags/fields from the ext_var during unification
|
2020-03-13 15:12:32 +01:00 |
|
Dan Bruder
|
099145e4b4
|
Merge branch 'trunk' into access-record-fields
|
2020-03-13 09:07:41 -04:00 |
|
Folkert
|
a7af366c3a
|
new code gen for Cond
|
2020-03-13 13:06:56 +01:00 |
|
Folkert
|
4da01c720e
|
monomorphize the ext_var of records/tag unions
|
2020-03-12 21:32:58 +01:00 |
|
Folkert
|
f372e4d108
|
move fresh symbol generation into Env
|
2020-03-12 16:55:45 +01:00 |
|
Dan Bruder
|
bfd9150af4
|
access record fields progress
|
2020-03-12 10:37:07 -04:00 |
|
Folkert
|
de40cf62f3
|
special-case anonymous functions
|
2020-03-12 14:03:26 +01:00 |
|
Folkert
|
cfb3952fbf
|
put patterns into PartialProc
So Load(symbol) finds a defined value
|
2020-03-12 13:20:26 +01:00 |
|