; RUN: opt -S -add-discriminators < %s | FileCheck %s
; RUN: opt -S -passes=add-discriminators < %s | FileCheck %s

declare void @llvm.dbg.declare(metadata, metadata, metadata)

; This checks whether the add-discriminators pass producess valid metadata on
; llvm.dbg.declare instructions
;
; CHECK-LABEL: @test_valid_metadata
define void @test_valid_metadata() {
  %a = alloca i8
  call void @llvm.dbg.declare(metadata i8* %a, metadata !2, metadata !5), !dbg !6
  %b = alloca i8
  call void @llvm.dbg.declare(metadata i8* %b, metadata !9, metadata !5), !dbg !11
  ret void
}

!llvm.module.flags = !{!0, !1}
!llvm.dbg.cu = !{!12}

!0 = !{i32 2, !"Dwarf Version", i32 4}
!1 = !{i32 2, !"Debug Info Version", i32 3}
!2 = !DILocalVariable(scope: !3)
!3 = distinct !DISubprogram(scope: null, file: !4, isLocal: false, isDefinition: true, isOptimized: false, unit: !12)
!4 = !DIFile(filename: "a.cpp", directory: "/tmp")
!5 = !DIExpression()
!6 = !DILocation(line: 0, scope: !3, inlinedAt: !7)
!7 = distinct !DILocation(line: 0, scope: !8)
!8 = distinct !DISubprogram(linkageName: "test_valid_metadata", scope: null, isLocal: false, isDefinition: true, isOptimized: false, unit: !12)
!9 = !DILocalVariable(scope: !10)
!10 = distinct !DISubprogram(scope: null, file: !4, isLocal: false, isDefinition: true, isOptimized: false, unit: !12)
!11 = !DILocation(line: 0, scope: !10)
!12 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, producer: "clang version 3.5 ", isOptimized: false, emissionKind: FullDebug, file: !4)
