summaryrefslogtreecommitdiffstats
path: root/src/mesa/shader/slang/slang_emit.c
diff options
context:
space:
mode:
authorAlan Hourihane <[email protected]>2008-11-28 16:19:10 +0000
committerAlan Hourihane <[email protected]>2008-11-28 16:19:10 +0000
commitc4c86bbd16688ee4a0afb32efa27ba52abceb1ca (patch)
tree6b16fae74e49122a86ecf18b4a427b80d5a8e812 /src/mesa/shader/slang/slang_emit.c
parent5b714723895d321db753f896576de5e2c27778c3 (diff)
parentc303e7299b5f95d4728c3710c56f50b1fefca09d (diff)
Merge commit 'origin/master' into gallium-0.2
Diffstat (limited to 'src/mesa/shader/slang/slang_emit.c')
-rw-r--r--src/mesa/shader/slang/slang_emit.c3
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 f31e9b4e6c7..e3cb252a3d7 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