diff options
Diffstat (limited to 'llvm/test')
4 files changed, 3 insertions, 206 deletions
diff --git a/llvm/test/CodeGen/ARM/avoid-cpsr-rmw.ll b/llvm/test/CodeGen/ARM/avoid-cpsr-rmw.ll index 78d3ebf371a..79e8e68e2f5 100644 --- a/llvm/test/CodeGen/ARM/avoid-cpsr-rmw.ll +++ b/llvm/test/CodeGen/ARM/avoid-cpsr-rmw.ll @@ -106,7 +106,7 @@ if.then: if.else: store i32 3, i32* %p, align 4 - %incdec.ptr5 = getelementptr inbounds i32, i32* %p, i32 3 + %incdec.ptr5 = getelementptr inbounds i32, i32* %p, i32 2 store i32 5, i32* %incdec.ptr1, align 4 store i32 6, i32* %incdec.ptr5, align 4 br label %if.end diff --git a/llvm/test/DebugInfo/ARM/single-constant-use-preserves-dbgloc.ll b/llvm/test/DebugInfo/ARM/single-constant-use-preserves-dbgloc.ll index e22614388b8..a992ce3bf85 100644 --- a/llvm/test/DebugInfo/ARM/single-constant-use-preserves-dbgloc.ll +++ b/llvm/test/DebugInfo/ARM/single-constant-use-preserves-dbgloc.ll @@ -9,9 +9,8 @@ ; return -1; ; } -; CHECK: mvnlt ; CHECK: .loc 1 6 7 -; CHECK: strlt +; CHECK: mvn target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" target triple = "armv7--linux-gnueabihf" diff --git a/llvm/test/Transforms/SimplifyCFG/AArch64/prefer-fma.ll b/llvm/test/Transforms/SimplifyCFG/AArch64/prefer-fma.ll index 7144da2d4bc..cfbe219c4c2 100644 --- a/llvm/test/Transforms/SimplifyCFG/AArch64/prefer-fma.ll +++ b/llvm/test/Transforms/SimplifyCFG/AArch64/prefer-fma.ll @@ -29,8 +29,7 @@ if.else: ; preds = %entry %4 = load double, double* %a, align 8 %mul1 = fmul fast double %1, %4 %sub1 = fsub fast double %mul1, %0 - %gep1 = getelementptr double, double* %y, i32 1 - store double %sub1, double* %gep1, align 8 + store double %sub1, double* %y, align 8 br label %if.end if.end: ; preds = %if.else, %if.then diff --git a/llvm/test/Transforms/SimplifyCFG/sink-common-code.ll b/llvm/test/Transforms/SimplifyCFG/sink-common-code.ll index b1b5ff7ddf7..cdb6ed29d85 100644 --- a/llvm/test/Transforms/SimplifyCFG/sink-common-code.ll +++ b/llvm/test/Transforms/SimplifyCFG/sink-common-code.ll @@ -81,204 +81,3 @@ if.end: ; CHECK: call ; CHECK: add ; CHECK-NOT: br - -define i32 @test4(i1 zeroext %flag, i32 %x, i32* %y) { -entry: - br i1 %flag, label %if.then, label %if.else - -if.then: - %a = add i32 %x, 5 - store i32 %a, i32* %y - br label %if.end - -if.else: - %b = add i32 %x, 7 - store i32 %b, i32* %y - br label %if.end - -if.end: - ret i32 1 -} - -; CHECK-LABEL: test4 -; CHECK: select -; CHECK: store -; CHECK-NOT: store - -define i32 @test5(i1 zeroext %flag, i32 %x, i32* %y) { -entry: - br i1 %flag, label %if.then, label %if.else - -if.then: - %a = add i32 %x, 5 - store volatile i32 %a, i32* %y - br label %if.end - -if.else: - %b = add i32 %x, 7 - store i32 %b, i32* %y - br label %if.end - -if.end: - ret i32 1 -} - -; CHECK-LABEL: test5 -; CHECK: store volatile -; CHECK: store - -define i32 @test6(i1 zeroext %flag, i32 %x, i32* %y) { -entry: - br i1 %flag, label %if.then, label %if.else - -if.then: - %a = add i32 %x, 5 - store volatile i32 %a, i32* %y - br label %if.end - -if.else: - %b = add i32 %x, 7 - store volatile i32 %b, i32* %y - br label %if.end - -if.end: - ret i32 1 -} - -; CHECK-LABEL: test6 -; CHECK: select -; CHECK: store volatile -; CHECK-NOT: store - -define i32 @test7(i1 zeroext %flag, i32 %x, i32* %y) { -entry: - br i1 %flag, label %if.then, label %if.else - -if.then: - %z = load volatile i32, i32* %y - %a = add i32 %z, 5 - store volatile i32 %a, i32* %y - br label %if.end - -if.else: - %w = load volatile i32, i32* %y - %b = add i32 %w, 7 - store volatile i32 %b, i32* %y - br label %if.end - -if.end: - ret i32 1 -} - -; CHECK-LABEL: test7 -; CHECK-DAG: select -; CHECK-DAG: load volatile -; CHECK: store volatile -; CHECK-NOT: load -; CHECK-NOT: store - -; %z and %w are in different blocks. We shouldn't sink the add because -; there may be intervening memory instructions. -define i32 @test8(i1 zeroext %flag, i32 %x, i32* %y) { -entry: - %z = load volatile i32, i32* %y - br i1 %flag, label %if.then, label %if.else - -if.then: - %a = add i32 %z, 5 - store volatile i32 %a, i32* %y - br label %if.end - -if.else: - %w = load volatile i32, i32* %y - %b = add i32 %w, 7 - store volatile i32 %b, i32* %y - br label %if.end - -if.end: - ret i32 1 -} - -; CHECK-LABEL: test8 -; CHECK: add -; CHECK: add - -; The extra store in %if.then means %z and %w are not equivalent. -define i32 @test9(i1 zeroext %flag, i32 %x, i32* %y, i32* %p) { -entry: - br i1 %flag, label %if.then, label %if.else - -if.then: - store i32 7, i32* %p - %z = load volatile i32, i32* %y - store i32 6, i32* %p - %a = add i32 %z, 5 - store volatile i32 %a, i32* %y - br label %if.end - -if.else: - %w = load volatile i32, i32* %y - %b = add i32 %w, 7 - store volatile i32 %b, i32* %y - br label %if.end - -if.end: - ret i32 1 -} - -; CHECK-LABEL: test9 -; CHECK: add -; CHECK: add - -%struct.anon = type { i32, i32 } - -; The GEP indexes a struct type so cannot have a variable last index. -define i32 @test10(i1 zeroext %flag, i32 %x, i32* %y, %struct.anon* %s) { -entry: - br i1 %flag, label %if.then, label %if.else - -if.then: - %dummy = add i32 %x, 5 - %gepa = getelementptr inbounds %struct.anon, %struct.anon* %s, i32 0, i32 0 - store volatile i32 %x, i32* %gepa - br label %if.end - -if.else: - %dummy1 = add i32 %x, 6 - %gepb = getelementptr inbounds %struct.anon, %struct.anon* %s, i32 0, i32 1 - store volatile i32 %x, i32* %gepb - br label %if.end - -if.end: - ret i32 1 -} - -; CHECK-LABEL: test10 -; CHECK: getelementptr -; CHECK: getelementptr -; CHECK: phi -; CHECK: store volatile - -; The shufflevector's mask operand cannot be merged in a PHI. -define i32 @test11(i1 zeroext %flag, i32 %w, <2 x i32> %x, <2 x i32> %y) { -entry: - br i1 %flag, label %if.then, label %if.else - -if.then: - %dummy = add i32 %w, 5 - %sv1 = shufflevector <2 x i32> %x, <2 x i32> %y, <2 x i32> <i32 0, i32 1> - br label %if.end - -if.else: - %dummy1 = add i32 %w, 6 - %sv2 = shufflevector <2 x i32> %x, <2 x i32> %y, <2 x i32> <i32 1, i32 0> - br label %if.end - -if.end: - %p = phi <2 x i32> [ %sv1, %if.then ], [ %sv2, %if.else ] - ret i32 1 -} - -; CHECK-LABEL: test11 -; CHECK: shufflevector -; CHECK: shufflevector |

