From: Samuel Pitoiset Date: Fri, 9 Feb 2018 12:54:24 +0000 (+0100) Subject: ac/nir: remove useless bitcast in load_tess_coord() X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1e69db003da22c9068e5fd08bcf217442da5712c;p=mesa.git ac/nir: remove useless bitcast in load_tess_coord() nir_intrinsic_load_tess_coord always returns a v3i32. Signed-off-by: Samuel Pitoiset Reviewed-by: Bas Nieuwenhuizen --- diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c index f99c9d3d692..dff9fd2ee34 100644 --- a/src/amd/common/ac_nir_to_llvm.c +++ b/src/amd/common/ac_nir_to_llvm.c @@ -4243,8 +4243,7 @@ load_tess_coord(struct ac_shader_abi *abi, LLVMTypeRef type, coord[2] = LLVMBuildFSub(ctx->builder, ctx->ac.f32_1, LLVMBuildFAdd(ctx->builder, coord[0], coord[1], ""), ""); - LLVMValueRef result = ac_build_gather_values(&ctx->ac, coord, num_components); - return LLVMBuildBitCast(ctx->builder, result, type, ""); + return ac_build_gather_values(&ctx->ac, coord, 3); } static LLVMValueRef @@ -4487,13 +4486,9 @@ static void visit_intrinsic(struct ac_nir_context *ctx, case nir_intrinsic_end_primitive: ctx->abi->emit_primitive(ctx->abi, nir_intrinsic_stream_id(instr)); break; - case nir_intrinsic_load_tess_coord: { - LLVMTypeRef type = ctx->nctx ? - get_def_type(ctx->nctx->nir, &instr->dest.ssa) : - NULL; - result = ctx->abi->load_tess_coord(ctx->abi, type, instr->num_components); + case nir_intrinsic_load_tess_coord: + result = ctx->abi->load_tess_coord(ctx->abi, NULL, 0); break; - } case nir_intrinsic_load_tess_level_outer: result = ctx->abi->load_tess_level(ctx->abi, VARYING_SLOT_TESS_LEVEL_OUTER); break;