[PATCH] D46130: [NVPTX] Turn on Loop/SLP vectorization
Justin Lebar via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Apr 26 11:30:09 PDT 2018
jlebar added inline comments.
================
Comment at: lib/Target/NVPTX/NVPTXTargetTransformInfo.h:53
+ // NVPTX has infinite registers of all kinds.
+ unsigned getNumberOfRegisters(bool Vector) const { return 1; }
+
----------------
bkramer wrote:
> jlebar wrote:
> > bkramer wrote:
> > > jlebar wrote:
> > > > Does 1 have specific meaning? I don't see this in any of the comments, and that would be a pretty weird API... (Like, did you mean -1?)
> > > 1 is the default of the generic implementation, I just copied that and removed the check for vector. I'm not even sure if anyone ever checks the value or just compares it against zero.
> > I see a few places using the actual value returned: LoopStrengthReduce, LoopVectorize...
> Right, LoopStrengthReduce calls it with (false), which was returning '1' before and after :)
>
> I'm not sure about LoopVectorize, but conservatively limiting its vectorization factor is probably a good thing.
OK, I think I see what you're after: You want to make the minimal/safest change that gets vectorization on your testcases?
That sounds good to me, but can we make the comment on "return 1" express this motivation?
Repository:
rL LLVM
https://reviews.llvm.org/D46130
More information about the llvm-commits
mailing list