[PATCH] D156111: [LV] Ignore the option prefer-predicate-over-epilogue for target unspported mask

Allen zhong via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 24 05:44:35 PDT 2023


Allen added inline comments.


================
Comment at: llvm/lib/Target/ARM/ARMTargetTransformInfo.h:311
   bool preferPredicateOverEpilogue(TailFoldingInfo *TFI);
+  bool enableMaskedInterleavedAccessVectorization() const {
+    return ST->hasMVEIntegerOps();
----------------
david-arm wrote:
> Maybe I'm missing something, but this feels like quite a huge change that isn't described in the subject line or in the commit message? Currently for RISCV and ARM backends this always returns false.
> 
> Enabling this by default for two different targets could cause performance regressions, and I'm not sure this is what you actually want?
The motivation is described in issue 63977. When the -prefer-predicate-over-epilogue=predicate-else-scalar-epilogue option is added, the common non-mask loop vector is still enabled, now https://gcc.godbolt.org/z/3z7e3rh1T
- option **-march=armv8.2-a -O3** can vectorize
- option **-march=armv8.2-a -O3 -mllvm -prefer-predicate-over-epilogue=predicate-else-scalar-epilogue** cannot vectorize


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D156111/new/

https://reviews.llvm.org/D156111



More information about the llvm-commits mailing list