ac/nir: add support for bias/lod with texture gather

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5147>
This commit is contained in:
Samuel Pitoiset 2020-05-20 15:50:50 +02:00
parent 41dc3ce449
commit e99c818cf0
1 changed files with 3 additions and 3 deletions

View File

@ -1470,7 +1470,8 @@ static LLVMValueRef build_tex_intrinsic(struct ac_nir_context *ctx,
break;
case nir_texop_tg4:
args->opcode = ac_image_gather4;
args->level_zero = true;
if (!args->lod && !args->bias)
args->level_zero = true;
break;
case nir_texop_lod:
args->opcode = ac_image_get_lod;
@ -4448,8 +4449,7 @@ static void visit_tex(struct ac_nir_context *ctx, nir_tex_instr *instr)
offset_src = i;
break;
case nir_tex_src_bias:
if (instr->op == nir_texop_txb)
args.bias = get_src(ctx, instr->src[i].src);
args.bias = get_src(ctx, instr->src[i].src);
break;
case nir_tex_src_lod: {
if (nir_src_is_const(instr->src[i].src) && nir_src_as_uint(instr->src[i].src) == 0)