Using the writemask in the sampler results in packet VGPRS. For now just sample all components and let llvm chose the right one.
Signed-off-by: Christian König <[email protected]> --- src/gallium/drivers/radeonsi/radeonsi_shader.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/radeonsi/radeonsi_shader.c b/src/gallium/drivers/radeonsi/radeonsi_shader.c index 522016e..c19a4c2 100644 --- a/src/gallium/drivers/radeonsi/radeonsi_shader.c +++ b/src/gallium/drivers/radeonsi/radeonsi_shader.c @@ -519,8 +519,8 @@ static void tex_fetch_args( LLVMValueRef offset; /* WriteMask */ - emit_data->args[0] = lp_build_const_int32(bld_base->base.gallivm, - emit_data->inst->Dst[0].Register.WriteMask); + /* XXX: should be optimized using emit_data->inst->Dst[0].Register.WriteMask*/ + emit_data->args[0] = lp_build_const_int32(bld_base->base.gallivm, 0xf); /* Coordinates */ /* XXX: Not all sample instructions need 4 address arguments. */ -- 1.7.9.5 _______________________________________________ mesa-dev mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-dev
