Author: Timothy Arceri <email@example.com>
i965: fix up asserts in brw_inst_set_jip()
which introduced the assertion:
dEQP Core GL-CTS-2.0 (0x0052484b) starting..
target implementation = 'X11-EGL'
Test case 'GL45-CTS.arrays_of_arrays_gl.InteractionArgumentAliasing1'..
glcts: /home/jenkins/workspace/Leeroy/repos/mesa/src/mesa/drivers/dri/i965/brw_inst.h:286: brw_inst_set_jip: Assertion `value <= (1 << 15) - 1' failed.
Was the test passing or failing previously?
I should have been more specific.
The following tests used to pass, but now assert:
Similar tests have asserted since we updated to the gl45 cts suite:
This should not block the release, it doesn't change anything in a release build.
The asserts were wrong this change just fixes them, the tests just happened to pass previously and that will not have changed in a release build after this.
The problem is the loop is too large and if I recall correctly that was because these tests contain a large switch statement which gets wrapped in a loop that can never be unrolled since the work around in this commit:
Author: Tapani Pälli <firstname.lastname@example.org>
Date: Wed Aug 6 09:46:54 2014 +0300
glsl: implement switch flow control using a loop
Patch removes old variable based logic for handling a break inside
switch. Switch is put inside a loop so that existing infrastructure
for loop flow control can be used for the switch, now also dead code
elimination works properly.
Possible 'continue' call inside a switch needs now special handling
which is taken care of by detecting continue, breaking out and calling
continue for the outside loop.
v2: remove one unnecessary ir_expression (Curro)
Fixes following Piglit tests:
No Piglit or es3conform regressions.
Signed-off-by: Tapani Pälli <email@example.com>
Reviewed-by: Francisco Jerez <firstname.lastname@example.org>
Tim is correct: the release build passes the tests.