# RUN: llc -mtriple=arm-eabi -run-pass=livedebugvalues %s -o - | FileCheck %s
#
# Check that the debug information for variables are propagated into the correct blocks.
#
# Generated from the C source:
#
# int func2(int,  int);
# void func(int a) {
#   int b = func2(10, 11);
#   if (a) {
#     int c = func2(12, 13);
#     for(int i = 1; i < a; i++) {
#       func2(i, i+b);
#     }
#     func2(b,c);
#   }
#   func2(b,a);
# }

# CHECK: [[VAR_A:![0-9]+]] = !DILocalVariable(name: "a",
# CHECK: [[VAR_B:![0-9]+]] = !DILocalVariable(name: "b",
# CHECK: [[VAR_C:![0-9]+]] = !DILocalVariable(name: "c",
# CHECK: [[VAR_I:![0-9]+]] = !DILocalVariable(name: "i",

# CHECK: bb.0.entry
# CHECK: DBG_VALUE $r0, $noreg, [[VAR_A]]
# CHECK: DBG_VALUE [[REG_A:\$r[0-9]+]], $noreg, [[VAR_A]]
# CHECK: DBG_VALUE [[REG_B:\$r[0-9]+]], $noreg, [[VAR_B]]

# CHECK: bb.1.if.then
# CHECK: DBG_VALUE [[REG_B]], $noreg, [[VAR_B]]
# CHECK: DBG_VALUE [[REG_A]], $noreg, [[VAR_A]]
# CHECK: DBG_VALUE [[REG_C:\$r[0-9]+]], $noreg, [[VAR_C]]
# CHECK: DBG_VALUE 1, 0, [[VAR_I]]

# CHECK: bb.2.for.body
# CHECK: DBG_VALUE [[REG_I:\$r[0-9]+]], $noreg, [[VAR_I]]
# CHECK: DBG_VALUE [[REG_C]], $noreg, [[VAR_C]]
# CHECK: DBG_VALUE [[REG_B]], $noreg, [[VAR_B]]
# CHECK: DBG_VALUE [[REG_A]], $noreg, [[VAR_A]]
# CHECK: DBG_VALUE [[REG_I]], $noreg, [[VAR_I]]

# CHECK: bb.3.for.cond
# CHECK: DBG_VALUE [[REG_C]], $noreg, [[VAR_C]]
# CHECK: DBG_VALUE [[REG_B]], $noreg, [[VAR_B]]
# CHECK: DBG_VALUE [[REG_A]], $noreg, [[VAR_A]]
# CHECK: DBG_VALUE [[REG_I]], $noreg, [[VAR_I]]

# CHECK: bb.4.for.cond.cleanup
# CHECK: DBG_VALUE [[REG_C]], $noreg, [[VAR_C]]
# CHECK: DBG_VALUE [[REG_B]], $noreg, [[VAR_B]]
# CHECK: DBG_VALUE [[REG_A]], $noreg, [[VAR_A]]

