Fields:
-* **SVxd** - SV REMAP "xdim" (SVGPR>>1 for Indexed REMAP)
+* **SVxd** - SV REMAP "xdim"
* **SVyd** - SV REMAP "ydim"
* **SVzd** - SV REMAP "zdim"
* **SVRM** - SV REMAP Mode (0b00000 for Matrix, 0b00001 for FFT etc.)
| 0b0101 | DCT COS table index generation |
| 0b0110 | DCT half-swap |
| 0b0111 | reserved |
-| 0b1000 | Indexed (XY straight) |
-| 0b1001 | Indexed (YX swapped) |
+| 0b1000 | reserved |
+| 0b1001 | reserved |
| 0b1010 | iDCT Inner butterfly, pre-calculated coefficients |
| 0b1011 | iDCT Outer butterfly |
| 0b1100 | iDCT Inner butterfly, on-the-fly (Vertical-First Mode) |
larger than 32, and in-place Transpose. Potentially a future v3.1 Prefixed
instruction, `psvshape`, may extend the capability here.
+# svindex instruction
+
+`svindex` is a convenience instruction that reduces instruction
+count for Indexed REMAP Mode. It sets up
+(overwrites) all required SVSHAPE SPRs and also modifies SVSTATE
+including VL and MAXVL. Using `svshape` therefore does not also
+require `setvl`.
+
+Form: SVI-Form SV "Indexed" Form (see [[isatables/fields.text]])
+
+ svshape RS,mask,SVd,ew,vf
+
+| 0.5|6.10 |11.15 |16.21 | 22.23 | 25 | 26..31| name |
+| -- | -- | --- | ---- | ----- | -- | ------| -------- |
+|OPCD| RS | mask | SVd | ew | vf | XO | svindex |
+
+Fields:
+
+* **SVxd** - SV REMAP "xdim"
+* **SVyd** - SV REMAP "ydim"
+* **SVzd** - SV REMAP "zdim"
+* **SVRM** - SV REMAP Mode (0b00000 for Matrix, 0b00001 for FFT etc.)
+* **vf** - sets "Vertical-First" mode
+* **XO** - standard 5-bit XO field
+
# REMAP Matrix pseudocode
The algorithm below shows how REMAP works more clearly, and may be