Skip to content

nir: lower indirect tesslevels in nir_lower_io

Neha Bhende requested to merge bhenden/mesa:lower_indirect_tesslevels into main

nir: lower indirect tesslevels in nir_lower_io

Tessellation shader which are using indirect addressing for tesslevels e.g gl_TessLevelOuter[gl_InvocationID] = tessLevelOuter; are crashing because gl_TessLevelOuter is now a compact array variable and nir expects a constant array index into the compact array variable.

This patch adds & calls nir_lower_indirect_tesslevels() in nir_lower_io to handle this case

This fixes MR 21940 Fixes: 84006587 ("glsl: Delete the lower_tess_level pass.")

Tested with glretrace

Reviewed-by: Charmaine Lee charmainel@vmware.com

Merge request reports