; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 5
; RUN: opt < %s -passes='asan<use-after-scope>' -S | FileCheck %s

define void @test() #1 {
; CHECK-LABEL: define void @test(
; CHECK-SAME: ) #[[ATTR0:[0-9]+]] {
; CHECK-NEXT:  [[ENTRY:.*:]]
; CHECK-NEXT:    [[CTX_PG:%.*]] = alloca <vscale x 16 x i1>, align 2
; CHECK-NEXT:    call void @llvm.lifetime.start.p0(ptr [[CTX_PG]])
; CHECK-NEXT:    [[TMP0:%.*]] = load i8, ptr inttoptr (i64 17592186044416 to ptr), align 1
; CHECK-NEXT:    [[TMP1:%.*]] = icmp ne i8 [[TMP0]], 0
; CHECK-NEXT:    br i1 [[TMP1]], label %[[BB2:.*]], label %[[BB3:.*]]
; CHECK:       [[BB2]]:
; CHECK-NEXT:    call void @__asan_report_store8(i64 0) #[[ATTR4:[0-9]+]]
; CHECK-NEXT:    unreachable
; CHECK:       [[BB3]]:
; CHECK-NEXT:    store ptr [[CTX_PG]], ptr null, align 8
; CHECK-NEXT:    ret void
;
entry:
  %ctx_pg = alloca <vscale x 16 x i1>, align 2
  call void @llvm.lifetime.start.p0(ptr %ctx_pg)
  store ptr %ctx_pg, ptr null, align 8
  ret void
}

attributes #1 = { sanitize_address }
