diff options
| author | Robert Norton | 2016-09-14 15:33:23 +0100 |
|---|---|---|
| committer | Robert Norton | 2016-09-14 15:33:51 +0100 |
| commit | d5ecaf31c0dfd006776b6f3e5637f0e516bf3422 (patch) | |
| tree | 9beefdc93e4613feaa8dc2a80cacd1f58cf78ca6 /mips/mips_wrappers.sail | |
| parent | c0599e6ea1fc97a8254040a82a9455b3adc46720 (diff) | |
Switch mips/cheri over to using memory ea/val for writes. Tag is now first byte of value for capability writes. Still need TAGw for now but should kill eventually.
Diffstat (limited to 'mips/mips_wrappers.sail')
| -rw-r--r-- | mips/mips_wrappers.sail | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/mips/mips_wrappers.sail b/mips/mips_wrappers.sail index cda96b2c..a620f5f3 100644 --- a/mips/mips_wrappers.sail +++ b/mips/mips_wrappers.sail @@ -40,12 +40,16 @@ function unit effect {wmem} MEMw_wrapper(addr, size, data) = { UART_WDATA := data[31..24]; UART_WRITTEN := 1; + } else { + MEMea(addr, size); + MEMval(addr, size, data); } - else - MEMw(addr, size, data) function bool effect {wmem} MEMw_conditional_wrapper(addr, size, data) = - MEMw_conditional(addr, size, data) + { + MEMea_conditional(addr, size); + MEMval_conditional(addr, size, data) + } function bit[64] addrWrapper((bit[64]) addr, (MemAccessType) accessType, (WordType) width) = addr |
