SV is primarily designed for use as an efficient hybrid 3D GPU / VPU /
CPU ISA.
-As mentioned above, OE=1 is not applicable in SV, freeing this bit for
-alternative uses. Additionally, Vectorisation of the VSX SIMD system
+Vectorisation of the VSX Packed SIMD system
likewise makes no sense whatsoever. SV *replaces* VSX and provides,
at the very minimum, predication (which VSX was designed without).
Thus all VSX Major Opcodes - all of them - are "unused" and must raise
a precedent: `RTp` stands for "RT pair". In other words the result
is stored in RT and RT+1. For Scalar operations, following this
precedent is perfectly reasonable. In Scalar mode,
-`umadded` therefore stores the two halves of the 128-bit multiply
+`madded` therefore stores the two halves of the 128-bit multiply
into RT and RT+1.
+What, then, of `sv.madded`? If the destination is hard-coded to
+RT and RT+1 the instruction is not useful when Vectorised because
+the output will be overwritten on the next element. To solve this
+is easy: define the destination registers as RT and RT+MAXVL
+respectively.
+
* [[isa/svfixedarith]]
* [[isa/svfparith]]