The motivation is to use vecN inputs/outputs, with split/collect instructions to extract scalar components or gather scalar components, so that we can simplify RA (not done yet) by not having to consider a different mechanism (left/right neighbors) in figuring out where scalar registers need to be grouped consecutively. There are a few other cleanups / code-deleting that can still be done, but already it is a nice negative diffstat.
This patchset picked up a random valgrind fix, and more importantly a fix for GPU hangs with pre-fs-dispatch texture fetch + use of
gl_FragCoord, which shows up in chrome w/ gpu-rast enabled. Probably makes sense to land this MR in advance of the planned RA work, just for this fix (which depends on the inputs/outputs rework)