| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2018-01-05 | Removed legacy parser/lexer and pretty printer | Alasdair Armstrong | |
| 2017-12-05 | Update license headers for Sail source | Alasdair Armstrong | |
| 2017-11-24 | Use unbound precision big_ints throughout sail. | Alasdair Armstrong | |
| Alastair's test cases revealed that using regular ints causes issues throughout sail, where all kinds of things can internally overflow in edge cases. This either causes crashes (e.g. int_of_string fails for big ints) or bizarre inexplicable behaviour. This patch switches the sail AST to use big_int rather than int, and updates everything accordingly. This touches everything and there may be bugs where I mistranslated things, and also n = m will still typecheck with big_ints but fail at runtime (ocaml seems to have decided that static typing is unnecessary for equality...), as it needs to be changed to eq_big_int. I also got rid of the old unused ocaml backend while I was updating things, so as to not have to fix it. | |||
| 2017-07-21 | Everything moved to new typechecker | Alasdair Armstrong | |
| Modified initial_check.ml so it no longer requires type_internal. It's still needs cleaned up in a few ways. Most of the things it's trying to do could be done nicer if we took some time to re-factor it, and some of the things should just be handled by the main typechecker, leaving it as a think layer between the parse_ast and the ast. Now that's done everything can be switched to the new typechecker and the _new suffixes were deleted from everything except the monomorphisation pass because I don't know the status of that. | |||
| 2017-07-21 | Switch to new typechecker (almost) | Thomas Bauereiss | |
| Initial typecheck still uses previous typechecker | |||
| 2017-03-29 | Factor out pretty printers into separate files. Hopefully this will make ↵ | Robert Norton | |
| searching easier. | |||
| 2017-03-24 | Checkpoint work-in-progress mips sequential interpreter using ocaml shallow ↵ | Robert Norton | |
| embedding. | |||
| 2017-03-24 | changes to ocaml pp to allow mips->ocaml to compile | Robert Norton | |
| 2017-02-09 | group initial type environment into meaningful sections; pretty-print in ↵ | Peter Sewell | |
| user-readable way | |||
| 2017-02-09 | tweak pp of initial type environment and l2.ott comments | Peter Sewell | |
| 2017-02-05 | command-line option to dump initial type environment | Peter Sewell | |
| 2017-02-03 | fix headers | Peter Sewell | |
| 2017-01-31 | Kathy, Peter: pp of initial type environment | Peter Sewell | |
| 2017-01-14 | update pretty printing to actually reflect lem ast changes | Kathy Gray | |
| 2016-12-12 | pp fix | Christopher Pulte | |
| 2016-12-12 | cheri sail export progress | Christopher Pulte | |
| 2016-12-09 | sail changes for making lem embedding Isabelle-friendlier | Christopher Pulte | |
| 2016-12-01 | move interpreter-specific types from Sail_impl_base to Interp_interface | Christopher Pulte | |
| 2016-11-30 | shallow embedding fix, rename 'copy' to 'reset_vector_start', don't print ↵ | Christopher Pulte | |
| shallow/deep ast conversion type class instances anymore, add herdtools ast / shallow ast conversion functions, add mips ImplementationDefinedStopFetching instruction | |||
| 2016-11-28 | make sail produce prompt and state version of shallow embedding files at the ↵ | Christopher Pulte | |
| same time with the types both have in common factored out into separate file, rename one mips shallow embedding _extras file as required by this | |||
| 2016-11-23 | Make type checker not run to fix point on resolving case-split type ↵ | Kathy Gray | |
| variables; modern implementation of nexp unification seems not to need it | |||
| 2016-11-23 | Add new type checking file. Small changes to type inference, temporary ↵ | Kathy Gray | |
| change to printing | |||
| 2016-11-14 | add option -lem_sequential for producing shallow embedding that refers to ↵ | Christopher Pulte | |
| state monad, library fixes | |||
| 2016-11-08 | fixes | Christopher Pulte | |
| 2016-11-07 | factor out regfp analysis types into etc/regfp.sail | Christopher Pulte | |
| 2016-11-05 | fixes | Christopher Pulte | |
| 2016-10-28 | shallow embedding progress | Christopher Pulte | |
| 2016-10-27 | more shallow embedding fixes | Christopher Pulte | |
| 2016-10-26 | shallow embedding fixes | Christopher Pulte | |
| 2016-10-24 | fixes, check in Shaked's sail_impl_base changes | Christopher Pulte | |
| 2016-10-21 | shallow embedding progress | Christopher Pulte | |
| 2016-10-20 | fix previous FromToInterpValue typeclass issue, factor out intpreter's ↵ | Christopher Pulte | |
| interp_value_to_instr_external | |||
| 2016-10-19 | typeclass instances for converting between shallow and deep embedding | Christopher Pulte | |
| 2016-10-13 | make sail-to-lem rewriting passes use dependency analysis, make dependency ↵ | Christopher Pulte | |
| analysis include type information, small pp fix | |||
| 2016-10-11 | move armv8_extras and power_extras to idl/power and idlarm, fixes | Christopher Pulte | |
| 2016-10-10 | changed the way registers/register fields work, fixes, nicer names for new ↵ | Christopher Pulte | |
| letbound variables | |||
| 2016-10-06 | move type definitions that both interpreter and shallow embedding use to ↵ | Christopher Pulte | |
| sail_impl_base, add sail_impl_base.outcome, add interp_inter_imp auxiliary functions, make prompt use sail_impl_base.outcome | |||
| 2016-09-26 | minor changes | Christopher Pulte | |
| 2016-09-26 | nicer lem output: fewer unnecessary letbinds, monad binds and returns | Christopher Pulte | |
| 2016-09-25 | nicer lem output: no more unecessary 'unit' returns if if-expressions, ↵ | Christopher Pulte | |
| for-loops or case-expressions also return updated variables | |||
| 2016-09-24 | nicer lem output: fewer unecessary 'return's | Christopher Pulte | |
| 2016-09-23 | sail-to-lem progress | Christopher Pulte | |
| 2016-09-21 | fixes | Christopher Pulte | |
| 2016-09-19 | sail-to-lem progress | Christopher Pulte | |
| 2016-09-16 | make vector concatenation pattern removal deal with vector patterns of ↵ | Christopher Pulte | |
| unknown length (in the last item) | |||
| 2016-09-09 | update instruction_analysis to support nias and instruction kind | Christopher Pulte | |
| 2016-09-07 | push some lem pp changes | Christopher Pulte | |
| 2016-08-17 | Fix pattern match bug in interp where vector accesses were using the wrong ↵ | Kathy Gray | |
| start index | |||
| 2016-08-14 | Start adding form for (a,b,c) := foo() | Kathy Gray | |
| Not working yet | |||
| 2016-07-25 | auto coerce to bit vector from bit | Kathy Gray | |
| pretty print lret effects into lem | |||
