blob: 1d76c40c042e8a6f18bdddb0ae3d8c0a12b3d1f3 [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
Tom Stellard29dd05e2015-12-15 22:39:36 +000050; ASM: .hsatext
Tom Stellard9760f032015-12-03 03:34:32 +000051; ASM: internal_readonly:
52; ASM: .long 0
53
54; ASM: .amdgpu_hsa_program_global external_readonly
Tom Stellard29dd05e2015-12-15 22:39:36 +000055; ASM: .hsatext
Tom Stellard9760f032015-12-03 03:34:32 +000056; 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
80; ELF: Symbol {
81; ELF: Name: common_global_agent
82; ELF: Binding: Local
83; ELF: Section: .hsadata_global_agent
84; ELF: }
85
86; ELF: Symbol {
87; ELF: Name: common_global_program
88; ELF: Binding: Local
89; ELF: Section: .hsadata_global_program
90; ELF: }
91
92; ELF: Symbol {
93; ELF: Name: internal_global_agent
94; ELF: Binding: Local
95; ELF: Type: Object
96; ELF: Section: .hsadata_global_agent
97; ELF: }
98
99; ELF: Symbol {
100; ELF: Name: internal_global_program
101; ELF: Binding: Local
102; ELF: Type: Object
103; ELF: Section: .hsadata_global_program
104; ELF: }
105
106; ELF: Symbol {
Tom Stellard9760f032015-12-03 03:34:32 +0000107; ELF: Name: internal_readonly
108; ELF: Binding: Local
109; ELF: Type: Object
Tom Stellard29dd05e2015-12-15 22:39:36 +0000110; ELF: Section: .hsatext
Tom Stellard9760f032015-12-03 03:34:32 +0000111; ELF: }
112
113; ELF: Symbol {
Tom Stellard00f2f912015-12-02 19:47:57 +0000114; ELF: Name: external_global_agent
115; ELF: Binding: Global
116; ELF: Type: Object
117; ELF: Section: .hsadata_global_agent
118; ELF: }
119
120; ELF: Symbol {
121; ELF: Name: external_global_program
122; ELF: Binding: Global
123; ELF: Type: Object
124; ELF: Section: .hsadata_global_program
125; ELF: }
Tom Stellard9760f032015-12-03 03:34:32 +0000126
127; ELF: Symbol {
128; ELF: Name: external_readonly
129; ELF: Binding: Global
130; ELF: Type: Object
Tom Stellard29dd05e2015-12-15 22:39:36 +0000131; ELF: Section: .hsatext
Tom Stellard9760f032015-12-03 03:34:32 +0000132; ELF: }