diff options
author | Andreas Neustifter <astifter-llvm@gmx.at> | 2009-09-03 08:41:05 +0000 |
---|---|---|
committer | Andreas Neustifter <astifter-llvm@gmx.at> | 2009-09-03 08:41:05 +0000 |
commit | 4c2c53353e8998a94058c110bdddcbc84e3cd3fc (patch) | |
tree | 3993e25434693a36fa403b5bae0e863ae3fb59a1 | |
parent | 3a22ff3eac79b65708352283168bfac6652ee5b9 (diff) | |
download | external_llvm-4c2c53353e8998a94058c110bdddcbc84e3cd3fc.zip external_llvm-4c2c53353e8998a94058c110bdddcbc84e3cd3fc.tar.gz external_llvm-4c2c53353e8998a94058c110bdddcbc84e3cd3fc.tar.bz2 |
Code Cleanup.
(See http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20090831/086139.html)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80909 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Analysis/ProfileInfoLoader.cpp | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/lib/Analysis/ProfileInfoLoader.cpp b/lib/Analysis/ProfileInfoLoader.cpp index dfb79ff..7ecfed0 100644 --- a/lib/Analysis/ProfileInfoLoader.cpp +++ b/lib/Analysis/ProfileInfoLoader.cpp @@ -32,6 +32,13 @@ static inline unsigned ByteSwap(unsigned Var, bool Really) { ((Var & (255<<24)) >> 24); } +static const unsigned AddCounts(unsigned A, unsigned B) { + // If either value is undefined, use the other. + if (A == ~0U) return B; + if (B == ~0U) return A; + return A + B; +} + static void ReadProfilingBlock(const char *ToolName, FILE *F, bool ShouldByteSwap, std::vector<unsigned> &Data) { @@ -62,25 +69,11 @@ static void ReadProfilingBlock(const char *ToolName, FILE *F, // Accumulate the data we just read into the data. if (!ShouldByteSwap) { for (unsigned i = 0; i != NumEntries; ++i) { - unsigned data = TempSpace[i]; - if (data != (unsigned)-1) { // only load data if its not MissingVal - if (Data[i] == (unsigned)-1) { - Data[i] = data; // if data is still initialised - } else { - Data[i] += data; - } - } + Data[i] = AddCounts(TempSpace[i], Data[i]); } } else { for (unsigned i = 0; i != NumEntries; ++i) { - unsigned data = ByteSwap(TempSpace[i], true); - if (data != (unsigned)-1) { // only load data if its not MissingVal - if (Data[i] == (unsigned)-1) { - Data[i] = data; - } else { - Data[i] += data; - } - } + Data[i] = AddCounts(ByteSwap(TempSpace[i], true), Data[i]); } } } |