Displaying 5 results from an estimated 5 matches for "branchprobabilityinfowrapperpass".
2018 Aug 15
2
Queries Regarding Usage of PGOInstrumentation Passes instead of Deprecated ProfileInfo
...generating edge count profile by the
PGOInstrumentationGen pass and then interpreting the edge count profile
with PGOInstrumentationUse.
In the original code, where I had
au.addRequired< ProfileInfo >(), I now have
*au.addRequired< BlockFrequencyInfoWrapperPass >();au.addRequired<
BranchProbabilityInfoWrapperPass >();*
Now, I have the following queries.
- How do I use the edge count and branch weights data obtained using
PGOInstrumentationUse in my pass and replace the *getEdgeWeight()* from
ProfileInfo?
- If I call *getBlockProfileCount() *from the BlockFrequency pass, will
that give me...
2018 Jan 26
1
PM: loop pass depending on the "outer" BPI analysis
...of "opt -irce
test.ll" invocation, which does not
work with a direct translation to "opt -passes=irce test.ll".
It only works with explicit
opt -passes='require<branch-prob>,irce' test.ll
Legacy pass manager version of IRCE does have an explicit dependency on
BranchProbabilityInfoWrapperPass
and that automatically installs that analysis into the pipeline before irce.
How do I express that kind of dependency with new pass manager?
If I did not miss something obvious that already handles these kinds of
dependencies
then what should be the best way to go?
- Add BPI to LoopStandardAnal...
2018 Aug 15
3
Queries Regarding Usage of PGOInstrumentation Passes instead of Deprecated ProfileInfo
...hen interpreting the edge count profile
>> with PGOInstrumentationUse.
>>
>> In the original code, where I had
>> au.addRequired< ProfileInfo >(), I now have
>>
>>
>> *au.addRequired< BlockFrequencyInfoWrapperPass >();au.addRequired<
>> BranchProbabilityInfoWrapperPass >();*
>> Now, I have the following queries.
>>
>> - How do I use the edge count and branch weights data obtained using
>> PGOInstrumentationUse in my pass and replace the *getEdgeWeight()*
>> from ProfileInfo?
>>
>>
> You can do
> BPI.get...
2018 Aug 15
2
Queries Regarding Usage of PGOInstrumentation Passes instead of Deprecated ProfileInfo
...OInstrumentationUse.
>>>>
>>>> In the original code, where I had
>>>> au.addRequired< ProfileInfo >(), I now have
>>>>
>>>>
>>>> *au.addRequired< BlockFrequencyInfoWrapperPass >();au.addRequired<
>>>> BranchProbabilityInfoWrapperPass >();*
>>>> Now, I have the following queries.
>>>>
>>>> - How do I use the edge count and branch weights data obtained
>>>> using PGOInstrumentationUse in my pass and replace the
>>>> *getEdgeWeight()* from ProfileInfo?
>>...
2017 Jun 15
7
[RFC] Profile guided section layout
...());
+ }
+
+ StringRef getPassName() const override { return "CFGProfilePass"; }
+
+private:
+ bool runOnModule(Module &M) override;
+
+ void getAnalysisUsage(AnalysisUsage &AU) const override {
+ AU.addRequired<BlockFrequencyInfoWrapperPass>();
+ AU.addRequired<BranchProbabilityInfoWrapperPass>();
+ }
+};
+
+bool CFGProfilePass::runOnModule(Module &M) {
+ if (skipModule(M))
+ return false;
+
+ llvm::DenseMap<std::pair<StringRef, StringRef>, uint64_t> Counts;
+
+ for (auto &F : M) {
+ if (F.isDeclaration())
+ continue;
+ getAnalysis<BranchProbab...