Skip to content

Commit

Permalink
improved xrefs
Browse files Browse the repository at this point in the history
  • Loading branch information
tariqkurd-repo committed Feb 5, 2025
1 parent 055cc30 commit af587a1
Show file tree
Hide file tree
Showing 4 changed files with 5 additions and 5 deletions.
2 changes: 1 addition & 1 deletion src/cap-description.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -573,7 +573,7 @@ CHERI enforces the following invariants for all valid (i.e., tagged) capabilitie
. The bounds are not malformed.
. No reserved bit in the capability encoding is set.
. The permissions can be legally produced by <<ACPERM>>.
. The <<section_cap_malformed_top_gt_inf_top,top bound>> must be no greater than 2^XLEN^.
. The <<section_cap_malformed_top_gt_inf_top,top bound must be no greater than 2^XLEN^>>.

A tagged capability that violates those invariants (i.e., a tagged but malformed capability or a tagged
capability with any reserved bit set) can only possibly be caused by
Expand Down
4 changes: 2 additions & 2 deletions src/insns/cbld_32bit.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,13 @@ Description::
Copy `cs2` to `cd` and set `cd.tag` to 1 if

. `cs1.tag` is set, and
. `cs1` 's bounds are not <<section_cap_malformed,malformed>>, and all reserved fields are zero, and the <<section_cap_malformed_top_gt_inf_top,top bound>> is in range, and
. `cs1` 's bounds are not <<section_cap_malformed,malformed>>, and all reserved fields are zero, and the <<section_cap_malformed_top_gt_inf_top,top bound is not out of range>>, and
. `cs1` 's permissions could have been legally produced by <<ACPERM>>, and
. `cs1` is not sealed, and
. `cs2` 's permissions and bounds are equal to or a subset of `cs1` 's, and
. `cs2` 's <<section_cap_level>> is equal to or lower than `cs1` 's, and
.. _This is only relevant if {cheri_levels_ext_name} is implemented._
. `cs2` 's bounds are not <<section_cap_malformed,malformed>>, and all reserved fields are zero, and the <<section_cap_malformed_top_gt_inf_top,top bound>> is in range, and
. `cs2` 's bounds are not <<section_cap_malformed,malformed>>, and all reserved fields are zero, and the <<section_cap_malformed_top_gt_inf_top,top bound is not out of range>>, and
. `cs2` 's permissions could have been legally produced by <<ACPERM>>, and
. All reserved bits in `cs2` 's metadata are 0;
Expand Down
2 changes: 1 addition & 1 deletion src/insns/malformed_clear_tag.adoc
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
NOTE: This instruction sets `cd.tag=0` if `cs1` 's bounds are <<section_cap_malformed,malformed>>,
the <<section_cap_malformed_top_gt_inf_top,top bound>> is out of range,
the <<section_cap_malformed_top_gt_inf_top,top bound is out of range>>,
or if any of the reserved fields are set.
2 changes: 1 addition & 1 deletion src/insns/scss_32bit.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ Description::
. `cs2` 's <<section_cap_level>> is equal to or lower than `cs1` 's
.. _This is only relevant if {cheri_levels_ext_name} is implemented._
. neither `cs1` or `cs2` have bounds which are <<section_cap_malformed,malformed>>, and
. neither `cs1` or `cs2` have the <<section_cap_malformed_top_gt_inf_top,top bound>> out of range, and
. neither `cs1` or `cs2` have the <<section_cap_malformed_top_gt_inf_top,top bound out of range>>, and
. neither `cs1` or `cs2` have any bits set in reserved fields, and
. neither `cs1` or `cs2` have permissions that could not have been legally produced by <<ACPERM>>
Expand Down

0 comments on commit af587a1

Please sign in to comment.