From 3e27785f3ebe6620805f97cb5c17ec8bd28bc1e8 Mon Sep 17 00:00:00 2001 From: Christoph Bumiller Date: Tue, 17 Aug 2010 15:27:56 +0200 Subject: nv50: check dst compatibility in CSE --- src/gallium/drivers/nv50/nv50_pc_optimize.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/gallium') diff --git a/src/gallium/drivers/nv50/nv50_pc_optimize.c b/src/gallium/drivers/nv50/nv50_pc_optimize.c index 3e6e09a904..80f3bb34b0 100644 --- a/src/gallium/drivers/nv50/nv50_pc_optimize.c +++ b/src/gallium/drivers/nv50/nv50_pc_optimize.c @@ -1007,6 +1007,13 @@ nv_pass_cse(struct nv_pass *ctx, struct nv_basic_block *b) ik->flags_def || ir->flags_def) continue; /* and also not with flags, for now */ + assert(ik->def[0] && ir->def[0]); + + if (ik->def[0]->reg.file == NV_FILE_OUT || + ir->def[0]->reg.file == NV_FILE_OUT || + !values_equal(ik->def[0], ir->def[0])) + continue; + for (s = 0; s < 3; ++s) { struct nv_value *a, *b; -- cgit v1.2.3