On Mon, 2015-09-14 at 13:49 +0200, Iago Toral Quiroga wrote: > When we find indirect indexing into an array, the current > implementation > of the array spliiting optimization pass does not look further into > the > expression tree. However, if the variable expression involves > variable > indexing into other arrays, we can miss that these other arrays also > have > variable indexing. If that happens, the pass will crash later on > after > hitting an assertion put there to ensure that split arrays are in > fact > always indexed via constants: > > shader_runner: opt_array_splitting.cpp:296: > void ir_array_splitting_visitor::split_deref(ir_dereference**): > Assertion `constant' failed. > > This patch fixes the problem by letting the pass step into the > variable > index expression to identify these cases properly.
Makes sense to me. Both patches are: Reviewed-by: Timothy Arceri <timothy.arc...@collabora.com> Will you be pushing the piglit test in the bug report when pushing this also? > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89607 > --- _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev