Page MenuHomePhabricator

Please use GitHub pull requests for new patches. Avoid migrating existing patches. Phabricator shutdown timeline

Feed Advanced Search

Aug 13 2021

Herald added a reviewer for D73426: [Attributor] Derive memory location attributes (argmemonly, ...): homerdin.
Aug 13 2021, 6:56 PM · Restricted Project

Jan 8 2021

rcox2 added a comment to D93571: [TableGen][ARM][X86] Detect combining IntrReadMem and IntrWriteMem..

Hi Craig Topper,
I noticed a regression after this change set hit our repository at Intel. The code in llvm/lib/Transforms/IPO/FunctionAttrs.cpp has a function checkFunctionMemoryAccess() that is not checking for intrinsics which may have side effects. This causes the inliner to remove a function as trivially dead when it only has a ldmxcsr instruction and some setup and shutdown code. I could change the line:

if (!AliasAnalysis::onlyAccessesArgPointees(MRB))

to

if (!AliasAnalysis::onlyAccessesArgPointees(MRB) || I->mayHaveSideEffects()) {

but I do have some concern whether this will be overly conservative.
Any thoughts?

  • Robert Cox from Intel (rcox2)
Jan 8 2021, 5:03 PM · Restricted Project

Oct 28 2016

rcox2 added a comment to D25626: [Inliner] Inlining to enable more loop unrolling .

No comments on this review, yet. Any chance the reviewers I picked will be able to look at it in the near future? Should I add some other names? -- Thanks, Robert

Oct 28 2016, 6:55 PM

Oct 14 2016

rcox2 retitled D25626: [Inliner] Inlining to enable more loop unrolling from to [Inliner] Inlining to enable more loop unrolling .
Oct 14 2016, 9:44 AM

Jun 2 2016

rcox2 added a comment to D19397: Initial patch for inlining report .

Hal,

I’ve been looking at the patch that you posted for the annotated source listing to get an idea of how you would like the inlining report to conform to the diagnostic mechanism which you have already implemented.

It seems to me that you would like the information needed to construct the inlining report to be passed back to the diagnostic mechanism via function calls like:

emitOptimizationRemark()

when the inlining occurs, and

emitOptimizationRemarkMissed()

when the inlining does not occur.

Yes (although you should use a proper subclass to store all of the relevant information in member variables). The other thing to track is the conversation about serialization of these things into YAML for consumption by external tools.

Jun 2 2016, 4:19 PM

May 23 2016

rcox2 added a comment to D19397: Initial patch for inlining report .

I’ve been looking at the patch that you posted for the annotated source listing to get an idea of how you would like the inlining report to conform to the diagnostic mechanism which you have already implemented.

May 23 2016, 10:30 AM

May 2 2016

rcox2 added a comment to D19678: Annotated-source optimization reports (a.k.a. "listing" files).

Of course, it would be my preference to mirror the functionality of what is available in the "new" hierarchical form of optimization report Intel compiler. So, I would like to distinguish between what Hal is proposing (which we call an "annotated listing") and what I am proposing, which we call an "optimization report".

May 2 2016, 5:14 PM

Apr 28 2016

rcox2 added a comment to D19678: Annotated-source optimization reports (a.k.a. "listing" files).

Actually, the Intel compiler distinguishes between an optimization report (-qopt-report) and an annotated listing (-qopt-report-annotate). The optimization report lists the info for optimizations in a hierarchical fashion. To use you example,

icc -c -O3 -qopt-report=1 -qopt-report-file=stderr v.c

yields:

Apr 28 2016, 3:19 PM

Apr 22 2016

rcox2 added a comment to D19397: Initial patch for inlining report .

Having a high level Report class would be useful. I talked to a few people at the Bay Area LLVM Social and they supported the idea of Report class into which all optimizaitons could report information.

Apr 22 2016, 11:23 AM

Apr 21 2016

rcox2 retitled D19399: Third patch for inlining report from to Third patch for inlining report .
Apr 21 2016, 6:40 PM
rcox2 retitled D19398: Second for inlining report from to Second for inlining report .
Apr 21 2016, 5:44 PM
rcox2 retitled D19397: Initial patch for inlining report from to Initial patch for inlining report .
Apr 21 2016, 5:37 PM