Mesa (staging/22.0): nir: Add missing dependency on nir_opcodes.py

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Mar 1 19:13:09 UTC 2022


Module: Mesa
Branch: staging/22.0
Commit: 9c94e7e7247213c52e0689c48057e03625d23007
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=9c94e7e7247213c52e0689c48057e03625d23007

Author: Ian Romanick <ian.d.romanick at intel.com>
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 <emma at anholt.net>
Acked-by: Dave Airlie <airlied at redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15050>
(cherry picked from commit a01b26299039496ca7ed04878cbb64a18af3037c)

Conflicts:
	src/gallium/drivers/r300/meson.build

- Delete code from r300, which doesn't exist in the 22.0 branch

---

 .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 e1786948c79..b95e0ea8099 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -1831,7 +1831,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 40f148ba96a..3541f8c0a5e 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(
@@ -370,8 +372,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/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 8668d082d83..094d861e335 100644
--- a/src/intel/compiler/meson.build
+++ b/src/intel/compiler/meson.build
@@ -147,7 +147,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(



More information about the mesa-commit mailing list