| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2014-06-05 | Enable single-stepping for test/power.sail | Gabriel Kerneis | |
| 2014-06-04 | Fixup type coercions and overloading | Kathy Gray | |
| Reduce the number of implicit coercions we're doing, expanding overloading and fixing up types of functions. Warning: test_power does not run as not all overloaded funcitons are implemented Warning: vector concatenation does not pretty print to sail source yet | |||
| 2014-06-02 | Fix dependent-type for MEM in power.sail | Gabriel Kerneis | |
| Now, constraint resolution works for test/power.sail | |||
| 2014-05-30 | Add pretty-printer test (idempotence) | Gabriel Kerneis | |
| Fails in most cases because of "fresh" variables in type annotations that cannot be parsed again. | |||
| 2014-05-30 | Remove bit-rotted, abonned test file | Gabriel Kerneis | |
| 2014-04-15 | Use type information in vector concatenation pattern matching in interpreter. | Kathy Gray | |
| Does not properly bind variables (i.e. in the pattern 0b01:(bit[3]) a: 0b0001 subsequent uses of a will not be bound in the interpreter, though they are in the type checker), so until bug is fixed, treat all such identifiers as _ | |||
| 2014-04-04 | Cosmetic improvements (statistics, --quiet) | Gabriel Kerneis | |
| 2014-04-04 | Improve Power execution | Gabriel Kerneis | |
| - Move FDE loop to the OCaml side of the Power model (avoid leaking memory due to lack of TCO in interpreter) - Display cycle count - Check the value of CIA at the end of each cycle and stop if it is equal to the initial value of LR, returning the value in GPR3. | |||
| 2014-04-03 | Power example now EXECUTES (almost) CORRECTLY! \o/ | Gabriel Kerneis | |
| Warning: we set the link register to the address of the first instruction, which means the program is effectively an infinite loop returning 42 forever. (Except it slows down and leaks memory, probably because the interpreter doesn't optimise the tail call in fde_loop.) 42, 42, 42, 42, 42, 42, 42, 42, ... | |||
| 2014-04-03 | Remove workarounds and update Power model | Gabriel Kerneis | |
| 2014-04-03 | Exhibit two bugs about bitwise operators and vector casts | Gabriel Kerneis | |
| 2014-04-02 | Solve more constraints; fix up test suite bugs uncovered by solving more ↵ | Kathy Gray | |
| constraints. Clean up Lem output a little for readability while debugging. | |||
| 2014-04-02 | Checking missing cast for register as value in testsuite | Gabriel Kerneis | |
| 2014-04-02 | Fix EXTS and signedness of to_num | Gabriel Kerneis | |
| 2014-04-02 | Update Power model | Gabriel Kerneis | |
| 2014-03-31 | Fix constraint bug with + | Kathy Gray | |
| 2014-03-31 | Extend constraint checking, and add casts for base of a vector shifts (i.e. ↵ | Kathy Gray | |
| from 0 to 32 etc, doesn't change order yet.). | |||
| 2014-03-31 | test/vectors.sail: failing constraint checking | Gabriel Kerneis | |
| Type error: Type constraint mismatch: constraint arising from here requires 0 to be greater than or equal to 32 | |||
| 2014-03-27 | Check simple constraints (i.e. ones using only constants). | Kathy Gray | |
| Changes syntax of tuple type from * to , so that nexps of the form 8 * 'n can be supported in the parser, which was apparently not true before. | |||
| 2014-03-23 | adding if test | Kathy Gray | |
| 2014-03-23 | Correctly unify types with default declarations and across if blocks for ↵ | Kathy Gray | |
| introduced variables. | |||
| 2014-03-20 | reset earlier commits to test3, that were supposed to be chosen instead of ↵ | Kathy Gray | |
| my changes in the conflict resolution but oops. | |||
| 2014-03-20 | small test changes | Kathy Gray | |
| 2014-03-20 | Add missing GPR registers for Power example | Gabriel Kerneis | |
| Second instruction now executes (but probably not correctly, check arithmetic since we ignore exts). Next step is to implement bitwise_or. | |||
| 2014-03-20 | Remove work-around from interpreter, move it to power.sail | Gabriel Kerneis | |
| Two bugs are worked-around here: - missing cast to nat when a vector is wrapped in exts (exts is a no-op currently anyway, so we are discarding it) - missing cast (due to limited type-inference) in one if branch: type given explicitly. | |||
| 2014-03-20 | More tests for implicit casts | Gabriel Kerneis | |
| The last test added in vectors.sail fails. | |||
| 2014-03-19 | Fetch-decode-execute & init for power | Gabriel Kerneis | |
| 2014-03-19 | Fix bug when reading register through a cast | Kathy Gray | |
| 2014-03-17 | More coercions | Kathy Gray | |
| 2014-03-14 | Support regbits read and write | Gabriel Kerneis | |
| No support for non-contiguous writes. | |||
| 2014-03-13 | Make test_power compiling again | Gabriel Kerneis | |
| 2014-03-12 | Correctly type checking and interpreting accesses of register "fields". ↵ | Kathy Gray | |
| Register-reading action isn't reading the subreg correctly still (seems to be making up a value though). Corrects but to vectors.sail and power.sail use of plus. (A new bug in power.sail is exposed using a binary operator with one value) | |||
| 2014-03-11 | Change treatment of type abbreviations so that name and full type are ↵ | Kathy Gray | |
| available for field lookups of registers; this feature still not fully working. | |||
| 2014-03-11 | Exhibit bug in interpreter in vector test | Gabriel Kerneis | |
| 2014-03-11 | More work on interpreter and Power model | Gabriel Kerneis | |
| 2014-03-11 | Increase support for register "field" accesses; there is now a bug in how ↵ | Kathy Gray | |
| run_interp handles SubReg register forms. | |||
| 2014-03-07 | Treat registers as values when not being actively read or written to, so ↵ | Kathy Gray | |
| that we can have a vector of registers for example. Also, register types can be explicitly referenced. | |||
| 2014-03-04 | Minimal power model to run hello world | Gabriel Kerneis | |
| Crashes because register initialization is missing. | |||
| 2014-03-03 | new test file | Kathy Gray | |
| 2014-03-03 | Fixing assorted bugs. Adding ability to put a type on the identifier being ↵ | Kathy Gray | |
| assigned to in assignments. | |||
| 2014-03-01 | Fix printing bug on vector slicing that caused only one element to ever be ↵ | Kathy Gray | |
| sliced | |||
| 2014-02-28 | Fix endianness | Gabriel Kerneis | |
| In fact, increasing order is big-endian, not little-endian. This is good news for us, because it means we do not need any switch for the POWER spec. | |||
| 2014-02-28 | Fetch-decode POWER interpreter | Gabriel Kerneis | |
| Many limitations and bugs currently, but loads binary and decodes opcodes correctly (using endianness hacks). Disabled in the default test suite (but still compiled), run "make test_power" to try it. | |||
| 2014-02-28 | Load ELF sections to virtual memory addresses | Gabriel Kerneis | |
| Roughly 110KB/s (~5 seconds to load "hello" test). | |||
| 2014-02-28 | Correct bug in parsing and handling a['a:'b] types | Kathy Gray | |
| 2014-02-27 | Load POWER binary into interpreter's memory | Gabriel Kerneis | |
| 2014-02-27 | Merge branch 'interp_typed' | Kathy Gray | |
| Conflicts: src/lem_interp/interp.lem src/lem_interp/run_interp.ml | |||
| 2014-02-26 | Get interpreter working using types, no added functionality yet | Kathy Gray | |
| 2014-02-25 | Sensible types for POWER registers | Gabriel Kerneis | |
| 2014-02-18 | Remove spurious add infix | Gabriel Kerneis | |
