blob: 3fca64f3ead3a2b05708d5fb9307770f6bf0c6e8 [file] [log] [blame]
.section .debug_line,"",@progbits
# Leading good section
.long .Lunit1_end - .Lunit1_start # Length of Unit (DWARF-32 format)
.Lunit1_start:
.short 4 # DWARF version number
.long .Lprologue1_end-.Lprologue1_start # Length of Prologue
.Lprologue1_start:
.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, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1 # Standard Opcode Lengths
.asciz "dir1" # Include table
.asciz "dir2"
.byte 0
.asciz "file1" # File table
.byte 0, 0, 0
.asciz "file2"
.byte 1, 0, 0
.byte 0
.Lprologue1_end:
.byte 0, 9, 2 # DW_LNE_set_address
.quad 0x0badbeef
.byte 0, 1, 1 # DW_LNE_end_sequence
.Lunit1_end:
# version 0
.long .Lunit_v0_end - .Lunit_v0_start # unit length
.Lunit_v0_start:
.short 0 # version
.Lunit_v0_end:
# version 1
.long .Lunit_v1_end - .Lunit_v1_start # unit length
.Lunit_v1_start:
.short 1 # version
.Lunit_v1_end:
# version 5 malformed line/include table
.long .Lunit_v5_end - .Lunit_v5_start # unit length
.Lunit_v5_start:
.short 5 # version
.byte 8 # address size
.byte 8 # segment selector
.long .Lprologue_v5_end-.Lprologue_v5_start # Length of Prologue
.Lprologue_v5_start:
.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, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1 # Standard Opcode Lengths
.byte 0 # directory table (invalid)
.Lprologue_v5_end:
.Lunit_v5_end:
# Short prologue
.long .Lunit_short_prologue_end - .Lunit_short_prologue_start # unit length
.Lunit_short_prologue_start:
.short 4 # version
.long .Lprologue_short_prologue_end-.Lprologue_short_prologue_start - 2 # Length of Prologue
.Lprologue_short_prologue_start:
.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, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1 # Standard Opcode Lengths
.asciz "dir1" # Include table
.asciz "dir2"
.byte 0
.asciz "file1" # File table
.byte 0, 0, 0
.asciz "file2"
.byte 1, 0, 0
.byte 0
.Lprologue_short_prologue_end:
.Lunit_short_prologue_end:
# Over-long prologue
.long .Lunit_long_prologue_end - .Lunit_long_prologue_start # unit length
.Lunit_long_prologue_start:
.short 4 # version
.long .Lprologue_long_prologue_end-.Lprologue_long_prologue_start + 1 # Length of Prologue
.Lprologue_long_prologue_start:
.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, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1 # Standard Opcode Lengths
.asciz "dir1" # Include table
.asciz "dir2"
.byte 0
.asciz "file1" # File table
.byte 0, 0, 0
.asciz "file2"
.byte 1, 0, 0
.byte 0
.Lprologue_long_prologue_end:
.Lunit_long_prologue_end:
# Over-long extended opcode
.long .Lunit_long_opcode_end - .Lunit_long_opcode_start # unit length
.Lunit_long_opcode_start:
.short 4 # version
.long .Lprologue_long_opcode_end-.Lprologue_long_opcode_start # Length of Prologue
.Lprologue_long_opcode_start:
.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, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1 # Standard Opcode Lengths
.asciz "dir1" # Include table
.asciz "dir2"
.byte 0
.asciz "file1" # File table
.byte 0, 0, 0
.asciz "file2"
.byte 1, 0, 0
.byte 0
.Lprologue_long_opcode_end:
.byte 0, 9, 2 # DW_LNE_set_address
.quad 0xabbadaba
.byte 0, 2, 1 # DW_LNE_end_sequence (wrong length)
.byte 0, 9, 2 # DW_LNE_set_address
.quad 0xbabb1e45
.byte 0, 1, 1 # DW_LNE_end_sequence (wrong length)
.Lunit_long_opcode_end:
# No end of sequence
.long .Lunit_no_eos_end - .Lunit_no_eos_start # unit length
.Lunit_no_eos_start:
.short 4 # version
.long .Lprologue_no_eos_end-.Lprologue_no_eos_start # Length of Prologue
.Lprologue_no_eos_start:
.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, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1 # Standard Opcode Lengths
.asciz "dir1" # Include table
.asciz "dir2"
.byte 0
.asciz "file1" # File table
.byte 0, 0, 0
.asciz "file2"
.byte 1, 0, 0
.byte 0
.Lprologue_no_eos_end:
.byte 0, 9, 2 # DW_LNE_set_address
.quad 0xdeadfade
.byte 1 # DW_LNS_copy
.Lunit_no_eos_end:
# Trailing good section
.long .Lunit_good_end - .Lunit_good_start # Length of Unit (DWARF-32 format)
.Lunit_good_start:
.short 4 # DWARF version number
.long .Lprologue_good_end-.Lprologue_good_start # Length of Prologue
.Lprologue_good_start:
.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, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1 # Standard Opcode Lengths
.asciz "dir1" # Include table
.asciz "dir2"
.byte 0
.asciz "file1" # File table
.byte 0, 0, 0
.asciz "file2"
.byte 1, 0, 0
.byte 0
.Lprologue_good_end:
.byte 0, 9, 2 # DW_LNE_set_address
.quad 0xcafebabe
.byte 0, 1, 1 # DW_LNE_end_sequence
.Lunit_good_end: