mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-09 13:33:17 +00:00
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
This commit is contained in:
parent
f86f211ec2
commit
c83ad0d8e7
@ -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<PointerType>(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);
|
||||
|
@ -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<CmpInst>::op_begin(this),
|
||||
OperandTraits<CmpInst>::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<CmpInst>::op_begin(this),
|
||||
OperandTraits<CmpInst>::operands(this),
|
||||
InsertAtEnd) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user