ac/llvm: cast tes_u/v_replaced to float

Otherwise LLVM float ops fail to operate on them.

Acked-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17651>
This commit is contained in:
Qiang Yu 2022-06-15 17:51:25 +08:00 committed by Marge Bot
parent f75452918b
commit b5c10a9028

View file

@ -4228,8 +4228,8 @@ static void visit_intrinsic(struct ac_nir_context *ctx, nir_intrinsic_instr *ins
ctx->instance_id_replaced = get_src(ctx, instr->src[1]);
break;
case nir_intrinsic_overwrite_tes_arguments_amd:
ctx->tes_u_replaced = get_src(ctx, instr->src[0]);
ctx->tes_v_replaced = get_src(ctx, instr->src[1]);
ctx->tes_u_replaced = ac_to_float(&ctx->ac, get_src(ctx, instr->src[0]));
ctx->tes_v_replaced = ac_to_float(&ctx->ac, get_src(ctx, instr->src[1]));
ctx->tes_rel_patch_id_replaced = get_src(ctx, instr->src[2]);
ctx->tes_patch_id_replaced = get_src(ctx, instr->src[3]);
break;