blob: b6483f0970b0097cf11f1260d4aa08d7d246616c [file] [log] [blame]
Tom Stellard00f2f912015-12-02 19:47:57 +00001; RUN: llc < %s -mtriple=amdgcn--amdhsa -mcpu=kaveri | FileCheck --check-prefix=ASM %s
2; RUN: llc < %s -mtriple=amdgcn--amdhsa -mcpu=kaveri | llvm-mc -filetype=obj -triple amdgcn--amdhsa -mcpu=kaveri | llvm-readobj -symbols -s | FileCheck %s --check-prefix=ELF
3
4@internal_global_program = internal addrspace(1) global i32 0
5@common_global_program = common addrspace(1) global i32 0
6@external_global_program = addrspace(1) global i32 0
7
8@internal_global_agent = internal addrspace(1) global i32 0, section ".hsadata_global_agent"
9@common_global_agent = common addrspace(1) global i32 0, section ".hsadata_global_agent"
10@external_global_agent = addrspace(1) global i32 0, section ".hsadata_global_agent"
11
Tom Stellard9760f032015-12-03 03:34:32 +000012@internal_readonly = internal unnamed_addr addrspace(2) constant i32 0
13@external_readonly = unnamed_addr addrspace(2) constant i32 0
14
Tom Stellard00f2f912015-12-02 19:47:57 +000015define void @test() {
16 ret void
17}
18
19; ASM: .amdgpu_hsa_module_global internal_global
20; ASM: .hsadata_global_program
21; ASM: internal_global_program:
22; ASM: .long 0
23
24; ASM: .amdgpu_hsa_module_global common_global
25; ASM: .hsadata_global_program
26; ASM: common_global_program:
27; ASM: .long 0
28
29; ASM: .amdgpu_hsa_program_global external_global
30; ASM: .hsadata_global_program
31; ASM: external_global_program:
32; ASM: .long 0
33
34; ASM: .amdgpu_hsa_module_global internal_global
35; ASM: .hsadata_global_agent
36; ASM: internal_global_agent:
37; ASM: .long 0
38
39; ASM: .amdgpu_hsa_module_global common_global
40; ASM: .hsadata_global_agent
41; ASM: common_global_agent:
42; ASM: .long 0
43
44; ASM: .amdgpu_hsa_program_global external_global
45; ASM: .hsadata_global_agent
46; ASM: external_global_agent:
47; ASM: .long 0
48
Tom Stellard9760f032015-12-03 03:34:32 +000049; ASM: .amdgpu_hsa_module_global internal_readonly
50; ASM: .hsarodata_readonly_agent
51; ASM: internal_readonly:
52; ASM: .long 0
53
54; ASM: .amdgpu_hsa_program_global external_readonly
55; ASM: .hsarodata_readonly_agent
56; ASM: external_readonly:
57; ASM: .long 0
58
Tom Stellard00f2f912015-12-02 19:47:57 +000059; ELF: Section {
60; ELF: Name: .hsadata_global_program
61; ELF: Type: SHT_PROGBITS (0x1)
62; ELF: Flags [ (0x100003)
63; ELF: SHF_ALLOC (0x2)
64; ELF: SHF_AMDGPU_HSA_GLOBAL (0x100000)
65; ELF: SHF_WRITE (0x1)
66; ELF: ]
67; ELF: }
68
69; ELF: Section {
70; ELF: Name: .hsadata_global_agent
71; ELF: Type: SHT_PROGBITS (0x1)
72; ELF: Flags [ (0x900003)
73; ELF: SHF_ALLOC (0x2)
74; ELF: SHF_AMDGPU_HSA_AGENT (0x800000)
75; ELF: SHF_AMDGPU_HSA_GLOBAL (0x100000)
76; ELF: SHF_WRITE (0x1)
77; ELF: ]
78; ELF: }
79
Tom Stellard9760f032015-12-03 03:34:32 +000080; ELF: Section {
81; ELF: Name: .hsarodata_readonly_agent
82; ELF: Type: SHT_PROGBITS (0x1)
83; ELF: Flags [ (0xA00002)
84; ELF: SHF_ALLOC (0x2)
85; ELF: SHF_AMDGPU_HSA_AGENT (0x800000)
86; ELF: SHF_AMDGPU_HSA_READONLY (0x200000)
87; ELF: ]
88
Tom Stellard00f2f912015-12-02 19:47:57 +000089; ELF: Symbol {
90; ELF: Name: common_global_agent
91; ELF: Binding: Local
92; ELF: Section: .hsadata_global_agent
93; ELF: }
94
95; ELF: Symbol {
96; ELF: Name: common_global_program
97; ELF: Binding: Local
98; ELF: Section: .hsadata_global_program
99; ELF: }
100
101; ELF: Symbol {
102; ELF: Name: internal_global_agent
103; ELF: Binding: Local
104; ELF: Type: Object
105; ELF: Section: .hsadata_global_agent
106; ELF: }
107
108; ELF: Symbol {
109; ELF: Name: internal_global_program
110; ELF: Binding: Local
111; ELF: Type: Object
112; ELF: Section: .hsadata_global_program
113; ELF: }
114
115; ELF: Symbol {
Tom Stellard9760f032015-12-03 03:34:32 +0000116; ELF: Name: internal_readonly
117; ELF: Binding: Local
118; ELF: Type: Object
119; ELF: Section: .hsarodata_readonly_agent
120; ELF: }
121
122; ELF: Symbol {
Tom Stellard00f2f912015-12-02 19:47:57 +0000123; ELF: Name: external_global_agent
124; ELF: Binding: Global
125; ELF: Type: Object
126; ELF: Section: .hsadata_global_agent
127; ELF: }
128
129; ELF: Symbol {
130; ELF: Name: external_global_program
131; ELF: Binding: Global
132; ELF: Type: Object
133; ELF: Section: .hsadata_global_program
134; ELF: }
Tom Stellard9760f032015-12-03 03:34:32 +0000135
136; ELF: Symbol {
137; ELF: Name: external_readonly
138; ELF: Binding: Global
139; ELF: Type: Object
140; ELF: Section: .hsarodata_readonly_agent
141; ELF: }