Remove specializations of ProfileSummary
This removes the subclasses of ProfileSummary, moves the members of the derived classes to the base class.
Differential Revision: http://reviews.llvm.org/D20390
llvm-svn: 270143
diff --git a/llvm/unittests/ProfileData/InstrProfTest.cpp b/llvm/unittests/ProfileData/InstrProfTest.cpp
index 9ef3487..c13f312 100644
--- a/llvm/unittests/ProfileData/InstrProfTest.cpp
+++ b/llvm/unittests/ProfileData/InstrProfTest.cpp
@@ -156,10 +156,11 @@
auto Profile = Writer.writeBuffer();
readProfile(std::move(Profile));
- auto VerifySummary = [](InstrProfSummary &IPS) mutable {
+ auto VerifySummary = [](ProfileSummary &IPS) mutable {
+ ASSERT_EQ(ProfileSummary::PSK_Instr, IPS.getKind());
ASSERT_EQ(2305843009213693952U, IPS.getMaxFunctionCount());
- ASSERT_EQ(2305843009213693952U, IPS.getMaxBlockCount());
- ASSERT_EQ(10U, IPS.getNumBlocks());
+ ASSERT_EQ(2305843009213693952U, IPS.getMaxCount());
+ ASSERT_EQ(10U, IPS.getNumCounts());
ASSERT_EQ(4539628424389557499U, IPS.getTotalCount());
std::vector<ProfileSummaryEntry> &Details = IPS.getDetailedSummary();
uint32_t Cutoff = 800000;
@@ -180,7 +181,7 @@
ASSERT_EQ(288230376151711744U, NinetyFivePerc->MinCount);
ASSERT_EQ(72057594037927936U, NinetyNinePerc->MinCount);
};
- InstrProfSummary &PS = Reader->getSummary();
+ ProfileSummary &PS = Reader->getSummary();
VerifySummary(PS);
// Test that conversion of summary to and from Metadata works.
@@ -189,10 +190,8 @@
ASSERT_TRUE(MD);
ProfileSummary *PSFromMD = ProfileSummary::getFromMD(MD);
ASSERT_TRUE(PSFromMD);
- ASSERT_TRUE(isa<InstrProfSummary>(PSFromMD));
- InstrProfSummary *IPS = cast<InstrProfSummary>(PSFromMD);
- VerifySummary(*IPS);
- delete IPS;
+ VerifySummary(*PSFromMD);
+ delete PSFromMD;
// Test that summary can be attached to and read back from module.
Module M("my_module", Context);
@@ -201,10 +200,8 @@
ASSERT_TRUE(MD);
PSFromMD = ProfileSummary::getFromMD(MD);
ASSERT_TRUE(PSFromMD);
- ASSERT_TRUE(isa<InstrProfSummary>(PSFromMD));
- IPS = cast<InstrProfSummary>(PSFromMD);
- VerifySummary(*IPS);
- delete IPS;
+ VerifySummary(*PSFromMD);
+ delete PSFromMD;
}
static const char callee1[] = "callee1";