1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00

Whoops, fixed bad merge

llvm-svn: 168816
This commit is contained in:
Michael Ilseman 2012-11-28 21:21:18 +00:00
parent 8ff81910ee
commit 19c9ae38cf

View File

@ -111,61 +111,6 @@ TEST_F(IRBuilderTest, GetIntTy) {
EXPECT_EQ(IntPtrTy, IntegerType::get(getGlobalContext(), IntPtrBitSize)); EXPECT_EQ(IntPtrTy, IntegerType::get(getGlobalContext(), IntPtrBitSize));
} }
TEST_F(IRBuilderTest, FastMathFlags) {
IRBuilder<> Builder(BB);
Value *F;
Instruction *FDiv, *FAdd;
F = Builder.CreateLoad(GV);
F = Builder.CreateFAdd(F, F);
EXPECT_FALSE(Builder.GetFastMathFlags().any());
ASSERT_TRUE(isa<Instruction>(F));
FAdd = cast<Instruction>(F);
EXPECT_FALSE(FAdd->hasNoNaNs());
FastMathFlags FMF;
Builder.SetFastMathFlags(FMF);
F = Builder.CreateFAdd(F, F);
EXPECT_FALSE(Builder.GetFastMathFlags().any());
FMF.UnsafeAlgebra = true;
Builder.SetFastMathFlags(FMF);
F = Builder.CreateFAdd(F, F);
EXPECT_TRUE(Builder.GetFastMathFlags().any());
ASSERT_TRUE(isa<Instruction>(F));
FAdd = cast<Instruction>(F);
EXPECT_TRUE(FAdd->hasNoNaNs());
F = Builder.CreateFDiv(F, F);
EXPECT_TRUE(Builder.GetFastMathFlags().any());
EXPECT_TRUE(Builder.GetFastMathFlags().UnsafeAlgebra);
ASSERT_TRUE(isa<Instruction>(F));
FDiv = cast<Instruction>(F);
EXPECT_TRUE(FDiv->hasAllowReciprocal());
Builder.ClearFastMathFlags();
F = Builder.CreateFDiv(F, F);
ASSERT_TRUE(isa<Instruction>(F));
FDiv = cast<Instruction>(F);
EXPECT_FALSE(FDiv->hasAllowReciprocal());
FMF.clear();
FMF.AllowReciprocal = true;
Builder.SetFastMathFlags(FMF);
F = Builder.CreateFDiv(F, F);
EXPECT_TRUE(Builder.GetFastMathFlags().any());
EXPECT_TRUE(Builder.GetFastMathFlags().AllowReciprocal);
ASSERT_TRUE(isa<Instruction>(F));
FDiv = cast<Instruction>(F);
EXPECT_TRUE(FDiv->hasAllowReciprocal());
}
TEST_F(IRBuilderTest, FastMathFlags) { TEST_F(IRBuilderTest, FastMathFlags) {
IRBuilder<> Builder(BB); IRBuilder<> Builder(BB);
Value *F; Value *F;