xref: /llvm-project/llvm/test/DebugInfo/X86/stringpool.ll (revision be7ea19b585dc1b0d4c4358df3ca498ceb65b969)
1; RUN: llc -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s --check-prefix=LINUX
2; RUN: llc -mtriple=x86_64-darwin < %s | FileCheck %s --check-prefix=DARWIN
3
4@yyyy = common global i32 0, align 4
5
6!llvm.dbg.cu = !{!0}
7!llvm.module.flags = !{!9}
8
9!0 = !{!"0x11\0012\00clang version 3.1 (trunk 143009)\001\00\000\00\000", !8, !1, !1, !1, !3,  !1} ; [ DW_TAG_compile_unit ]
10!1 = !{}
11!3 = !{!5}
12!5 = !{!"0x34\00yyyy\00yyyy\00\001\000\001", null, !6, !7, i32* @yyyy, null} ; [ DW_TAG_variable ]
13!6 = !{!"0x29", !8} ; [ DW_TAG_file_type ]
14!7 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [ DW_TAG_base_type ]
15!8 = !{!"z.c", !"/home/nicholas"}
16
17; Verify that "yyyy" ended up in the stringpool.
18; LINUX: .section .debug_str,"MS",@progbits,1
19; LINUX: yyyy
20; DARWIN: .section __DWARF,__debug_str,regular,debug
21; DARWIN: yyyy
22
23; Verify that we refer to 'yyyy' with a relocation.
24; LINUX:      .long   .Linfo_string3          # DW_AT_name
25; LINUX-NEXT: .long   {{[0-9]+}}              # DW_AT_type
26; LINUX-NEXT:                                 # DW_AT_external
27; LINUX-NEXT: .byte   1                       # DW_AT_decl_file
28; LINUX-NEXT: .byte   1                       # DW_AT_decl_line
29; LINUX-NEXT: .byte   9                       # DW_AT_location
30; LINUX-NEXT: .byte   3
31; LINUX-NEXT: .quad   yyyy
32
33; Verify that we refer to 'yyyy' without a relocation.
34; DARWIN: Lset[[ID:[0-9]+]] = Linfo_string3-Linfo_string ## DW_AT_name
35; DARWIN-NEXT:        .long   Lset[[ID]]
36; DARWIN-NEXT:        .long   {{[0-9]+}}              ## DW_AT_type
37; DARWIN-NEXT:                                        ## DW_AT_external
38; DARWIN-NEXT:        .byte   1                       ## DW_AT_decl_file
39; DARWIN-NEXT:        .byte   1                       ## DW_AT_decl_line
40; DARWIN-NEXT:        .byte   9                       ## DW_AT_location
41; DARWIN-NEXT:        .byte   3
42; DARWIN-NEXT:        .quad   _yyyy
43!9 = !{i32 1, !"Debug Info Version", i32 2}
44