intel/xe2+: Implement ALU-based pixel interpolation.
This series replaces our previous implementation of barycentric interpolation that used to rely on the Pixel Interpolator shared function, since the pixel interpolator is no longer present on Xe2+ hardware. Instead barycentric interpolation at an offset from the fragment coordinates (i.e. the *_at_offset and *_at_sample interpolation intrinsics) is now implemented manually in the shader.
This isn't particularly optimized beyond using the accumulator for the linear interpolation operations, a good chunk of assembly instructions is required per intrinsic, but that doesn't seem like much of a concern right now since these offset interpolation intrinsics are rare in real applications (interpolation at the current sample coordinates is of course still handled by the hardware).