From 00c014aab250059636675a3cce70cbf7c223f043 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Timur=20Krist=C3=B3f?= Date: Fri, 19 Feb 2021 17:30:32 +0100 Subject: [PATCH] ac/llvm: Make sure to always emit integer comparison for nir_op_ieq. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Timur Kristóf Reviewed-by: Marek Olšák Part-of: --- src/amd/llvm/ac_nir_to_llvm.c | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/src/amd/llvm/ac_nir_to_llvm.c b/src/amd/llvm/ac_nir_to_llvm.c index 64b521d..7d239ed 100644 --- a/src/amd/llvm/ac_nir_to_llvm.c +++ b/src/amd/llvm/ac_nir_to_llvm.c @@ -139,17 +139,8 @@ static LLVMValueRef get_alu_src(struct ac_nir_context *ctx, nir_alu_src src, static LLVMValueRef emit_int_cmp(struct ac_llvm_context *ctx, LLVMIntPredicate pred, LLVMValueRef src0, LLVMValueRef src1) { - LLVMTypeRef src0_type = LLVMTypeOf(src0); - LLVMTypeRef src1_type = LLVMTypeOf(src1); - - if (LLVMGetTypeKind(src0_type) == LLVMPointerTypeKind && - LLVMGetTypeKind(src1_type) != LLVMPointerTypeKind) { - src1 = LLVMBuildIntToPtr(ctx->builder, src1, src0_type, ""); - } else if (LLVMGetTypeKind(src1_type) == LLVMPointerTypeKind && - LLVMGetTypeKind(src0_type) != LLVMPointerTypeKind) { - src0 = LLVMBuildIntToPtr(ctx->builder, src0, src1_type, ""); - } - + src0 = ac_to_integer(ctx, src0); + src1 = ac_to_integer(ctx, src1); return LLVMBuildICmp(ctx->builder, pred, src0, src1, ""); } -- 2.7.4