Skip to content

Commit 4b839b9

Browse files
Merge pull request #62 from axel-h/patch-axel-3
Section with Special Capabilities
2 parents bb7399c + 7dcd11b commit 4b839b9

File tree

1 file changed

+18
-11
lines changed

1 file changed

+18
-11
lines changed

src/cap-description.adoc

+18-11
Original file line numberDiff line numberDiff line change
@@ -425,23 +425,21 @@ if ( (E < (CAP_MAX_E - 1)) & (t[XLENMAX: XLENMAX - 1] - b[XLENMAX - 1] > 1) )
425425
That is, invert the most significant bit of _t_ if the decoded length of the
426426
capability is larger than E.
427427

428-
[#section_null_inf_cap]
429-
=== NULL and Infinite Capabilities
428+
[#section_special_caps]
429+
=== Special Capabilities
430+
431+
[#section_null_cap]
432+
==== NULL Capability
430433

431434
ifdef::cheri_v9_annotations[]
432435
NOTE: *CHERI v9 Note:* Encoding <<null-cap>> as zeros removes the need for
433436
the difference between in-memory and architectural format.
434437
endif::[]
435438

436-
The <<null-cap>> capability is represented with 0 in all fields. This implies
437-
that <<null-cap>> has no permissions and its exponent E is CAP_MAX_E e.g. 52
438-
when XLENMAX=64, so its bounds cover the entire address space such that the
439-
expanded base is 0 and top is 2^XLENMAX^. In contrast, the <<infinite-cap>>
440-
capability grants all permissions while its bounds also cover the whole address
441-
space.
442-
443-
NOTE: The <<infinite-cap>> capability is also known as 'default', 'almighty',
444-
or 'root' capability.
439+
The <<null-cap>> capability is represented with 0 in all fields. This implies
440+
that it has no permissions and its exponent E is CAP_MAX_E (52 for XLENMAX=64,
441+
24 for XLENMAX=32), so its bounds cover the entire address space such that the
442+
expanded base is 0 and top is 2^XLENMAX^.
445443

446444
.Field values of the NULL capability
447445
[#null-cap,reftext="NULL",options=header,align=center,width="55%",cols="1,1,3"]
@@ -460,6 +458,15 @@ or 'root' capability.
460458
| Reserved| zeros | All reserved fields
461459
|==============================================================================
462460

461+
[#section_infinite_cap]
462+
==== Infinite Capability
463+
464+
The <<infinite-cap>> capability grants all permissions while its bounds also
465+
cover the whole address space.
466+
467+
NOTE: The <<infinite-cap>> capability is also known as 'default', 'almighty',
468+
or 'root' capability.
469+
463470
.Field values of the Infinite capability
464471
[#infinite-cap,reftext="Infinite"]
465472
[options=header,width="100%",align=center,width="55%",cols="1,1,3"]

0 commit comments

Comments
 (0)