[PATCH] D15690: Gather and Scatter intrinsics in the Loop Vectorizer

Demikhovsky, Elena via llvm-commits llvm-commits at lists.llvm.org
Thu Feb 18 01:22:23 PST 2016


Can somebody explain me why address-space-(1) load can't be vectorized?
Or it can be vectorized? Why should I prevent masked intrinsic creation for non-default address space?

-  Elena


-----Original Message-----
From: Artur Pilipenko [mailto:apilipenko at azulsystems.com] 
Sent: Thursday, February 18, 2016 10:46
To: Philip Reames <listmail at philipreames.com>
Cc: Demikhovsky, Elena <elena.demikhovsky at intel.com>; <reviews+D15690+public+442c59c557c039f1 at reviews.llvm.org> <reviews+D15690+public+442c59c557c039f1 at reviews.llvm.org>; pjcoup at gmail.com; llvm-commits at lists.llvm.org
Subject: Re: [PATCH] D15690: Gather and Scatter intrinsics in the Loop Vectorizer

I agree with Philip, it doesn’t address the problem. Nothing prevents from using non-default address space pointers on AVX-512 targets.

Artur
 
> On 17 Feb 2016, at 23:25, Philip Reames <listmail at philipreames.com> wrote:
> 
> In my view, a target sub-feature restriction is not sufficient and does not address Artur's (reasonable) concern.
> 
> Philip
> 
> On 02/17/2016 12:10 PM, Demikhovsky, Elena via llvm-commits wrote:
>> Usage of masked gather and scatter are limited by target. Currently it is supported on AVX-512 only.
>> 
>> -  Elena
>> 
>> -----Original Message-----
>> From: Artur Pilipenko [mailto:apilipenko at azulsystems.com]
>> Sent: Wednesday, February 17, 2016 22:07
>> To: <reviews+D15690+public+442c59c557c039f1 at reviews.llvm.org> 
>> <reviews+D15690+public+442c59c557c039f1 at reviews.llvm.org>
>> Cc: Demikhovsky, Elena <elena.demikhovsky at intel.com>; Rapaport, Gil 
>> <gil.rapaport at intel.com>; nrotem at apple.com; aschwaighofer at apple.com; 
>> Zaks, Ayal <ayal.zaks at intel.com>; pjcoup at gmail.com; 
>> mzolotukhin at apple.com; spatel at rotateright.com; 
>> llvm-commits at lists.llvm.org
>> Subject: Re: [PATCH] D15690: Gather and Scatter intrinsics in the 
>> Loop Vectorizer
>> 
>> In the latest patch I see no code to address non-default address spaces problem mentioned in the review. I don't see a test for this either. I assume this code introduces another one bug to loop-vectorize. It should be addressed at least by limiting the scope of the optimization to default address space pointers for now.
>> 
>> Artur
>> 
>>> Feb 17, 2016, в 11:27 PM, "Elena Demikhovsky" <elena.demikhovsky at intel.com> написал(а):
>>> 
>>> This revision was automatically updated to reflect the committed changes.
>>> Closed by commit rL261140: Create masked gather and scatter intrinsics in Loop Vectorizer. (authored by delena).
>>> 
>>> Changed prior to commit:
>>> http://reviews.llvm.org/D15690?vs=48204&id=48222#toc
>>> 
>>> Repository:
>>> rL LLVM
>>> 
>>> http://reviews.llvm.org/D15690
>>> 
>>> Files:
>>> llvm/trunk/include/llvm/IR/IRBuilder.h
>>> llvm/trunk/lib/IR/IRBuilder.cpp
>>> llvm/trunk/lib/Transforms/Vectorize/LoopVectorize.cpp
>>> llvm/trunk/test/Transforms/LoopVectorize/X86/gather_scatter.ll
>>> llvm/trunk/test/Transforms/LoopVectorize/X86/masked_load_store.ll
>>> 
>>> <D15690.48222.patch>
>> ---------------------------------------------------------------------
>> Intel Israel (74) Limited
>> 
>> This e-mail and any attachments may contain confidential material for 
>> the sole use of the intended recipient(s). Any review or distribution 
>> by others is strictly prohibited. If you are not the intended 
>> recipient, please contact the sender and delete all copies.
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
> 

---------------------------------------------------------------------
Intel Israel (74) Limited

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.


More information about the llvm-commits mailing list