1# RUN: llvm-mc < %s -filetype obj -triple x86_64 -o %t 2# RUN: not llvm-dwarfdump --verify %t | FileCheck %s 3 4# CHECK: error: Simplified template DW_AT_name could not be reconstituted: 5# CHECK: original: t1<it> 6# CHECK reconstituted: t1<int> 7 .text 8 .file "verify.cpp" 9 .file 1 "/usr/local/google/home/blaikie/dev/scratch" "verify.cpp" 10 .type v1,@object # @v1 11 .bss 12 .globl v1 13v1: 14 .zero 1 15 .size v1, 1 16 17 .section .debug_abbrev,"",@progbits 18 .byte 1 # Abbreviation Code 19 .byte 17 # DW_TAG_compile_unit 20 .byte 1 # DW_CHILDREN_yes 21 .byte 37 # DW_AT_producer 22 .byte 14 # DW_FORM_strp 23 .byte 19 # DW_AT_language 24 .byte 5 # DW_FORM_data2 25 .byte 3 # DW_AT_name 26 .byte 14 # DW_FORM_strp 27 .byte 16 # DW_AT_stmt_list 28 .byte 23 # DW_FORM_sec_offset 29 .byte 27 # DW_AT_comp_dir 30 .byte 14 # DW_FORM_strp 31 .byte 0 # EOM(1) 32 .byte 0 # EOM(2) 33 .byte 2 # Abbreviation Code 34 .byte 52 # DW_TAG_variable 35 .byte 0 # DW_CHILDREN_no 36 .byte 3 # DW_AT_name 37 .byte 14 # DW_FORM_strp 38 .byte 73 # DW_AT_type 39 .byte 19 # DW_FORM_ref4 40 .byte 63 # DW_AT_external 41 .byte 25 # DW_FORM_flag_present 42 .byte 58 # DW_AT_decl_file 43 .byte 11 # DW_FORM_data1 44 .byte 59 # DW_AT_decl_line 45 .byte 11 # DW_FORM_data1 46 .byte 2 # DW_AT_location 47 .byte 24 # DW_FORM_exprloc 48 .byte 0 # EOM(1) 49 .byte 0 # EOM(2) 50 .byte 3 # Abbreviation Code 51 .byte 19 # DW_TAG_structure_type 52 .byte 1 # DW_CHILDREN_yes 53 .byte 54 # DW_AT_calling_convention 54 .byte 11 # DW_FORM_data1 55 .byte 3 # DW_AT_name 56 .byte 14 # DW_FORM_strp 57 .byte 11 # DW_AT_byte_size 58 .byte 11 # DW_FORM_data1 59 .byte 58 # DW_AT_decl_file 60 .byte 11 # DW_FORM_data1 61 .byte 59 # DW_AT_decl_line 62 .byte 11 # DW_FORM_data1 63 .byte 0 # EOM(1) 64 .byte 0 # EOM(2) 65 .byte 4 # Abbreviation Code 66 .byte 47 # DW_TAG_template_type_parameter 67 .byte 0 # DW_CHILDREN_no 68 .byte 73 # DW_AT_type 69 .byte 19 # DW_FORM_ref4 70 .byte 3 # DW_AT_name 71 .byte 14 # DW_FORM_strp 72 .byte 0 # EOM(1) 73 .byte 0 # EOM(2) 74 .byte 5 # Abbreviation Code 75 .byte 36 # DW_TAG_base_type 76 .byte 0 # DW_CHILDREN_no 77 .byte 3 # DW_AT_name 78 .byte 14 # DW_FORM_strp 79 .byte 62 # DW_AT_encoding 80 .byte 11 # DW_FORM_data1 81 .byte 11 # DW_AT_byte_size 82 .byte 11 # DW_FORM_data1 83 .byte 0 # EOM(1) 84 .byte 0 # EOM(2) 85 .byte 0 # EOM(3) 86 .section .debug_info,"",@progbits 87.Lcu_begin0: 88 .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit 89.Ldebug_info_start0: 90 .short 4 # DWARF version number 91 .long .debug_abbrev # Offset Into Abbrev. Section 92 .byte 8 # Address Size (in bytes) 93 .byte 1 # Abbrev [1] 0xb:0x43 DW_TAG_compile_unit 94 .long .Linfo_string0 # DW_AT_producer 95 .short 33 # DW_AT_language 96 .long .Linfo_string1 # DW_AT_name 97 .long .Lline_table_start0 # DW_AT_stmt_list 98 .long .Linfo_string2 # DW_AT_comp_dir 99 .byte 2 # Abbrev [2] 0x1e:0x15 DW_TAG_variable 100 .long .Linfo_string3 # DW_AT_name 101 .long 51 # DW_AT_type 102 # DW_AT_external 103 .byte 1 # DW_AT_decl_file 104 .byte 2 # DW_AT_decl_line 105 .byte 9 # DW_AT_location 106 .byte 3 107 .quad v1 108 .byte 3 # Abbrev [3] 0x33:0x13 DW_TAG_structure_type 109 .byte 5 # DW_AT_calling_convention 110 .long .Linfo_string6 # DW_AT_name 111 .byte 1 # DW_AT_byte_size 112 .byte 1 # DW_AT_decl_file 113 .byte 1 # DW_AT_decl_line 114 .byte 4 # Abbrev [4] 0x3c:0x9 DW_TAG_template_type_parameter 115 .long 70 # DW_AT_type 116 .long .Linfo_string5 # DW_AT_name 117 .byte 0 # End Of Children Mark 118 .byte 5 # Abbrev [5] 0x46:0x7 DW_TAG_base_type 119 .long .Linfo_string4 # DW_AT_name 120 .byte 5 # DW_AT_encoding 121 .byte 4 # DW_AT_byte_size 122 .byte 0 # End Of Children Mark 123.Ldebug_info_end0: 124 .section .debug_str,"MS",@progbits,1 125.Linfo_string0: 126 .asciz "clang version 14.0.0 (git@github.com:llvm/llvm-project.git 9daec0955132e6e33b086edc63c6f3e0f5712323)" # string offset=0 127.Linfo_string1: 128 .asciz "verify.cpp" # string offset=101 129.Linfo_string2: 130 .asciz "/usr/local/google/home/blaikie/dev/scratch" # string offset=112 131.Linfo_string3: 132 .asciz "v1" # string offset=155 133.Linfo_string4: 134 .asciz "int" # string offset=158 135.Linfo_string5: 136 .asciz "T" # string offset=162 137.Linfo_string6: 138 .asciz "_STN|t1|<it>" # string offset=164 139 .ident "clang version 14.0.0 (git@github.com:llvm/llvm-project.git 9daec0955132e6e33b086edc63c6f3e0f5712323)" 140 .section ".note.GNU-stack","",@progbits 141 .addrsig 142 .section .debug_line,"",@progbits 143.Lline_table_start0: 144