diff --git a/src/amd/vulkan/radv_pipeline_graphics.c b/src/amd/vulkan/radv_pipeline_graphics.c index a38472029a4..df28d85c959 100644 --- a/src/amd/vulkan/radv_pipeline_graphics.c +++ b/src/amd/vulkan/radv_pipeline_graphics.c @@ -2440,6 +2440,9 @@ radv_create_gs_copy_shader(struct radv_device *device, struct vk_pipeline_cache AC_HW_VERTEX_SHADER, 64, 64, &gs_copy_stage.args.ac); NIR_PASS(_, nir, radv_nir_lower_abi, pdev->info.gfx_level, &gs_copy_stage, gfx_state, pdev->info.address32_hi); + NIR_PASS(_, nir, ac_nir_lower_global_access); + NIR_PASS(_, nir, nir_lower_int64); + struct radv_graphics_pipeline_key key = {0}; bool dump_shader = radv_can_dump_shader(device, nir); diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c index 70cd435e664..38984cbff16 100644 --- a/src/gallium/drivers/radeonsi/si_shader.c +++ b/src/gallium/drivers/radeonsi/si_shader.c @@ -1863,6 +1863,9 @@ si_nir_generate_gs_copy_shader(struct si_screen *sscreen, sscreen->info.has_ls_vgpr_init_bug, AC_HW_VERTEX_SHADER, 64, 64, &linked.consumer.args.ac); + NIR_PASS(_, nir, ac_nir_lower_global_access); + NIR_PASS(_, nir, nir_lower_int64); + si_nir_opts(gs_selector->screen, nir, false); NIR_PASS(_, nir, nir_lower_load_const_to_scalar);