(no commit message)
authorlkcl <lkcl@web>
Thu, 5 May 2022 11:44:18 +0000 (12:44 +0100)
committerIkiWiki <ikiwiki.info>
Thu, 5 May 2022 11:44:18 +0000 (12:44 +0100)
openpower/sv/cr_ops.mdwn

index 9bb7a31b1d847ea2c7c1171ce387a8d4127ee498..424a90885cee873a3c910a0a986c3861943a9a57 100644 (file)
@@ -38,8 +38,8 @@ this section.
 
 * Examples of v3.0B instructions to which this section does
   apply is
-  - `mfcr` (3 bit operands) and
-  - `crnor` and `cmpi` (5 bit operands).
+  - `mfcr` and `cmpi` (3 bit operands) and
+  - `crnor` and `crand` (5 bit operands).
 * Examples to which this section does **not** apply include
   `fadds.` and `subf.` which both produce arithmetic results
   (and a CR Field co-result).
@@ -185,8 +185,16 @@ elements thereafter:
     for i in VL-1 downto 0 # reverse gear
          CR[4+i].ge &= CR[5+i].ge
 
-# cmp and other compare operations
+# Unusual and quirky CR operations
+
+# cmp and other compare ops
 
 `cmp` and `cmpi` etc take GPRs as sources and create a CR Field as a result.
+
+    cmpli BF,L,RA,UI
+    cmpeqb BF,RA,RB
+
 With `ELWIDTH_SRC` applying to the source operands this is perfectly fine.
+As an aside it explains why `ELWIDTH` was picked to be used for alternative
+purposes (`SNZ`) rather than `ELWIDTH_SRC`.