Mesa (master): nvc0: don' t visit target blocks of a loop break multiple times
Christoph Bumiller
chrisbmr at kemper.freedesktop.org
Thu Feb 24 16:36:24 UTC 2011
Module: Mesa
Branch: master
Commit: 88066d62ae7ec9c715e195f8ff65a0dc5b64c25e
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=88066d62ae7ec9c715e195f8ff65a0dc5b64c25e
Author: Christoph Bumiller <e0425955 at student.tuwien.ac.at>
Date: Sat Feb 19 14:18:28 2011 +0100
nvc0: don't visit target blocks of a loop break multiple times
---
src/gallium/drivers/nvc0/nvc0_pc.c | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/src/gallium/drivers/nvc0/nvc0_pc.c b/src/gallium/drivers/nvc0/nvc0_pc.c
index e0cba05..3a3a00f 100644
--- a/src/gallium/drivers/nvc0/nvc0_pc.c
+++ b/src/gallium/drivers/nvc0/nvc0_pc.c
@@ -189,7 +189,10 @@ nvc0_pc_pass_in_order(struct nv_basic_block *root, nv_pc_pass_func f,
bb[p++] = b->out[j];
break;
case CFG_EDGE_LOOP_LEAVE:
- bbb[pp++] = b->out[j];
+ if (!b->out[j]->priv) {
+ bbb[pp++] = b->out[j];
+ b->out[j]->priv = 1;
+ }
break;
default:
assert(0);
More information about the mesa-commit
mailing list