summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-08-07Merged in acjf3/sail/sail_new_tc (pull request #2)Anthony Fox
Initial commit of x86 model (ported from L3).
2017-08-07Initial commit of x86 model (ported from L3).Anthony Fox
2017-08-02Fix run_tests.sh so it cleans up generated ml files when testing ocaml backendAlasdair Armstrong
2017-08-02Improve pretty-printing of register declaration and assignmentThomas Bauereiss
2017-08-02Tune vector_subrangeThomas Bauereiss
2017-08-02Add debugging option to dump AST after rewriting stepsThomas Bauereiss
2017-08-01Add missing lexp case to Ocaml pretty-printerThomas Bauereiss
2017-08-01Added ocaml generation to run_tests.shAlasdair Armstrong
2017-08-01Fixed a bug where type_synonyms were not being expanded properly when ↵Alasdair Armstrong
considering possible casts
2017-08-01Fixed a bug where as patterns weren't binding their variable correctlyAlasdair Armstrong
2017-08-01Added more patterns to ast_util and improved type checking of patternsAlasdair Armstrong
2017-08-01Remove some hardcoded calls to obsolete Lem library functionsThomas Bauereiss
2017-08-01Fix some effect propagation bugs in rewriterThomas Bauereiss
2017-07-28Add true and false to n_constraint language. Also small tweaks for ASL ↵Alasdair Armstrong
generation.
2017-07-27Rewrite guarded patterns for Lem backendThomas Bauereiss
2017-07-27Add cons patterns to pretty-printersThomas Bauereiss
2017-07-27Merge branch 'sail_new_tc' of https://bitbucket.org/Peter_Sewell/sail into ↵Alasdair Armstrong
sail_new_tc
2017-07-27Merge branch 'master' into sail_new_tcAlasdair Armstrong
2017-07-27Some more test casesAlasdair Armstrong
2017-07-27Parameterise convert_ast by the bitvector orderAlasdair Armstrong
2017-07-27Fixed a bug where sail would run out of file descriptors when passed a large ↵Alasdair Armstrong
number of files
2017-07-27P_cons in monomorphisationBrian Campbell
2017-07-27Fix up constructor handling in monomorphisationBrian Campbell
2017-07-27Mirror AST changeBrian Campbell
2017-07-27Add test cases for overlapping record field namesAlasdair Armstrong
2017-07-27Allow local mutable records, and fix bugs with overlapping record field names.Alasdair Armstrong
2017-07-27Fixed bug with pattern synonyms in Cons and List patternsAlasdair Armstrong
2017-07-27implement RV64I based on version 2.0 user spec.Robert Norton
2017-07-26Add right shift to lib/prelude.sail, and add case for E_exit in ↵Alasdair Armstrong
Ast_util.string_of_exp
2017-07-26Allow arbitrary identifiers in nexp expressionsAlasdair Armstrong
Fixed some bugs in the initial check that caused valid code to fail to parse Add a nid utility function that creates an id n-expression, similar to nvar, nconstant etc
2017-07-26mips_extras.lem: fix references to Interp.V_fooJon French
2017-07-26Interpreter doesn't build with new typechecker + changes from masterAlasdair Armstrong
Makes it so that the jenkins buildserver will only try to build sail and not the interpreter for sail_new_tc
2017-07-26Merge remote-tracking branch 'origin/master' into sail_new_tcAlasdair Armstrong
2017-07-26Merged in ojno/sail (pull request #1)Jonathan French
Footprint exhaustive evaluation fixes Approved-by: Jonathan French <me@jonathanfrench.net>
2017-07-26Improve rewriting of sizeof expressionsThomas Bauereiss
If some type-level variables in a sizeof expression in a function body cannot be directly extracted from the parameters of the function, add a new parameter for each unresolved parameter, and rewrite calls to the function accordingly
2017-07-26MergeThomas Bauereiss
2017-07-25Fixed bug where strings were not escaped correctly within stringAlasdair Armstrong
literals when pretty printing sail.
2017-07-25Add instantiation_of helper function to type_check.mli that returnsAlasdair Armstrong
the instantiated type variables in a function application
2017-07-25Improved l-expressionsAlasdair Armstrong
- Fixed a bug where some l-expressions which wrote registers wern't picking up register writes. - Can now write to registers with record types. e.g. ARM's ProcState record from ASL.
2017-07-25Add partial support for rewriting of sizeof expressionsThomas Bauereiss
Tries to extract values of nexps from the (type annotations of) parameters passed to the function. This seems to correspond to the behaviour of the previous typechecker.
2017-07-24interpreter: optionally print debugging tracesJon French
2017-07-24vector parts of interpreter now evaluate all arguments of expression before ↵Jon French
exiting due to one of them being unknown; fixes incorrect exhaustive analysis for footprints
2017-07-24move value type definitions to ott, and introduce new E_internal_value ast ↵Jon French
node for passing around encapsulated evaluated values; change Interp.to_exp to now just wrap values in this node
2017-07-24Added cons patterns to sailAlasdair Armstrong
See test/typecheck/pass/cons_pattern.sail for an example. Also cleaned up the propagating effects code by making some of the variable names less verbose
2017-07-24Separate monomorphisation from top-level type checkingBrian Campbell
2017-07-24Remove monomorphisation for old type checkerBrian Campbell
2017-07-24Tidy comments in monomorphisationBrian Campbell
2017-07-21remove -merge true from ott makefile -- lem at least doesn't build with itJon French
2017-07-21l2.ott: port across additions to base_effect from rmemJon French
2017-07-21l2.ott: factor ocaml 'l' type reference into ott definition of 'l'Jon French