[PATCH] D23646: Generalize strided store pattern in interleave access pass

Alina Sbirlea via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 13 16:09:29 PDT 2016


asbirlea added inline comments.

================
Comment at: lib/CodeGen/InterleavedAccessPass.cpp:400
@@ +399,3 @@
+  // Check that the range is aligned on this arch
+  // FIXME: Make this alignment verification process correct and complete.
+  /*
----------------
mssimpso wrote:
> asbirlea wrote:
> > This is a part that I'm not sure is needed, and how to address it.
> > 
> > The goal was to check for the alignment of each of the strides, i.e. BaseStoreAddress + StartingIncrementInStride, for all stride [0, Factor).
> > The commented attempt has a series of problems and does not achieve this. Should this check exist and what's the correct way to handle it?
> I could be wrong about this, but I don't think you need to worry about alignment here. I'm not seeing how the memory behavior with this patch would be different than the current situation.
I agree with you that there should be no significant difference from the current situation. There is one small difference though...before there could be one misaligned access, now there may be Factor such accesses.
That's why I'd still like to understand the alignment issue - whether the check is needed or not and in what form. Perhaps it would be better to have it in a separate patch though.


https://reviews.llvm.org/D23646





More information about the llvm-commits mailing list