nir/lower_non_uniform: remove non_uniform flags after lowering
authorRhys Perry <pendingchaos02@gmail.com>
Tue, 6 Oct 2020 16:08:33 +0000 (17:08 +0100)
committerRhys Perry <pendingchaos02@gmail.com>
Tue, 8 Dec 2020 13:02:18 +0000 (13:02 +0000)
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5201>

src/compiler/nir/nir_lower_non_uniform_access.c

index a5b1bce..08dcaaa 100644 (file)
@@ -142,6 +142,9 @@ lower_non_uniform_tex_access(nir_builder *b, nir_tex_instr *tex)
    nir_builder_instr_insert(b, &tex->instr);
    nir_jump(b, nir_jump_break);
 
+   tex->texture_non_uniform = false;
+   tex->sampler_non_uniform = false;
+
    return true;
 }
 
@@ -170,6 +173,8 @@ lower_non_uniform_access_intrin(nir_builder *b, nir_intrinsic_instr *intrin,
    nir_builder_instr_insert(b, &intrin->instr);
    nir_jump(b, nir_jump_break);
 
+   nir_intrinsic_set_access(intrin, nir_intrinsic_access(intrin) & ~ACCESS_NON_UNIFORM);
+
    return true;
 }