13ac709b6SDavid Blaikie# RUN: llvm-mc < %s -filetype obj -triple x86_64 -o %t 23ac709b6SDavid Blaikie# RUN: not llvm-dwarfdump --verify %t | FileCheck %s 33ac709b6SDavid Blaikie 43ac709b6SDavid Blaikie# CHECK: error: Simplified template DW_AT_name could not be reconstituted: 53ac709b6SDavid Blaikie# CHECK: original: t1<it> 63ac709b6SDavid Blaikie# CHECK reconstituted: t1<int> 73ac709b6SDavid Blaikie .text 83ac709b6SDavid Blaikie .file "verify.cpp" 93ac709b6SDavid Blaikie .file 1 "/usr/local/google/home/blaikie/dev/scratch" "verify.cpp" 103ac709b6SDavid Blaikie .type v1,@object # @v1 113ac709b6SDavid Blaikie .bss 123ac709b6SDavid Blaikie .globl v1 133ac709b6SDavid Blaikiev1: 143ac709b6SDavid Blaikie .zero 1 153ac709b6SDavid Blaikie .size v1, 1 163ac709b6SDavid Blaikie 173ac709b6SDavid Blaikie .section .debug_abbrev,"",@progbits 183ac709b6SDavid Blaikie .byte 1 # Abbreviation Code 193ac709b6SDavid Blaikie .byte 17 # DW_TAG_compile_unit 203ac709b6SDavid Blaikie .byte 1 # DW_CHILDREN_yes 213ac709b6SDavid Blaikie .byte 37 # DW_AT_producer 223ac709b6SDavid Blaikie .byte 14 # DW_FORM_strp 233ac709b6SDavid Blaikie .byte 19 # DW_AT_language 243ac709b6SDavid Blaikie .byte 5 # DW_FORM_data2 253ac709b6SDavid Blaikie .byte 3 # DW_AT_name 263ac709b6SDavid Blaikie .byte 14 # DW_FORM_strp 273ac709b6SDavid Blaikie .byte 16 # DW_AT_stmt_list 283ac709b6SDavid Blaikie .byte 23 # DW_FORM_sec_offset 293ac709b6SDavid Blaikie .byte 27 # DW_AT_comp_dir 303ac709b6SDavid Blaikie .byte 14 # DW_FORM_strp 313ac709b6SDavid Blaikie .byte 0 # EOM(1) 323ac709b6SDavid Blaikie .byte 0 # EOM(2) 333ac709b6SDavid Blaikie .byte 2 # Abbreviation Code 343ac709b6SDavid Blaikie .byte 52 # DW_TAG_variable 353ac709b6SDavid Blaikie .byte 0 # DW_CHILDREN_no 363ac709b6SDavid Blaikie .byte 3 # DW_AT_name 373ac709b6SDavid Blaikie .byte 14 # DW_FORM_strp 383ac709b6SDavid Blaikie .byte 73 # DW_AT_type 393ac709b6SDavid Blaikie .byte 19 # DW_FORM_ref4 403ac709b6SDavid Blaikie .byte 63 # DW_AT_external 413ac709b6SDavid Blaikie .byte 25 # DW_FORM_flag_present 423ac709b6SDavid Blaikie .byte 58 # DW_AT_decl_file 433ac709b6SDavid Blaikie .byte 11 # DW_FORM_data1 443ac709b6SDavid Blaikie .byte 59 # DW_AT_decl_line 453ac709b6SDavid Blaikie .byte 11 # DW_FORM_data1 463ac709b6SDavid Blaikie .byte 2 # DW_AT_location 473ac709b6SDavid Blaikie .byte 24 # DW_FORM_exprloc 483ac709b6SDavid Blaikie .byte 0 # EOM(1) 493ac709b6SDavid Blaikie .byte 0 # EOM(2) 503ac709b6SDavid Blaikie .byte 3 # Abbreviation Code 513ac709b6SDavid Blaikie .byte 19 # DW_TAG_structure_type 523ac709b6SDavid Blaikie .byte 1 # DW_CHILDREN_yes 533ac709b6SDavid Blaikie .byte 54 # DW_AT_calling_convention 543ac709b6SDavid Blaikie .byte 11 # DW_FORM_data1 553ac709b6SDavid Blaikie .byte 3 # DW_AT_name 563ac709b6SDavid Blaikie .byte 14 # DW_FORM_strp 573ac709b6SDavid Blaikie .byte 11 # DW_AT_byte_size 583ac709b6SDavid Blaikie .byte 11 # DW_FORM_data1 593ac709b6SDavid Blaikie .byte 58 # DW_AT_decl_file 603ac709b6SDavid Blaikie .byte 11 # DW_FORM_data1 613ac709b6SDavid Blaikie .byte 59 # DW_AT_decl_line 623ac709b6SDavid Blaikie .byte 11 # DW_FORM_data1 633ac709b6SDavid Blaikie .byte 0 # EOM(1) 643ac709b6SDavid Blaikie .byte 0 # EOM(2) 653ac709b6SDavid Blaikie .byte 4 # Abbreviation Code 663ac709b6SDavid Blaikie .byte 47 # DW_TAG_template_type_parameter 673ac709b6SDavid Blaikie .byte 0 # DW_CHILDREN_no 683ac709b6SDavid Blaikie .byte 73 # DW_AT_type 693ac709b6SDavid Blaikie .byte 19 # DW_FORM_ref4 703ac709b6SDavid Blaikie .byte 3 # DW_AT_name 713ac709b6SDavid Blaikie .byte 14 # DW_FORM_strp 723ac709b6SDavid Blaikie .byte 0 # EOM(1) 733ac709b6SDavid Blaikie .byte 0 # EOM(2) 743ac709b6SDavid Blaikie .byte 5 # Abbreviation Code 753ac709b6SDavid Blaikie .byte 36 # DW_TAG_base_type 763ac709b6SDavid Blaikie .byte 0 # DW_CHILDREN_no 773ac709b6SDavid Blaikie .byte 3 # DW_AT_name 783ac709b6SDavid Blaikie .byte 14 # DW_FORM_strp 793ac709b6SDavid Blaikie .byte 62 # DW_AT_encoding 803ac709b6SDavid Blaikie .byte 11 # DW_FORM_data1 813ac709b6SDavid Blaikie .byte 11 # DW_AT_byte_size 823ac709b6SDavid Blaikie .byte 11 # DW_FORM_data1 833ac709b6SDavid Blaikie .byte 0 # EOM(1) 843ac709b6SDavid Blaikie .byte 0 # EOM(2) 853ac709b6SDavid Blaikie .byte 0 # EOM(3) 863ac709b6SDavid Blaikie .section .debug_info,"",@progbits 873ac709b6SDavid Blaikie.Lcu_begin0: 883ac709b6SDavid Blaikie .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit 893ac709b6SDavid Blaikie.Ldebug_info_start0: 903ac709b6SDavid Blaikie .short 4 # DWARF version number 913ac709b6SDavid Blaikie .long .debug_abbrev # Offset Into Abbrev. Section 923ac709b6SDavid Blaikie .byte 8 # Address Size (in bytes) 933ac709b6SDavid Blaikie .byte 1 # Abbrev [1] 0xb:0x43 DW_TAG_compile_unit 943ac709b6SDavid Blaikie .long .Linfo_string0 # DW_AT_producer 953ac709b6SDavid Blaikie .short 33 # DW_AT_language 963ac709b6SDavid Blaikie .long .Linfo_string1 # DW_AT_name 973ac709b6SDavid Blaikie .long .Lline_table_start0 # DW_AT_stmt_list 983ac709b6SDavid Blaikie .long .Linfo_string2 # DW_AT_comp_dir 993ac709b6SDavid Blaikie .byte 2 # Abbrev [2] 0x1e:0x15 DW_TAG_variable 1003ac709b6SDavid Blaikie .long .Linfo_string3 # DW_AT_name 1013ac709b6SDavid Blaikie .long 51 # DW_AT_type 1023ac709b6SDavid Blaikie # DW_AT_external 1033ac709b6SDavid Blaikie .byte 1 # DW_AT_decl_file 1043ac709b6SDavid Blaikie .byte 2 # DW_AT_decl_line 1053ac709b6SDavid Blaikie .byte 9 # DW_AT_location 1063ac709b6SDavid Blaikie .byte 3 1073ac709b6SDavid Blaikie .quad v1 1083ac709b6SDavid Blaikie .byte 3 # Abbrev [3] 0x33:0x13 DW_TAG_structure_type 1093ac709b6SDavid Blaikie .byte 5 # DW_AT_calling_convention 1103ac709b6SDavid Blaikie .long .Linfo_string6 # DW_AT_name 1113ac709b6SDavid Blaikie .byte 1 # DW_AT_byte_size 1123ac709b6SDavid Blaikie .byte 1 # DW_AT_decl_file 1133ac709b6SDavid Blaikie .byte 1 # DW_AT_decl_line 1143ac709b6SDavid Blaikie .byte 4 # Abbrev [4] 0x3c:0x9 DW_TAG_template_type_parameter 1153ac709b6SDavid Blaikie .long 70 # DW_AT_type 1163ac709b6SDavid Blaikie .long .Linfo_string5 # DW_AT_name 1173ac709b6SDavid Blaikie .byte 0 # End Of Children Mark 1183ac709b6SDavid Blaikie .byte 5 # Abbrev [5] 0x46:0x7 DW_TAG_base_type 1193ac709b6SDavid Blaikie .long .Linfo_string4 # DW_AT_name 1203ac709b6SDavid Blaikie .byte 5 # DW_AT_encoding 1213ac709b6SDavid Blaikie .byte 4 # DW_AT_byte_size 1223ac709b6SDavid Blaikie .byte 0 # End Of Children Mark 1233ac709b6SDavid Blaikie.Ldebug_info_end0: 1243ac709b6SDavid Blaikie .section .debug_str,"MS",@progbits,1 1253ac709b6SDavid Blaikie.Linfo_string0: 1263ac709b6SDavid Blaikie .asciz "clang version 14.0.0 (git@github.com:llvm/llvm-project.git 9daec0955132e6e33b086edc63c6f3e0f5712323)" # string offset=0 1273ac709b6SDavid Blaikie.Linfo_string1: 1283ac709b6SDavid Blaikie .asciz "verify.cpp" # string offset=101 1293ac709b6SDavid Blaikie.Linfo_string2: 1303ac709b6SDavid Blaikie .asciz "/usr/local/google/home/blaikie/dev/scratch" # string offset=112 1313ac709b6SDavid Blaikie.Linfo_string3: 1323ac709b6SDavid Blaikie .asciz "v1" # string offset=155 1333ac709b6SDavid Blaikie.Linfo_string4: 1343ac709b6SDavid Blaikie .asciz "int" # string offset=158 1353ac709b6SDavid Blaikie.Linfo_string5: 1363ac709b6SDavid Blaikie .asciz "T" # string offset=162 1373ac709b6SDavid Blaikie.Linfo_string6: 138*6b306233SDavid Blaikie .asciz "_STN|t1|<it>" # string offset=164 1393ac709b6SDavid Blaikie .ident "clang version 14.0.0 (git@github.com:llvm/llvm-project.git 9daec0955132e6e33b086edc63c6f3e0f5712323)" 1403ac709b6SDavid Blaikie .section ".note.GNU-stack","",@progbits 1413ac709b6SDavid Blaikie .addrsig 1423ac709b6SDavid Blaikie .section .debug_line,"",@progbits 1433ac709b6SDavid Blaikie.Lline_table_start0: 144