(no commit message)
authorlkcl <lkcl@web>
Tue, 7 Sep 2021 14:47:35 +0000 (15:47 +0100)
committerIkiWiki <ikiwiki.info>
Tue, 7 Sep 2021 14:47:35 +0000 (15:47 +0100)
openpower/sv/cr_ops.mdwn

index f6e48d89a6bb2a657caf1f7237186a966e6b431a..081156352e201b41559cf5167938f445be95fea0 100644 (file)
@@ -1,19 +1,17 @@
-# Data-dependent fail-first on CR operations
+# Condition Register SVP64 Operations
 
-Data-dependent SVP64 Vectorised Operations involving the creation or
-modification of a CR require an extra two bits, which are not available
-in the compact space of the `MODE` Field. With the concept of element
-width overrides being meaningless for CR Fields it is possible to use the
-`ELWIDTH` field for extra fields.
+Condition Register Fields are only 4 bits wide: this presents some
+interesting conceptual challenges for SVP64, with respect to element
+width (which is clearly meaningless).
 
-Condition Register based operations such as `mfcr` and `crand` can thus
-be made more flexible.  However the rules that apply in this section
-also apply to future CR-based instructions.  Note that these rules and
+
+Note that these rules and
 the alternative mapping **only** applies to instructions that **only**
 reference a CR Field or CR bit as the sole exclusive result. This section
 **does not** apply to instructions which primarily produce arithmetic
 results that also produce a CR Field (such as when Rc=1).
 
+
 SVP64 RM `MODE` (includes `ELWIDTH` bits) for CR-based operations:
 
 | 4 | 5 | 19-20 |  21 | 22   23 |  description     |
@@ -30,6 +28,19 @@ SVP64 RM `MODE` (includes `ELWIDTH` bits) for CR-based operations:
 
 Fields:
 
+
+# Data-dependent fail-first and Pred-result on CR operations
+
+Data-dependent SVP64 Vectorised Operations involving the creation or
+modification of a CR require an extra two bits, which are not available
+in the compact space of the `MODE` Field. With the concept of element
+width overrides being meaningless for CR Fields it is possible to use the
+`ELWIDTH` field for extra fields.
+
+Condition Register based operations such as `mfcr` and `crand` can thus
+be made more flexible.  However the rules that apply in this section
+also apply to future CR-based instructions.
+
 There are two primary different types of CR operations:
 
 * Those which have a 3-bit operand field (referring to a CR Field)