summaryrefslogtreecommitdiff
path: root/src/lem_interp/interp_inter_imp.lem
AgeCommit message (Collapse)Author
2014-10-14Iron out bugs in running new executable with branching; add new executable ↵Kathy Gray
as well.
2014-10-10Functions for operating on bit and byte vectors from the interpreter interfaceKathy Gray
2014-10-08Support exporting single bit and bool values to external bitvectorsKathy Gray
2014-10-07Connect interpreter to representation of instructions.Kathy Gray
Warning: this changes a few of the constructor names in the instruction_extractor.lem interface
2014-10-07Track dependencies on size of memory accessKathy Gray
2014-10-07kathy,peter: making decode integration with ppcmem2 typecheckPeter Sewell
2014-10-07Merge and make real Peter's comment typeKathy Gray
2014-10-07Put in type for instruction form for models; remove extra information from ↵Kathy Gray
Bytevectors; add place holder for memory size dependency tracking
2014-10-03Add a decoding function to interp_interface and interp_inter_imp. (Note, ↵Kathy Gray
this is quite specific to Power's spec)
2014-09-04Make exhaust run from the first breakpoint in the interactive interpreterKathy Gray
(I still think this is a silly place to run exhaust from, but it no longer finds errors or crashes)
2014-08-21Improve printing of function calls in stepper modeKathy Gray
2014-08-21Allow command line interface to exhaustively evaluate the next step, ↵Kathy Gray
printing the events. Note: this commit switches back to a standard lem build located in ~/bitbucket/lem/lem
2014-08-20Add ability to track register dependencies in interactive stepper; thus ↵Kathy Gray
testing register tracking/tainting
2014-08-19make test_power_interactive working again; now using interp_interface ↵Kathy Gray
instead of internal actions
2014-08-18Handling many register reads, writes, and memory reads.Kathy Gray
There are problems that warrant discussion about handling special registers that hold records or data structures previously.
2014-08-18fix compile errorKathy Gray
2014-08-18Switch run_power to use interp_interface. Compilers and begins running, and ↵Kathy Gray
then hits an error. So still in progress Note: moved barrier kind changes to interp_interface, along with other memory kinds
2014-08-18wib?Peter Sewell
2014-08-18make interp_exhaustive not take an interp_mode argumentPeter Sewell
2014-08-14Small tweaks to interp_interface interfaceKathy Gray
Also adding more comments and getting the ml files built in the build process
2014-08-13Complete tainting phase 1Kathy Gray
Now when mode.track_values is true, on every register read, the returned value is tainted with the register it came from. This tracking is followed through every operation the interperter touches (except library functions, to be completed next). One a memory operation involving a tracked value, there is optionally list of registers that value arose from in the memory request (i.e. maybe (list reg_name)).
2014-08-11More taint tracking.Kathy Gray
Catch interp_inter_imp up with interp. WARNING: This commit triggers an exponential performance bug in Lem. To alleviate this bug, I am running with a locally modified Lem that has line 1321 of lem/src/typed_ast.ml commented out (On my laptop, I gave up trying to compile after about 900 seconds; beefier computers May be able to run unmodified, I don't know)
2014-06-30Support for nondeterministic blocksKathy Gray
2014-06-25Add support for memory barrierKathy Gray
2014-06-09Working towards evaluating with interp_exhaustiveKathy Gray
2014-05-28Support stepped interpreting, and use normalisation instead of eval_nexp in ↵Kathy Gray
constraints
2014-05-22A (hopefully) sufficient interface and implementation between memory and the ↵Kathy Gray
interpreter
2014-05-21More interface support; interp_inter_imp now compilingKathy Gray
2014-05-20Fix interp compiling bugKathy Gray
2014-05-20yet more interfaceKathy Gray
2014-05-20More interfaceKathy Gray
2014-05-14More interface update for connecting externally (interp_interface provides ↵Kathy Gray
functions for connecting the interpreter to a memory model) Also adding default values to index vectors for supporting sparse vectors/maps