summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorChristoph Bumiller <[email protected]>2013-02-26 21:05:03 +0100
committerChristoph Bumiller <[email protected]>2013-03-12 12:55:35 +0100
commit1ed507ca46d721d9cab1bb036dc14b10c8a2a37b (patch)
tree1a1a728e3071215718a8eb3506b3736f1c75ff6d /src
parentc893b9406060d3735b2c9e307ae89f6d83a4be40 (diff)
nv50/ir/opt: CALLs cannot load
Diffstat (limited to 'src')
-rw-r--r--src/gallium/drivers/nv50/codegen/nv50_ir_peephole.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/drivers/nv50/codegen/nv50_ir_peephole.cpp b/src/gallium/drivers/nv50/codegen/nv50_ir_peephole.cpp
index 6b3e5be3a78..cc298d5bad6 100644
--- a/src/gallium/drivers/nv50/codegen/nv50_ir_peephole.cpp
+++ b/src/gallium/drivers/nv50/codegen/nv50_ir_peephole.cpp
@@ -203,6 +203,9 @@ LoadPropagation::visit(BasicBlock *bb)
for (Instruction *i = bb->getEntry(); i; i = next) {
next = i->next;
+ if (i->op == OP_CALL) // calls have args as sources, they must be in regs
+ continue;
+
if (i->srcExists(1))
checkSwapSrc01(i);