| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2019-05-29 | Fix sail_truncate error message in SMT | Alasdair Armstrong | |
| 2019-05-28 | Fix typechecking test expected error | Alasdair Armstrong | |
| 2019-05-28 | Coq: more constraint solving | Brian Campbell | |
| - add division lemma - deal with some awkward \/ constraints from asl_parser - try simple integer comparison proofs before omega (which can blow up on trivial properties in large contexts) | |||
| 2019-05-28 | Coq: don't output complex bool types at let expressions | Brian Campbell | |
| 2019-05-28 | Just build lem in aarch64_small test | Alasdair Armstrong | |
| 2019-05-28 | SMT: Add min and max functions | Alasdair Armstrong | |
| Allow conversion between int(n) and int in smt_conversion | |||
| 2019-05-28 | Make sure single clause functions with top-level guards work correctly | Alasdair Armstrong | |
| 2019-05-24 | Add a :thin_slice command to isail to isolate a given set of functions | Brian Campbell | |
| 2019-05-24 | Coq: support if-then-throw typechecking special case | Brian Campbell | |
| 2019-05-24 | Coq: switch to computable versions of BBV shifts | Brian Campbell | |
| 2019-05-23 | Coq: support loops which update richly typed variables | Brian Campbell | |
| 2019-05-23 | Coq: solve some division constraints | Brian Campbell | |
| 2019-05-23 | Coq: define the names from the Sail real library | Brian Campbell | |
| 2019-05-23 | Fix bug in slice_mask | Thomas Bauereiss | |
| 2019-05-22 | Coq: tweak disjunctions tactic with subst to support more constraints | Brian Campbell | |
| 2019-05-22 | Coq: replace inferrable integer arguments with _ at more types | Brian Campbell | |
| Previously we only checked at atom, now use destruct_atom_nexp to pick up implicit too. | |||
| 2019-05-22 | Use opam instructions in INSTALL.md | Alasdair Armstrong | |
| Move the instructions to build everything from source to the wiki | |||
| 2019-05-22 | Fix: Update INSTALL.md with opam switch instructions | Alasdair Armstrong | |
| 2019-05-22 | Move Util.warn to Reporting, and make it take the location as a parameter | Alasdair Armstrong | |
| Also add a $suppress_warnings directive that ensures that no warnings are generated for a specific file. | |||
| 2019-05-21 | SMT: Use a separate constructor for memory read variables | Alasdair Armstrong | |
| We want to ensure simplication can treat these separately so we don't accidentally simplify away dependencies between reads and write addresses. | |||
| 2019-05-21 | Fix: undefined_nat test for interpreter | Alasdair Armstrong | |
| 2019-05-21 | SMT: Add control flow node numbers to memory events to track program order | Alasdair Armstrong | |
| Add path conditions to memory events Allow simplication of generated SMT based on constructor kinds | |||
| 2019-05-21 | Lem: Fix bug in generation of val-specs | Thomas Bauereiss | |
| Used to output duplicate type variables in some cases. | |||
| 2019-05-21 | Coq: remove premature unfolding of local definitions | Brian Campbell | |
| 2019-05-21 | Coq: introduce autocasts at variables | Brian Campbell | |
| Usually we do this at function applications and casts, but occasionally a variable is used at a different type. | |||
| 2019-05-20 | Coq: fix property extraction bug, solve some constraints involving sets | Brian Campbell | |
| 2019-05-20 | Revert "Add constraints to undefined vector functions to ensure that lengths ↵ | Brian Campbell | |
| are" This reverts commit 8bed4e4ef414f93e02f28f0e5eb223a855ba3d14. | |||
| 2019-05-20 | Filter termination measures during slicing | Brian Campbell | |
| 2019-05-20 | Speed up graph construction by always keeping graph in normalized form | Brian Campbell | |
| Only checks the leaves that were added in each add_edge/add_edges call. Slicing bits of the 8.5 model went (for me) from intractable to about one second. | |||
| 2019-05-20 | Coq: add some missing autocasts, avoid unnecessary patterns in lets | Brian Campbell | |
| The former is useful when a bitvector variable is cast to an equivalent length, and the latter is easier for Coq's unification to deal with. | |||
| 2019-05-19 | Coq: add signed bitvector to integer function that doesn't need >0 constraint | Brian Campbell | |
| 2019-05-19 | Coq: remove unhelpful type printing restriction on early returns | Brian Campbell | |
| 2019-05-19 | Coq: proper definitions for some undefined value functions | Brian Campbell | |
| That is, undefined_bitvector, undefined_unit, internal_pick. | |||
| 2019-05-19 | Add constraints to undefined vector functions to ensure that lengths are | Brian Campbell | |
| sane, and an incomplete check on undefined literals. | |||
| 2019-05-17 | SMT: Finish adding all memory builtins from lib/regfp.sail | Alasdair Armstrong | |
| 2019-05-16 | Fix: Add a feature symbol for new constant type variable syntax | Alasdair Armstrong | |
| 2019-05-16 | SMT: Tweak SMT generation interface | Alasdair Armstrong | |
| Expose AST -> Jib compilation function for SMT, and smt_header function Functorise the optimiser so it can output the SMT definitions to any data structure | |||
| 2019-05-16 | SMT: Improve simplification for generated SMT | Alasdair Armstrong | |
| Generate addresses, kinds, and values separately for read and write events. Add an mli interface for jib_smt.ml | |||
| 2019-05-15 | 94f445 introduced a new name for _ref_deref, add it to the effect rewriting | Brian Campbell | |
| 2019-05-15 | Coq: constraint solving for aarch64 | Brian Campbell | |
| Also split out main solver tactic to make debugging a little easier. | |||
| 2019-05-14 | SMT: Allow printing SMT with an optional variable prefix | Alasdair Armstrong | |
| Allows us to mix generated SMT for two separate threads without name clashes, however we do want to be able to share datatypes so they are not prefixed. Currently the pretty-printer adds the prefix but we may want a smt_def -> smt_def renaming function instead. | |||
| 2019-05-14 | Fix test case for previous commit | Alasdair Armstrong | |
| Previous commit changed the bitfield desugaring very slightly which this test case relied upon. | |||
| 2019-05-14 | Various bugfixes | Alasdair Armstrong | |
| Since we have __deref to desugar *x in this file (as it's the one file everything includes) we might as well add a __bitfield_deref here too, for the bitfield setters. Make sure undefined_nat can be used in C Both -memo_z3 and -no_memo_z3 were listed as default options, now only -no_memo_z3 is listed as the default. | |||
| 2019-05-14 | Merge branch 'smt_experiments' into sail2 | Alasdair Armstrong | |
| 2019-05-14 | SMT: Add comment explaining path conditionals | Alasdair Armstrong | |
| 2019-05-14 | Fix: Issue a warning for any unrecognised directive | Alasdair Armstrong | |
| Fixes #46 | |||
| 2019-05-14 | Add feature that allows functions to require type variables are constant | Alasdair Armstrong | |
| can now write e.g. forall (constant 'n : Int) rather than forall ('n: Int) which requires 'n to be a constant integer value whenever the function is called. I added this to the 'addrsize variable on memory reads/writes to absolutely guarantee in the SMT generation that we don't have to worry about the address being a variable length bitvector. | |||
| 2019-05-13 | Merge branch 'sail2' into smt_experiments | Alasdair | |
| 2019-05-13 | Parse dereferences in orderinary expressions | Alasdair | |
| 2019-05-13 | aarch64_small: correct cast_bool_bit/cast_bit_bool functions | Jon French | |
| Fixes issue with spurious alignment faults etc. | |||
