radv: do nir_shader_gather_info after radv_nir_lower_rt_abi
Fixes compilation of a Doom Eternal shader with PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT. ac_nir_lower_resinfo() was not happening because it is predicated on uses_resource_info_query and no later optimization updated it. Signed-off-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Friedrich Vock <friedrich.vock@gmx.de> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Cc: mesa-stable Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27195>
This commit is contained in:
@@ -417,6 +417,10 @@ radv_rt_nir_to_asm(struct radv_device *device, struct vk_pipeline_cache *cache,
|
||||
temp_stage.nir = shaders[i];
|
||||
radv_nir_lower_rt_abi(temp_stage.nir, pCreateInfo, &temp_stage.args, &stage->info, stack_size, i > 0, device,
|
||||
pipeline, monolithic);
|
||||
|
||||
/* Info might be out-of-date after inlining in radv_nir_lower_rt_abi(). */
|
||||
nir_shader_gather_info(temp_stage.nir, nir_shader_get_entrypoint(temp_stage.nir));
|
||||
|
||||
radv_optimize_nir(temp_stage.nir, stage->key.optimisations_disabled);
|
||||
radv_postprocess_nir(device, NULL, &temp_stage);
|
||||
|
||||
|
Reference in New Issue
Block a user