From e27e826d80886b92dcc1977a82910a3088696f8d Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Sun, 4 Sep 2022 22:07:19 +0100 Subject: [PATCH] [LCSSA] Update test use opaque pointers, regenerate checks. Modernize the test to make it easier to extend in a follow-up patch. --- llvm/test/Transforms/LCSSA/unreachable-use.ll | 29 ++++++++++++++++++++------- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/llvm/test/Transforms/LCSSA/unreachable-use.ll b/llvm/test/Transforms/LCSSA/unreachable-use.ll index c9e456c..0c70f7a 100644 --- a/llvm/test/Transforms/LCSSA/unreachable-use.ll +++ b/llvm/test/Transforms/LCSSA/unreachable-use.ll @@ -1,27 +1,42 @@ +; NOTE: Assertions have been autogenerated by utils/update_test_checks.py ; RUN: opt < %s -lcssa -S -verify-loop-info | FileCheck %s -; PR6546 ; LCSSA doesn't need to transform uses in blocks not reachable ; from the entry block. -; CHECK: %tmp33 = load i1*, i1** %tmp - -define fastcc void @dfs() nounwind { +; PR6546 +define void @test_pr6546(ptr %src, i1 %c) { +; CHECK-LABEL: @test_pr6546( +; CHECK-NEXT: bb: +; CHECK-NEXT: br label [[BB44:%.*]] +; CHECK: bb44: +; CHECK-NEXT: br i1 [[C:%.*]], label [[BB7:%.*]], label [[BB45:%.*]] +; CHECK: bb7: +; CHECK-NEXT: [[TMP:%.*]] = getelementptr ptr, ptr [[SRC:%.*]], i64 3 +; CHECK-NEXT: br label [[BB15:%.*]] +; CHECK: bb15: +; CHECK-NEXT: br label [[BB44]] +; CHECK: bb32: +; CHECK-NEXT: [[TMP33:%.*]] = load ptr, ptr [[TMP]], align 8 +; CHECK-NEXT: br label [[BB45]] +; CHECK: bb45: +; CHECK-NEXT: unreachable +; bb: br label %bb44 bb44: - br i1 undef, label %bb7, label %bb45 + br i1 %c, label %bb7, label %bb45 bb7: - %tmp = bitcast i1** undef to i1** + %tmp = getelementptr ptr, ptr %src, i64 3 br label %bb15 bb15: br label %bb44 bb32: - %tmp33 = load i1*, i1** %tmp, align 8 + %tmp33 = load ptr, ptr %tmp, align 8 br label %bb45 bb45: -- 2.7.4