nir: lower indirect tesslevels in nir_lower_io
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