From 149733072a79b0fa016603119f5a3f32ab94f8f9 Mon Sep 17 00:00:00 2001 From: Peter Rugg Date: Fri, 13 May 2022 14:15:58 +0100 Subject: [PATCH] Don't unseal caps in setBounds I'm not sure why this was here, as setBounds on a sealed cap would previously cause a trap anyway. Maybe left over from when otype bits were shared with the bounds? --- CHERICC_Fat.bsv | 2 -- 1 file changed, 2 deletions(-) diff --git a/CHERICC_Fat.bsv b/CHERICC_Fat.bsv index f8b2c08..9a1ea67 100644 --- a/CHERICC_Fat.bsv +++ b/CHERICC_Fat.bsv @@ -378,8 +378,6 @@ function SetBoundsReturn#(CapFat, CapAddrW) setBoundsFat(CapFat cap, Address len // Do this without subtraction //fromInteger(valueof(TSub#(SizeOf#(Address),TSub#(MW,1)))) - zeros; Exp e = (resetExp-1) - zeros; - // Force otype to unsealed. - ret.otype = otype_unsealed; // Derive new base bits by extracting MW bits from the capability address // starting at the new exponent's position. CapAddrPlus2 base = {2'b0, cap.address};