# RUN: llvm-mc %s -filetype obj -triple x86_64-pc-linux --defsym CASE1=0 -o %t1.o # RUN: not llvm-dwarfdump -debug-loc %t1.o 2>&1 | FileCheck %s # RUN: llvm-mc %s -filetype obj -triple x86_64-pc-linux --defsym CASE2=0 -o %t2.o # RUN: not llvm-dwarfdump -debug-loc %t2.o 2>&1 | FileCheck %s # RUN: llvm-mc %s -filetype obj -triple x86_64-pc-linux --defsym CASE3=0 -o %t3.o # RUN: not llvm-dwarfdump -debug-loc %t3.o 2>&1 | FileCheck %s # RUN: llvm-mc %s -filetype obj -triple x86_64-pc-linux --defsym CASE4=0 -o %t4.o # RUN: not llvm-dwarfdump -debug-loc %t4.o 2>&1 | FileCheck %s # RUN: llvm-mc %s -filetype obj -triple x86_64-pc-linux --defsym CASE5=0 -o %t5.o # RUN: not llvm-dwarfdump -debug-loc %t5.o 2>&1 | FileCheck %s # RUN: llvm-mc %s -filetype obj -triple x86_64-pc-linux --defsym CASE6=0 -o %t6.o # RUN: not llvm-dwarfdump -debug-loc %t6.o 2>&1 | FileCheck %s # RUN: llvm-mc %s -filetype obj -triple x86_64-pc-linux --defsym CASE7=0 -o %t7.o # RUN: llvm-dwarfdump -debug-loc %t7.o 2>&1 | FileCheck %s --check-prefix=UNKNOWN-REG # CHECK: error: unexpected end of data # UNKNOWN-REG: (0x0000000000000000, 0x0000000000000001): DW_OP_regx 0xdeadbeef .section .debug_loc,"",@progbits .ifdef CASE1 .byte 1 # bogus .endif .ifdef CASE2 .quad 0 # starting offset .endif .ifdef CASE3 .quad 0 # starting offset .quad 1 # ending offset .endif .ifdef CASE4 .quad 0 # starting offset .quad 1 # ending offset .word 0 # Loc expr size .endif .ifdef CASE5 .quad 0 # starting offset .quad 1 # ending offset .word 0 # Loc expr size .quad 0 # starting offset .endif .ifdef CASE6 .quad 0 # starting offset .quad 1 # ending offset .word 0xffff # Loc expr size .endif .ifdef CASE7 .quad 0 # starting offset .quad 1 # ending offset .word 2f-1f # Loc expr size 1: .byte 0x90 # DW_OP_regx .uleb128 0xdeadbeef 2: .quad 0 # starting offset .quad 0 # ending offset .endif # A minimal compile unit is needed to deduce the address size of the location # lists .section .debug_info,"",@progbits .long .Lcu_end0-.Lcu_begin0 # Length of Unit .Lcu_begin0: .short 4 # DWARF version number .long 0 # Offset Into Abbrev. Section .byte 8 # Address Size (in bytes) .byte 0 # End Of Children Mark .Lcu_end0: