Mesa (main): i915g: Make sure we don't try to texture from the const file.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon Jun 7 22:33:54 UTC 2021


Module: Mesa
Branch: main
Commit: 4b9e52e81820a4237902f7db2d24251b2419ae81
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=4b9e52e81820a4237902f7db2d24251b2419ae81

Author: Emma Anholt <emma at anholt.net>
Date:   Mon Jun  7 11:51:21 2021 -0700

i915g: Make sure we don't try to texture from the const file.

It's an invalid value for the texture coordinate source, and this becomes
more common if we enable nir-to-tgsi.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11227>

---

 src/gallium/drivers/i915/ci/deqp-i915-g33-fails.txt   | 6 ------
 src/gallium/drivers/i915/ci/deqp-i915-g33-flakes.txt  | 1 -
 src/gallium/drivers/i915/ci/piglit-i915-g33-fails.txt | 2 --
 src/gallium/drivers/i915/i915_fpc_emit.c              | 2 +-
 4 files changed, 1 insertion(+), 10 deletions(-)

diff --git a/src/gallium/drivers/i915/ci/deqp-i915-g33-fails.txt b/src/gallium/drivers/i915/ci/deqp-i915-g33-fails.txt
index 18d45e657fe..411a5c9fbe5 100644
--- a/src/gallium/drivers/i915/ci/deqp-i915-g33-fails.txt
+++ b/src/gallium/drivers/i915/ci/deqp-i915-g33-fails.txt
@@ -1110,7 +1110,6 @@ dEQP-GLES2.functional.shaders.operator.common_functions.sign.mediump_float_fragm
 dEQP-GLES2.functional.shaders.operator.common_functions.sign.mediump_vec3_fragment,Fail
 dEQP-GLES2.functional.shaders.operator.geometric.normalize.highp_float_fragment,Fail
 dEQP-GLES2.functional.shaders.operator.geometric.normalize.mediump_float_fragment,Fail
-dEQP-GLES2.functional.shaders.random.all_features.fragment.1,Fail
 dEQP-GLES2.functional.shaders.random.all_features.fragment.22,Fail
 dEQP-GLES2.functional.shaders.random.all_features.fragment.28,Fail
 dEQP-GLES2.functional.shaders.random.all_features.fragment.32,Fail
@@ -1130,10 +1129,6 @@ dEQP-GLES2.functional.shaders.random.all_features.fragment.89,Fail
 dEQP-GLES2.functional.shaders.random.all_features.fragment.93,Fail
 dEQP-GLES2.functional.shaders.random.all_features.fragment.95,Fail
 dEQP-GLES2.functional.shaders.random.all_features.fragment.97,Fail
-dEQP-GLES2.functional.shaders.random.texture.fragment.26,Fail
-dEQP-GLES2.functional.shaders.random.texture.fragment.40,Fail
-dEQP-GLES2.functional.shaders.random.texture.fragment.42,Fail
-dEQP-GLES2.functional.shaders.random.texture.fragment.59,Fail
 dEQP-GLES2.functional.shaders.random.texture.vertex.10,Fail
 dEQP-GLES2.functional.shaders.random.texture.vertex.16,Fail
 dEQP-GLES2.functional.shaders.random.texture.vertex.2,Fail
@@ -1414,7 +1409,6 @@ dEQP-GLES2.functional.uniform_api.value.initial.render.struct_in_array.float_vec
 dEQP-GLES2.functional.uniform_api.value.initial.render.struct_in_array.mat4_mat2_both,Fail
 dEQP-GLES2.functional.uniform_api.value.initial.render.struct_in_array.mat4_mat2_fragment,Fail
 dEQP-GLES2.functional.texture.vertex.cube.filtering.nearest_mipmap_nearest_nearest_mirror,Fail
-dEQP-GLES2.functional.shaders.random.texture.fragment.101,Fail
 KHR-GLES2.core.internalformat.copy_tex_image.alpha8_oes,Fail
 KHR-GLES2.core.internalformat.copy_tex_image.luminance4_alpha4_oes,Fail
 KHR-GLES2.core.internalformat.copy_tex_image.luminance8_alpha8_oes,Fail
diff --git a/src/gallium/drivers/i915/ci/deqp-i915-g33-flakes.txt b/src/gallium/drivers/i915/ci/deqp-i915-g33-flakes.txt
deleted file mode 100644
index 2b5321e5e1c..00000000000
--- a/src/gallium/drivers/i915/ci/deqp-i915-g33-flakes.txt
+++ /dev/null
@@ -1 +0,0 @@
-dEQP-GLES2.functional.shaders.random.texture.*
diff --git a/src/gallium/drivers/i915/ci/piglit-i915-g33-fails.txt b/src/gallium/drivers/i915/ci/piglit-i915-g33-fails.txt
index d0e211b50dd..94bb885c3cb 100644
--- a/src/gallium/drivers/i915/ci/piglit-i915-g33-fails.txt
+++ b/src/gallium/drivers/i915/ci/piglit-i915-g33-fails.txt
@@ -157,7 +157,6 @@ spec@!opengl 1.1 at clipflat,Fail
 spec@!opengl 1.1 at depthstencil-default_fb-clear,Fail
 spec@!opengl 1.1 at depthstencil-default_fb-copypixels,Fail
 spec@!opengl 1.1 at depthstencil-default_fb-drawpixels-float-and-ushort,Fail
-spec@!opengl 1.1 at draw-pixel-with-texture,Fail
 spec@!opengl 1.1 at draw-pixels,Fail
 spec@!opengl 1.1 at drawpix-z,Fail
 spec@!opengl 1.1 at getteximage-formats,Crash
@@ -671,7 +670,6 @@ spec at glsl-1.10@execution at glsl-fs-functions-5,Fail
 spec at glsl-1.10@execution at glsl-fs-functions-6,Fail
 spec at glsl-1.10@execution at glsl-fs-if-nested-loop,Fail
 spec at glsl-1.10@execution at glsl-fs-loop-while-false-03,Fail
-spec at glsl-1.10@execution at glsl-fs-texture-uniforms-share-same-unit,Fail
 spec at glsl-1.10@execution at glsl-texcoord-array-2,Fail
 spec at glsl-1.10@execution at interpolation@interpolation-none-gl_backcolor-flat-fixed,Fail
 spec at glsl-1.10@execution at interpolation@interpolation-none-gl_backcolor-flat-none,Fail
diff --git a/src/gallium/drivers/i915/i915_fpc_emit.c b/src/gallium/drivers/i915/i915_fpc_emit.c
index 5dff7b07e4a..d44bdca0b17 100644
--- a/src/gallium/drivers/i915/i915_fpc_emit.c
+++ b/src/gallium/drivers/i915/i915_fpc_emit.c
@@ -212,7 +212,7 @@ uint i915_emit_texld( struct i915_fp_compile *p,
          ignore |= (0xf << UREG_CHANNEL_W_SHIFT);
    }
 
-   if ( (coord & ~ignore ) != (k & ~ignore) ) {
+   if ( (coord & ~ignore ) != (k & ~ignore) || GET_UREG_TYPE(coord) == REG_TYPE_CONST) {
       /* texcoord is swizzled or negated.  Need to allocate a new temporary
        * register (a utemp / unpreserved temp) won't do.
        */



More information about the mesa-commit mailing list