An extremely important aspect of 3D GPU workloads is that the source
and destination subvector lengths may be *different*. A vector of
-contiguous array of vec3 may only have 2 elements swizzle-copied to
+contiguous array of vec3 (XYZ) may only have 2 elements (ZY)
+swizzle-copied to
a contiguous array of vec2. A contiguous array of vec2 sources
-may have multiple of each vec2 elements copied to a contiguous
-vec4 array. For this reason
+may have multiple of each vec2 elements (XY) copied to a contiguous
+vec4 array (YYXX or XYXX). For this reason
Swizzle Moves support independent subvector lengths for both
source and destination.