| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2018-07-11 | Fix off-by-one bugs in monomorphisation rewrites involving bitvector subranges | Thomas Bauereiss | |
| CHERI test suite now passes using Isabelle-generated emulator | |||
| 2018-07-11 | Fix some signedness bugs | Thomas Bauereiss | |
| add_vec_int and similar functions in the Lem library used unsigned instead of signed conversion. | |||
| 2018-07-10 | Update HOL setup | Brian Campbell | |
| 2018-07-10 | Add more Isabelle lemmas to library | Thomas Bauereiss | |
| 2018-07-09 | Changes for anonymisation. Ensure headers are in correct format. Remove some ↵ | Robert Norton | |
| redundant files. | |||
| 2018-07-09 | Update gitignore | Thomas Bauereiss | |
| 2018-07-09 | Add some syntactic sugar for Isabelle | Thomas Bauereiss | |
| 2018-07-09 | Simplify treating of undefined_bool in Lem library | Thomas Bauereiss | |
| Use nondeterministic choice by default instead of a deterministic bitstream generator in the state, which is slightly awkward to reason about, because every use of undefined_boolS changes the state. The previous behaviour can be implemented as Sail code, if desired. Also add a default implementation of internal_pick that nondeterministically chooses an element from a list. | |||
| 2018-07-09 | Bits for bits of aarch64 in coq | Brian Campbell | |
| 2018-07-07 | Coq: bbv have reorganised their repository | Brian Campbell | |
| 2018-07-07 | Coq: precise generic vectors | Brian Campbell | |
| (probably still some pattern matching to do, but I don't think the models use that) | |||
| 2018-07-07 | Coq: supply index constraint in for loops | Brian Campbell | |
| 2018-07-07 | Coq: eq_range should take proofs | Brian Campbell | |
| 2018-07-06 | Coq: use List.In predicates in constraint solving; make other bits robust | Brian Campbell | |
| 2018-07-05 | Fix equality comparisons for variants in C | Alasdair | |
| Makes sure equality comparisons for variants are compiled correctly. Needed for CHERI and mips, which have structs containing variants. Also make sure that struct equality works for structs containing other structs. | |||
| 2018-07-05 | Coq: get index_list right | Brian Campbell | |
| 2018-07-05 | Fix equality comparisons for structs | Alasdair | |
| Add a test case in test/c/eq_struct.sail. Ensure that the macro EQUAL(type) will always give a valid equality function for any builtin type in sail.h. | |||
| 2018-07-05 | restore missing RISC-V fence types in sail2; ignore io bits in fences more ↵ | Jon French | |
| cleanly | |||
| 2018-07-02 | Coq: add some string functions | Brian Campbell | |
| 2018-07-02 | Coq: replace simpl in a tactic with a more precise "change" | Brian Campbell | |
| Prevents partial unfolding of Z.pow. | |||
| 2018-06-30 | RTS: fix replicate_bits | Alastair Reid | |
| Fixes handling of Replicate(x, 0). | |||
| 2018-06-30 | RTS: Add length asserts to bits ops | Alastair Reid | |
| Added assertions to check that length of bit operations is sensible (i.e., consistent with type system). | |||
| 2018-06-30 | Fix an issue with vector_update_subrange | Alasdair | |
| vector_update_subrange wasn't setting its return length correctly | |||
| 2018-06-29 | RTS: tweak TIMEOUT message | Alastair Reid | |
| Making the message more like archex messages simplifies tooling. Plus, it is a better message. | |||
| 2018-06-28 | RTS: Fix utterly broken command line parsing | Alastair Reid | |
| 2018-06-28 | RTS: Add --verbosity flag to C model | Alastair Reid | |
| This is interpreted as a set of bits that control various bits of output. Bit 0 is print the PC on every cycle. (It would probably be useful to standardise a few of these flags across all models. Other candidates are accesses to physical memory, throwing SAIL exceptions, current privilege level, ...) | |||
| 2018-06-28 | Add tagged memory to C rts to cheri can be compiled to C | Alasdair Armstrong | |
| 2018-06-28 | Fix warning in rts.c | Robert Norton | |
| 2018-06-28 | Add option to build ocaml with bisect_ppx coverage support. Add cheri ↵ | Robert Norton | |
| targets using this. | |||
| 2018-06-28 | RTS: Add missing #include | Alastair Reid | |
| Every Unix is subtly different. | |||
| 2018-06-27 | RTS/Main: tweaking cycle counter handling | Alastair Reid | |
| 2018-06-27 | Actually fix real literals, and add a test for various properties | Alasdair Armstrong | |
| 2018-06-27 | Fix reading reals from strings in C lib | Alasdair Armstrong | |
| 2018-06-27 | libsail: optimise real_power | Alastair Reid | |
| The Arm spec uses the value 2.0^1000000 to represent infinity so it is worth making real_power take logarithmic time. | |||
| 2018-06-27 | Add a new function cycle_limit_reached that returns bool, allowing for ↵ | Robert Norton | |
| graceful exit on reaching cycle limit. This aids coverage and valgrind instrumentation. | |||
| 2018-06-27 | Fix real implementation in C to use GMP rationals | Alasdair Armstrong | |
| Implement square root function for rationals up to an arbitrary precision, currently 30 decimal places. May need to increase this for ARM tests. | |||
| 2018-06-27 | RTS: __SetConfig support is off by default | Alastair Reid | |
| Use -DHAVE_SETCONFIG to enable __SetConfig support | |||
| 2018-06-27 | RTS: Add support for __ListConfig | Alastair Reid | |
| 2018-06-27 | RTS: Delete __SetConfig stub function | Alastair Reid | |
| This is now directly supported from SAIL so we can call the SAIL __SetConfig function instead. | |||
| 2018-06-26 | turn on warnings when compiling mips c then dial back ones that are ↵ | Robert Norton | |
| triggered by generated code (probably false positives). Fix some warnings in rts.c | |||
| 2018-06-26 | RTS: implement sleep primitives | Alastair Reid | |
| Note that an alternative implementation choice is just to implement them as SAIL functions manipulating a global variable. Not sure which is better. | |||
| 2018-06-26 | RTS: stub support for -C command line option | Alastair Reid | |
| 2018-06-26 | ELF: Restore error messages in ELF reader | Alastair Reid | |
| 2018-06-25 | Coq: add typeclass based comparison, and instantiate for enums | Brian Campbell | |
| 2018-06-25 | Coq: automatic cast introduction | Brian Campbell | |
| 2018-06-25 | Use getopt rather than argp for Mac compatibility in C runtime | Alasdair Armstrong | |
| Also further tweaks to Sail library for C and include sail lib files for tracing | |||
| 2018-06-25 | flush stdout after putchar for terminal emulation purposes. | Robert Norton | |
| 2018-06-22 | Precise bitvector subrange functions for Coq. | Brian Campbell | |
| Also fix the constraints in the standard prelude files, add a couple of useful cast rewriting lemmas. | |||
| 2018-06-22 | Add coq builtins for MIPS | Brian Campbell | |
| 2018-06-22 | Coq: library updates, esp extending bitvector multiplies, Undefined | Brian Campbell | |
