summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Airlie <[email protected]>2018-01-10 03:46:50 +0000
committerDave Airlie <[email protected]>2018-01-18 03:36:41 +0000
commit2f2cef385fd0f96f5cca3d5ccc48184bbc681831 (patch)
treed12254667712f8e06c6805831c13deb5f1f431c0
parentda977ad9074707932b9dc1f7c52b5427ce920c13 (diff)
r600/sb: update last_cf if alu is the last clause
It's rare to have a final alu clause on normal shaders (exports) but tess shaders write to LDS as their output, so we see some alu clauses, and the CF_END get put in the wrong place. This makes sure to update last_cf correctly. Acked-By: Roland Scheidegger <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
-rw-r--r--src/gallium/drivers/r600/sb/sb_bc_finalize.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/sb/sb_bc_finalize.cpp b/src/gallium/drivers/r600/sb/sb_bc_finalize.cpp
index c20640e4767..2ec4db624a5 100644
--- a/src/gallium/drivers/r600/sb/sb_bc_finalize.cpp
+++ b/src/gallium/drivers/r600/sb/sb_bc_finalize.cpp
@@ -266,6 +266,7 @@ void bc_finalizer::run_on(container_node* c) {
}
}
}
+ last_cf = c;
} else if (n->is_fetch_inst()) {
finalize_fetch(static_cast<fetch_node*>(n));
} else if (n->is_cf_inst()) {