(no commit message)
authorlkcl <lkcl@web>
Sun, 21 Aug 2022 20:54:45 +0000 (21:54 +0100)
committerIkiWiki <ikiwiki.info>
Sun, 21 Aug 2022 20:54:45 +0000 (21:54 +0100)
openpower/sv/cr_ops.mdwn

index 74b02f86343a21fef430b5356b7d8e9d3391087d..9e046046343eb2ceef0fec082c9a51891b22c852 100644 (file)
@@ -17,7 +17,14 @@ Condition Register Fields are only 4 bits wide: this presents some
 interesting conceptual challenges for SVP64, which was designed
 primarily for vectors of arithmetic and logical operations. However
 if predicates may be bits of CR Fields it makes sense to extend
-Simple-V to cover CR Operations.
+Simple-V to cover CR Operations, especially given that Vectorised Rc=1
+may be processed by Vectorised CR Operations tbat usefully in turn
+may become Predicate Masks to yet more Vector operations, like so:
+
+    sv.cmpi/ew=8 *BA,*ra,0      # compare bytes against zero
+    sv.cmpi/ew=8 *BA2,*ra,13.   # and against newline
+    sv.cror PM.EQ,BA.EQ,BA2.EQ  # OR compares to create predicate mask
+    sv.st/sm=EQ/ew=8 ...        # store only nonzero/newline
 
 Element width however is clearly meaningless for a 4-bit
 collation of Conditions, EQ LT GE SO. Likewise, arithmetic saturation