From a01b26299039496ca7ed04878cbb64a18af3037c Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Wed, 16 Feb 2022 14:02:16 -0800 Subject: [PATCH] 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 Acked-by: Dave Airlie Part-of: --- src/compiler/nir/meson.build | 6 +++--- src/freedreno/ir3/meson.build | 4 ++-- src/gallium/drivers/lima/meson.build | 2 +- src/gallium/drivers/r300/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/src/compiler/nir/meson.build b/src/compiler/nir/meson.build index 96d0c7ff331..c91c44aacd5 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( @@ -372,8 +374,6 @@ idep_nir = declare_dependency( link_with : _libnir, ) -nir_algebraic_py = files('nir_algebraic.py') - if with_tests test( 'nir_tests', diff --git a/src/freedreno/ir3/meson.build b/src/freedreno/ir3/meson.build index 55f5ad03c78..23ac8323ddb 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 c7b9a8b099b..6810c362ccf 100644 --- a/src/gallium/drivers/lima/meson.build +++ b/src/gallium/drivers/lima/meson.build @@ -93,7 +93,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/r300/meson.build b/src/gallium/drivers/r300/meson.build index bb437897249..f3423a17ff5 100644 --- a/src/gallium/drivers/r300/meson.build +++ b/src/gallium/drivers/r300/meson.build @@ -125,7 +125,7 @@ r300_nir_algebraic_c = custom_target( '-p', join_paths(meson.source_root(), 'src/compiler/nir/'), '@OUTPUT@', ], - depend_files : nir_algebraic_py, + depend_files : nir_algebraic_depends, ) libr300 = static_library( diff --git a/src/gallium/drivers/zink/meson.build b/src/gallium/drivers/zink/meson.build index 80f5612a445..d4be88f083a 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 8c3d55e11f3..3a04973035c 100644 --- a/src/intel/compiler/meson.build +++ b/src/intel/compiler/meson.build @@ -148,7 +148,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 78e4792a6ad..a04fe87b636 100644 --- a/src/microsoft/compiler/meson.build +++ b/src/microsoft/compiler/meson.build @@ -42,7 +42,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 48ff0232d65..1dcd9b572da 100644 --- a/src/panfrost/bifrost/meson.build +++ b/src/panfrost/bifrost/meson.build @@ -117,7 +117,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(