From cc66d546dde059145facf06d8b3decaf871070d8 Mon Sep 17 00:00:00 2001 From: Jesse Natalie Date: Mon, 1 May 2023 13:08:12 -0700 Subject: [PATCH] microsoft/compiler: Unroll loops in opt passes Part-of: --- src/gallium/drivers/d3d12/ci/d3d12-quick_shader.txt | 4 ++-- src/microsoft/ci/warp-fails.txt | 6 ------ src/microsoft/compiler/nir_to_dxil.c | 1 + 3 files changed, 3 insertions(+), 8 deletions(-) diff --git a/src/gallium/drivers/d3d12/ci/d3d12-quick_shader.txt b/src/gallium/drivers/d3d12/ci/d3d12-quick_shader.txt index 8ae2afb7cdb..5eab2fe9e9b 100644 --- a/src/gallium/drivers/d3d12/ci/d3d12-quick_shader.txt +++ b/src/gallium/drivers/d3d12/ci/d3d12-quick_shader.txt @@ -27,8 +27,8 @@ spec@arb_tessellation_shader@execution@variable-indexing@tcs-patch-output-array- spec@arb_tessellation_shader@execution@variable-indexing@tcs-patch-output-array-vec2-index-wr,Crash spec@arb_tessellation_shader@execution@variable-indexing@tcs-patch-output-array-vec3-index-wr,Crash spec@arb_tessellation_shader@execution@variable-indexing@tcs-patch-output-array-vec4-index-wr,Crash -spec@arb_tessellation_shader@execution@variable-indexing@tcs-patch-vec4-index-wr,Crash -spec@arb_tessellation_shader@execution@variable-indexing@tcs-patch-vec4-swiz-index-wr,Crash +spec@arb_tessellation_shader@execution@variable-indexing@tcs-patch-vec4-index-wr,Fail +spec@arb_tessellation_shader@execution@variable-indexing@tcs-patch-vec4-swiz-index-wr,Fail spec@arb_tessellation_shader@execution@variable-indexing@tes-both-input-array-float-index-rd,Crash spec@arb_tessellation_shader@execution@variable-indexing@tes-both-input-array-vec2-index-rd,Crash spec@arb_tessellation_shader@execution@variable-indexing@tes-both-input-array-vec3-index-rd,Crash diff --git a/src/microsoft/ci/warp-fails.txt b/src/microsoft/ci/warp-fails.txt index 907d898ab51..760bc3e9b3c 100644 --- a/src/microsoft/ci/warp-fails.txt +++ b/src/microsoft/ci/warp-fails.txt @@ -239,12 +239,6 @@ dEQP-VK.glsl.loops.generic.do_while_uniform_iterations.basic_highp_float_fragmen dEQP-VK.glsl.loops.generic.do_while_uniform_iterations.basic_highp_float_vertex,Fail dEQP-VK.glsl.loops.generic.do_while_uniform_iterations.basic_mediump_float_fragment,Fail dEQP-VK.glsl.loops.generic.do_while_uniform_iterations.basic_mediump_float_vertex,Fail -dEQP-VK.glsl.loops.special.do_while_constant_iterations.dowhile_trap_fragment,Fail -dEQP-VK.glsl.loops.special.do_while_constant_iterations.dowhile_trap_vertex,Fail -dEQP-VK.glsl.loops.special.do_while_constant_iterations.nested_sequence_fragment,Fail -dEQP-VK.glsl.loops.special.do_while_constant_iterations.nested_sequence_vertex,Fail -dEQP-VK.glsl.loops.special.do_while_constant_iterations.sequence_fragment,Fail -dEQP-VK.glsl.loops.special.do_while_constant_iterations.sequence_vertex,Fail dEQP-VK.glsl.loops.special.do_while_dynamic_iterations.dowhile_trap_fragment,Fail dEQP-VK.glsl.loops.special.do_while_dynamic_iterations.dowhile_trap_vertex,Fail dEQP-VK.glsl.loops.special.do_while_dynamic_iterations.nested_sequence_fragment,Fail diff --git a/src/microsoft/compiler/nir_to_dxil.c b/src/microsoft/compiler/nir_to_dxil.c index c4de9dd3a7c..f0af9cfb577 100644 --- a/src/microsoft/compiler/nir_to_dxil.c +++ b/src/microsoft/compiler/nir_to_dxil.c @@ -6408,6 +6408,7 @@ optimize_nir(struct nir_shader *s, const struct nir_to_dxil_options *opts) NIR_PASS(progress, s, nir_opt_deref); NIR_PASS(progress, s, dxil_nir_lower_upcast_phis, opts->lower_int16 ? 32 : 16); NIR_PASS(progress, s, nir_lower_64bit_phis); + NIR_PASS(progress, s, nir_opt_loop_unroll); NIR_PASS_V(s, nir_lower_system_values); } while (progress);