Commit graph

1661 commits

Author SHA1 Message Date
Richard Feldman
2904f29c36 Have mono::expr::Env use IdentIds::gen_unique 2020-05-04 20:29:36 -04:00
Richard Feldman
ce9e7a91f6 Clean up some Cargo.toml files 2020-05-03 21:37:59 -04:00
Richard Feldman
ee31eac0c5 Code gen toplevel module functions 2020-05-01 19:30:55 -04:00
Richard Feldman
5c31369072 Code gen thunks for top-level module decls 2020-05-01 19:30:55 -04:00
Chad Stearns
d1b00633be INT NEQ for i1 and i8 integer types 2020-05-01 17:29:43 -04:00
Chad Stearns
71258e0e59 Implemented INT_NE_i64 2020-05-01 16:31:19 -04:00
Richard Feldman
35f99680ba Use indoc! more 2020-04-29 07:10:59 -04:00
Richard Feldman
570f387f0d Drop some obsolete dead_code annotations 2020-04-29 07:05:43 -04:00
Folkert
c11ac52a4b fix num/int bug
we called the function with the wrong type variable. now there are two functions, handling both cases
2020-04-29 12:28:13 +02:00
Richard Feldman
c39b43a265 Code gen numeric comparisons 2020-04-28 18:33:51 -04:00
Richard Feldman
afbe871e6d wip 2020-04-26 08:45:41 -04:00
Richard Feldman
243bbf4790 Revert changes to mono/ from List.get attempts 2020-04-25 06:30:01 -04:00
Folkert
0191910715 fix clippy's newly-learned warnings 2020-04-25 06:30:01 -04:00
Folkert
0a1cf805f9 handle Unboxed 2020-04-25 06:30:01 -04:00
Folkert
3e36bea700 improve formatting of records in pattern exhaustiveness errors 2020-04-25 06:30:01 -04:00
Folkert
dc320e9fd9 fix ordering bug in pattern exhaustiveness 2020-04-25 06:30:01 -04:00
Folkert
f8b540b6f4 use tag id instead of name in exhaustiveness checking 2020-04-25 06:30:01 -04:00
Richard Feldman
6b952e0c98 Revert "Attempt to add List.get to mono/"
This reverts commit 49d24e8202cf59d0b47ca397fe0c150d0620da20.
2020-04-25 06:19:13 -04:00
Richard Feldman
c28f00ecb2 Attempt to add List.get to mono/ 2020-04-25 06:19:13 -04:00
Richard Feldman
d97e16de7e Revert "Attempt a mono/ approach for List.get"
This reverts commit f0b76f41da.
2020-04-25 06:19:10 -04:00
Richard Feldman
f0b76f41da Attempt a mono/ approach for List.get 2020-04-25 06:19:06 -04:00
Richard Feldman
5992b42ebe Remove unnecessary conditionals 2020-04-22 23:35:57 -04:00
Richard Feldman
04ec592eeb Revert "Thread ret_layout through CallByName"
This reverts commit 632d4eca92.
2020-04-22 08:33:53 -04:00
Richard Feldman
632d4eca92 Thread ret_layout through CallByName 2020-04-22 08:30:41 -04:00
Richard Feldman
f0d76825d2 Extract specializations from PartialProc 2020-04-18 11:24:25 -04:00
Richard Feldman
1c1fee7e31 Trim trailing space off pretty_assertions dep 2020-04-16 19:24:24 -04:00
Folkert
63bc923b37 remove panic 2020-04-13 22:54:24 +02:00
Folkert
c69b0d69e5 fix enum and bool pattern match suggestions 2020-04-12 21:47:15 +02:00
Folkert
7632a4b484 highlight code snippets better 2020-04-12 20:59:16 +02:00
Folkert
c326b09964 errors for patterns 2020-04-12 16:39:54 +02:00
Folkert
97c10e1211 setup for mono reports 2020-04-12 01:56:57 +02:00
Folkert
106a3646bf add category to Eq constraint 2020-04-01 20:09:10 +02:00
Folkert
14ad793bd7 hook up TypeError 2020-04-01 16:28:10 +02:00
Folkert
db3ffc6dab make runtime errors for invalid patterns 2020-03-31 01:47:14 +02:00
Folkert
c202cf3e6b don't generate Store with no stores 2020-03-26 15:11:40 +01:00
Folkert
fc905b505c codegen for letrec 2020-03-26 14:53:38 +01: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
Richard Feldman
db502fe2e7 Revise some tests 2020-03-21 22:51:11 -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
cc8683d241 Fix use of GEP (was using byte offset, not index) 2020-03-21 21:19:18 -04:00
Richard Feldman
3a6018d223 Reproduce List.set uniqueness bug 2020-03-21 21:19:18 -04:00
Folkert
9a0234e5dd make bound variables available in guards 2020-03-22 01:11:19 +01:00