# CHECK: bb.5.if.end
# CHECK: DBG_VALUE [[REG_B]], $noreg, [[VAR_B]]
# CHECK: DBG_VALUE [[REG_A]], $noreg, [[VAR_A]]
--- |
  ; ModuleID = '/data/kwalker/work/OpenSource-llvm/llvm/test/CodeGen/ARM/dbg-range-extension.ll'
  source_filename = "/data/kwalker/work/OpenSource-llvm/llvm/test/CodeGen/ARM/dbg-range-extension.ll"
  target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
  target triple = "arm---eabi"
  
  ; Function Attrs: minsize nounwind optsize
  define void @func(i32 %a) local_unnamed_addr #0 !dbg !8 {
  entry:
    tail call void @llvm.dbg.value(metadata i32 %a, i64 0, metadata !13, metadata !20), !dbg !21
    %call = tail call i32 @func2(i32 10, i32 11) #0, !dbg !22
    tail call void @llvm.dbg.value(metadata i32 %call, i64 0, metadata !14, metadata !20), !dbg !23
    %tobool = icmp eq i32 %a, 0, !dbg !24
    br i1 %tobool, label %if.end, label %if.then, !dbg !25
  
  if.then:                                          ; preds = %entry
    %call1 = tail call i32 @func2(i32 12, i32 13) #0, !dbg !26
    tail call void @llvm.dbg.value(metadata i32 %call1, i64 0, metadata !15, metadata !20), !dbg !27
    tail call void @llvm.dbg.value(metadata i32 1, i64 0, metadata !18, metadata !20), !dbg !28
    br label %for.cond, !dbg !29
  
  for.cond:                                         ; preds = %for.body, %if.then
    %i.0 = phi i32 [ 1, %if.then ], [ %inc, %for.body ]
    tail call void @llvm.dbg.value(metadata i32 %i.0, i64 0, metadata !18, metadata !20), !dbg !28
    %cmp = icmp slt i32 %i.0, %a, !dbg !30
    br i1 %cmp, label %for.body, label %for.cond.cleanup, !dbg !33
  
  for.cond.cleanup:                                 ; preds = %for.cond
    %call3 = tail call i32 @func2(i32 %call, i32 %call1) #0, !dbg !34
    br label %if.end, !dbg !35
  
  for.body:                                         ; preds = %for.cond
    %0 = add i32 %call, %i.0, !dbg !36
    %call2 = tail call i32 @func2(i32 %i.0, i32 %0) #0, !dbg !36
    %inc = add nuw nsw i32 %i.0, 1, !dbg !38
    tail call void @llvm.dbg.value(metadata i32 %inc, i64 0, metadata !18, metadata !20), !dbg !28
    br label %for.cond, !dbg !40, !llvm.loop !41
  
  if.end:                                           ; preds = %for.cond.cleanup, %entry
    %call4 = tail call i32 @func2(i32 %call, i32 %a) #0, !dbg !43
    ret void, !dbg !44
  }
  
  ; Function Attrs: minsize optsize
  declare i32 @func2(i32, i32) local_unnamed_addr #1
  
  ; Function Attrs: nounwind readnone
  declare void @llvm.dbg.value(metadata, i64, metadata, metadata) #2
  
  ; Function Attrs: nounwind
  declare void @llvm.stackprotector(i8*, i8**) #3
  
  attributes #0 = { minsize nounwind optsize }
  attributes #1 = { minsize optsize }
  attributes #2 = { nounwind readnone }
  attributes #3 = { nounwind }
  
  !llvm.dbg.cu = !{!0}
  !llvm.module.flags = !{!3, !4, !5, !6}
  !llvm.ident = !{!7}
  
  !0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "clang", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !2)
  !1 = !DIFile(filename: "loop.c", directory: "/tmp")
  !2 = !{}
  !3 = !{i32 2, !"Dwarf Version", i32 4}
  !4 = !{i32 2, !"Debug Info Version", i32 3}
  !5 = !{i32 1, !"wchar_size", i32 4}
  !6 = !{i32 1, !"min_enum_size", i32 4}
  !7 = !{!"clang version 4.0.0"}
  !8 = distinct !DISubprogram(name: "func", scope: !1, file: !1, line: 2, type: !9, isLocal: false, isDefinition: true, scopeLine: 2, flags: DIFlagPrototyped, isOptimized: true, unit: !0, retainedNodes: !12)
  !9 = !DISubroutineType(types: !10)
  !10 = !{null, !11}
  !11 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
  !12 = !{!13, !14, !15, !18}
  !13 = !DILocalVariable(name: "a", arg: 1, scope: !8, file: !1, line: 2, type: !11)
  !14 = !DILocalVariable(name: "b", scope: !8, file: !1, line: 3, type: !11)
  !15 = !DILocalVariable(name: "c", scope: !16, file: !1, line: 5, type: !11)
  !16 = distinct !DILexicalBlock(scope: !17, file: !1, line: 4, column: 9)
  !17 = distinct !DILexicalBlock(scope: !8, file: !1, line: 4, column: 6)
  !18 = !DILocalVariable(name: "i", scope: !19, file: !1, line: 6, type: !11)
  !19 = distinct !DILexicalBlock(scope: !16, file: !1, line: 6, column: 3)
  !20 = !DIExpression()
  !21 = !DILocation(line: 2, column: 15, scope: !8)
  !22 = !DILocation(line: 3, column: 17, scope: !8)
  !23 = !DILocation(line: 3, column: 13, scope: !8)
  !24 = !DILocation(line: 4, column: 6, scope: !17)
  !25 = !DILocation(line: 4, column: 6, scope: !8)
  !26 = !DILocation(line: 5, column: 11, scope: !16)
  !27 = !DILocation(line: 5, column: 7, scope: !16)
  !28 = !DILocation(line: 6, column: 11, scope: !19)
  !29 = !DILocation(line: 6, column: 7, scope: !19)
  !30 = !DILocation(line: 6, column: 20, scope: !31)
  !31 = !DILexicalBlockFile(scope: !32, file: !1, discriminator: 1)
  !32 = distinct !DILexicalBlock(scope: !19, file: !1, line: 6, column: 3)
  !33 = !DILocation(line: 6, column: 3, scope: !31)
  !34 = !DILocation(line: 9, column: 3, scope: !16)
  !35 = !DILocation(line: 10, column: 2, scope: !16)
  !36 = !DILocation(line: 7, column: 4, scope: !37)
  !37 = distinct !DILexicalBlock(scope: !32, file: !1, line: 6, column: 30)
  !38 = !DILocation(line: 6, column: 26, scope: !39)
  !39 = !DILexicalBlockFile(scope: !32, file: !1, discriminator: 3)
  !40 = !DILocation(line: 6, column: 3, scope: !39)
  !41 = distinct !{!41, !42}
  !42 = !DILocation(line: 6, column: 3, scope: !16)
  !43 = !DILocation(line: 11, column: 2, scope: !8)
  !44 = !DILocation(line: 12, column: 1, scope: !8)

