diff options
author | Zack Rusin <zack@tungstengraphics.com> | 2007-11-06 06:06:04 -0500 |
---|---|---|
committer | Zack Rusin <zack@tungstengraphics.com> | 2007-12-11 09:49:33 -0500 |
commit | 1f30efb7365075de0ae119a40ab70a16bc547670 (patch) | |
tree | 37d55d99729c36993ff279469d88635b690b633d /src/mesa/pipe/llvm/gallivm.cpp | |
parent | 8681deddd7a7e749adaf43c7df4313ea54922e62 (diff) |
Implement kilp and make it work
Diffstat (limited to 'src/mesa/pipe/llvm/gallivm.cpp')
-rw-r--r-- | src/mesa/pipe/llvm/gallivm.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/mesa/pipe/llvm/gallivm.cpp b/src/mesa/pipe/llvm/gallivm.cpp index 65c95074fd..a1101a7ba8 100644 --- a/src/mesa/pipe/llvm/gallivm.cpp +++ b/src/mesa/pipe/llvm/gallivm.cpp @@ -432,7 +432,11 @@ translate_instruction(llvm::Module *module, break; case TGSI_OPCODE_DDY: break; - case TGSI_OPCODE_KILP: + case TGSI_OPCODE_KILP: { + out = instr->kilp(inputs[0]); + storage->setKilElement(out); + return; + } break; case TGSI_OPCODE_PK2H: break; @@ -929,11 +933,9 @@ int gallivm_fragment_shader_exec(struct gallivm_prog *prog, fragment_shader_runner runner = reinterpret_cast<fragment_shader_runner>(prog->function); assert(runner); - runner(fx, fy, dests, inputs, prog->num_interp, - consts, prog->num_consts, - samplers); - - return 0; + return runner(fx, fy, dests, inputs, prog->num_interp, + consts, prog->num_consts, + samplers); } void gallivm_prog_dump(struct gallivm_prog *prog, const char *file_prefix) |