diff --git a/llvm/lib/Transforms/Scalar/JumpThreading.cpp b/llvm/lib/Transforms/Scalar/JumpThreading.cpp index 300a564e222e1..a3059c8fe2d37 100644 --- a/llvm/lib/Transforms/Scalar/JumpThreading.cpp +++ b/llvm/lib/Transforms/Scalar/JumpThreading.cpp @@ -2516,7 +2516,7 @@ void JumpThreadingPass::updateBlockFreqAndEdgeWeight(BasicBlock *PredBB, BlockFrequencyInfo *BFI, BranchProbabilityInfo *BPI, bool HasProfile) { - assert(((BFI && BPI) || (!BFI && !BFI)) && + assert(((BFI && BPI) || (!BFI && !BPI)) && "Both BFI & BPI should either be set or unset"); if (!BFI) { diff --git a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp index 6b71e3e7585ed..ad9ff942324c5 100644 --- a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp +++ b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp @@ -13859,20 +13859,18 @@ class BoUpSLP::ShuffleInstructionBuilder final : public BaseShuffleAnalysis { Value *createShuffleVector(Value *V1, Value *V2, ArrayRef Mask) { if (V1->getType() != V2->getType()) { assert(V1->getType()->isIntOrIntVectorTy() && - V1->getType()->isIntOrIntVectorTy() && + V2->getType()->isIntOrIntVectorTy() && "Expected integer vector types only."); - if (V1->getType() != V2->getType()) { - if (cast(V2->getType()) - ->getElementType() - ->getIntegerBitWidth() < cast(V1->getType()) - ->getElementType() - ->getIntegerBitWidth()) - V2 = Builder.CreateIntCast( - V2, V1->getType(), !isKnownNonNegative(V2, SimplifyQuery(DL))); - else - V1 = Builder.CreateIntCast( - V1, V2->getType(), !isKnownNonNegative(V1, SimplifyQuery(DL))); - } + if (cast(V2->getType()) + ->getElementType() + ->getIntegerBitWidth() < cast(V1->getType()) + ->getElementType() + ->getIntegerBitWidth()) + V2 = Builder.CreateIntCast( + V2, V1->getType(), !isKnownNonNegative(V2, SimplifyQuery(DL))); + else + V1 = Builder.CreateIntCast( + V1, V2->getType(), !isKnownNonNegative(V1, SimplifyQuery(DL))); } Value *Vec = Builder.CreateShuffleVector(V1, V2, Mask); if (auto *I = dyn_cast(Vec)) {