From e7e6922c55405c30ecc80b429b0cbeac78a9922a Mon Sep 17 00:00:00 2001 From: Tariq Kurd Date: Mon, 9 Dec 2024 09:31:22 +0000 Subject: [PATCH] should data-trace record load data before or after ACPERM updates? (#463) @tomaird @jamie-melling --- src/insns/load_tag_perms.adoc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/insns/load_tag_perms.adoc b/src/insns/load_tag_perms.adoc index 4110b8c0..f34b595b 100644 --- a/src/insns/load_tag_perms.adoc +++ b/src/insns/load_tag_perms.adoc @@ -13,4 +13,6 @@ Similarly, sealed capabilities are not modified as they are not directly derefer NOTE: Missing <> also affects the level of sealed capabilities since notionally the <> of a capability is not a permission but rather a data flow label attached to the loaded value. However, untagged values are not affected by <>. -NOTE: While the implicit <> introduces a dependency on the loaded data, microarchitectures can avoid this by deferring the actual masking of permissions until the loaded capability is dereferenced or the metadata bits are inspected using <> or <>. +NOTE: While the implicit <> introduces a dependency on the loaded data, implementations can avoid this by deferring the actual masking of permissions until the loaded capability is dereferenced or the metadata bits are inspected using <> or <>. + +NOTE: When sending load data to a trace interface implementations can choose whether to trace the value before or after <> has modified the data. The recommendation is to trace the value after <>.