Alexandre Joannou
3559966651
Simpify style in CapPipe CHERICap instance
2021-01-21 12:27:21 +00:00
Alexandre Joannou
064798aff7
Limit use of large (66-bit) addresses accross CHERICC_Fat (with pdr32 and jdw57)
2021-01-21 12:27:21 +00:00
Alexandre Joannou
e8868e7d79
Turn the address field in CapFat to a Bit#(CapAdressW) (with pdr32 and jdw57)
2021-01-20 16:19:46 +00:00
Alexandre Joannou
508da818ba
Use tmpAddr in place of pointer in incOffsetFat following Dapeng Gao's email
2021-01-18 16:06:17 +00:00
Alexandre Joannou
938261d465
Reflect changes to CHERICap.bsv into CHERICapWrap.bsv forgotten in some past commit
2020-12-08 15:19:57 +00:00
Alexandre Joannou
1b660d06bd
Fix partial type declaration warning
2020-11-18 09:32:32 +00:00
Peter Rugg
bc0fada841
Merge remote-tracking branch 'origin/Toooba' into HEAD
2020-09-07 15:57:51 +01:00
jon
a6f5ca93eb
Use the handy MW-derived type for a handy safe-if-inbounds increment
...
size limit.
2020-08-21 15:54:57 +01:00
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
Peter Rugg
a812edaffa
Prevent 'partial type info' warning
2020-07-23 11:20:07 +01:00
jon
c9156c6ea9
Add function needed in MemCap instance.
2020-07-23 11:20:07 +01:00
jon
abfcb20d03
Add function needed in MemCap instance.
2020-07-10 20:47:50 +01:00
Peter Rugg
298bf77b33
Reinstate crrl and cram helpers
2020-06-15 13:02:07 +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