[PATCH] D86613: [ARM][LowOverheadLoops] Liveouts and reductions

Sjoerd Meijer via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 27 06:50:18 PDT 2020


SjoerdMeijer added inline comments.


================
Comment at: llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp:643
+    return !isVectorPredicated(Def) &&
+           Def->getOpcode() == ARM::MVE_VMOVimmi32 &&
+           Def->getOperand(1).getImm() == 0;
----------------
samparker wrote:
> SjoerdMeijer wrote:
> > Is this the only instruction that could zero initialise that def?
> It's the only way that I saw, but there's probably more. It's the common and easy case to catch though.
ah, because how we use `IsZeroInit`, we are on the safe side here, right? I missed that earlier.
Not sure, perhaps XOR-ing the same register is the other common case? 


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

https://reviews.llvm.org/D86613



More information about the llvm-commits mailing list