| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2019-05-13 | fix typo in excl_res extern | Jon French | |
| 2019-05-08 | Remove generated TeX file | Thomas Bauereiss | |
| 2019-05-07 | Merge branch 'sail2' into smt_experiments | Alasdair Armstrong | |
| 2019-05-07 | Patch up a couple of Isabelle proofs due to memory interface changes | Brian Campbell | |
| 2019-05-05 | C: Add option to compile using __int128 rather than GMP | Alasdair | |
| Only requires a very small change to c_backend.ml. Most of this commit is duplication of the builtins and runtime in lib/int128. But the actual differences in those files is also fairly minor could be handled by some simple ifdefs for the integer builtins. | |||
| 2019-05-03 | Jib: Optimize set_slice for ARM v8.5 | Alasdair Armstrong | |
| 2019-05-03 | Jib: Fix optimizations for SMT IR changes | Alasdair Armstrong | |
| Fixes C backend optimizations that were disabled due to changes in the IR while working on the SMT generation. Also add a -Oaarch64_fast option that optimizes any integer within a struct to be an int64_t, which is safe for the ARM v8.5 spec and improves performance significantly (reduces Linux boot times by 4-5 minutes). Eventually this should probably be a directive that can be attached to any arbitrary struct/type. Fixes the -c_specialize option for ARM v8.5. However this only gives a very small performance improvment for a very large increase in compilation time however. | |||
| 2019-04-27 | Merge branch 'sail2' into smt_experiments | Alasdair | |
| 2019-04-26 | Fix some broken interpreter tests | Alasdair Armstrong | |
| 2019-04-25 | Update coq read_mem/write_mem. | Prashanth Mundkur | |
| 2019-04-25 | More read/write function updates | Brian Campbell | |
| 2019-04-24 | SMT: Make sure we clear overflow checks between generating properties | Alasdair Armstrong | |
| 2019-04-19 | Coq: more robust handling of unknown constraints | Brian Campbell | |
| 2019-04-18 | Parameterise memory read/write primitives by address length | Jon French | |
| 2019-04-17 | Add interpreter annots to vector_dec. | Prashanth Mundkur | |
| 2019-04-17 | now without memory leaks | Jon French | |
| 2019-04-17 | add unimplemented C platform definitions for platform_read_mem etc | Jon French | |
| 2019-04-17 | SMT: Unroll simple foreach loops | Alasdair Armstrong | |
| 2019-04-16 | Coq: make bools_of_int (and hence get_slice_int) compute well | Brian Campbell | |
| 2019-04-16 | Coq: set_slice typo | Brian Campbell | |
| 2019-04-16 | Coq: tdiv builtins | Brian Campbell | |
| 2019-04-16 | Coq: add specialised shifts | Brian Campbell | |
| 2019-04-15 | Merge branch 'sail2' of github.com:rems-project/sail into sail2 | Jon French | |
| 2019-04-15 | Merge branch 'sail2' into rmem_interpreter | Jon French | |
| 2019-04-15 | Basic loop termination measures for Coq | Brian Campbell | |
| Currently only supports pure termination measures for loops with effects. The user syntax uses separate termination measure declarations, as in the previous recursive termination measures, which are rewritten into the loop AST nodes before type checking (because it would be rather difficult to calculate the correct environment to type check the separate declaration in). | |||
| 2019-04-12 | lib/regfp.sail: add explicit C binding for memory access functions | Jon French | |
| 2019-04-10 | Coq: update prompt monad to match the Lem, and port the state monad/lifting | Brian Campbell | |
| NB: requires minor changes in the models | |||
| 2019-04-05 | Coq: termination measures for mutually recursive functions | Brian Campbell | |
| 2019-04-04 | Coq: improve solver on conjunctions, Euclidean division/modulo | Brian Campbell | |
| 2019-03-27 | Coq: add a little knowledge about ZEuclid.div | Brian Campbell | |
| 2019-03-27 | Coq: replace firstorder with less expensive tactics | Brian Campbell | |
| 2019-03-22 | Tidy up of div and mod operators (C implementation was previously ↵ | Robert Norton | |
| inconsistent with ocaml etc.). Rename div and mod builtins to ediv_int/emod_int and tdiv_int/tmod_int and add corresponding implementations. Add a test with negative operands. This will break existing models but will mean users have to think about which versions they want and won't accidentally use the wrong one. | |||
| 2019-03-19 | Coq: more test work | Brian Campbell | |
| - add dummy print_bits function - support int(1) like types in axioms | |||
| 2019-03-19 | Coq: more work on tests | Brian Campbell | |
| - skip a few more that aren't supported yet - produce better debugging information (in particular, in the right order) - avoid some autocasts that aren't supported yet and are usually unnecessary - Handle more constraints like `8 * n = 8 * ?Goal` | |||
| 2019-03-18 | Add non-negative constraints for zeros/ones | Brian Campbell | |
| 2019-03-15 | Various monomorphisation tweaks and fixes | Thomas Bauereiss | |
| 2019-03-15 | Make mono_rewrites less dependant on ASL prelude | Thomas Bauereiss | |
| ... so that it can be more easily used for other specs. Also add some functions to vector_dec.sail to support this. | |||
| 2019-03-15 | Coq: some progress on the test suite | Brian Campbell | |
| Rewrite <> true/false in goals. Correct implicits in record and variant types. Use expanded valspecs from the type checker in axioms. Allow list notations in type definitions. Skip some not-yet-supported tests. | |||
| 2019-03-15 | Coq: better loop handling, discharge some related proof obligations | Brian Campbell | |
| 2019-03-14 | Merge branch 'sail2' into rmem_interpreter | Jon French | |
| 2019-03-13 | lib/regfp.sail: new standard intrinsics for triggering memory effects | Jon French | |
| 2019-03-13 | C: Add missing update_lbits builtin | Alasdair Armstrong | |
| 2019-03-12 | Coq: try non-linear nia solver too | Brian Campbell | |
| 2019-03-12 | Coq: fix some boolean issues seen in arm | Brian Campbell | |
| Fixes bad precedence issues, removes an out-of-date special case that's not necessary, and solves more goals. | |||
| 2019-03-08 | Fix the Coq mapping for eq_string in Sail lib. | Prashanth Mundkur | |
| 2019-03-08 | Adds the DC and IC instructions to AArch64_small; | Shaked Flur | |
| Also, removes etc/regfp.sail and etc/regfp2.sail in favour of lib/regfp.sail | |||
| 2019-03-07 | Fix bug in a mono rewrite helper function | Thomas Bauereiss | |
| 2019-03-07 | Coq: apply a little brute force in some boolean goals | Brian Campbell | |
| 2019-03-05 | Coq: firstorder is better at the boolean goals | Brian Campbell | |
| 2019-03-05 | Coq: use setoid rewriting to apply under an existential binder | Brian Campbell | |
