diff --git a/src/amd/compiler/aco_instruction_selection_setup.cpp b/src/amd/compiler/aco_instruction_selection_setup.cpp index 4d4cf5b744a..2c8ca8c561a 100644 --- a/src/amd/compiler/aco_instruction_selection_setup.cpp +++ b/src/amd/compiler/aco_instruction_selection_setup.cpp @@ -308,7 +308,8 @@ init_context(isel_context* ctx, nir_shader* shader) ctx->ub_config.max_workgroup_size[2] = 2048; nir_divergence_analysis(shader); - nir_opt_uniform_atomics(shader); + if (nir_opt_uniform_atomics(shader) && nir_lower_int64(shader)) + nir_divergence_analysis(shader); apply_nuw_to_offsets(ctx, impl);