...
---
name:            func
alignment:       2
exposesReturnsTwice: false
legalized:       false
regBankSelected: false
selected:        false
tracksRegLiveness: false
liveins:         
  - { reg: '$r0' }
calleeSavedRegisters: [ '$lr', '$d8', '$d9', '$d10', '$d11', '$d12', '$d13', 
                        '$d14', '$d15', '$q4', '$q5', '$q6', '$q7', '$r4', 
                        '$r5', '$r6', '$r7', '$r8', '$r9', '$r10', '$r11', 
                        '$s16', '$s17', '$s18', '$s19', '$s20', '$s21', 
                        '$s22', '$s23', '$s24', '$s25', '$s26', '$s27', 
                        '$s28', '$s29', '$s30', '$s31', '$d8_d10', '$d9_d11', 
                        '$d10_d12', '$d11_d13', '$d12_d14', '$d13_d15', 
                        '$q4_q5', '$q5_q6', '$q6_q7', '$q4_q5_q6_q7', '$r4_r5', 
                        '$r6_r7', '$r8_r9', '$r10_r11', '$d8_d9_d10', '$d9_d10_d11', 
                        '$d10_d11_d12', '$d11_d12_d13', '$d12_d13_d14', 
                        '$d13_d14_d15', '$d8_d10_d12', '$d9_d11_d13', '$d10_d12_d14', 
                        '$d11_d13_d15', '$d8_d10_d12_d14', '$d9_d11_d13_d15', 
                        '$d9_d10', '$d11_d12', '$d13_d14', '$d9_d10_d11_d12', 
                        '$d11_d12_d13_d14' ]
frameInfo:       
  isFrameAddressTaken: false
  isReturnAddressTaken: false
  hasStackMap:     false
  hasPatchPoint:   false
  stackSize:       24
  offsetAdjustment: 0
  maxAlignment:    4
  adjustsStack:    true
  hasCalls:        true
  maxCallFrameSize: 0
  hasOpaqueSPAdjustment: false
  hasVAStart:      false
  hasMustTailInVarArgFunc: false
stack:           
  - { id: 0, type: spill-slot, offset: -4, size: 4, alignment: 4, callee-saved-register: '$lr' }
  - { id: 1, type: spill-slot, offset: -8, size: 4, alignment: 4, callee-saved-register: '$r11' }
  - { id: 2, type: spill-slot, offset: -12, size: 4, alignment: 4, callee-saved-register: '$r7' }
  - { id: 3, type: spill-slot, offset: -16, size: 4, alignment: 4, callee-saved-register: '$r6' }
  - { id: 4, type: spill-slot, offset: -20, size: 4, alignment: 4, callee-saved-register: '$r5' }
  - { id: 5, type: spill-slot, offset: -24, size: 4, alignment: 4, callee-saved-register: '$r4' }
