From: Michael Gottesman Date: Fri, 13 Dec 2013 23:44:36 +0000 (+0000) Subject: [block-freq] Begin move of BlockFrequency::EntryFreq -> BlockFrequencyImpl::EntryFreq. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=ccf34d22952bee65df527c838a3f413140e20ffe;p=oota-llvm.git [block-freq] Begin move of BlockFrequency::EntryFreq -> BlockFrequencyImpl::EntryFreq. This is a property associated with a function, not with BlockFrequency data. Additionally it loosens the artifical requirement that the entry frequency arbitrarily be the same for every function. There is a series of patches forthcoming updating various code that uses the old way of getting a block frequency to the new location. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@197284 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/Analysis/BlockFrequencyImpl.h b/include/llvm/Analysis/BlockFrequencyImpl.h index 817a44188b8..8be75e60499 100644 --- a/include/llvm/Analysis/BlockFrequencyImpl.h +++ b/include/llvm/Analysis/BlockFrequencyImpl.h @@ -48,7 +48,7 @@ class BlockFrequencyImpl { typedef GraphTraits< Inverse > GT; - const uint32_t EntryFreq; + static const uint64_t EntryFreq = 1 << 14; std::string getBlockName(BasicBlock *BB) const { return BB->getName().str(); @@ -263,7 +263,7 @@ class BlockFrequencyImpl { friend class BlockFrequencyInfo; friend class MachineBlockFrequencyInfo; - BlockFrequencyImpl() : EntryFreq(BlockFrequency::getEntryFrequency()) { } + BlockFrequencyImpl() { } void doFunction(FunctionT *fn, BlockProbInfoT *bpi) { Fn = fn; @@ -312,6 +312,9 @@ class BlockFrequencyImpl { } public: + + uint64_t getEntryFrequency() { return EntryFreq; } + /// getBlockFreq - Return block frequency. Return 0 if we don't have it. BlockFrequency getBlockFreq(const BlockT *BB) const { typename DenseMap::const_iterator