nir lowering of sampler return types
V3D usually returns f16 results from samplers (but sometimes u16, i16, or normal 32-bit results). VC4 has a similar need with unorm4x8 sampler results, but is going to grow f16 returns with Nick Kreeger's half-float work. This moves V3D's backend codegen to NIR, allowing a nice little optimization in the process.