summaryrefslogtreecommitdiffstats
path: root/src/mesa/pipe/llvm/instructions.cpp
diff options
context:
space:
mode:
authorZack Rusin <[email protected]>2007-11-06 06:06:04 -0500
committerZack Rusin <[email protected]>2007-12-11 09:49:33 -0500
commit1f30efb7365075de0ae119a40ab70a16bc547670 (patch)
tree37d55d99729c36993ff279469d88635b690b633d /src/mesa/pipe/llvm/instructions.cpp
parent8681deddd7a7e749adaf43c7df4313ea54922e62 (diff)
Implement kilp and make it work
Diffstat (limited to 'src/mesa/pipe/llvm/instructions.cpp')
-rw-r--r--src/mesa/pipe/llvm/instructions.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/mesa/pipe/llvm/instructions.cpp b/src/mesa/pipe/llvm/instructions.cpp
index 7a70aec8781..c8d1992587f 100644
--- a/src/mesa/pipe/llvm/instructions.cpp
+++ b/src/mesa/pipe/llvm/instructions.cpp
@@ -864,6 +864,15 @@ llvm::Value * Instructions::scs(llvm::Value *in)
return call;
}
+llvm::Value * Instructions::kilp(llvm::Value *in)
+{
+ llvm::Function *func = m_mod->getFunction("kilp");
+ assert(func);
+
+ CallInst *call = m_builder.CreateCall(func, in, name("kilpres"));
+ call->setTailCall(false);
+ return call;
+}
llvm::Value * Instructions::sin(llvm::Value *in)
{
@@ -876,3 +885,4 @@ llvm::Value * Instructions::sin(llvm::Value *in)
}
#endif //MESA_LLVM
+