summaryrefslogtreecommitdiff
path: root/mips/run_embed.ml
AgeCommit message (Collapse)Author
2018-03-08Remove files in mips directory prior to copying in files from mips_new_tc. ↵Robert Norton
Hopefully thiis will help git to spot the rename and hence preserve history.
2017-10-31cheri: throw an exception if there is an attempt to access C26/IDC in the ↵Robert Norton
delay slot of a ccall selector 1 call.
2017-10-24fix default cap value on cheri128 following previous changes -- E stored in ↵Robert Norton
registers is no longer xored with 48 so need to initialise it. Also use E and T values used by CHERI hw and adjust decoding functions appropriately. Fix shift functions for ocaml shallow embedding which failed to handle shifts greater than vector length.
2017-05-24Change types of MEMr_tag, MEMval_tag and co. so that tag is separate from ↵Robert Norton
data and invent rmemt and wmvt effects for them. Extend the interpreter context to include lists of tagged memory read and write functions. The memory model must round down the address to the nearest capability aligned address when reading/writing tags. Remove TAGw which is no longer needed as a result.
2017-04-27fix cheri128 model referring to wrong registers and not capreg printing.Robert Norton
2017-04-27need brackets around try ... with expression.Robert Norton
2017-04-27add command line argument for setting undef values to all zero or all one. ↵Robert Norton
Some tests intentionally produce undefined values (e.g. divide by zero) and this might be required for them to work.
2017-04-25extend the try around call to select to avoid gprof crashing with EINTR.Robert Norton
2017-04-25replace memory representation with map of 1MB pages rather than map of ↵Robert Norton
bytes. This makes loading binaries much quicker but doesn't seem to make a big difference to execution speed.
2017-04-25Don't die if stdin gets closed (e.g. when running unit tests).Robert Norton
2017-04-25support loading more than one raw file as anonymous arguments so that we can ↵Robert Norton
load simboot + kernel.
2017-04-25Add support for uart terminal. Also add read_bit_reg function for faster and ↵Robert Norton
neater access to registers of single bit.
2017-04-21it turns out zarith has a function for printing big_ints in hex. Remove the ↵Robert Norton
dependency on ocaml uint library by using it.
2017-04-21define some big_int literals in sail_values.ml to avoid lots of calls to ↵Robert Norton
bit_int_of_int. Likely very little performance benefit but slightly more readable.
2017-04-20add support for cheri128 ocaml shallow embeddingRobert Norton
2017-04-20build a single run_embed.native with mips and cheri models linked and choose ↵Robert Norton
between them using a command line switch.
2017-04-20remove unsed code for elf file loading in run_embed.Robert Norton
2017-04-18remove debug print.Robert Norton
2017-04-07read from uninitialsed memory returns undef (required to pass ↵Robert Norton
test_raw_cache_write_to_use test
2017-04-06add support for address translation and exit handling in mips ocaml shallow ↵Robert Norton
embedding test setup.
2017-04-06Model now assumes memory is little endian so adjust extras file accordingly.Robert Norton
2017-04-06Print registers in test suite compatible way.Robert Norton
2017-03-24Checkpoint work-in-progress mips sequential interpreter using ocaml shallow ↵Robert Norton
embedding.