From 93aae810e05f60cd118a287dd779b48d9ded6d58 Mon Sep 17 00:00:00 2001 From: lkcl Date: Mon, 30 May 2022 08:11:38 +0100 Subject: [PATCH] --- openpower/sv/svp64_quirks.mdwn | 3 +++ 1 file changed, 3 insertions(+) diff --git a/openpower/sv/svp64_quirks.mdwn b/openpower/sv/svp64_quirks.mdwn index cfecb876d..7c0221772 100644 --- a/openpower/sv/svp64_quirks.mdwn +++ b/openpower/sv/svp64_quirks.mdwn @@ -85,6 +85,9 @@ shall be no deviation from the corresponding Scalar instruction. This because of the tight integration with looping and the application of Boolean Logic manipulation needed for Parallel operations (predicate mask usage). +This results in an extremely important observation that `scalar identity +behaviour` is violated: the SV Prefixed variant of branch is **not** the same +operation as the unprefixed 32-bit scalar version. One key difference is that LR is only updated if certain additional conditions are met, whereas Scalar `bclrl` for example unconditionally -- 2.30.2