From: Rob Clark Date: Tue, 11 Aug 2015 20:11:04 +0000 (-0400) Subject: freedreno/ir3: 'keeps' need neighbors found too X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=aab3912f21508b0681962c68fdaca1435c06b2ea;p=mesa.git freedreno/ir3: 'keeps' need neighbors found too This shows up with a glamor shader, which does a TXF and uses the result for conditional kill. Before we wouldn't group the fanin (collect) neighbors which need to be allocated adjacently at RA, resulting in badness. Signed-off-by: Rob Clark --- diff --git a/src/gallium/drivers/freedreno/ir3/ir3_group.c b/src/gallium/drivers/freedreno/ir3/ir3_group.c index 70d9b08e019..ca28aefd502 100644 --- a/src/gallium/drivers/freedreno/ir3/ir3_group.c +++ b/src/gallium/drivers/freedreno/ir3/ir3_group.c @@ -236,6 +236,11 @@ find_neighbors(struct ir3 *ir) instr_find_neighbors(instr); } } + + for (i = 0; i < ir->keeps_count; i++) { + struct ir3_instruction *instr = ir->keeps[i]; + instr_find_neighbors(instr); + } } void