; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
; RUN: opt < %s -S -passes=simplifycfg -simplifycfg-require-and-preserve-domtree=1 | FileCheck %s

; In 'simplifycfg', during the flattening of a 'br', the instructions for the
; 'true' and 'false' parts, are moved out from their respective basic blocks.
; Their original debug locations (DILocations) and debug intrinsic instructions
; (dbg.values) are removed.
; As those basic blocks are now empty, their associated labels are removed.
;
; For the given test case, the labels 'W' and 'cleanup4' are removed.
; We're expecting the dbg.label associated with 'W' to disappear, because
; the 'W' label was removed.

define i16 @_Z7test_itv(i1 %c) {
; CHECK-LABEL: @_Z7test_itv(
; CHECK-NEXT:  entry:
; CHECK-NEXT:    [[RETVAL_0:%.*]] = select i1 [[C:%.*]], i16 1, i16 0
; CHECK-NEXT:    ret i16 0
;
entry:
  br label %sw.bb

sw.bb:                                            ; preds = %entry
  br i1 %c, label %W, label %cleanup4

W:                                                ; preds = %sw.bb
  call void @llvm.dbg.label(metadata !1), !dbg !8
  br label %cleanup4

cleanup4:                                         ; preds = %W, %sw.bb
  %retval.0 = phi i16 [ 1, %W ], [ 0, %sw.bb ]
  ret i16 0
}

; Function Attrs: nounwind readnone speculatable
declare void @llvm.dbg.label(metadata) #0

attributes #0 = { nounwind readnone speculatable }

!llvm.dbg.cu = !{}
!llvm.module.flags = !{!0}

!0 = !{i32 2, !"Debug Info Version", i32 3}
!1 = !DILabel(scope: !2, name: "W", file: !3, line: 47)
!2 = distinct !DILexicalBlock(scope: !4, file: !3, line: 40, column: 3)
!3 = !DIFile(filename: "foo.c", directory: "./")
!4 = distinct !DISubprogram(name: "test_it", scope: !3, file: !3, line: 35, type: !5, scopeLine: 36, unit: !7)
!5 = !DISubroutineType(types: !6)
!6 = !{}
!7 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug)
!8 = !DILocation(line: 47, column: 2, scope: !2)
