1; RUN: llc < %s -mtriple=amdgcn--amdhsa -mcpu=kaveri | FileCheck --check-prefix=ASM %s
2
3@linkonce_odr_global_program = linkonce_odr addrspace(1) global i32 0
4@linkonce_global_program = linkonce addrspace(1) global i32 0
5@internal_global_program = internal addrspace(1) global i32 0
6@common_global_program = common addrspace(1) global i32 0
7@external_global_program = addrspace(1) global i32 0
8
9@internal_readonly = internal unnamed_addr addrspace(4) constant i32 0
10@external_readonly = unnamed_addr addrspace(4) constant i32 0
11
12define amdgpu_kernel void @test() {
13  ret void
14}
15
16@weak_global = extern_weak addrspace(1) global i32
17
18; ASM: .type linkonce_odr_global_program,@object
19; ASM: .section .bss,#alloc,#write
20; ASM: .weak linkonce_odr_global_program
21; ASM: linkonce_odr_global_program:
22; ASM: .long 0
23; ASM: .size linkonce_odr_global_program, 4
24
25; ASM: .type linkonce_global_program,@object
26; ASM: .weak linkonce_global_program
27; ASM: linkonce_global_program:
28; ASM: .long 0
29; ASM: .size linkonce_global_program, 4
30
31; ASM: .type internal_global_program,@object
32; ASM: .local internal_global_program
33; ASM: .comm internal_global_program,4,2
34
35; ASM: .type common_global_program,@object
36; ASM: .comm common_global_program,4,2
37
38; ASM: external_global_program:
39; ASM: .long 0
40; ASM: .size external_global_program, 4
41
42; ASM: .type internal_readonly,@object
43; ASM: .section .rodata.cst4,"aM",@progbits,4
44; ASM: internal_readonly:
45; ASM: .long 0
46; ASM: .size internal_readonly, 4
47
48; ASM: .type external_readonly,@object
49; ASM: .globl external_readonly
50; ASM: external_readonly:
51; ASM: .long 0
52; ASM: .size external_readonly, 4
53
54; ASM: .weak weak_global
55