summaryrefslogtreecommitdiff
path: root/src/test
AgeCommit message (Collapse)Author
2014-02-18Report failing tests and return 1 in case of errorGabriel Kerneis
2014-02-15Full type checker. No constraint checking in place.Kathy Gray
2014-02-14Attempt multi-byte memory read and writeGabriel Kerneis
Test seems to fail for some reason, probably endianess and off-by-one bugs all over the place. Needs debugging code to monitor memory updates and display bitvectors in a compact way.
2014-02-14Write slice to memoryGabriel Kerneis
I'm not sure whether this is useful at all. It is currently a bit broken when subrange is not in the "correct" order. Presumably the typechecker should catch this? I'm not quite sure what the intended semantics should be. Probably the same bug occurs with register slices too.
2014-02-14Fix infinite loop bug, and test1.sail type checking bugKathy Gray
2014-02-14Infinite loop in interpreter for register slice writeGabriel Kerneis
I believe the issue is on the Lem side, but I might be doing something wrong on the OCaml side too.
2014-02-14Register slice writeGabriel Kerneis
2014-02-13Disable line which does not typecheck in test1Gabriel Kerneis
We need to fix that one, but I don't know if the bug is in test1 or in the type checker.
2014-02-13Add definition of ignore to make tests executableGabriel Kerneis
2014-02-12More library functions for interpreterGabriel Kerneis
There is now enough stuff to decode and execute a very basic Branch instruction (encoding everything as little-endian rather than big- endian among many other work-arounds).
2014-02-12Fix endianess issuesGabriel Kerneis
2014-02-12Checking assignment to a variableKathy Gray
2014-02-12Remove spurious declarationGabriel Kerneis
2014-02-12Fix type errors in power.sailGabriel Kerneis
2014-02-07type checking switch/case expressionsKathy Gray
2014-02-07Implement is_oneGabriel Kerneis
2014-02-07Correct variable-name bug that was throwing away type checking coercions and ↵Kathy Gray
type annotations
2014-02-07more checkingKathy Gray
2014-02-07Use bit->bool coercion for power.sailGabriel Kerneis
2014-02-05Replace symbolic link by actual fileGabriel Kerneis
2014-02-05Test scattered typedef cross-referenceGabriel Kerneis
2014-02-05Fix type id parsing error ans associated type checking bugs in scatteredsKathy Gray
2014-02-05Typechecking lets, concrete vectors, and function calls (minus effects)Kathy Gray
2014-02-05First bit of Power specGabriel Kerneis
Only chapter about branches (except system calls because of sail typechecking issue). Decoding seems to work. Execution typechecks currently, but is pretty surely broken otherwise.
2014-02-05Adding failing typechecking testGabriel Kerneis
File "test/test1.sail", line 27, character 22 to line 27, character 26 Type error: Type mismatch :(6() * ) , bit
2014-01-31More type checking and conversionsKathy Gray
(Temporarily turning off unbound identifier checks, until all variable-introducing forms are checked)
2014-01-17Type check through type definitions and val specifications, building ↵Kathy Gray
definition environment. Skipping function definition, let bind, and expression checking for this commit (to come).
2014-01-15Test indexed matchGabriel Kerneis
2014-01-14Fix vector concat pattern matchingGabriel Kerneis
The concatenation list was reversed.
2014-01-09Fixed a single-argument tuple bug on function callsKathy Gray
2014-01-09Fixed bug in resuming after an action (which was manifesting as an apparent ↵Kathy Gray
pattern match bug, which was actually working fine).
2014-01-08More tests for various vector patterns bugsGabriel Kerneis
2014-01-08Between Scylla and CharybdisGabriel Kerneis
2014-01-08Fix pretty-printing of switch-casesGabriel Kerneis
Weird bug, cf. test/pattern.sail.
2014-01-07Add first operationnal tests for vectorsGabriel Kerneis
2014-01-07bug: unbound let-defined (and local?) variablesGabriel Kerneis
In test/test1.sail, trying to resolve variable v1 in main yields: test1: error: unbound identifier
2014-01-07Add bit and bitvector literal testGabriel Kerneis
2013-12-16minor wip on tiny modelGabriel Kerneis
2013-12-13Fix effect annotation pretty-printingGabriel Kerneis
There is also a bug for parsing effect annotations (in fundecl). But for some reason, my fix for the parser does not work: test/test2.sail still refuses to parse (chokes on "effect pure"), even with "Effect" added to parser.mly.
2013-12-03Syntax changes per discussion with Peter, as well as L2.ott document clean up.Kathy Gray
Could not at this time return lists to [| |] from [|| ||] as the parser cannot distinguish a cast with enum’s syntactic sugar from the start of a parenthesised list (i.e. ( [|3|] ) And there are still conflicts with moving enums to [3], so those changes can’t be pushed in with current parser technology.
2013-11-29minor syntax fixupsKathy Gray
2013-11-28Updated syntax with working examplesKathy Gray
2013-11-27More front-end passes for type identifiersKathy Gray
2013-11-21Begin tiny conversionGabriel Kerneis
2013-11-20Remove workaround in test3Gabriel Kerneis
2013-11-12Define and test addition in libraryGabriel Kerneis
Notice the need for double parentheses in test/test3.sail, because the interpreter does not perform curryfication automatically (only the first parameter in kept with List_extra.head): add ((1, 3)) (* works *) add (1, 3) (* fails, equivalent to: add (1) *) Fortunately enough, infix functions work correctly by default. A dirty quickfix would be easy, but I'm not sure at which level this should be addressed properly (interpreter? typing? etc.).
2013-11-05De-infix operator before looking it up in the interpreterGabriel Kerneis
2013-11-05Parsing of infix operatorsGabriel Kerneis
The interpreter is broken for infix calls (fails to find the relevant function, either internal or external).
2013-11-05Support parsing for extern callsGabriel Kerneis
2013-10-16Basic MEM and register implementation for interpreterGabriel Kerneis
This is extremely naive, and does not support slices.