[CodeGen,AArch64] Fix up warnings in splitStores
authorDavid Sherwood <david.sherwood@arm.com>
Thu, 28 May 2020 13:22:49 +0000 (14:22 +0100)
committerDavid Sherwood <david.sherwood@arm.com>
Tue, 9 Jun 2020 06:39:38 +0000 (07:39 +0100)
The code for trying to split up stores is designed for NEON vectors,
where we support arbitrary alignments. It's an optimisation designed
to improve performance by using smaller, aligned stores. However,
we currently only support 16 byte alignments for SVE vectors anyway
so we may as well bail out early.

This change fixes up remaining warnings in a couple of tests:

  CodeGen/AArch64/sve-callbyref-notailcall.ll
  CodeGen/AArch64/sve-calling-convention-byref.ll

Differential Revision: https://reviews.llvm.org/D80720

llvm/lib/Target/AArch64/AArch64ISelLowering.cpp

index e7f1c59..43a85d5 100644 (file)
@@ -12138,7 +12138,8 @@ static SDValue splitStores(SDNode *N, TargetLowering::DAGCombinerInfo &DCI,
 
   SDValue StVal = S->getValue();
   EVT VT = StVal.getValueType();
-  if (!VT.isVector())
+
+  if (!VT.isFixedLengthVector())
     return SDValue();
 
   // If we get a splat of zeros, convert this vector store to a store of