[CodeGen] Fix warnings in LowerToPredicatedOp
authorDavid Sherwood <david.sherwood@arm.com>
Wed, 27 May 2020 10:41:25 +0000 (11:41 +0100)
committerDavid Sherwood <david.sherwood@arm.com>
Fri, 29 May 2020 14:19:03 +0000 (15:19 +0100)
When creating a new vector type based on another vector type we
should pass in the element count instead of the number of elements
and scalable flag separately.

I encountered this warning whilst compiling this test:

  CodeGen/AArch64/sve-intrinsics-int-compares.ll

Differential revision: https://reviews.llvm.org/D80621

llvm/lib/Target/AArch64/AArch64ISelLowering.cpp

index 579905d..81b5034 100644 (file)
@@ -7734,8 +7734,8 @@ SDValue AArch64TargetLowering::LowerToPredicatedOp(SDValue Op,
          Op.getOperand(1).getValueType().isScalableVector() &&
          "Only scalable vectors are supported");
 
-  auto PredTy = VT.getVectorVT(*DAG.getContext(), MVT::i1,
-                               VT.getVectorNumElements(), true);
+  auto PredTy =
+      VT.getVectorVT(*DAG.getContext(), MVT::i1, VT.getVectorElementCount());
   SDValue Mask = getPTrue(DAG, DL, PredTy, AArch64SVEPredPattern::all);
 
   SmallVector<SDValue, 4> Operands = {Mask};