body:             |
  bb.0.entry:
    liveins: $r0, $r4, $r5, $r6, $r7, $r11, $lr
  
    $sp = frame-setup STMDB_UPD $sp, 14, $noreg, killed $r4, killed $r5, killed $r6, killed $r7, killed $r11, killed $lr
    frame-setup CFI_INSTRUCTION def_cfa_offset 24
    frame-setup CFI_INSTRUCTION offset $lr, -4
    frame-setup CFI_INSTRUCTION offset $r11, -8
    frame-setup CFI_INSTRUCTION offset $r7, -12
    frame-setup CFI_INSTRUCTION offset $r6, -16
    frame-setup CFI_INSTRUCTION offset $r5, -20
    frame-setup CFI_INSTRUCTION offset $r4, -24
    DBG_VALUE $r0, $noreg, !13, !20, debug-location !21
    $r4 = MOVr killed $r0, 14, $noreg, $noreg
    DBG_VALUE $r4, $noreg, !13, !20, debug-location !21
    $r0 = MOVi 10, 14, $noreg, _, debug-location !22
    $r1 = MOVi 11, 14, $noreg, _, debug-location !22
    BL @func2, csr_aapcs, implicit-def dead $lr, implicit $sp, implicit killed $r0, implicit killed $r1, implicit-def $sp, implicit-def $r0, debug-location !22
    $r5 = MOVr killed $r0, 14, $noreg, _, debug-location !22
    DBG_VALUE $r5, $noreg, !14, !20, debug-location !23
    CMPri $r4, 0, 14, $noreg, implicit-def $cpsr, debug-location !25
    Bcc %bb.5.if.end, 0, killed $cpsr
  
  bb.1.if.then:
    liveins: $r4, $r5
  
    $r0 = MOVi 12, 14, $noreg, _, debug-location !26
    $r1 = MOVi 13, 14, $noreg, _, debug-location !26
    BL @func2, csr_aapcs, implicit-def dead $lr, implicit $sp, implicit killed $r0, implicit killed $r1, implicit-def $sp, implicit-def $r0, debug-location !26
    $r6 = MOVr killed $r0, 14, $noreg, _, debug-location !26
    DBG_VALUE $r6, $noreg, !15, !20, debug-location !27
    $r7 = MOVi 1, 14, $noreg, $noreg
    DBG_VALUE 1, 0, !18, !20, debug-location !28
    B %bb.3.for.cond
  
  bb.2.for.body:
    liveins: $r4, $r5, $r6, $r7
  
    $r1 = ADDrr $r5, $r7, 14, $noreg, _, debug-location !36
    $r0 = MOVr $r7, 14, $noreg, _, debug-location !36
    BL @func2, csr_aapcs, implicit-def dead $lr, implicit $sp, implicit killed $r0, implicit killed $r1, implicit-def $sp, implicit-def dead $r0, debug-location !36
    $r7 = ADDri killed $r7, 1, 14, $noreg, _, debug-location !38
    DBG_VALUE $r7, $noreg, !18, !20, debug-location !28
  
  bb.3.for.cond:
    liveins: $r4, $r5, $r6, $r7
  
    DBG_VALUE $r7, $noreg, !18, !20, debug-location !28
    CMPrr $r7, $r4, 14, $noreg, implicit-def $cpsr, debug-location !33
    Bcc %bb.2.for.body, 11, killed $cpsr, debug-location !33
  
  bb.4.for.cond.cleanup:
    liveins: $r4, $r5, $r6
  
    $r0 = MOVr $r5, 14, $noreg, _, debug-location !34
    $r1 = MOVr killed $r6, 14, $noreg, _, debug-location !34
    BL @func2, csr_aapcs, implicit-def dead $lr, implicit $sp, implicit killed $r0, implicit killed $r1, implicit-def $sp, implicit-def dead $r0, debug-location !34
  
  bb.5.if.end:
    liveins: $r4, $r5
  
    $r0 = MOVr killed $r5, 14, $noreg, _, debug-location !43
    $r1 = MOVr killed $r4, 14, $noreg, _, debug-location !43
    $sp = LDMIA_UPD $sp, 14, $noreg, def $r4, def $r5, def $r6, def $r7, def $r11, def $lr, debug-location !43
    TAILJMPd @func2, implicit $sp, implicit $sp, implicit killed $r0, implicit killed $r1, debug-location !43

...
