| # RUN: llvm-mc -triple x86_64-pc-linux %s -filetype=obj -o - | llvm-dwarfdump -debug-names - | FileCheck %s | 
 | 	.section	.debug_str,"MS",@progbits,1 | 
 | .Linfo_string0: | 
 | 	.asciz	"foo" | 
 | .Linfo_string1: | 
 | 	.asciz	"_Z3foov" | 
 | .Linfo_string2: | 
 | 	.asciz	"bar" | 
 |  | 
 | # Fake .debug_info. We just need it for the offsets to two "compile units" and | 
 | # two "DIEs" | 
 | 	.section	.debug_info,"",@progbits | 
 | .Lcu_begin0: | 
 | 	.byte	0 | 
 | .Ldie0: | 
 | 	.byte	0 | 
 | .Lcu_begin1: | 
 | 	.byte	0 | 
 | .Ldie1: | 
 | 	.byte	0 | 
 |  | 
 | 	.section	.debug_names,"",@progbits | 
 | 	.long	.Lnames_end0-.Lnames_start0 # Header: contribution length | 
 | .Lnames_start0: | 
 | 	.short	5                       # Header: version | 
 | 	.short	0                       # Header: padding | 
 | 	.long	1                       # Header: compilation unit count | 
 | 	.long	0                       # Header: local type unit count | 
 | 	.long	0                       # Header: foreign type unit count | 
 | 	.long	2                       # Header: bucket count | 
 | 	.long	2                       # Header: name count | 
 | 	.long	.Lnames_abbrev_end0-.Lnames_abbrev_start0 # Header: abbreviation table size | 
 | 	.long	0                       # Header: augmentation length | 
 | 	.long	.Lcu_begin0             # Compilation unit 0 | 
 | 	.long	0                       # Bucket 0 | 
 | 	.long	1                       # Bucket 1 | 
 | 	.long	193491849               # Hash in Bucket 1 | 
 | 	.long	-1257882357             # Hash in Bucket 1 | 
 | 	.long	.Linfo_string0          # String in Bucket 1: foo | 
 | 	.long	.Linfo_string1          # String in Bucket 1: _Z3foov | 
 | 	.long	.Lnames0-.Lnames_entries0 # Offset in Bucket 1 | 
 | 	.long	.Lnames1-.Lnames_entries0 # Offset in Bucket 1 | 
 | .Lnames_abbrev_start0: | 
 | 	.byte	46                      # Abbrev code | 
 | 	.byte	46                      # DW_TAG_subprogram | 
 | 	.byte	3                       # DW_IDX_die_offset | 
 | 	.byte	19                      # DW_FORM_ref4 | 
 | 	.byte	0                       # End of abbrev | 
 | 	.byte	0                       # End of abbrev | 
 | 	.byte	0                       # End of abbrev list | 
 | .Lnames_abbrev_end0: | 
 | .Lnames_entries0: | 
 | .Lnames0: | 
 | 	.byte	46                      # Abbrev code | 
 | 	.long	.Ldie0-.Lcu_begin0      # DW_IDX_die_offset | 
 | 	.long	0                       # End of list: foo | 
 | .Lnames1: | 
 | 	.byte	46                      # Abbrev code | 
 | 	.long	.Ldie0-.Lcu_begin0      # DW_IDX_die_offset | 
 | 	.long	0                       # End of list: _Z3foov | 
 | 	.p2align	2 | 
 | .Lnames_end0: | 
 |  | 
 | 	.long	.Lnames_end1-.Lnames_start1 # Header: contribution length | 
 | .Lnames_start1: | 
 | 	.short	5                       # Header: version | 
 | 	.short	0                       # Header: padding | 
 | 	.long	1                       # Header: compilation unit count | 
 | 	.long	0                       # Header: local type unit count | 
 | 	.long	0                       # Header: foreign type unit count | 
 | 	.long	1                       # Header: bucket count | 
 | 	.long	1                       # Header: name count | 
 | 	.long	.Lnames_abbrev_end1-.Lnames_abbrev_start1 # Header: abbreviation table size | 
 | 	.long	0                       # Header: augmentation length | 
 | 	.long	.Lcu_begin1             # Compilation unit 0 | 
 | 	.long	1                       # Bucket 0 | 
 | 	.long	193487034               # Hash in Bucket 0 | 
 | 	.long	.Linfo_string2          # String in Bucket 0: bar | 
 | 	.long	.Lnames2-.Lnames_entries1 # Offset in Bucket 0 | 
 | .Lnames_abbrev_start1: | 
 | 	.byte	52                      # Abbrev code | 
 | 	.byte	52                      # DW_TAG_variable | 
 | 	.byte	3                       # DW_IDX_die_offset | 
 | 	.byte	19                      # DW_FORM_ref4 | 
 | 	.byte	0                       # End of abbrev | 
 | 	.byte	0                       # End of abbrev | 
 | 	.byte	0                       # End of abbrev list | 
 | .Lnames_abbrev_end1: | 
 | .Lnames_entries1: | 
 | .Lnames2: | 
 | 	.byte	52                      # Abbrev code | 
 | 	.long	.Ldie1-.Lcu_begin1      # DW_IDX_die_offset | 
 | 	.long	0                       # End of list: bar | 
 | 	.p2align	2 | 
 | .Lnames_end1: | 
 | # CHECK: .debug_names contents: | 
 | # CHECK-NEXT: Name Index @ 0x0 { | 
 | # CHECK-NEXT:   Header { | 
 | # CHECK-NEXT:     Length: 0x60 | 
 | # CHECK-NEXT:     Version: 5 | 
 | # CHECK-NEXT:     Padding: 0x0 | 
 | # CHECK-NEXT:     CU count: 1 | 
 | # CHECK-NEXT:     Local TU count: 0 | 
 | # CHECK-NEXT:     Foreign TU count: 0 | 
 | # CHECK-NEXT:     Bucket count: 2 | 
 | # CHECK-NEXT:     Name count: 2 | 
 | # CHECK-NEXT:     Abbreviations table size: 0x7 | 
 | # CHECK-NEXT:     Augmentation: '' | 
 | # CHECK-NEXT:   } | 
 | # CHECK-NEXT:   Compilation Unit offsets [ | 
 | # CHECK-NEXT:     CU[0]: 0x00000000 | 
 | # CHECK-NEXT:   ] | 
 | # CHECK-NEXT:   Abbreviations [ | 
 | # CHECK-NEXT:     Abbreviation 0x2e { | 
 | # CHECK-NEXT:       Tag: DW_TAG_subprogram | 
 | # CHECK-NEXT:       DW_IDX_die_offset: DW_FORM_ref4 | 
 | # CHECK-NEXT:     } | 
 | # CHECK-NEXT:   ] | 
 | # CHECK-NEXT:   Bucket 0 [ | 
 | # CHECK-NEXT:     EMPTY | 
 | # CHECK-NEXT:   ] | 
 | # CHECK-NEXT:   Bucket 1 [ | 
 | # CHECK-NEXT:     Name 1 { | 
 | # CHECK-NEXT:       Hash: 0xB887389 | 
 | # CHECK-NEXT:       String: 0x00000000 "foo" | 
 | # CHECK-NEXT:       Entry @ 0x4f { | 
 | # CHECK-NEXT:         Abbrev: 0x2E | 
 | # CHECK-NEXT:         Tag: DW_TAG_subprogram | 
 | # CHECK-NEXT:         DW_IDX_die_offset: 0x00000001 | 
 | # CHECK-NEXT:       } | 
 | # CHECK-NEXT:     } | 
 | # CHECK-NEXT:     Name 2 { | 
 | # CHECK-NEXT:       Hash: 0xB5063D0B | 
 | # CHECK-NEXT:       String: 0x00000004 "_Z3foov" | 
 | # CHECK-NEXT:       Entry @ 0x58 { | 
 | # CHECK-NEXT:         Abbrev: 0x2E | 
 | # CHECK-NEXT:         Tag: DW_TAG_subprogram | 
 | # CHECK-NEXT:         DW_IDX_die_offset: 0x00000001 | 
 | # CHECK-NEXT:       } | 
 | # CHECK-NEXT:     } | 
 | # CHECK-NEXT:   ] | 
 | # CHECK-NEXT: } | 
 | # CHECK-NEXT: Name Index @ 0x64 { | 
 | # CHECK-NEXT:   Header { | 
 | # CHECK-NEXT:     Length: 0x44 | 
 | # CHECK-NEXT:     Version: 5 | 
 | # CHECK-NEXT:     Padding: 0x0 | 
 | # CHECK-NEXT:     CU count: 1 | 
 | # CHECK-NEXT:     Local TU count: 0 | 
 | # CHECK-NEXT:     Foreign TU count: 0 | 
 | # CHECK-NEXT:     Bucket count: 1 | 
 | # CHECK-NEXT:     Name count: 1 | 
 | # CHECK-NEXT:     Abbreviations table size: 0x7 | 
 | # CHECK-NEXT:     Augmentation: '' | 
 | # CHECK-NEXT:   } | 
 | # CHECK-NEXT:   Compilation Unit offsets [ | 
 | # CHECK-NEXT:     CU[0]: 0x00000002 | 
 | # CHECK-NEXT:   ] | 
 | # CHECK-NEXT:   Abbreviations [ | 
 | # CHECK-NEXT:     Abbreviation 0x34 { | 
 | # CHECK-NEXT:       Tag: DW_TAG_variable | 
 | # CHECK-NEXT:       DW_IDX_die_offset: DW_FORM_ref4 | 
 | # CHECK-NEXT:     } | 
 | # CHECK-NEXT:   ] | 
 | # CHECK-NEXT:   Bucket 0 [ | 
 | # CHECK-NEXT:     Name 1 { | 
 | # CHECK-NEXT:       Hash: 0xB8860BA | 
 | # CHECK-NEXT:       String: 0x0000000c "bar" | 
 | # CHECK-NEXT:       Entry @ 0xa3 { | 
 | # CHECK-NEXT:         Abbrev: 0x34 | 
 | # CHECK-NEXT:         Tag: DW_TAG_variable | 
 | # CHECK-NEXT:         DW_IDX_die_offset: 0x00000001 | 
 | # CHECK-NEXT:       } | 
 | # CHECK-NEXT:     } | 
 | # CHECK-NEXT:   ] | 
 | # CHECK-NEXT: } |