From 77acf8933647ebdabf84f1bae8a7377f399612a2 Mon Sep 17 00:00:00 2001 From: M Henning Date: Sat, 29 Jul 2023 12:25:05 -0400 Subject: [PATCH] nv/codegen: Call nir_shader_gather_info We need this info to be up-to-date for slot assignment. Reviewed-by: Faith Ekstrand Part-of: --- src/nouveau/codegen/nv50_ir_from_nir.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/nouveau/codegen/nv50_ir_from_nir.cpp b/src/nouveau/codegen/nv50_ir_from_nir.cpp index 27ae9ed5ff8..c5a8c7cddaa 100644 --- a/src/nouveau/codegen/nv50_ir_from_nir.cpp +++ b/src/nouveau/codegen/nv50_ir_from_nir.cpp @@ -913,6 +913,12 @@ bool Converter::assignSlots() { uint8_t i; BITSET_FOREACH_SET(i, nir->info.system_values_read, SYSTEM_VALUE_MAX) { switch (i) { + case SYSTEM_VALUE_BARYCENTRIC_LINEAR_CENTROID: + case SYSTEM_VALUE_BARYCENTRIC_LINEAR_PIXEL: + case SYSTEM_VALUE_BARYCENTRIC_LINEAR_SAMPLE: + case SYSTEM_VALUE_BARYCENTRIC_PERSP_CENTROID: + case SYSTEM_VALUE_BARYCENTRIC_PERSP_PIXEL: + case SYSTEM_VALUE_BARYCENTRIC_PERSP_SAMPLE: case SYSTEM_VALUE_BASE_GLOBAL_INVOCATION_ID: continue; default: @@ -3270,6 +3276,8 @@ Converter::run() // Garbage collect dead instructions nir_sweep(nir); + nir_shader_gather_info(nir, nir_shader_get_entrypoint(nir)); + if (!parseNIR()) { ERROR("Couldn't prase NIR!\n"); return false;