| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2018-02-22 | Curtail at more false assertions | Brian Campbell | |
| (plus some adjustments for the test case) | |||
| 2018-02-21 | Implement more builtins in constant propagation | Brian Campbell | |
| 2018-02-21 | Cut out dead if branches according to the type environment during mono | Brian Campbell | |
| const progagation. Needed to avoid negative bitvector sizes on aarch64 Also propagate values found from "if var = const ...", which is needed in aarch64 | |||
| 2018-02-20 | Remove temporary debugging message | Brian Campbell | |
| 2018-02-20 | Bump up case split limit for now | Brian Campbell | |
| 2018-02-20 | Rework atom-to-itself transformation to check for equivalent size nexps | Brian Campbell | |
| 2018-02-14 | Another mono rewrite for aarch64 | Brian Campbell | |
| 2018-02-14 | Support monorphisation analysis of bitvectors inside existentials | Brian Campbell | |
| 2018-02-14 | Pick up more equivalent type variables in monomorphisation | Brian Campbell | |
| 2018-02-14 | Handle simple returns in constant propagation | Brian Campbell | |
| Useful for feature functions, e.g. HaveFP16Ext | |||
| 2018-02-13 | Some support in mono for extra fresh tyvars generated in the typechecker | Brian Campbell | |
| (still some work to do in AtomToItself rewrite, but should work despite error messages) | |||
| 2018-02-08 | Add (most of) the bitvector cast insertion transformation | Brian Campbell | |
| to help Lem go from a general type `bits('n)` to a specific type `bits(16)` at a case split, and the other way around for a returned value. Doesn't handle function clause patterns yet | |||
| 2018-02-06 | Add aux constructor to type patterns for consistency | Alasdair Armstrong | |
| 2018-02-05 | Merge changes to type_check.ml | Alasdair Armstrong | |
| 2018-02-05 | Add typ patterns for destructuring existentials | Alasdair Armstrong | |
| 2018-02-02 | When cutting functions short at assertions, put an exit to correct types | Brian Campbell | |
| if necessary | |||
| 2018-02-02 | Also rewrite boolean terms in asserts during monomorphisation | Brian Campbell | |
| (otherwise wildcard cases won't be cut short at the assertion) | |||
| 2018-02-01 | Fix atom -> itself transformation when clauses feature different set of sizes | Brian Campbell | |
| 2018-02-01 | Curtail function bodies at known-false assertions during mono | Brian Campbell | |
| (preventing non-monomorphised sizes appearing in wildcard cases) | |||
| 2018-02-01 | Proper substitution and propagation of size from last commit | Brian Campbell | |
| 2018-02-01 | Substitute extra size case splits into body in monomorphisation | Brian Campbell | |
| 2018-02-01 | Make mono add case expressions for size tyvars without a corresponding arg | Brian Campbell | |
| 2018-01-31 | Find buried set constraints in asserts | Brian Campbell | |
| 2018-01-31 | Fix mono continue away option | Brian Campbell | |
| 2018-01-30 | Handle 'N == 1 | 'N == 2 | ... style set constraints in mono | Brian Campbell | |
| 2018-01-30 | Optionally give *all* monomorphisation errors at once | Brian Campbell | |
| (and stop afterwards unless asked) | |||
| 2018-01-30 | Fix monomorphisation analysis to detect type variables which need to be | Brian Campbell | |
| concrete but aren't determined by one of the arguments. | |||
| 2018-01-29 | Set maximum split size to work with aarch64 no vector | Brian Campbell | |
| 2018-01-29 | Turn off constraint substitution in mono | Brian Campbell | |
| (Type checker doesn't seem to use false aggressively enough for this) | |||
| 2018-01-29 | Turn off warnings when rechecking after mono | Brian Campbell | |
| 2018-01-29 | Avoid generating (_ as n) in mono, broke atom type rewriting | Brian Campbell | |
| 2018-01-26 | One more mono rewrite | Brian Campbell | |
| 2018-01-26 | Add replacement of complex nexp sizes by equivalent variables in mono | Brian Campbell | |
| 2018-01-26 | Preserve more typing info in monomorphisation for later stages | Brian Campbell | |
| 2018-01-25 | Use set asserts as case splits in monomorphisation | Brian Campbell | |
| 2018-01-25 | Missing type expansion | Brian Campbell | |
| 2018-01-25 | Handle bound variables properly with precise case splitting | Brian Campbell | |
| 2018-01-25 | Basic support for match x[5 .. 2] with case splits | Brian Campbell | |
| 2018-01-25 | Implement basic case splitting based on found case expressions | Brian Campbell | |
| (makes some of the monomorphisation case splits smaller) | |||
| 2018-01-19 | Update monomorphisation for sail2 | Brian Campbell | |
| (no vector type start position, comment syntax) | |||
| 2018-01-18 | Merge remote-tracking branch 'origin/experiments' into sail2 | Alasdair Armstrong | |
| 2018-01-16 | Fix problem with let-bindings in pattern guards | Thomas Bauereiss | |
| Monomorphisation sometimes produces pattern guard with let-bindings, e.g. | ... if (let regsize = size_itself(regsize) in eq(regsize, 32)) -> ... Previously, the rewriting pass for let-bindings (and pattern guards) pulled these out of the guard condition and into the same scope as the case expression, which potentially clashed with let-bindings for the same variables in that case expression. The rewriter now leaves let-bindings in place within pure if-conditions, solving this problem. | |||
| 2018-01-16 | Handle for loops correctly when rewriting size parameters | Brian Campbell | |
| 2018-01-16 | Another useful monomorphisation rewrite | Brian Campbell | |
| 2018-01-15 | Check monomorphisation case split size once for each pattern | Brian Campbell | |
| (rather than for each argument separately) | |||
| 2018-01-12 | Merge remote-tracking branch 'origin/experiments' into sail2 | Alasdair Armstrong | |
| 2018-01-12 | Try to keep types for undefined around during monomorphisation | Brian Campbell | |
| Otherwise the type checker can't figure it out when we substitute | |||
| 2018-01-12 | Merge remote-tracking branch 'origin/experiments' into sail2 | Alasdair Armstrong | |
| 2018-01-12 | Remove generic comparison | Brian Campbell | |
| 2018-01-12 | Support constant propagation on casts in monomorphisation | Brian Campbell | |
