diff options
Diffstat (limited to 'llvm/unittests')
| -rw-r--r-- | llvm/unittests/IR/InstructionsTest.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/llvm/unittests/IR/InstructionsTest.cpp b/llvm/unittests/IR/InstructionsTest.cpp index afd579400ff..5595e8ce93c 100644 --- a/llvm/unittests/IR/InstructionsTest.cpp +++ b/llvm/unittests/IR/InstructionsTest.cpp @@ -1115,5 +1115,20 @@ if.end: EXPECT_EQ(ArgBA->getBasicBlock(), &IfThen); } +TEST(InstructionsTest, UnaryOperator) { + LLVMContext Context; + IRBuilder<> Builder(Context); + Instruction *I = Builder.CreatePHI(Builder.getDoubleTy(), 0); + Value *F = Builder.CreateFNeg(I); + + EXPECT_TRUE(isa<Value>(F)); + EXPECT_TRUE(isa<Instruction>(F)); + EXPECT_TRUE(isa<UnaryInstruction>(F)); + EXPECT_TRUE(isa<UnaryOperator>(F)); + EXPECT_FALSE(isa<BinaryOperator>(F)); + + F->deleteValue(); +} + } // end anonymous namespace } // end namespace llvm |

