too high. If this is the
case it is acceptable to throw an Illegal Instruction Trap, and emulate
the instruction in software. Performance will obviously be adversely affected.
-See [[sv/compliancy_levels]]*: all aspects of
-Swizzle are entirely optional in hardware at the Embedded Level.
+See [[sv/compliancy_levels]]: all aspects of
+Swizzle are entirely optional in hardware at the Embedded Level.*
+
+Implementors must consider `SUBVL` to have been implicitly set by
+the Swizzle instructions. Hardware may statically calculate `SUBVL`
+from the immediate. "W.0Z" is SUBVL=4, where "X0Z." is SUBVL=3,
+and ".W.." sets SUBVL=2. Setting `SUBVL` has a different meaning
+in Swizzle Move instructions,
+as explained below.
# RM Mode Concept:
| src_SUBVL | `14:15` | SUBVL for Source |
| MASK_SRC | `16:18` | Execution Mask for Source |
-The inclusion of a separate src SUBVL would allow either
-`sv.mv.swiz RT.vecN RA.vecN` to mean contiguous sequential copy
-or it could mean zip/unzip (pack/unpack).
+The inclusion of a separate src SUBVL allows
+`sv.mv.swiz RT.vecN RA.vecN` to mean zip/unzip (pack/unpack).
+This is conceptually achieved by having both source and
+destination SUBVL be "outer" loops instead of inner loops.