summaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/drivers/nv50/nv50_pc.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/gallium/drivers/nv50/nv50_pc.c b/src/gallium/drivers/nv50/nv50_pc.c
index 28e32eadb7d..c2f2ab3ef30 100644
--- a/src/gallium/drivers/nv50/nv50_pc.c
+++ b/src/gallium/drivers/nv50/nv50_pc.c
@@ -631,6 +631,7 @@ nvbb_reachable_by(struct nv_basic_block *bf, struct nv_basic_block *bp,
static struct nv_basic_block *
nvbb_find_dom_frontier(struct nv_basic_block *b, struct nv_basic_block *df)
{
+ struct nv_basic_block *out;
int i;
if (!nvbb_dominated_by(df, b)) {
@@ -641,11 +642,11 @@ nvbb_find_dom_frontier(struct nv_basic_block *b, struct nv_basic_block *df)
return df;
}
}
- for (i = 0; i < 2 && b->out[i]; ++i) {
- if (b->out_kind[i] == CFG_EDGE_BACK)
+ for (i = 0; i < 2 && df->out[i]; ++i) {
+ if (df->out_kind[i] == CFG_EDGE_BACK)
continue;
- if ((df = nvbb_find_dom_frontier(b, b->out[i])))
- return df;
+ if ((out = nvbb_find_dom_frontier(b, df->out[i])))
+ return out;
}
return NULL;
}