summaryrefslogtreecommitdiff
path: root/src/mesa/pipe/llvm/gallivm.cpp
diff options
context:
space:
mode:
authorZack Rusin <zack@tungstengraphics.com>2007-11-02 11:47:09 -0400
committerZack Rusin <zack@tungstengraphics.com>2007-11-02 11:47:09 -0400
commit5c7bfb06e087ce4162590359ad75d1fca98f3549 (patch)
tree31156ef549c67612c0f396d813d5b916ba482dbe /src/mesa/pipe/llvm/gallivm.cpp
parentcf363ba30746ee0fd46b97986ea9fd753e093039 (diff)
Implement COS and CMP opcode.
There's some weird rounding issue with COS that I can't figure out.
Diffstat (limited to 'src/mesa/pipe/llvm/gallivm.cpp')
-rw-r--r--src/mesa/pipe/llvm/gallivm.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/mesa/pipe/llvm/gallivm.cpp b/src/mesa/pipe/llvm/gallivm.cpp
index b5e90b037e..a737b5631f 100644
--- a/src/mesa/pipe/llvm/gallivm.cpp
+++ b/src/mesa/pipe/llvm/gallivm.cpp
@@ -424,7 +424,9 @@ translate_instruction(llvm::Module *module,
out = instr->dph(inputs[0], inputs[1]);
}
break;
- case TGSI_OPCODE_COS:
+ case TGSI_OPCODE_COS: {
+ out = instr->cos(inputs[0]);
+ }
break;
case TGSI_OPCODE_DDX:
break;
@@ -496,7 +498,9 @@ translate_instruction(llvm::Module *module,
break;
case TGSI_OPCODE_SSG:
break;
- case TGSI_OPCODE_CMP:
+ case TGSI_OPCODE_CMP: {
+ out = instr->cmp(inputs[0], inputs[1], inputs[2]);
+ }
break;
case TGSI_OPCODE_SCS:
break;