nir/gather_info: Add support for panfrost tile load/store intrinsics

Fixes: 6fc1030e4f ("nir: Add some new panfrost fragment shader intrinsics")
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
(cherry picked from commit 88ad8bc75d)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40092>
This commit is contained in:
Faith Ekstrand 2026-02-06 21:25:08 -05:00 committed by Eric Engestrom
parent 897f5814ed
commit 3a92074d8c
2 changed files with 18 additions and 1 deletions

View file

@ -1474,7 +1474,7 @@
"description": "nir/gather_info: Add support for panfrost tile load/store intrinsics",
"nominated": true,
"nomination_type": 2,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": "6fc1030e4fe7efb7b76ca07db1ab2efe727d6291",
"notes": null

View file

@ -850,6 +850,23 @@ gather_intrinsic_info(nir_intrinsic_instr *instr, nir_shader *shader)
shader->info.outputs_written |= BITFIELD64_BIT(FRAG_RESULT_SAMPLE_MASK);
break;
case nir_intrinsic_load_tile_pan:
case nir_intrinsic_load_tile_res_pan: {
const nir_io_semantics io = nir_intrinsic_io_semantics(instr);
shader->info.outputs_read |=
BITFIELD64_RANGE(io.location, io.num_slots);
break;
}
case nir_intrinsic_blend_pan:
case nir_intrinsic_blend2_pan:
case nir_intrinsic_store_tile_pan: {
const nir_io_semantics io = nir_intrinsic_io_semantics(instr);
shader->info.outputs_written |=
BITFIELD64_RANGE(io.location, io.num_slots);
break;
}
case nir_intrinsic_demote_samples:
shader->info.fs.uses_discard = true;
break;