reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
    1
    2
    3
    4
    5
    6
    7
    8
    9
   10
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
   25
   26
   27
   28
   29
   30
   31
   32
   33
   34
   35
   36
   37
   38
   39
   40
   41
   42
   43
   44
   45
   46
   47
   48
   49
   50
   51
   52
   53
   54
   55
   56
   57
   58
   59
   60
   61
   62
   63
   64
   65
   66
   67
   68
   69
   70
   71
   72
   73
   74
   75
   76
   77
   78
   79
   80
   81
   82
   83
   84
   85
   86
   87
   88
   89
   90
   91
   92
   93
   94
   95
   96
   97
   98
   99
# Dump the complete .debug_line.dwo, then just one part.
#
# RUN: llvm-mc -triple x86_64-unknown-unknown -filetype=obj %s -o %t.o
# RUN: llvm-dwarfdump -debug-line %t.o | FileCheck %s --check-prefixes=PART1,PART2
# RUN: llvm-dwarfdump -debug-line=0x32 %t.o | FileCheck %s --check-prefix=PART2

        .section .debug_line.dwo,"",@progbits
LH_1_start:
        .long   LH_1_end-LH_1_version   # Length of Unit
LH_1_version:
        .short  4               # DWARF version number
        .long   LH_1_header_end-LH_1_params     # Length of Prologue
LH_1_params:
        .byte   1               # Minimum Instruction Length
        .byte   1               # Maximum Operations per Instruction
        .byte   1               # Default is_stmt
        .byte   -5              # Line Base
        .byte   14              # Line Range
        .byte   13              # Opcode Base
        .byte   0               # Standard Opcode Lengths
        .byte   1
        .byte   1
        .byte   1
        .byte   1
        .byte   0
        .byte   0
        .byte   0
        .byte   1
        .byte   0
        .byte   0
        .byte   1
        # Directory table
        .asciz  "Directory1"
        .byte   0
        # File table
        .asciz  "File1"         # File name
        .byte   1               # Directory index
        .byte   0x41            # Timestamp
        .byte   0x42            # File Size
        .byte   0               # End of list
LH_1_header_end:
        # Line number program, which is empty.
LH_1_end:

# PART1:      Line table prologue:
# PART1-NEXT: total_length: 0x0000002e
# PART1-NEXT: version: 4
# PART1-NEXT: prologue_length: 0x00000028
# PART1:      include_directories[  1] = "Directory1"
# PART1:      file_names[  1]
# PART1:      name: "File1"

# Second line table.
LH_2_start:
        .long   LH_2_end-LH_2_version   # Length of Unit
LH_2_version:
        .short  4               # DWARF version number
        .long   LH_2_header_end-LH_2_params     # Length of Prologue
LH_2_params:
        .byte   1               # Minimum Instruction Length
        .byte   1               # Maximum Operations per Instruction
        .byte   1               # Default is_stmt
        .byte   -5              # Line Base
        .byte   14              # Line Range
        .byte   13              # Opcode Base
        .byte   0               # Standard Opcode Lengths
        .byte   1
        .byte   1
        .byte   1
        .byte   1
        .byte   0
        .byte   0
        .byte   0
        .byte   1
        .byte   0
        .byte   0
        .byte   1
        # Directory table
        .asciz  "Dir2"
        .byte   0
        # File table
        .asciz  "File2"         # File name
        .byte   1               # Directory index
        .byte   0x14            # Timestamp
        .byte   0x24            # File Size
        .byte   0               # End of list
LH_2_header_end:
        # Line number program, which is empty.
LH_2_end:

# PART2:      Line table prologue:
# PART2-NEXT: total_length: 0x00000028
# PART2-NEXT: version: 4
# PART2-NEXT: prologue_length: 0x00000022
# PART2-NOT:  prologue:
# PART2:      include_directories[  1] = "Dir2"
# PART2:      file_names[  1]
# PART2:      name: "File2"
# PART2-NOT:  prologue: