Mesa (master): gallivm: fix bogus assert in get_indirect_index

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon Apr 15 22:51:22 UTC 2019


Module: Mesa
Branch: master
Commit: 88e0bbf24aa82000195d10c7873f881d190b825b
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=88e0bbf24aa82000195d10c7873f881d190b825b

Author: Roland Scheidegger <sroland at vmware.com>
Date:   Mon Apr 15 21:36:32 2019 +0200

gallivm: fix bogus assert in get_indirect_index

0 is a valid value as max index, and the code handles it fine. This isn't
commonly seen, as it will only happen with array declarations of size 1.
Fixes piglit tests/shaders/complex-loop-analysis-bug.shader_test

Fixes: a3c898dc97ec "gallivm: fix improper clamping of vertex index when fetching gs inputs"
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110441

Reviewed-by: Brian Paul <brianp at vmware.com>

---

 src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c b/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c
index 0f5b3d9acb7..d6af1d84471 100644
--- a/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c
+++ b/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c
@@ -1108,7 +1108,7 @@ get_indirect_index(struct lp_build_tgsi_soa_context *bld,
     * larger than the declared size but smaller than the buffer size.
     */
    if (reg_file != TGSI_FILE_CONSTANT) {
-      assert(index_limit > 0);
+      assert(index_limit >= 0);
       max_index = lp_build_const_int_vec(bld->bld_base.base.gallivm,
                                          uint_bld->type, index_limit);
 




More information about the mesa-commit mailing list