Module: Mesa Branch: staging/21.3 Commit: ffe7ec9c6b0799673cbc56f94d2e4f94ed6dbc5b URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ffe7ec9c6b0799673cbc56f94d2e4f94ed6dbc5b
Author: Ian Romanick <[email protected]> Date: Wed Feb 16 14:02:16 2022 -0800 nir: Add missing dependency on nir_opcodes.py Commit 38800b38 changed nir_opcodes.py, but that doesn't seem to have triggered nir_opt_algebraic.py. The change in 75ef5991 depends on opt_algebraic lowering 16-bit versions of slt, but if opt_algebraic is not rebuilt, this may not happen. This resulted in some people seeing assertion failures in, for example, dEQP-VK.spirv_assembly.instruction.compute.float16.arithmetic_3.step, due to the backend seeing nir_op_slt that it didn't know how to handle. v2: Add nir_opcodes.py to nir_algebraic_py so that all the per-driver algebraic passes pick up the dependency too. Rename it to nir_algebraic_depends. Suggested by Emma. Closes: #6047 Fixes: d1992255bb2 ("meson: Add build Intel "anv" vulkan driver") Reviewed-by: Emma Anholt <[email protected]> Acked-by: Dave Airlie <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15050> (cherry picked from commit a01b26299039496ca7ed04878cbb64a18af3037c) --- .pick_status.json | 2 +- src/compiler/nir/meson.build | 6 +++--- src/freedreno/ir3/meson.build | 4 ++-- src/gallium/drivers/lima/meson.build | 2 +- src/gallium/drivers/zink/meson.build | 2 +- src/intel/compiler/meson.build | 2 +- src/microsoft/compiler/meson.build | 2 +- src/panfrost/bifrost/meson.build | 2 +- src/panfrost/midgard/meson.build | 2 +- 9 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index b7ce30669d9..21bfac84d72 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -742,7 +742,7 @@ "description": "nir: Add missing dependency on nir_opcodes.py", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "d1992255bb29054fa51763376d125183a9f602f3" }, diff --git a/src/compiler/nir/meson.build b/src/compiler/nir/meson.build index 414bb3e9054..e356fe0299a 100644 --- a/src/compiler/nir/meson.build +++ b/src/compiler/nir/meson.build @@ -20,6 +20,8 @@ nir_depends = files('nir_opcodes.py', 'nir_intrinsics.py') +nir_algebraic_depends = files('nir_opcodes.py', 'nir_algebraic.py') + nir_builder_opcodes_h = custom_target( 'nir_builder_opcodes.h', input : 'nir_builder_opcodes_h.py', @@ -62,7 +64,7 @@ nir_opt_algebraic_c = custom_target( output : 'nir_opt_algebraic.c', command : [prog_python, '@INPUT@'], capture : true, - depend_files : files('nir_algebraic.py'), + depend_files : nir_algebraic_depends, ) nir_intrinsics_h = custom_target( @@ -366,8 +368,6 @@ idep_nir = declare_dependency( link_with : _libnir, ) -nir_algebraic_py = files('nir_algebraic.py') - if with_tests test( 'nir_builder', diff --git a/src/freedreno/ir3/meson.build b/src/freedreno/ir3/meson.build index 40501bbde2c..4b30485edcc 100644 --- a/src/freedreno/ir3/meson.build +++ b/src/freedreno/ir3/meson.build @@ -27,7 +27,7 @@ ir3_nir_trig_c = custom_target( '-p', join_paths(meson.source_root(), 'src/compiler/nir/'), ], capture : true, - depend_files : nir_algebraic_py, + depend_files : nir_algebraic_depends, ) ir3_nir_imul_c = custom_target( @@ -39,7 +39,7 @@ ir3_nir_imul_c = custom_target( '-p', join_paths(meson.source_root(), 'src/compiler/nir/'), ], capture : true, - depend_files : nir_algebraic_py, + depend_files : nir_algebraic_depends, ) ir3_parser = custom_target( diff --git a/src/gallium/drivers/lima/meson.build b/src/gallium/drivers/lima/meson.build index 5bc6fbbf869..de44174e19c 100644 --- a/src/gallium/drivers/lima/meson.build +++ b/src/gallium/drivers/lima/meson.build @@ -92,7 +92,7 @@ lima_nir_algebraic_c = custom_target( '-p', join_paths(meson.source_root(), 'src/compiler/nir/'), ], capture : true, - depend_files : nir_algebraic_py, + depend_files : nir_algebraic_depends, ) liblima = static_library( diff --git a/src/gallium/drivers/zink/meson.build b/src/gallium/drivers/zink/meson.build index 9dafc4f9692..86becdfe7e5 100644 --- a/src/gallium/drivers/zink/meson.build +++ b/src/gallium/drivers/zink/meson.build @@ -71,7 +71,7 @@ zink_nir_algebraic_c = custom_target( '-p', join_paths(meson.source_root(), 'src/compiler/nir/'), ], capture : true, - depend_files : nir_algebraic_py, + depend_files : nir_algebraic_depends, ) zink_c_args = [] diff --git a/src/intel/compiler/meson.build b/src/intel/compiler/meson.build index 7b9b621a567..75247422cea 100644 --- a/src/intel/compiler/meson.build +++ b/src/intel/compiler/meson.build @@ -143,7 +143,7 @@ brw_nir_trig = custom_target( prog_python, '@INPUT@', '-p', join_paths(meson.source_root(), 'src/compiler/nir/'), ], - depend_files : nir_algebraic_py, + depend_files : nir_algebraic_depends, capture : true, ) diff --git a/src/microsoft/compiler/meson.build b/src/microsoft/compiler/meson.build index 822694c1616..7dd8678bd58 100644 --- a/src/microsoft/compiler/meson.build +++ b/src/microsoft/compiler/meson.build @@ -41,7 +41,7 @@ dxil_nir_algebraic_c = custom_target( '-p', join_paths(meson.source_root(), 'src/compiler/nir/'), ], capture : true, - depend_files : nir_algebraic_py, + depend_files : nir_algebraic_depends, ) libdxil_compiler = static_library( diff --git a/src/panfrost/bifrost/meson.build b/src/panfrost/bifrost/meson.build index 688558168c2..ffa5fa6f4d2 100644 --- a/src/panfrost/bifrost/meson.build +++ b/src/panfrost/bifrost/meson.build @@ -116,7 +116,7 @@ bifrost_nir_algebraic_c = custom_target( '-p', join_paths(meson.source_root(), 'src/compiler/nir/'), ], capture : true, - depend_files : nir_algebraic_py, + depend_files : nir_algebraic_depends, ) libpanfrost_bifrost_disasm = static_library( diff --git a/src/panfrost/midgard/meson.build b/src/panfrost/midgard/meson.build index 446ad527b8e..64c584cb7b1 100644 --- a/src/panfrost/midgard/meson.build +++ b/src/panfrost/midgard/meson.build @@ -52,7 +52,7 @@ midgard_nir_algebraic_c = custom_target( '-p', join_paths(meson.source_root(), 'src/compiler/nir/'), ], capture : true, - depend_files : nir_algebraic_py, + depend_files : nir_algebraic_depends, ) libpanfrost_midgard_disasm = static_library(
