if VSb is set, VL is truncated if the test succeeds. If VSb is clear,
VL is truncated if a test *fails*. Masked-out (skipped)
bits are not considered
- part of testing.
+ part of testing when `sz=0`
* **CTi** CTR inversion. CTR-test Mode normally decrements per element
tested. CTR inversion decrements if a test *fails*. Only relevant
in CTR-test Mode.
obvious but identical to the above. The lack of obviousness is down
to the early-exit opportunities.
-Pseudocode for Horizontal-First Mode:
+Effective pseudocode for Horizontal-First Mode:
```
if (mode_is_64bit) then M <- 0
testbit = CRbits[BI & 0b11]
# testbit = CR[BI+32+srcstep*4]
else if not SVRMmode.sz:
- # inverted CTR test skip mode
- if ¬BO[2] & CTRtest & ¬CTI then
- CTR = CTR - 1
- continue # skip to next element
+ # inverted CTR test skip mode
+ if ¬BO[2] & CTRtest & ¬CTI then
+ CTR = CTR - 1
+ continue # skip to next element
else
testbit = SVRMmode.SNZ
# actual element test here