diff options
Diffstat (limited to 'llvm/unittests/IR')
| -rw-r--r-- | llvm/unittests/IR/IRBuilderTest.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/llvm/unittests/IR/IRBuilderTest.cpp b/llvm/unittests/IR/IRBuilderTest.cpp index 1ea92940b88..4ceff2d69b8 100644 --- a/llvm/unittests/IR/IRBuilderTest.cpp +++ b/llvm/unittests/IR/IRBuilderTest.cpp @@ -222,6 +222,16 @@ TEST_F(IRBuilderTest, ConstrainedFP) { II = cast<IntrinsicInst>(VInt); EXPECT_EQ(II->getIntrinsicID(), Intrinsic::experimental_constrained_fptosi); + VDouble = Builder.CreateUIToFP(VInt, Builder.getDoubleTy()); + ASSERT_TRUE(isa<IntrinsicInst>(VDouble)); + II = cast<IntrinsicInst>(VDouble); + EXPECT_EQ(II->getIntrinsicID(), Intrinsic::experimental_constrained_uitofp); + + VDouble = Builder.CreateSIToFP(VInt, Builder.getDoubleTy()); + ASSERT_TRUE(isa<IntrinsicInst>(VDouble)); + II = cast<IntrinsicInst>(VDouble); + EXPECT_EQ(II->getIntrinsicID(), Intrinsic::experimental_constrained_sitofp); + V = Builder.CreateFPTrunc(VDouble, Type::getFloatTy(Ctx)); ASSERT_TRUE(isa<IntrinsicInst>(V)); II = cast<IntrinsicInst>(V); |

