[PATCH] D67828: [ARM] Split large truncating MVE stores
Sam Parker via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 20 06:29:58 PDT 2019
samparker added inline comments.
================
Comment at: llvm/lib/Target/ARM/ARMISelLowering.cpp:13169
EVT VT = StVal.getValueType();
- if (St->isTruncatingStore() && VT.isVector()) {
+ if (Subtarget->hasNEON() && St->isTruncatingStore() && VT.isVector()) {
SelectionDAG &DAG = DCI.DAG;
----------------
To make this function easier to read, how about extracting the truncating neon and non-truncating mve stuff out into their own functions?
================
Comment at: llvm/lib/Target/ARM/ARMISelLowering.cpp:13250
+ return SDValue();
+ SDValue Ext = St->getValue();
+ if (Ext->getOpcode() != ISD::TRUNCATE)
----------------
Nit: I'm guessing this is taken from some load code, so I think Ext should be renamed to something a bit more descriptive.
================
Comment at: llvm/lib/Target/ARM/ARMISelLowering.cpp:13261
+
+ unsigned Multiple = 0;
+ if (FromEltVT == MVT::i32 && (ToEltVT == MVT::i16 || ToEltVT == MVT::i8))
----------------
Nit: NumElements..?
================
Comment at: llvm/lib/Target/ARM/ARMISelLowering.cpp:13271
+ SDLoc DL(St);
+ // Details about the old load
+ SDValue Ch = St->getChain();
----------------
old load?!
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D67828/new/
https://reviews.llvm.org/D67828
More information about the llvm-commits
mailing list