[Mesa-dev] [PATCH] st/mesa: keep track of saturated writes when eliminating dead code
Ilia Mirkin
imirkin at alum.mit.edu
Tue Sep 22 21:33:15 PDT 2015
It doesn't matter whether a write is saturated or not, in another
implementation it might even have been a separate opcode. This code was
most likely copied from the copy-propagation pass (where one does have
to distinguish saturation).
Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
---
Haven't run this through piglit yet, but happened upon it when I was
debugging the other issue. (Which turned out to be an odd dependence
on this pass by the regular emitter code.)
src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
index 6762566..ee0acb5 100644
--- a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
+++ b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
@@ -4228,8 +4228,7 @@ glsl_to_tgsi_visitor::eliminate_dead_code(void)
*/
for (unsigned i = 0; i < ARRAY_SIZE(inst->dst); i++) {
if (inst->dst[i].file == PROGRAM_TEMPORARY &&
- !inst->dst[i].reladdr &&
- !inst->saturate) {
+ !inst->dst[i].reladdr) {
for (int c = 0; c < 4; c++) {
if (inst->dst[i].writemask & (1 << c)) {
if (writes[4 * inst->dst[i].index + c]) {
--
2.4.9
More information about the mesa-dev
mailing list