diff options
author | marha <marha@users.sourceforge.net> | 2013-03-06 08:39:27 +0100 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2013-03-06 08:39:27 +0100 |
commit | b5acb643ab1a86b31409900a7c03281fcc48c8e3 (patch) | |
tree | 85db12bb6d437f616b2f91d547426d0e2d3173e6 /mesalib/src/mesa/state_tracker | |
parent | 6ddd685990187ec5f5996a16951a3d780c820272 (diff) | |
parent | 84798668341b15890d625e3bffbbc2d19f434568 (diff) | |
download | vcxsrv-b5acb643ab1a86b31409900a7c03281fcc48c8e3.tar.gz vcxsrv-b5acb643ab1a86b31409900a7c03281fcc48c8e3.tar.bz2 vcxsrv-b5acb643ab1a86b31409900a7c03281fcc48c8e3.zip |
Merge remote-tracking branch 'origin/released'
* origin/released:
fontconfig libfontenc mesa xserver git update 6 Mar 2013
Diffstat (limited to 'mesalib/src/mesa/state_tracker')
-rw-r--r-- | mesalib/src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/mesalib/src/mesa/state_tracker/st_glsl_to_tgsi.cpp b/mesalib/src/mesa/state_tracker/st_glsl_to_tgsi.cpp index c41b5833e..131ecb22a 100644 --- a/mesalib/src/mesa/state_tracker/st_glsl_to_tgsi.cpp +++ b/mesalib/src/mesa/state_tracker/st_glsl_to_tgsi.cpp @@ -2714,16 +2714,28 @@ glsl_to_tgsi_visitor::visit(ir_texture *ir) switch (ir->op) { case ir_tex: opcode = (is_cube_array && ir->shadow_comparitor) ? TGSI_OPCODE_TEX2 : TGSI_OPCODE_TEX; + if (ir->offset) { + ir->offset->accept(this); + offset = this->result; + } break; case ir_txb: opcode = is_cube_array ? TGSI_OPCODE_TXB2 : TGSI_OPCODE_TXB; ir->lod_info.bias->accept(this); lod_info = this->result; + if (ir->offset) { + ir->offset->accept(this); + offset = this->result; + } break; case ir_txl: opcode = is_cube_array ? TGSI_OPCODE_TXL2 : TGSI_OPCODE_TXL; ir->lod_info.lod->accept(this); lod_info = this->result; + if (ir->offset) { + ir->offset->accept(this); + offset = this->result; + } break; case ir_txd: opcode = TGSI_OPCODE_TXD; @@ -2731,6 +2743,10 @@ glsl_to_tgsi_visitor::visit(ir_texture *ir) dx = this->result; ir->lod_info.grad.dPdy->accept(this); dy = this->result; + if (ir->offset) { + ir->offset->accept(this); + offset = this->result; + } break; case ir_txs: opcode = TGSI_OPCODE_TXQ; @@ -2742,8 +2758,8 @@ glsl_to_tgsi_visitor::visit(ir_texture *ir) ir->lod_info.lod->accept(this); lod_info = this->result; if (ir->offset) { - ir->offset->accept(this); - offset = this->result; + ir->offset->accept(this); + offset = this->result; } break; case ir_txf_ms: |