V3: Fixed weird whitespace Signed-off-by: Chris Forbes <chr...@ijw.co.nz> --- src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp b/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp index edb66ea..bfae35c 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp +++ b/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp @@ -2124,6 +2124,17 @@ vec4_visitor::visit(ir_texture *ir) emit(inst); + /* fixup num layers (z) for cube arrays: hardware returns faces * layers; + * spec requires layers. */ + if (ir->op == ir_txs) { + glsl_type const *type = ir->sampler->variable_referenced()->type; + if (type->sampler_dimensionality == GLSL_SAMPLER_DIM_CUBE && + type->sampler_array) + emit_math(SHADER_OPCODE_INT_QUOTIENT, + with_writemask(inst->dst, WRITEMASK_Z), + src_reg(inst->dst), src_reg(6)); + } + swizzle_result(ir, src_reg(inst->dst), sampler); } -- 1.8.0.1 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev