Commit Graph

89 Commits

Author SHA1 Message Date
jon
356c7891ee New function for adding to the address unsafely.
Would used an increment size based on mantissa width, but this is not
available in the type class, so just use 1 byte.
This function is currently used for adding small increments to the PC,
so does not need support for larger offsets.
2020-08-21 15:31:31 +01:00
jon
abfcb20d03 Add function needed in MemCap instance. 2020-07-10 20:47:50 +01:00
jon
18f4ec4417 Handle mask case where we do not have an internal exponent (that is, the
length is perfectly represetnable).
2020-06-12 17:20:31 +01:00
jon
81f5025366 Make setOffset precise. 2020-06-03 11:09:19 +01:00
Peter Rugg
88bcd6b487 Implement getHardPerms on CapMem 2020-06-02 10:20:44 +01:00
Peter Rugg
c69acb812d Remove stray implementations 2020-05-13 12:01:44 +01:00
Peter Rugg
bc7b518aaf Revert "Revert "Provide combined set bound function"" 2020-05-12 20:10:09 +01:00
Peter Rugg
f594e13cbe Merge branch 'master' into Toooba 2020-05-12 20:08:38 +01:00
Peter Rugg
3bb13f1c87 Implement get/setFlags on CapMem 2020-05-11 14:08:04 +01:00
Peter Rugg
dd24b7672b Cleanup of unsupported functions and corresponding error messages 2020-05-07 16:33:08 +01:00
Peter Rugg
9fb30e0b6f Remove get/setType functions to prevent sealed/sealed_with_type confusion 2020-05-01 20:04:52 +01:00
jon
b44b77050f Changes needed to support CapMem used in Toooba in PC paths. 2020-04-27 15:54:36 +01:00
Peter Rugg
a5f3c776c7 Workaround for default typeclass function definitions 2020-04-23 15:44:25 +01:00
Peter Rugg
d24104fa3e Revert "Provide combined set bound function"
This reverts commit 80ba19db9f.
2020-04-23 10:35:14 +01:00
Simon Moore
490a10f18c Simplify the definition of macro W() so that the Connectal dependancy checker can handle it. 2020-04-21 23:40:29 +01:00
Peter Rugg
80ba19db9f Provide combined set bound function 2020-04-16 17:35:02 +01:00
Peter Rugg
4b08d61aa2 Fix hardcoded 64 2020-04-02 15:17:24 +01:00
Peter Rugg
5c138fe263 Fix overly strict derivability check 2020-04-01 12:46:55 +01:00
Peter Rugg
8fbf0377f9 Fix swapped derivability checks 2020-03-31 17:53:52 +01:00
Jonathan Woodruff
486d7b31eb Merge branch 'master' of https://github.com/CTSRD-CHERI/cheri-cap-lib 2020-03-31 15:42:33 +01:00
Jonathan Woodruff
cbd0b2f7f5 Add a couple of casts for functions that return capabilities.
This is necessary for passing the register file read functions into modules that want to read the Pipe format rather than the Reg format.
2020-03-31 15:41:19 +01:00
Peter Rugg
c51cd15a5d Fix derivability check 2020-03-30 03:40:28 +01:00
Peter Rugg
910c2154f1 Add isDerivable function for CBuildCap 2020-03-26 14:25:59 +00:00
Peter Rugg
410a27c4a4 Merge branch 'timing' 2020-03-09 17:03:41 +00:00
Jonathan Woodruff
6267c2bb2e Calculate "exact" more efficiently. 2020-03-06 17:57:33 +00:00
Jonathan Woodruff
7a50514e7e Comment GetTop a bit better, and also comment out unnecessary logic. 2020-03-05 18:28:45 +00:00
Jonathan Woodruff
22434499e5 Fixes for CRAM and SetAddress.
The SetAddress issue and fix were found and verified (respectively) to some degree by TestRIG.
2020-03-05 11:50:07 +00:00
Peter Rugg
e958fb685e Remove default slow implementation of CRRL 2020-03-03 18:41:25 +00:00
Peter Rugg
6695c7428f Merge branch 'master' into timing 2020-03-03 18:31:45 +00:00
Jonathan Woodruff
ebac2cdf6d An apparently faster iteration of CSetBounds. 2020-03-02 16:10:33 +00:00
Jonathan Woodruff
42cdd2e3da Update to new SetBounds which is precise.
This one isn't quite fast enough on CHERI-MIPS, so good luck with that RISC-V!
2020-02-28 12:17:19 +00:00
Alexandre Joannou
c647939cb7 Merge pull request #2 from ivanmgribeiro/master
Update Blarney Wrapper generator to fix bug
2020-02-27 13:53:50 +00:00
Alexandre Joannou
ba95fc9a01 Typo "inOffset" -> "incOffset" 2020-02-27 13:52:07 +00:00
Peter Rugg
f5393fa31c Support setAddrUnsafe on CapRegs 2020-02-13 17:36:14 +00:00
Peter Rugg
1a8f20bad3 Cleanup maskAddr to use setCapPointer 2020-02-12 22:36:38 +00:00
PeterRugg
ce8e442ba6 Merge pull request #3 from jrtc27/overflow
Avoid shift amount overflow in maskAddr
2020-02-12 00:22:50 +00:00
James Clarke
5834111524 Avoid shift amount overflow in maskAddr 2020-02-11 22:46:07 +00:00
Jonathan Woodruff
8f111b64fe Add SetAddrUnsafe function to the typeclass to support proper bounds checking for PCC. 2020-02-06 11:01:36 +00:00
Peter Rugg
0d7b3bb49f Add utilities for CRRL and CRAM 2020-02-05 01:44:00 +00:00
Ivan Ribeiro
482afd3650 Update Blarney Wrapper generator to fix bug
Fixes a bug in the Blarney Wrapper generator where if a function input
had an underscore in its identifier, only the last word in the
identifier would be recognized.
2020-01-28 07:24:14 +00:00
Peter Rugg
774e883a26 Fix hardcoded assumption in maskAddr that MW was 8 from CAP64 2020-01-20 14:30:31 +00:00
Jonathan Woodruff
123fe712a9 Update contribution dates. 2020-01-15 11:43:42 +00:00
Jonathan Woodruff
a0ab504ea6 Remove contribution, as this file is new. 2020-01-15 11:42:37 +00:00
Jonathan Woodruff
8146a14026 Copy copyright attributions from source file. 2020-01-15 11:41:21 +00:00
Peter Rugg
80b6ee312e Fix address/addrBits out of sync bugs 2020-01-07 11:30:12 +00:00
Peter Rugg
796cf41c9b Fix off-by-one in max otype 2020-01-07 11:30:12 +00:00
Peter Rugg
c2200f47cc Make Cap FShow more concise 2019-12-10 16:36:53 +00:00
Alexandre Joannou
da397428b6 Update CHERICapWrap.bsv to reflect changes from previous commit 2019-12-09 14:39:40 +00:00
Peter Rugg
d987f2b035 Refactor to allow some operations on CapReg 2019-11-18 17:28:10 +00:00
Alexandre Joannou
5953acc8c1 Refresh readme 2019-10-22 11:30:37 +01:00