diff options
author | Ilia Mirkin <imirkin@alum.mit.edu> | 2014-04-21 00:28:13 -0400 |
---|---|---|
committer | Ilia Mirkin <imirkin@alum.mit.edu> | 2014-04-26 11:53:34 -0400 |
commit | af38ef907c89ecb1125bf258cafa0793f79a5eb7 (patch) | |
tree | d5cb96bd0d1a8197929d25c14f3c37489cd07d60 /src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp | |
parent | f715a0a39a0f7f19443e7721ae792878ba504eed (diff) |
nvc0: add support for PIPE_CAP_SAMPLE_SHADING
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Diffstat (limited to 'src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp')
-rw-r--r-- | src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp index a4b50ee2082..c258b6b4fef 100644 --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp @@ -113,6 +113,8 @@ private: void emitQUADOP(const Instruction *, uint8_t qOp, uint8_t laneMask); + void emitPIXLD(const Instruction *); + void emitFlow(const Instruction *); inline void defId(const ValueDef&, const int pos); @@ -1130,6 +1132,14 @@ CodeEmitterGK110::emitQUADOP(const Instruction *i, uint8_t qOp, uint8_t laneMask } void +CodeEmitterGK110::emitPIXLD(const Instruction *i) +{ + emitForm_L(i, 0x7f4, 2, Modifier(0)); + code[1] |= i->subOp << 2; + code[1] |= 0x00070000; +} + +void CodeEmitterGK110::emitFlow(const Instruction *i) { const FlowInstruction *f = i->asFlow(); @@ -1684,6 +1694,9 @@ CodeEmitterGK110::emitInstruction(Instruction *insn) case OP_TEXBAR: emitTEXBAR(insn); break; + case OP_PIXLD: + emitPIXLD(insn); + break; case OP_BRA: case OP_CALL: case OP_PRERET: |