Module: Mesa Branch: master Commit: aee26d292f165438577426f5e62a62ec2a1514c9 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=aee26d292f165438577426f5e62a62ec2a1514c9
Author: Rob Clark <robcl...@freedesktop.org> Date: Wed Mar 18 09:51:57 2015 -0400 freedreno/ir3: fix infinite recursion in sched One more case we need to handle. One of the src instructions for the indirect could also end up being ourself. Signed-off-by: Rob Clark <robcl...@freedesktop.org> --- src/gallium/drivers/freedreno/ir3/ir3_sched.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/freedreno/ir3/ir3_sched.c b/src/gallium/drivers/freedreno/ir3/ir3_sched.c index c1921d0..94237c3 100644 --- a/src/gallium/drivers/freedreno/ir3/ir3_sched.c +++ b/src/gallium/drivers/freedreno/ir3/ir3_sched.c @@ -283,7 +283,7 @@ static int trysched(struct ir3_sched_ctx *ctx, * on ourself (ie. avoid infinite recursion): */ foreach_ssa_src(src, indirect) { - if (src == instr) + if ((src == instr) || (src->address == instr)) continue; delay = trysched(ctx, src); if (delay) _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-commit