[PATCH][polly] Support for generating vectors for loads with -1 stride

Tobias Grosser tobias at grosser.es
Tue Mar 18 23:10:00 PDT 2014


On 03/19/2014 01:45 AM, Chris Jenneisch wrote:
> Hi Tobi,
>
> Thanks for the comments, I have attached the updated patch.

Hi Chris,

>>> diff --git a/include/polly/CodeGen/BlockGenerators.h
>>> b/include/polly/CodeGen/BlockGenerators.h
>>> index 077236d..487521f 100644
>>> --- a/include/polly/CodeGen/BlockGenerators.h
>>> +++ b/include/polly/CodeGen/BlockGenerators.h
>>> @@ -265,7 +265,14 @@ private:
>>>      /// %vector_ptr= bitcast double* %p to <4 x double>*
>>>      /// %vec_full = load <4 x double>* %vector_ptr
>>>      ///
>>> -  Value *generateStrideOneLoad(const LoadInst *Load, ValueMapT &BBMap);
>>> +  /// @param Direction This is used to indicate a -1 stride. In such
>>> +  ///                  a case we load the end of a base address and
>>> +  ///                  shuffle the accesses in reverse order into the
>>> +  ///                  vector. By default we would do only positive
>>> +  ///                  strides.
>>
>> Maybe use 'bool NegativeStride' instead of Direction.

You missed this one.

After it is good to commit. Can you commit it yourself or should I 
commit it?

Tobias



More information about the llvm-commits mailing list