[llvm] abe171d - GlobalISel: Update mutationIsSane assert for scalable vectors
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 12 13:54:09 PDT 2022
Author: Matt Arsenault
Date: 2022-04-12T16:54:03-04:00
New Revision: abe171df06a42b163af09e8c08e8bb142a2d90ec
URL: https://github.com/llvm/llvm-project/commit/abe171df06a42b163af09e8c08e8bb142a2d90ec
DIFF: https://github.com/llvm/llvm-project/commit/abe171df06a42b163af09e8c08e8bb142a2d90ec.diff
LOG: GlobalISel: Update mutationIsSane assert for scalable vectors
Added:
Modified:
llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp
Removed:
################################################################################
diff --git a/llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp b/llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp
index 17360f5f32762..6adb7ddb5b66d 100644
--- a/llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp
+++ b/llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp
@@ -129,15 +129,16 @@ static bool mutationIsSane(const LegalizeRule &Rule,
LLVM_FALLTHROUGH;
case MoreElements: {
// MoreElements can go from scalar to vector.
- const unsigned OldElts = OldTy.isVector() ? OldTy.getNumElements() : 1;
+ const ElementCount OldElts = OldTy.isVector() ?
+ OldTy.getElementCount() : ElementCount::getFixed(1);
if (NewTy.isVector()) {
if (Rule.getAction() == FewerElements) {
// Make sure the element count really decreased.
- if (NewTy.getNumElements() >= OldElts)
+ if (ElementCount::isKnownGE(NewTy.getElementCount(), OldElts))
return false;
} else {
// Make sure the element count really increased.
- if (NewTy.getNumElements() <= OldElts)
+ if (ElementCount::isKnownLE(NewTy.getElementCount(), OldElts))
return false;
}
} else if (Rule.getAction() == MoreElements)
More information about the llvm-commits
mailing list