[llvm] 0a7f4e0 - Revert "[SROA] Check typeSizeEqualsStoreSize in isVectorPromotionViable"
Douglas Yung via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 23 12:24:19 PDT 2022
Author: Douglas Yung
Date: 2022-09-23T12:24:07-07:00
New Revision: 0a7f4e03a9a19d3b48190b982b707036d95d99f5
URL: https://github.com/llvm/llvm-project/commit/0a7f4e03a9a19d3b48190b982b707036d95d99f5
DIFF: https://github.com/llvm/llvm-project/commit/0a7f4e03a9a19d3b48190b982b707036d95d99f5.diff
LOG: Revert "[SROA] Check typeSizeEqualsStoreSize in isVectorPromotionViable"
This reverts commit 3f08d248c44c744deda38423409b86720822739e.
The commit this change is fixing is being reverted due to GHI #57796 and #37821, so revert this commit as well.
Added:
Modified:
llvm/lib/Transforms/Scalar/SROA.cpp
llvm/test/Transforms/SROA/vector-promotion.ll
Removed:
################################################################################
diff --git a/llvm/lib/Transforms/Scalar/SROA.cpp b/llvm/lib/Transforms/Scalar/SROA.cpp
index e86dcfefd6fc0..4983273949a25 100644
--- a/llvm/lib/Transforms/Scalar/SROA.cpp
+++ b/llvm/lib/Transforms/Scalar/SROA.cpp
@@ -1933,8 +1933,6 @@ static VectorType *isVectorPromotionViable(Partition &P, const DataLayout &DL) {
continue;
if (isa<VectorType>(Ty))
continue;
- if (!DL.typeSizeEqualsStoreSize(Ty))
- continue;
// Create Vector with size of V, and each element of type Ty
VectorType *V = CandidateTys[0];
uint64_t ElementSize = DL.getTypeStoreSizeInBits(Ty).getFixedSize();
diff --git a/llvm/test/Transforms/SROA/vector-promotion.ll b/llvm/test/Transforms/SROA/vector-promotion.ll
index 30d524839e1c3..7ad8e5ccb295a 100644
--- a/llvm/test/Transforms/SROA/vector-promotion.ll
+++ b/llvm/test/Transforms/SROA/vector-promotion.ll
@@ -628,19 +628,3 @@ entry:
%add2 = add i32 %add, %add1
ret i32 %add2
}
-
-; This used to hit an assert after commit de3445e0ef15c4.
-; Added as regression test to verify that we handle this without crashing.
-define i1 @test15() {
-; CHECK-LABEL: @test15(
-; CHECK-NEXT: [[A_SROA_0:%.*]] = alloca <2 x i64>, align 32
-; CHECK-NEXT: store <2 x i64> <i64 0, i64 -1>, ptr [[A_SROA_0]], align 32
-; CHECK-NEXT: [[A_SROA_0_0_A_SROA_0_0_L:%.*]] = load i1, ptr [[A_SROA_0]], align 32
-; CHECK-NEXT: ret i1 [[A_SROA_0_0_A_SROA_0_0_L]]
-;
- %a = alloca <8 x i32>
- store <2 x i64> <i64 0, i64 -1>, ptr %a
- %l = load i1, ptr %a, align 1
- ret i1 %l
-
-}
More information about the llvm-commits
mailing list