1# RUN: llvm-mc -filetype obj -triple x86_64-pc-linux %s -o %t.o 2# RUN: llvm-dwarfdump -debug-line %t.o | FileCheck %s 3 4# CHECK: Address Line Column File ISA Discriminator Flags 5# CHECK-NEXT: ------------------ ------ ------ ------ --- ------------- ------------- 6# CHECK-NEXT: 0x0000000000000000 1 0 1 0 1 is_stmt 7# CHECK-NEXT: 0x0000000000000001 2 0 1 0 0 is_stmt 8# CHECK-NEXT: 0x0000000000000001 2 0 1 0 0 is_stmt end_sequence 9 10.section .debug_line,"",@progbits 11.Line_table_start0: 12 .long .Line_table_end0-.Line_table_start0-4 # Length of Unit 13 .short 5 # DWARF version number 14 .byte 8 # Address Size 15 .byte 0 # Segment Selector Size 16 .long .Line_table_header_end0-.Line_table_params0 # Length of Prologue 17.Line_table_params0: 18 .byte 1 # Minimum Instruction Length 19 .byte 1 # Maximum Operations per Instruction 20 .byte 1 # Default is_stmt 21 .byte -5 # Line Base 22 .byte 14 # Line Range 23 .byte 13 # Opcode Base 24 .byte 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1 # Standard Opcode Lengths 25 # Directory table format 26 .byte 1 # One element per directory entry 27 .byte 1 # DW_LNCT_path 28 .byte 0x08 # DW_FORM_string 29 # Directory table entries 30 .byte 1 # 1 directory 31 .asciz "/tmp" 32 # File table format 33 .byte 2 # 2 elements per file entry 34 .byte 1 # DW_LNCT_path 35 .byte 0x08 # DW_FORM_string 36 .byte 2 # DW_LNCT_directory_index 37 .byte 0x0b # DW_FORM_data1 38 # File table entries 39 .byte 1 # 1 file 40 .asciz "a.c" 41 .byte 0 42.Line_table_header_end0: 43 .byte 0,2,4,1 # DW_LNE_set_discriminator 1 44 .byte 1 # DW_LNS_copy 45 .byte 33 # address += 1, line += 1 46 .byte 0,1,1 # DW_LNE_end_sequence 47.Line_table_end0: 48