From 9d93d2a4049c0635e75c8eff85c8be7603599340 Mon Sep 17 00:00:00 2001 From: Connor Abbott Date: Wed, 5 Jun 2019 16:54:24 +0200 Subject: [PATCH] ac/nir: Remove stale TODO While we're here, copy the comment explaining this from radeonsi. Reviewed-by: Samuel Pitoiset --- src/amd/common/ac_nir_to_llvm.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c index dd673cf..360e139 100644 --- a/src/amd/common/ac_nir_to_llvm.c +++ b/src/amd/common/ac_nir_to_llvm.c @@ -3895,7 +3895,13 @@ static void visit_tex(struct ac_nir_context *ctx, nir_tex_instr *instr) args.offset = NULL; } - /* TODO TG4 support */ + /* DMASK was repurposed for GATHER4. 4 components are always + * returned and DMASK works like a swizzle - it selects + * the component to fetch. The only valid DMASK values are + * 1=red, 2=green, 4=blue, 8=alpha. (e.g. 1 returns + * (red,red,red,red) etc.) The ISA document doesn't mention + * this. + */ args.dmask = 0xf; if (instr->op == nir_texop_tg4) { if (instr->is_shadow) -- 2.7.4