[llvm] r184684 - LoopVectorize: Add utility class for checking dependency among accesses

Arnold Schwaighofer aschwaighofer at apple.com
Mon Jun 24 08:10:24 PDT 2013


On Jun 24, 2013, at 8:14 AM, Benjamin Kramer <benny.kra at gmail.com> wrote:

> On 24.06.2013, at 05:58, Arnold Schwaighofer <aschwaighofer at apple.com> wrote:
> 
>> Author: arnolds
>> Date: Sun Jun 23 22:55:45 2013
>> New Revision: 184684
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=184684&view=rev
>> Log:
>> LoopVectorize: Add utility class for checking dependency among accesses
>> 
>> This class checks dependences by subtracting two Scalar Evolution access
>> functions allowing us to catch very simple linear dependences.
>> 
>> The checker assumes source order in determining whether vectorization is safe.
>> We currently don't reorder accesses.
>> Positive true dependencies need to be a multiple of VF otherwise we impede
>> store-load forwarding.
> 
> Any reason for not using the existing DependenceAnalysis?

We can us it once we are reasonability convinced of its correctness. At the moment I am hesitant to just drop it in.



More information about the llvm-commits mailing list