1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2025-01-31 20:51:52 +01:00

[ARM] Remove EarlyCSE from backend

There is an issue with early CSE hitting an assert, so temporarily
remove the pass from the Arm backend.
    
Bug: https://bugs.llvm.org/show_bug.cgi?id=41081

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

llvm-svn: 356259
This commit is contained in:
Sam Parker 2019-03-15 13:36:37 +00:00
parent fc9ff6e8cb
commit 26b46594cf
4 changed files with 11 additions and 17 deletions

View File

@ -403,11 +403,9 @@ void ARMPassConfig::addIRPasses() {
TargetPassConfig::addIRPasses();
// Run the parallel DSP pass and its helpers.
if (getOptLevel() == CodeGenOpt::Aggressive) {
addPass(createEarlyCSEPass());
// Run the parallel DSP pass.
if (getOptLevel() == CodeGenOpt::Aggressive)
addPass(createARMParallelDSPPass());
}
// Match interleaved memory accesses to ldN/stN intrinsics.
if (TM->getOptLevel() != CodeGenOpt::None)

View File

@ -33,7 +33,6 @@
; CHECK: Scalarize Masked Memory Intrinsics
; CHECK: Expand reduction intrinsics
; CHECK: Dominator Tree Construction
; CHECK: Early CSE
; CHECK: Natural Loop Information
; CHECK: Scalar Evolution Analysis
; CHECK: Basic Alias Analysis (stateless AA impl)

View File

@ -31,15 +31,11 @@ entry:
%inc11.us.i.3.i = add i32 %idx, 4
br label %for.body
; TODO: CSE, or something similar, is required to remove the duplicate loads.
; CHECK: %for.body
; CHECK: smlad
; CHECK: smlad
; CHECK: smlad
; CHECK: smlad
; CHECK: smlad
; CHECK: smlad
; CHECK: smlad
; CHECK: smlad
; CHECK-NOT: smlad r{{.*}}
for.body:
%A3 = phi i32 [ %add9.us.i.3361.i, %for.body ], [ 0, %entry ]

View File

@ -32,12 +32,13 @@
define fastcc i32 @parse_percent_token() nounwind {
entry:
; CHECK: bx lr
; CHECK: bx lr
; CHECK: bx lr
; CHECK: bx lr
; CHECK: bx lr
; CHECK: bx lr
; CHECK: pop
; CHECK: pop
; CHECK: pop
; CHECK: pop
; CHECK: pop
; CHECK: pop
; CHECK: pop
; Do not convert into single stream code. BranchProbability Analysis assumes
; that branches which goes to "ret" instruction have lower probabilities.
switch i32 undef, label %bb7 [