1# RUN: llvm-mc %s -filetype obj -triple x86_64 -o - | \ 2# RUN: llvm-dwarfdump -v -debug-loclists - | \ 3# RUN: FileCheck %s 4 5# CHECK: .debug_loclists contents: 6# CHECK-NEXT: locations list header: 7# CHECK-SAME: length = 0x0000000000000028, 8# CHECK-SAME: format = DWARF64, 9# CHECK-SAME: version = 0x0005, 10# CHECK-SAME: addr_size = 0x08, 11# CHECK-SAME: seg_size = 0x00, 12# CHECK-SAME: offset_entry_count = 0x00000002 13# CHECK-NEXT: offsets: [ 14# CHECK-NEXT: 0x0000000000000010 => 0x00000024 15# CHECK-NEXT: 0x0000000000000018 => 0x0000002c 16# CHECK-NEXT: ] 17# CHECK-NEXT: 0x00000024: 18# CHECK-NEXT: DW_LLE_offset_pair (0x0000000000000001, 0x0000000000000002): DW_OP_consts +7, DW_OP_stack_value 19# CHECK-NEXT: DW_LLE_end_of_list () 20# CHECK-EMPTY: 21# CHECK-NEXT: 0x0000002c: 22# CHECK-NEXT: DW_LLE_offset_pair (0x0000000000000005, 0x0000000000000007): DW_OP_consts +12, DW_OP_stack_value 23# CHECK-NEXT: DW_LLE_end_of_list () 24 25 .section .debug_loclists, "", @progbits 26 .long 0xffffffff # DWARF64 mark 27 .quad .LLLEnd-.LLLBegin # Length 28.LLLBegin: 29 .short 5 # Version 30 .byte 8 # Address size 31 .byte 0 # Segment selector size 32 .long 2 # Offset entry count 33.LLLBase: 34 .quad .LLL0-.LLLBase 35 .quad .LLL1-.LLLBase 36.LLL0: 37 .byte 4 # DW_LLE_offset_pair 38 .uleb128 1 # starting offset 39 .uleb128 2 # ending offset 40 .byte 3 # Loc expr size 41 .byte 17 # DW_OP_consts 42 .byte 7 # 7 43 .byte 159 # DW_OP_stack_value 44 .byte 0 # DW_LLE_end_of_list 45 46.LLL1: 47 .byte 4 # DW_LLE_offset_pair 48 .uleb128 5 # starting offset 49 .uleb128 7 # ending offset 50 .byte 3 # Loc expr size 51 .byte 17 # DW_OP_consts 52 .byte 12 # 12 53 .byte 159 # DW_OP_stack_value 54 .byte 0 # DW_LLE_end_of_list 55.LLLEnd: 56