summaryrefslogtreecommitdiff
path: root/src/mesa/pipe/llvm/instructions.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/pipe/llvm/instructions.cpp')
-rw-r--r--src/mesa/pipe/llvm/instructions.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/mesa/pipe/llvm/instructions.cpp b/src/mesa/pipe/llvm/instructions.cpp
index b0aa0cc746..2eac0edbc4 100644
--- a/src/mesa/pipe/llvm/instructions.cpp
+++ b/src/mesa/pipe/llvm/instructions.cpp
@@ -1098,12 +1098,13 @@ void Instructions::end()
}
void Instructions::cal(int label, llvm::Value *out, llvm::Value *in,
- llvm::Value *cst)
+ llvm::Value *cst, llvm::Value *temp)
{
std::vector<Value*> params;
params.push_back(out);
params.push_back(in);
params.push_back(cst);
+ params.push_back(temp);
llvm::Function *func = findFunction(label);
new CallInst(func, params.begin(), params.end(), std::string(), m_block);
@@ -1116,6 +1117,7 @@ llvm::Function * Instructions::declareFunc(int label)
args.push_back(vecPtr);
args.push_back(vecPtr);
args.push_back(vecPtr);
+ args.push_back(vecPtr);
ParamAttrsList *params = 0;
FunctionType *funcType = FunctionType::get(
/*Result=*/Type::VoidTy,
@@ -1142,7 +1144,9 @@ void Instructions::bgnSub(unsigned label, Storage *storage)
ptr_IN->setName("IN");
Value *ptr_CONST = args++;
ptr_CONST->setName("CONST");
- storage->pushArguments(ptr_OUT, ptr_IN, ptr_CONST);
+ Value *ptr_TEMP = args++;
+ ptr_TEMP->setName("TEMP");
+ storage->pushArguments(ptr_OUT, ptr_IN, ptr_CONST, ptr_TEMP);
llvm::BasicBlock *entry = new BasicBlock("entry", func, 0);