- User Since
- Aug 20 2015, 4:19 PM (231 w, 3 d)
Tue, Jan 14
Mon, Jan 13
Thanks Teresa for the suggestion: using the print() function in the llvm diagnosticPrinter is a lot better than duplicating the code. I changed the patch to use print() function. Also added comment as suggested by Teresa.
Integrated Teresa's review comments.
Fri, Jan 10
Oct 10 2019
I totally agree with what eugenis said.
I added his comments to a TODO comment.
I will commit this version and may address the TODO later.
Oct 2 2019
Thanks for improving this.
Oct 1 2019
Sorry it takes long to review this.
I have a pending patch that value profiling the expensive MOD/REM instructions. It is more tightly coupled to edge profile (than current mem-size-op and icall value profile).
The difference is that it does not have <valuesite, value> pair. The counts are stored like the edge counts.
It seems to be fine with patch as the instrumentation says in PGOInstrumenation.cpp and only the candidate collecting is extracted out.
Sep 30 2019
Sep 25 2019
Fixed comments suggested by Guillaume.
Sep 24 2019
Sep 13 2019
For the legacy pass manager, use option "-mllvm -debug-pass=Structure", or in the source, we add the lowering pass right after instrumentation pass.
LGTM. Thanks for the fix!
Aug 2 2019
Aug 1 2019
Jul 29 2019
Integrated Chandler's review comments.
I'm sorry that I missed this review for this long!
Jul 9 2019
Jul 8 2019
Change the error report format suggested by David.
Jul 3 2019
Jul 1 2019
Sent the wrong test file in last patch.
Update to the correct one.
Jun 28 2019
they are not doing the exacly the same thing for old pass manager and new pass manger: old pass manger is doing instrumentation, while the new pass manager with this change is NOT.
the test is not check instrumentation, (it only check the variables that generates by InstroProfiling pass).
In this sense, the test is not well written.
This patch does not make sense to me.
Jun 10 2019
Integrated David's review suggestions.
Jun 7 2019
Jun 3 2019
My previous patch was not complete -- we need to set the profile count to the fail-to-instrument edge. Otherwise, we cannot propagate the counts in the CFG.
The new patch has this part of change.
Updated the test to test the profile-use.
May 30 2019
Another change of this patch is to move down statistic collection code for critical edge. I think this is a better place.
looks good to me.
May 28 2019
Fix comments suggested by David.
Integrated comments from Noel and David.
May 24 2019
May 20 2019
May 3 2019
Apr 30 2019
Apr 29 2019
Adjusted the output string with David's comments.
Also made the naming more uniformed for edge and value profiles.
Discussed offline with David. We changed the output to a simpler: "Description: <Value>" format. This tool will mostly used in a script. Simpler format will make text grep cleaner.
Integrated David's review comments
Apr 26 2019
Integrated David's review comments. Mainly changed the reporting format.
Apr 25 2019
Apr 24 2019
Apr 23 2019
Integrated David's review comments.
LGTM. We need to Initialize the OptLevel no matter what.