mesa/src/intel
Francisco Jerez 79fa3eba11 intel/fs/xe2+: Add ALU-based implementation of barycentric interpolation at a per-channel sample.
This implements a replacement for the previous implementation of
nir_intrinsic_load_barycentric_at_sample that relied on the Pixel
Interpolator shared function, since it's going to be removed from the
hardware from Xe2 onwards.

This implementation simply looks up the X/Y offsets of each sample
index on the table provided in the PS thread payload by using indirect
addressing, then does the actual interpolation by recursing into
emit_pixel_interpolater_alu_at_offset() introduced in the previous
commit.

Note that even though this is only immediately useful on Xe2+
platforms there's no reason why it shouldn't work on earlier
platforms, as long as we have the sample X/Y offsets available in the
thread payload.

Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29847>
2024-06-27 00:18:00 +00:00
..
blorp meson: add various generated header dependencies as order-only deps 2024-06-26 22:54:50 +00:00
ci ci: Update trace SHAs 2024-06-19 01:56:23 +00:00
common intel/genxml,blorp,common: Update 3DSTATE_PS command (xe2) 2024-06-26 05:25:43 +00:00
compiler intel/fs/xe2+: Add ALU-based implementation of barycentric interpolation at a per-channel sample. 2024-06-27 00:18:00 +00:00
decoder intel/decoder: Add intel_print_group_custom_spacing() 2024-04-24 17:07:50 +00:00
dev intel/brw/xe2+: Add LNL cooperative matrix configurations 2024-06-25 14:17:47 -07:00
ds meson: add various generated header dependencies as order-only deps 2024-06-26 22:54:50 +00:00
genxml intel/genxml,blorp,common: Update 3DSTATE_PS command (xe2) 2024-06-26 05:25:43 +00:00
isl isl: Initialize the last usage in isl_encode_aux_mode[] (xe2) 2024-06-26 05:25:44 +00:00
nullhw-layer docs: replace references to the deprecated VK_INSTANCE_LAYERS with the new VK_LOADER_LAYERS_ENABLE 2024-04-02 18:08:52 +00:00
perf intel/perf: Extend intel_perf_query_result_read_gt_frequency() to gfx 20 2024-06-25 14:16:45 +00:00
shaders meson: use glslang --depfile argument when possible 2024-05-20 17:34:17 +00:00
tools intel/tools: Advertise I915_PARAM_HAS_EXEC_TIMELINE_FENCES 2024-06-26 20:00:26 +00:00
vulkan anv/gfx11+: Request PS payload fields for ALU-based interpolation via 3DSTATE_PS_EXTRA. 2024-06-27 00:18:00 +00:00
vulkan_hasvk treewide: use nir_def_replace sometimes 2024-06-21 15:36:56 +00:00
meson.build intel: Only build shaders with anv and iris 2024-02-21 20:53:36 +00:00