From 20c9ab5fe6a097a4f8f7da745dffa39d830d4d6e Mon Sep 17 00:00:00 2001 From: Chandler Carruth Date: Fri, 14 Aug 2015 02:07:05 +0000 Subject: [PATCH] [PM/AA] Run clang-format over this code to establish a clean baseline for subsequent changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@245005 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Analysis/AliasAnalysisCounter.h | 173 +++++++++---------- lib/Analysis/AliasAnalysisCounter.cpp | 28 ++- 2 files changed, 106 insertions(+), 95 deletions(-) diff --git a/include/llvm/Analysis/AliasAnalysisCounter.h b/include/llvm/Analysis/AliasAnalysisCounter.h index 7a4e04b513d..52b5a93f1ab 100644 --- a/include/llvm/Analysis/AliasAnalysisCounter.h +++ b/include/llvm/Analysis/AliasAnalysisCounter.h @@ -23,101 +23,100 @@ namespace llvm { - class AliasAnalysisCounter : public ModulePass, public AliasAnalysis { - unsigned No, May, Partial, Must; - unsigned NoMR, JustRef, JustMod, MR; - Module *M; - public: - static char ID; // Class identification, replacement for typeinfo - AliasAnalysisCounter() : ModulePass(ID) { - initializeAliasAnalysisCounterPass(*PassRegistry::getPassRegistry()); - No = May = Partial = Must = 0; - NoMR = JustRef = JustMod = MR = 0; - } +class AliasAnalysisCounter : public ModulePass, public AliasAnalysis { + unsigned No, May, Partial, Must; + unsigned NoMR, JustRef, JustMod, MR; + Module *M; - void printLine(const char *Desc, unsigned Val, unsigned Sum) { - errs() << " " << Val << " " << Desc << " responses (" - << Val*100/Sum << "%)\n"; - } - ~AliasAnalysisCounter() override { - unsigned AASum = No+May+Partial+Must; - unsigned MRSum = NoMR+JustRef+JustMod+MR; - if (AASum + MRSum) { // Print a report if any counted queries occurred... - errs() << "\n===== Alias Analysis Counter Report =====\n" - << " Analysis counted:\n" - << " " << AASum << " Total Alias Queries Performed\n"; - if (AASum) { - printLine("no alias", No, AASum); - printLine("may alias", May, AASum); - printLine("partial alias", Partial, AASum); - printLine("must alias", Must, AASum); - errs() << " Alias Analysis Counter Summary: " << No*100/AASum << "%/" - << May*100/AASum << "%/" - << Partial*100/AASum << "%/" - << Must*100/AASum<<"%\n\n"; - } - - errs() << " " << MRSum << " Total MRI_Mod/MRI_Ref Queries Performed\n"; - if (MRSum) { - printLine("no mod/ref", NoMR, MRSum); - printLine("ref", JustRef, MRSum); - printLine("mod", JustMod, MRSum); - printLine("mod/ref", MR, MRSum); - errs() << " MRI_Mod/MRI_Ref Analysis Counter Summary: " - << NoMR * 100 / MRSum << "%/" << JustRef * 100 / MRSum << "%/" - << JustMod * 100 / MRSum << "%/" << MR * 100 / MRSum - << "%\n\n"; - } +public: + static char ID; // Class identification, replacement for typeinfo + AliasAnalysisCounter() : ModulePass(ID) { + initializeAliasAnalysisCounterPass(*PassRegistry::getPassRegistry()); + No = May = Partial = Must = 0; + NoMR = JustRef = JustMod = MR = 0; + } + + void printLine(const char *Desc, unsigned Val, unsigned Sum) { + errs() << " " << Val << " " << Desc << " responses (" << Val * 100 / Sum + << "%)\n"; + } + ~AliasAnalysisCounter() override { + unsigned AASum = No + May + Partial + Must; + unsigned MRSum = NoMR + JustRef + JustMod + MR; + if (AASum + MRSum) { // Print a report if any counted queries occurred... + errs() << "\n===== Alias Analysis Counter Report =====\n" + << " Analysis counted:\n" + << " " << AASum << " Total Alias Queries Performed\n"; + if (AASum) { + printLine("no alias", No, AASum); + printLine("may alias", May, AASum); + printLine("partial alias", Partial, AASum); + printLine("must alias", Must, AASum); + errs() << " Alias Analysis Counter Summary: " << No * 100 / AASum + << "%/" << May * 100 / AASum << "%/" << Partial * 100 / AASum + << "%/" << Must * 100 / AASum << "%\n\n"; } - } - bool runOnModule(Module &M) override { - this->M = &M; - InitializeAliasAnalysis(this, &M.getDataLayout()); - return false; + errs() << " " << MRSum << " Total MRI_Mod/MRI_Ref Queries Performed\n"; + if (MRSum) { + printLine("no mod/ref", NoMR, MRSum); + printLine("ref", JustRef, MRSum); + printLine("mod", JustMod, MRSum); + printLine("mod/ref", MR, MRSum); + errs() << " MRI_Mod/MRI_Ref Analysis Counter Summary: " + << NoMR * 100 / MRSum << "%/" << JustRef * 100 / MRSum << "%/" + << JustMod * 100 / MRSum << "%/" << MR * 100 / MRSum << "%\n\n"; + } } + } - void getAnalysisUsage(AnalysisUsage &AU) const override { - AliasAnalysis::getAnalysisUsage(AU); - AU.addRequired(); - AU.setPreservesAll(); - } + bool runOnModule(Module &M) override { + this->M = &M; + InitializeAliasAnalysis(this, &M.getDataLayout()); + return false; + } - /// getAdjustedAnalysisPointer - This method is used when a pass implements - /// an analysis interface through multiple inheritance. If needed, it - /// should override this to adjust the this pointer as needed for the - /// specified pass info. - void *getAdjustedAnalysisPointer(AnalysisID PI) override { - if (PI == &AliasAnalysis::ID) - return (AliasAnalysis*)this; - return this; - } - - // FIXME: We could count these too... - bool pointsToConstantMemory(const MemoryLocation &Loc, - bool OrLocal) override { - return getAnalysis().pointsToConstantMemory(Loc, OrLocal); - } + void getAnalysisUsage(AnalysisUsage &AU) const override { + AliasAnalysis::getAnalysisUsage(AU); + AU.addRequired(); + AU.setPreservesAll(); + } - // Forwarding functions: just delegate to a real AA implementation, counting - // the number of responses... - AliasResult alias(const MemoryLocation &LocA, - const MemoryLocation &LocB) override; + /// getAdjustedAnalysisPointer - This method is used when a pass implements + /// an analysis interface through multiple inheritance. If needed, it + /// should override this to adjust the this pointer as needed for the + /// specified pass info. + void *getAdjustedAnalysisPointer(AnalysisID PI) override { + if (PI == &AliasAnalysis::ID) + return (AliasAnalysis *)this; + return this; + } - ModRefInfo getModRefInfo(ImmutableCallSite CS, - const MemoryLocation &Loc) override; - ModRefInfo getModRefInfo(ImmutableCallSite CS1, - ImmutableCallSite CS2) override { - return AliasAnalysis::getModRefInfo(CS1,CS2); - } - }; - - //===--------------------------------------------------------------------===// - // - // createAliasAnalysisCounterPass - This pass counts alias queries and how the - // alias analysis implementation responds. - // - ModulePass *createAliasAnalysisCounterPass(); + // FIXME: We could count these too... + bool pointsToConstantMemory(const MemoryLocation &Loc, + bool OrLocal) override { + return getAnalysis().pointsToConstantMemory(Loc, OrLocal); + } + + // Forwarding functions: just delegate to a real AA implementation, counting + // the number of responses... + AliasResult alias(const MemoryLocation &LocA, + const MemoryLocation &LocB) override; + + ModRefInfo getModRefInfo(ImmutableCallSite CS, + const MemoryLocation &Loc) override; + ModRefInfo getModRefInfo(ImmutableCallSite CS1, + ImmutableCallSite CS2) override { + return AliasAnalysis::getModRefInfo(CS1, CS2); + } +}; + +//===--------------------------------------------------------------------===// +// +// createAliasAnalysisCounterPass - This pass counts alias queries and how the +// alias analysis implementation responds. +// +ModulePass *createAliasAnalysisCounterPass(); } diff --git a/lib/Analysis/AliasAnalysisCounter.cpp b/lib/Analysis/AliasAnalysisCounter.cpp index 821badeb42f..46437849c77 100644 --- a/lib/Analysis/AliasAnalysisCounter.cpp +++ b/lib/Analysis/AliasAnalysisCounter.cpp @@ -22,10 +22,10 @@ #include "llvm/Support/raw_ostream.h" using namespace llvm; -static cl::opt -PrintAll("count-aa-print-all-queries", cl::ReallyHidden, cl::init(true)); -static cl::opt -PrintAllFailures("count-aa-print-all-failed-queries", cl::ReallyHidden); +static cl::opt PrintAll("count-aa-print-all-queries", cl::ReallyHidden, + cl::init(true)); +static cl::opt PrintAllFailures("count-aa-print-all-failed-queries", + cl::ReallyHidden); char AliasAnalysisCounter::ID = 0; INITIALIZE_AG_PASS(AliasAnalysisCounter, AliasAnalysis, "count-aa", @@ -41,10 +41,22 @@ AliasResult AliasAnalysisCounter::alias(const MemoryLocation &LocA, const char *AliasString = nullptr; switch (R) { - case NoAlias: No++; AliasString = "No alias"; break; - case MayAlias: May++; AliasString = "May alias"; break; - case PartialAlias: Partial++; AliasString = "Partial alias"; break; - case MustAlias: Must++; AliasString = "Must alias"; break; + case NoAlias: + No++; + AliasString = "No alias"; + break; + case MayAlias: + May++; + AliasString = "May alias"; + break; + case PartialAlias: + Partial++; + AliasString = "Partial alias"; + break; + case MustAlias: + Must++; + AliasString = "Must alias"; + break; } if (PrintAll || (PrintAllFailures && R == MayAlias)) { -- 2.34.1