1*316da543SKim-Anh Tran# RUN: llvm-mc -triple x86_64-unknown-linux %s -filetype=obj -o %t.dwp 2*316da543SKim-Anh Tran# RUN: not llvm-dwp %t.dwp -o %t 2>&1 | FileCheck %s 301704bb1SDavid Blaikie 4*316da543SKim-Anh Tran## Note: To reach the test point, we need a DWP file with a CU, a CU index 5*316da543SKim-Anh Tran## and a broken TU index. 6*316da543SKim-Anh Tran 7*316da543SKim-Anh Tran# CHECK: error: failed to parse tu_index 8*316da543SKim-Anh Tran 9*316da543SKim-Anh Tran.section .debug_abbrev.dwo, "e", @progbits 10*316da543SKim-Anh Tran.LAbbrevBegin: 11*316da543SKim-Anh Tran .uleb128 1 # Abbreviation Code 12*316da543SKim-Anh Tran .uleb128 17 # DW_TAG_compile_unit 13*316da543SKim-Anh Tran .byte 1 # DW_CHILDREN_no 14*316da543SKim-Anh Tran .uleb128 0x2131 # DW_AT_GNU_dwo_id 15*316da543SKim-Anh Tran .uleb128 7 # DW_FORM_data8 16*316da543SKim-Anh Tran .byte 0 # EOM(1) 17*316da543SKim-Anh Tran .byte 0 # EOM(2) 18*316da543SKim-Anh Tran .byte 0 # EOM(3) 19*316da543SKim-Anh Tran.LAbbrevEnd: 20*316da543SKim-Anh Tran 21*316da543SKim-Anh Tran .section .debug_info.dwo, "e", @progbits 22*316da543SKim-Anh Tran.LCUBegin: 23*316da543SKim-Anh Tran .long .LCUEnd-.LCUVersion # Length of Unit 24*316da543SKim-Anh Tran.LCUVersion: 25*316da543SKim-Anh Tran .short 4 # Version 26*316da543SKim-Anh Tran .long 0 # Abbrev offset 27*316da543SKim-Anh Tran .byte 8 # Address size 28*316da543SKim-Anh Tran .uleb128 1 # Abbrev [1] DW_TAG_compile_unit 29*316da543SKim-Anh Tran .quad 0x1100001122222222 # DW_AT_GNU_dwo_id 30*316da543SKim-Anh Tran.LCUEnd: 31*316da543SKim-Anh Tran 32*316da543SKim-Anh Tran .section .debug_types.dwo, "e", @progbits 33*316da543SKim-Anh Tran .space 1 34*316da543SKim-Anh Tran 35*316da543SKim-Anh Tran .section .debug_cu_index, "", @progbits 36*316da543SKim-Anh Tran 37*316da543SKim-Anh Tran## Header: 38*316da543SKim-Anh Tran .long 2 # Version 39*316da543SKim-Anh Tran .long 2 # Section count 40*316da543SKim-Anh Tran .long 1 # Unit count 41*316da543SKim-Anh Tran .long 2 # Slot count 42*316da543SKim-Anh Tran## Hash Table of Signatures: 43*316da543SKim-Anh Tran .quad 0x1100001122222222 44*316da543SKim-Anh Tran .quad 0 45*316da543SKim-Anh Tran## Parallel Table of Indexes: 46*316da543SKim-Anh Tran .long 1 47*316da543SKim-Anh Tran .long 0 48*316da543SKim-Anh Tran## Table of Section Offsets: 49*316da543SKim-Anh Tran## Row 0: 50*316da543SKim-Anh Tran .long 1 # DW_SECT_INFO 51*316da543SKim-Anh Tran .long 3 # DW_SECT_ABBREV 52*316da543SKim-Anh Tran## Row 1: 53*316da543SKim-Anh Tran .long 0 # Offset in .debug_info.dwo 54*316da543SKim-Anh Tran .long 0 # Offset in .debug_abbrev.dwo 55*316da543SKim-Anh Tran## Table of Section Sizes: 56*316da543SKim-Anh Tran .long .LCUEnd-.LCUBegin # Size in .debug_info.dwo 57*316da543SKim-Anh Tran .long .LAbbrevEnd-.LAbbrevBegin # Size in .debug_abbrev.dwo 58*316da543SKim-Anh Tran 59*316da543SKim-Anh Tran .section .debug_tu_index, "", @progbits 60*316da543SKim-Anh Tran## Header: 61*316da543SKim-Anh Tran .short 2 # Version 62