-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 09/08/2011 03:49 PM, Kenneth Graunke wrote:
> Signed-off-by: Kenneth Graunke <[email protected]> --- 
> src/mesa/drivers/dri/i965/brw_fs_visitor.cpp |   23
> ++++++++++++++++++++--- 1 files changed, 20 insertions(+), 3
> deletions(-)
> 
> diff --git a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
> b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp index
> d413bc4..31a2297 100644 ---
> a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp +++
> b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp @@ -958,12 +958,29
> @@ fs_visitor::emit_texture_gen7(ir_texture *ir, fs_reg dst, fs_reg
> coordinate, mlen += reg_width; break; case ir_txf: -
> assert(!"GLSL 1.30 features unsupported"); +      /* Unfortunately,
> the parameters for LD are intermixed: u, lod, v, r. */ +
> fs_inst *inst = emit(BRW_OPCODE_MOV, +                           fs_reg(MRF, 
> base_mrf +
> mlen, BRW_REGISTER_TYPE_D), +                    coordinate); +
> coordinate.reg_offset++; +      mlen += reg_width; + +
> ir->lod_info.lod->accept(this); +      emit(BRW_OPCODE_MOV,
> fs_reg(MRF, base_mrf + mlen, BRW_REGISTER_TYPE_D), this->result); +
> mlen += reg_width; + +      for (int i = 1; i <
> ir->coordinate->type->vector_elements; i++) { +        fs_inst *inst =
> emit(BRW_OPCODE_MOV, +                              fs_reg(MRF, base_mrf + 
> mlen,
> BRW_REGISTER_TYPE_D), +                             coordinate); +
> coordinate.reg_offset++; +     mlen += reg_width; +      } break; }
> 
> /* Set up the coordinate (except for TXD where it was done earlier)
> */ -   if (ir->op != ir_txd && ir->op != ir_txs) { +   if (ir->op
> != ir_txd && ir->op != ir_txs && ir->op != ir_txf) {

I think the comment is getting a bit stale. :)

> for (int i = 0; i < ir->coordinate->type->vector_elements; i++) { 
> fs_inst *inst = emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), 
> coordinate); @@ -981,7 +998,7 @@
> fs_visitor::emit_texture_gen7(ir_texture *ir, fs_reg dst, fs_reg
> coordinate, case ir_txb: inst = emit(FS_OPCODE_TXB, dst); break; 
> case ir_txl: inst = emit(FS_OPCODE_TXL, dst); break; case ir_txd:
> inst = emit(FS_OPCODE_TXD, dst); break; -   case ir_txf:
> assert(!"TXF unsupported."); break; +   case ir_txf: inst =
> emit(FS_OPCODE_TXF, dst); break; case ir_txs: inst =
> emit(FS_OPCODE_TXS, dst); break; } inst->base_mrf = base_mrf;

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk5qmoYACgkQX1gOwKyEAw8UswCfQ2JDBCY9PXX73XT9R7GQUn70
47UAn3iab2+FePc2DljDeOFZWNT8j13w
=zzj5
-----END PGP SIGNATURE-----
_______________________________________________
mesa-dev mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to