diff options
author | Alejandro PiƱeiro <[email protected]> | 2020-04-29 00:33:47 +0200 |
---|---|---|
committer | Marge Bot <[email protected]> | 2020-05-11 23:52:46 +0000 |
commit | 50c2c76ea31edf987594e8b811b7d62be71f5a33 (patch) | |
tree | 36fc25eabaaad69f2537b36dc259a3a22ca17e7d /src | |
parent | ad8c5bba0a44774477a1b26523a14e8679521fc3 (diff) |
v3d/tex: only look up the 2nd texture gather offset for 1d non-arrays
Commit 1bc71e8b655f2f02b3e3a0af34c7cad12b9cb83d already did that for
the 3rd offset, but it also needs to do it for the 2nd (to handle 1d
array).
Fixes assertion failures with Vulkan CTS tests using 1darray
targets. Seems that there isn't too many 1darray tests on OpenGL CTS,
and OpenGL-ES don't support 1d arrays, but the same problem could
arise eventually on OpenGL.
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4962>
Diffstat (limited to 'src')
-rw-r--r-- | src/broadcom/compiler/v3d40_tex.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/broadcom/compiler/v3d40_tex.c b/src/broadcom/compiler/v3d40_tex.c index 0a02163100a..d47d3c30851 100644 --- a/src/broadcom/compiler/v3d40_tex.c +++ b/src/broadcom/compiler/v3d40_tex.c @@ -136,7 +136,7 @@ v3d40_vir_emit_tex(struct v3d_compile *c, nir_tex_instr *instr) case nir_tex_src_offset: { if (nir_src_is_const(instr->src[i].src)) { p2_unpacked.offset_s = nir_src_comp_as_int(instr->src[i].src, 0); - if (instr->coord_components >= 2) + if (non_array_components >= 2) p2_unpacked.offset_t = nir_src_comp_as_int(instr->src[i].src, 1); if (non_array_components >= 3) |