From 05e8ec6d342a297d1d8f2d6a15807e751016e582 Mon Sep 17 00:00:00 2001 From: deepak0414 Date: Mon, 6 Jan 2025 11:30:20 -0800 Subject: [PATCH] src/mte_tag: tagged memory and tagged storage are idempotent (#14) Signed-off-by: Deepak Gupta --- src/mte_tag.adoc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/mte_tag.adoc b/src/mte_tag.adoc index 832f863..1baa213 100644 --- a/src/mte_tag.adoc +++ b/src/mte_tag.adoc @@ -270,7 +270,9 @@ splitted stores. `settag/setinvtag` can raise store page fault or access fault depending on how tag storage is oragnized. If implementation doesn't support misaligned accesses, `settag/setinvtag` instruction can raise misaligned exception if - calculated address for locating tag is unaligned. + calculated address for locating tag is unaligned. Tag storage memory must be + idempotent memory else `settag/setinvtag` raise store/AMO access-fault + exception. [[TAG_CHECKS]] === tag checks @@ -317,6 +319,8 @@ environment. If memory tagging is enabled for the current execution environment (see <>) and PTE.MTAG = 1, then the page is considered a tagged page and load / stores to such a page are subject to tag checks (see <>). +Underlying tagged page must be idempotent memory else tag look up for referenced +virtual memory will result in load access-fault exception. [NOTE] ====