From: Eric Anholt Date: Tue, 16 Aug 2011 01:40:14 +0000 (-0700) Subject: i965: Fix assertion failure on a loop consisting of while (true) { break }. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d376fa8e84b044ead47586d1b56a10742bcbdac7;p=mesa.git i965: Fix assertion failure on a loop consisting of while (true) { break }. On enabling the precompile step in the VS, we tripped over this assertion failure in glsl-link-bug-30552. --- diff --git a/src/mesa/drivers/dri/i965/brw_eu_emit.c b/src/mesa/drivers/dri/i965/brw_eu_emit.c index b08906426e4..f5cc09dd49b 100644 --- a/src/mesa/drivers/dri/i965/brw_eu_emit.c +++ b/src/mesa/drivers/dri/i965/brw_eu_emit.c @@ -2311,7 +2311,7 @@ brw_find_loop_end(struct brw_compile *p, int start) if (insn->header.opcode == BRW_OPCODE_WHILE) { int jip = intel->gen == 6 ? insn->bits1.branch_gen6.jump_count : insn->bits3.break_cont.jip; - if (ip + jip / br < start) + if (ip + jip / br <= start) return ip; } }