| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2019-02-02 | Merge remote-tracking branch 'origin/sail2' into asl_flow2 | Alasdair | |
| 2019-02-01 | Fix missing typedef cases in OCaml output | Alasdair | |
| 2019-02-01 | Add test cases for integer synonyms | Alasdair | |
| 2019-02-01 | Expand integer synonyms | Alasdair Armstrong | |
| 2019-02-01 | Add tracing instrumention for SMT | Alasdair Armstrong | |
| Fix pretty printer bug | |||
| 2019-02-01 | Use same license as Sail for emacs mode | Alasdair Armstrong | |
| 2019-02-01 | Merge pull request #29 from thoughtpolice/patch-1 | Alasdair Armstrong | |
| sail-mode: add ELPA metadata | |||
| 2019-02-01 | Tweak HOL LEM_DIR to match riscv makefile | Brian Campbell | |
| 2019-02-01 | Make hol libraries use opam Lem library by default | Brian Campbell | |
| 2019-01-31 | sail-mode: add ELPA metadata | Austin Seipp | |
| This adds ELPA metadata, which should allow authorship of MELPA packages for Sail mode. Signed-off-by: Austin Seipp <aseipp@pobox.com> | |||
| 2019-01-31 | Fix an unnecessary cast insertion on assignments | Brian Campbell | |
| 2019-01-31 | Turn on cast insertion for -lem_mwords and revert b826df25 | Brian Campbell | |
| now that cast insertion can handle RISC-V Also inserts specs for casts in they're not present | |||
| 2019-01-31 | Drop type annotations in top-level nexp rewriting in favour of valspecs | Brian Campbell | |
| otherwise the valspec rewriting will be inconsistent with the type annotation. Note that the type checker will have introduced valspecs where necessary. | |||
| 2019-01-31 | Make cast insertion handle more complex nexps and pushing casts into blocks | Brian Campbell | |
| # Conflicts: # src/monomorphise.ml | |||
| 2019-01-31 | Build Isabelle heap image instead of just running session | Thomas Bauereiss | |
| 2019-01-31 | Adapt HOL library to monad changes | Thomas Bauereiss | |
| 2019-01-31 | Merge branch 'monads' into asl_flow2 | Thomas Bauereiss | |
| 2019-01-31 | Further restrict attention to Int kids | Thomas Bauereiss | |
| 2019-01-31 | Monomorphisation: improve cast insertion and nexp rewriting on variants | Brian Campbell | |
| It now pushes casts into lets and constructor applications, and so supports the case needed for RISC-V. | |||
| 2019-01-31 | Add missing cases to constraint comparison | Brian Campbell | |
| 2019-01-31 | Support case splitting on variables as well as sizeof in cast introduction | Brian Campbell | |
| 2019-01-30 | Cache compilation results to improve build times for repeated builds | Alasdair | |
| 2019-01-29 | Fixes for full v8.5 | Alasdair Armstrong | |
| 2019-01-29 | Add an option to crudely slice a function out of a Sail model | Brian Campbell | |
| Not ideal because it keeps everything that's not a function, but good enough for quick tests extracted from arm. | |||
| 2019-01-29 | Monomorphisation: add missing tyvar substitution during constrant propagation | Brian Campbell | |
| 2019-01-29 | Add a few more type annotations after mono rewrites | Thomas Bauereiss | |
| 2019-01-29 | Merge branch 'sail2' into asl_flow2 | Thomas Bauereiss | |
| 2019-01-29 | Improve generation of initial register state | Thomas Bauereiss | |
| Define initial values for record types once instead of repeating them in the initial register state. | |||
| 2019-01-29 | Monomorphisation: restrict our attention to Int kids | Brian Campbell | |
| 2019-01-28 | Lem: Be more careful about nexps occurring in the function signature | Thomas Bauereiss | |
| Don't ask Z3 to simplify them, as flow typing might lead to different results in different if-branches, for example, leading to type errors in Lem. | |||
| 2019-01-25 | Monomorphisation: update a built-in name | Brian Campbell | |
| 2019-01-25 | Fix solution finding using SMT by looking for the right variable | Brian Campbell | |
| 2019-01-25 | Coq: add enough to generate some output for arm-v8.5-a | Brian Campbell | |
| Now supports mutual recursion, configuration registers (in the same way as Lem), boolean constraints (but produces some ugly stuff that the solver can't handle). | |||
| 2019-01-24 | Start supporting informative bool types in Coq backend | Brian Campbell | |
| 2019-01-24 | Make recheck_defs_without_effects restore old flag properly | Brian Campbell | |
| 2019-01-23 | Minor opam release to fix #26. Also includes new unrolling pragma. | Robert Norton | |
| 2019-01-23 | Don't let "make" fail unnecessarily in lib/isabelle | Thomas Bauereiss | |
| Only check for availability of Lem library if actually trying to build an Isabelle heap image. | |||
| 2019-01-23 | Make rewriting of E_assign a bit more robust | Thomas Bauereiss | |
| 2019-01-23 | Add another flow-typing case for E_internal_plet | Thomas Bauereiss | |
| Copied from a corresponding case for E_block, so that this flow typing still gets picked up after E_block has been rewritten away. | |||
| 2019-01-22 | Add some more test cases | Alasdair Armstrong | |
| 2019-01-22 | Add a pragma for unrolling recursive functions | Alasdair Armstrong | |
| For example in RISC-V for the translation table walk: $optimize unroll 2 val walk32 ... function walk32 ... would create two extra copies of the walk_32 function, walk_32_unroll_1 and walk_32_unroll_2, with only walk_32_unroll_2 being recursive. Currently we only support the case where we have $optimize unroll, directly followed by a valspec, then a function, but this should be generalised in future. This optimization nearly doubles the performance of RISC-V It is implemented using a new Optimize.recheck rewrite that replaces the ordinary recheck_defs pass. It uses a new typechecker check_with_envs function that allows re-writes to utilise intermediate typechecking environments to minimize the amount of AST checking that occurs, for performance reasons. Note that older Sail versions including the current OPAM release will complain about the optimize pragma, so this cannot be used until they become up to date with this change. | |||
| 2019-01-22 | Bump opam version for release. | Robert Norton | |
| 2019-01-22 | Build isabelle and hol files in lib from lem before opam install. | Robert Norton | |
| 2019-01-22 | Don't hardcode location of BBV library | Thomas Bauereiss | |
| 2019-01-22 | Make sure there is an ocaml representation for optimized memory read for | Alasdair | |
| RISC-V | |||
| 2019-01-22 | Make sure we optimize constrained union constructors | Alasdair | |
| 2019-01-21 | The RISCV environment variable collides with common usage by the RISC-V ↵ | Prashanth Mundkur | |
| toolchain; use SAIL_RISCV instead to refer to sail-riscv. | |||
| 2019-01-21 | Pass Lem library path to Isabelle | Thomas Bauereiss | |
| 2019-01-21 | Don't require manual set up of Isabelle session directories | Thomas Bauereiss | |
| Since Isabelle 2018, specifying the same directory both on the command line and persistently in the user's ROOTS file is allowed, so we don't have to choose between one or the other any more. | |||
| 2019-01-21 | Fix typo in install instructions | Alasdair Armstrong | |
