summaryrefslogtreecommitdiff
path: root/src/lem_interp/interp.lem
AgeCommit message (Collapse)Author
2015-01-20Fix sparse vector fupdate slicing, assigning values in the right order and ↵Kathy Gray
with the correct bit number
2015-01-16more for loop corrections, as well as pattern match errorKathy Gray
2015-01-15Fix for loop error causing premature stoppingKathy Gray
2014-12-18Bring interpreter upto date with current LemKathy Gray
2014-12-11Many fixes, primarily dealing with undefinedKathy Gray
Including: turn an undefined literal into a vector of undefined values of the correct length handle sparse vector unspecified default values as undefined literals allow global lets to call library functions
2014-12-10Fix mismatch errors in interpreter, mostly relating to taint/detaint behaviourKathy Gray
Also fixed for loop evaluation
2014-12-09Abstract tainting to almost always use taint, detaint, retaint, and ↵Kathy Gray
binary_taint functions instead of V_track directly. Annoyingly, Lem won't let one section of code use these functions, complaining of too much polymorphism. Also, might fix arithmetic
2014-11-24improve value to string for debuggingKathy Gray
2014-11-24wibKathy Gray
2014-11-24Missing patterns in pattern matchesKathy Gray
2014-11-24coerce single element bit vector to bit for conditionalsKathy Gray
2014-11-23slice Only when I should and not to erase an register writeKathy Gray
2014-11-23Slice generated vectors when appropriateKathy Gray
2014-11-23Treat undef like unknown when needing a vector assignment of themKathy Gray
2014-11-23make interpreter work better with unknowns, make interp_inter_imp do better ↵Kathy Gray
on coercions
2014-11-23Print out value when pattern match failsKathy Gray
2014-11-23make interpreter now buildsKathy Gray
and I *think* that I'm making vectors of unknowns in all the necessary places now.
2014-11-23in progressKathy Gray
2014-11-22Add size of register to register for making appropriate unknown register_valuesKathy Gray
2014-11-21Fix bugs now documented in ppcmem notesKathy Gray
2014-11-20abstract previousKathy Gray
2014-11-20Use better type information for register inspectionsKathy Gray
2014-11-20Handle constructors with zero parameters better.Kathy Gray
2014-11-20Set vector start for more register writesKathy Gray
2014-11-20set more vector starts before sending them off to register writesKathy Gray
2014-11-19Correct off-by-one bug in type checking vector slicesKathy Gray
Convert sparse vectors into full-fledged vectors more frequently and on export to memory system
2014-11-18Fix various pattern match bugs; add a few functionsKathy Gray
2014-11-17Make env_union intelligently join two environments instead of just list append.Kathy Gray
2014-11-16Add overflow checking arithmetic operations. Fix various bugs that this exposedKathy Gray
Of note: Interp_lib.to_num now takes an Unsigned or a Signed constructor, rather than a boolean
2014-11-13numbers got to big for show, write my own versionKathy Gray
2014-11-06Refactor printing to display the contents the [_] and to better format bit ↵Kathy Gray
vectors
2014-11-05Fix bug on decoding ScKathy Gray
2014-11-04Read parts of a register, not always just the whole thingKathy Gray
2014-11-04Fixes bugs:Kathy Gray
not setting starting bit of vector properly not treating properly if when given a non boolean --- bool largely removed in place of bit, removing many/most is_one casts but true and false are still possible values coerces between bit vectors of length one and bits again, because reading from a register can otherwise be wrong with respect to the interface
2014-11-04Fix setting of initial position in a vector after a sliceKathy Gray
2014-10-28taint tracking unknown in interpreterKathy Gray
2014-10-28hacks on taint trackingPeter Sewell
2014-10-28Add proper tag to constructors when storing continuationKathy Gray
2014-10-16bug fixes to run test from Christopher's testsKathy 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-07Put in type for instruction form for models; remove extra information from ↵Kathy Gray
Bytevectors; add place holder for memory size dependency tracking
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-26small changes for armKathy Gray
2014-08-21Improve printing of function calls in stepper modeKathy Gray
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-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-18tweak barrier kinds in interface (likely needs changes elsewhere)Peter Sewell
2014-08-13FInd/fix a redundant case now that warnings are manageableKathy Gray
2014-08-12taint tracking through most of interpreterKathy Gray
Need to add cases for tracking a taint past a conditional check where possible; and then to actually generate them from reading registers.
2014-08-12more taint tracking, yet againKathy Gray