[PATCH] [AArch64][ARM] Match interleaved memory accesses into ldN/stN/vldN/vstN intrinsics.

Renato Golin renato.golin at linaro.org
Thu Jun 25 04:28:52 PDT 2015


================
Comment at: lib/CodeGen/InterleavedAccessPass.cpp:134
@@ +133,3 @@
+  // Check potential Factors.
+  for (Factor = MIN_FACTOR; Factor <= MAX_FACTOR; Factor++)
+    if (isDeInterleaveMaskOfFactor(Mask, Factor, Index))
----------------
HaoLiu wrote:
> rengolin wrote:
> > HaoLiu wrote:
> > > rengolin wrote:
> > > > Checking for all factors "up to" in isDeInterleaveMaskOfFactor() is redundant with this line.
> > > > 
> > > > Though, I see that you're using it in other functions that may need that functionality.
> > > > 
> > > > Not sure how to split this, but it looks inefficient...
> > > I merged isDeInterleaveMask() and isDeInterleaveMaskOfFactor() into one function isDeInterleaveMask().
> > Hum, I'm still seeing isDeInterleaveMaskOfFactor in the latest patch...
> Sorry. I misunderstood and misleaded. I merged isReInterleaveMask() and isReInterleaveMaskOfFactor().
> 
> I cannot merge isDeInterleaveMask() and isDeInterleaveMaskOfFactor(), which are both used in lowerInterleavedLoad(). The former is used to check and find an interleave factor. The later is only used to check whether the given mask is the DE-interleaved of the given factor.
Right, I thought it was weird that you had merged them. :)

http://reviews.llvm.org/D10533

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the llvm-commits mailing list