| ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 5 |
| ; RUN: opt -S -passes=ipsccp < %s | FileCheck %s |
| |
| define void @test() { |
| ; CHECK-LABEL: define void @test() { |
| ; CHECK-NEXT: [[A:%.*]] = alloca [4 x i16], align 2 |
| ; CHECK-NEXT: [[CMP:%.*]] = icmp eq ptr [[A]], inttoptr (i64 -1 to ptr) |
| ; CHECK-NEXT: br i1 [[CMP]], label %[[IF:.*]], label %[[EXIT:.*]] |
| ; CHECK: [[IF]]: |
| ; CHECK-NEXT: call void @llvm.lifetime.start.p0(ptr [[A]]) |
| ; CHECK-NEXT: br label %[[EXIT]] |
| ; CHECK: [[EXIT]]: |
| ; CHECK-NEXT: ret void |
| ; |
| %a = alloca [4 x i16] |
| %cmp = icmp eq ptr %a, inttoptr (i64 -1 to ptr) |
| br i1 %cmp, label %if, label %exit |
| |
| if: |
| call void @llvm.lifetime.start.p0(ptr %a) |
| br label %exit |
| |
| exit: |
| ret void |
| } |