diff options
author | Brian Paul <brian.paul@tungstengraphics.com> | 2008-11-26 09:35:08 -0700 |
---|---|---|
committer | Brian Paul <brian.paul@tungstengraphics.com> | 2008-11-26 09:35:08 -0700 |
commit | aa40de5c6f7f70844d4a4c726456cceaee9f0e4d (patch) | |
tree | 25a4e6ab62af34388e68ae0ba0fd97cde52cccf1 /src/mesa/shader | |
parent | fea3a32e17502ac16ec9a12dc9d18742cea2efd5 (diff) |
mesa: add missing size check for assignment optimization
Diffstat (limited to 'src/mesa/shader')
-rw-r--r-- | src/mesa/shader/slang/slang_emit.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/mesa/shader/slang/slang_emit.c b/src/mesa/shader/slang/slang_emit.c index f31e9b4e6c..e3cb252a3d 100644 --- a/src/mesa/shader/slang/slang_emit.c +++ b/src/mesa/shader/slang/slang_emit.c @@ -1324,7 +1324,8 @@ emit_copy(slang_emit_info *emitInfo, slang_ir_node *n) _slang_is_temp(emitInfo->vt, n->Children[1]->Store) && (inst->DstReg.File == n->Children[1]->Store->File) && (inst->DstReg.Index == n->Children[1]->Store->Index) && - !n->Children[0]->Store->IsIndirect) { + !n->Children[0]->Store->IsIndirect && + n->Children[0]->Store->Size <= 4) { /* Peephole optimization: * The Right-Hand-Side has its results in a temporary place. * Modify the RHS (and the prev instruction) to store its results |