[llvm] Generate correct LLVM IR for OP_XEQUAL. (mono/mono#18217)
authorZoltan Varga <vargaz@gmail.com>
Mon, 16 Dec 2019 23:52:02 +0000 (00:52 +0100)
committerGitHub <noreply@github.com>
Mon, 16 Dec 2019 23:52:02 +0000 (00:52 +0100)
Commit migrated from https://github.com/mono/mono/commit/aa9227f7c8af76105ded6dbd62c1cf5ae76bc54b

src/mono/mono/mini/mini-llvm.c

index d58c07b..37b5f1e 100644 (file)
@@ -7474,7 +7474,7 @@ process_bb (EmitContext *ctx, MonoBasicBlock *bb)
                        // Extract [0]
                        LLVMValueRef first_elem = LLVMBuildExtractElement (builder, cmp, LLVMConstInt (LLVMInt32Type (), 0, FALSE), "");
                        // convert to 0/1
-                       LLVMValueRef cmp_zero = LLVMBuildICmp (builder, LLVMIntNE, first_elem, LLVMConstInt (LLVMInt8Type (), 0, FALSE), "");
+                       LLVMValueRef cmp_zero = LLVMBuildICmp (builder, LLVMIntNE, first_elem, LLVMConstInt (elemt, 0, FALSE), "");
                        values [ins->dreg] = LLVMBuildZExt (builder, cmp_zero, LLVMInt8Type (), "");
                        break;
                }