From c83ad0d8e7c845c53874d150df2f0503cc77f6e6 Mon Sep 17 00:00:00 2001 From: Nate Begeman Date: Mon, 12 May 2008 20:11:05 +0000 Subject: [PATCH] Pointer comparisons should be handled by icmp, not vicmp :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50994 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Bitcode/Reader/BitcodeReader.cpp | 2 +- lib/VMCore/Instructions.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/Bitcode/Reader/BitcodeReader.cpp b/lib/Bitcode/Reader/BitcodeReader.cpp index 2ca7a00e035..d9936ef825a 100644 --- a/lib/Bitcode/Reader/BitcodeReader.cpp +++ b/lib/Bitcode/Reader/BitcodeReader.cpp @@ -1359,7 +1359,7 @@ bool BitcodeReader::ParseFunctionBody(Function *F) { OpNum+1 != Record.size()) return Error("Invalid CMP record"); - if (LHS->getType()->isInteger()) + if (LHS->getType()->isInteger() || isa(LHS->getType())) I = new ICmpInst((ICmpInst::Predicate)Record[OpNum], LHS, RHS); else if (LHS->getType()->isFloatingPoint()) I = new FCmpInst((FCmpInst::Predicate)Record[OpNum], LHS, RHS); diff --git a/lib/VMCore/Instructions.cpp b/lib/VMCore/Instructions.cpp index 7650ce48069..d34aa593198 100644 --- a/lib/VMCore/Instructions.cpp +++ b/lib/VMCore/Instructions.cpp @@ -2335,7 +2335,7 @@ BitCastInst::BitCastInst( CmpInst::CmpInst(const Type *ty, OtherOps op, unsigned short predicate, Value *LHS, Value *RHS, const std::string &Name, Instruction *InsertBefore) - : Instruction(Type::Int1Ty, op, + : Instruction(ty, op, OperandTraits::op_begin(this), OperandTraits::operands(this), InsertBefore) { @@ -2348,7 +2348,7 @@ CmpInst::CmpInst(const Type *ty, OtherOps op, unsigned short predicate, CmpInst::CmpInst(const Type *ty, OtherOps op, unsigned short predicate, Value *LHS, Value *RHS, const std::string &Name, BasicBlock *InsertAtEnd) - : Instruction(Type::Int1Ty, op, + : Instruction(ty, op, OperandTraits::op_begin(this), OperandTraits::operands(this), InsertAtEnd) { -- 2.34.1