[LLVMdev] Vector type LOAD/STORE with post-increment.
Hal Finkel
hfinkel at anl.gov
Wed Jun 19 08:37:51 PDT 2013
----- Original Message -----
>
>
> I am trying to implement vector type load/store with post-increment
> for an out of tree backend.
> I see that that ARM NEON support such load/store so I am using ARM
> NEON as an example of what to do.
>
>
> The problem is I can't get any C or C++ code example to actually
> generate vector load/store with post increment.
>
>
> I am talking about something like this:
> vldr d16, [sp, #8]
>
>
>
> Does anybody know any C/C++ code example that will generate such code
> (especially loop)? Is this supported by the auto-vectorizer?
To add slightly to Renato's answer...
Auto-vectorization, which is an IR-level pass, happens well before Pre/Post-increment formation (which happens during DAGCombine). Whether or not vector loads/stores are eligible for post-increment formation will depend on calling setIndexedLoadAction(ISD::POST_INC, ...) and how you've implemented <Target>TargetLowering::getPreIndexedAddressParts.
-Hal
>
>
> Thanks.
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
--
Hal Finkel
Assistant Computational Scientist
Leadership Computing Facility
Argonne National Laboratory
More information about the llvm-dev
mailing list