From 1797ce1e245684a13f0c1156d9ffd2b38c1ace80 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Thu, 10 Jun 2004 01:57:38 +0000 Subject: [PATCH] Share some code git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14106 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/VMCore/iOperators.cpp | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/lib/VMCore/iOperators.cpp b/lib/VMCore/iOperators.cpp index b2569e61836..afbeb9707cb 100644 --- a/lib/VMCore/iOperators.cpp +++ b/lib/VMCore/iOperators.cpp @@ -73,17 +73,9 @@ BinaryOperator *BinaryOperator::create(BinaryOps Op, Value *S1, Value *S2, BinaryOperator *BinaryOperator::create(BinaryOps Op, Value *S1, Value *S2, const std::string &Name, BasicBlock *InsertAtEnd) { - assert(S1->getType() == S2->getType() && - "Cannot create binary operator with two operands of differing type!"); - switch (Op) { - // Binary comparison operators... - case SetLT: case SetGT: case SetLE: - case SetGE: case SetEQ: case SetNE: - return new SetCondInst(Op, S1, S2, Name, InsertAtEnd); - - default: - return new BinaryOperator(Op, S1, S2, S1->getType(), Name, InsertAtEnd); - } + BinaryOperator *Res = create(Op, S1, S2, Name); + InsertAtEnd->getInstList().push_back(Res); + return Res; } BinaryOperator *BinaryOperator::createNeg(Value *Op, const std::string &Name,