nir_intrinsic_load_tess_coord always returns a v3i32. Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com> --- src/amd/common/ac_nir_to_llvm.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-)
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c index 5bd5171438..5d08e36c2d 100644 --- a/src/amd/common/ac_nir_to_llvm.c +++ b/src/amd/common/ac_nir_to_llvm.c @@ -4242,8 +4242,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 @@ -4486,13 +4485,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; -- 2.16.1 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev