; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 4
; RUN: opt -S -allow-incomplete-ir < %s | FileCheck %s

@g = global i8 0, !exclude !4

define void @test(ptr %p) !dbg !3 {
; CHECK-LABEL: define void @test(
; CHECK-SAME: ptr [[P:%.*]]) {
; CHECK-NEXT:    [[V1:%.*]] = load i8, ptr [[P]], align 1
; CHECK-NEXT:    [[V2:%.*]] = load i8, ptr [[P]], align 1
; CHECK-NEXT:    [[V3:%.*]] = load i8, ptr [[P]], align 1, !noalias [[META0:![0-9]+]]
; CHECK-NEXT:    call void @llvm.experimental.noalias.scope.decl(metadata [[META0]])
; CHECK-NEXT:    ret void
;
  %v1 = load i8, ptr %p, !noalias !0
  %v2 = load i8, ptr %p, !tbaa !1
  %v3 = load i8, ptr %p, !dbg !2, !noalias !100
  call void @llvm.experimental.noalias.scope.decl(metadata !5)
  call void @llvm.dbg.value(metadata i32 0, metadata !7, metadata !8)
  call void @llvm.experimental.noalias.scope.decl(metadata !100)
  ret void
}

declare void @llvm.experimental.noalias.scope.decl(metadata)
declare void @llvm.dbg.value(metadata, metadata, metadata)

!100 = !{!101}
!101 = !{!101, !102}
!102 = !{!102}
;.
; CHECK: [[META0]] = !{[[META1:![0-9]+]]}
; CHECK: [[META1]] = distinct !{[[META1]], [[META2:![0-9]+]]}
; CHECK: [[META2]] = distinct !{[[META2]]}
;.
