Swizzle is particularly important for 3D work. It allows in-place
reordering of XYZW, ARGB etc. and access of sub-portions of the same in
arbitrary order *without* requiring timeconsuming scalar mv instructions
-(scalar due to the convoluted offsets). With somewhere around 10% of
+(scalar due to the convoluted offsets). With somewhere between 10% and 30% of
operations in 3D Shaders involving swizzle this is a huge saving and
reduces pressure on register files.