[Patch][LoopVectorize]Late evaluation of vectorization requirements
tnowicki at apple.com
Mon Jul 27 16:45:41 PDT 2015
Please ignore the debug line in the LLVM late-evaluation patch. It won’t be part of the commit.
+ DEBUG(dbgs() << "LV: Emitting analysis message.\n”);
> On Jul 27, 2015, at 3:23 PM, Tyler Nowicki <tnowicki at apple.com> wrote:
> Hi Hal,
> Thanks for the review! No worries about the delay.
>>> Could I get a review of these patches for cfe and llvm?
>> Hi Tyler,
>> I'm apologize for the delay. I think this generally looks good, but I don't understand the motivation for introducing the additional FrontendOptions member. Why not just make a subclass of DiagnosticInfoOptimizationRemarkAnalysis that the frontend can handle specially (and detect using the normal isa/dyn_cast mechanism?\
> The diagnostic handling code doesn’t use isa or dyn_cast, rather it uses switches to select between different types. I modified the patch to use a subclass rather than a member variable. Let me know what patch you think would work out better?
>>> I should have also said in my previous email that I am not thrilled
>>> by the need to use O3 in the clang-side test.
>> So using -O2 or using -fvectorize does not help?
> Using -O1 with -fvectorize seems to work, at least it is a smaller set of passes than O3.
> I attached the updated patches. I also noticed that DiagnosticInfoOptimizationBase::classof() was incorrectly implemented. It would need its own diagnostic kind, but that doesn’t make sense because you would never instantiate the base class. I thought it was best just to remove it. See the third patch.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the cfe-commits