annotate clang/test/CodeGenOpenCL/amdgpu-debug-info-pointer-address-space.cl @ 236:c4bab56944e8 llvm-original

LLVM 16
author kono
date Wed, 09 Nov 2022 17:45:10 +0900
parents 79ff65ed7e25
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
221
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
1 // REQUIRES: amdgpu-registered-target
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
2 // RUN: %clang -cl-std=CL2.0 -emit-llvm -g -O0 -S -nogpulib -target amdgcn-amd-amdhsa -mcpu=fiji -o - %s | FileCheck %s
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
3 // RUN: %clang -cl-std=CL2.0 -emit-llvm -g -O0 -S -nogpulib -target amdgcn-amd-amdhsa-opencl -mcpu=fiji -o - %s | FileCheck %s
150
anatofuz
parents:
diff changeset
4
anatofuz
parents:
diff changeset
5 // CHECK-DAG: ![[DWARF_ADDRESS_SPACE_NONE:[0-9]+]] = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !{{[0-9]+}}, size: {{[0-9]+}})
anatofuz
parents:
diff changeset
6 // CHECK-DAG: ![[DWARF_ADDRESS_SPACE_LOCAL:[0-9]+]] = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !{{[0-9]+}}, size: {{[0-9]+}}, dwarfAddressSpace: 2)
anatofuz
parents:
diff changeset
7 // CHECK-DAG: ![[DWARF_ADDRESS_SPACE_PRIVATE:[0-9]+]] = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !{{[0-9]+}}, size: {{[0-9]+}}, dwarfAddressSpace: 1)
anatofuz
parents:
diff changeset
8
anatofuz
parents:
diff changeset
9 // CHECK-DAG: distinct !DIGlobalVariable(name: "FileVar0", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]], isLocal: false, isDefinition: true)
anatofuz
parents:
diff changeset
10 global int *FileVar0;
anatofuz
parents:
diff changeset
11 // CHECK-DAG: distinct !DIGlobalVariable(name: "FileVar1", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]], isLocal: false, isDefinition: true)
anatofuz
parents:
diff changeset
12 constant int *FileVar1;
anatofuz
parents:
diff changeset
13 // CHECK-DAG: distinct !DIGlobalVariable(name: "FileVar2", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_LOCAL]], isLocal: false, isDefinition: true)
anatofuz
parents:
diff changeset
14 local int *FileVar2;
anatofuz
parents:
diff changeset
15 // CHECK-DAG: distinct !DIGlobalVariable(name: "FileVar3", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_PRIVATE]], isLocal: false, isDefinition: true)
anatofuz
parents:
diff changeset
16 private int *FileVar3;
anatofuz
parents:
diff changeset
17 // CHECK-DAG: distinct !DIGlobalVariable(name: "FileVar4", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]], isLocal: false, isDefinition: true)
anatofuz
parents:
diff changeset
18 int *FileVar4;
anatofuz
parents:
diff changeset
19
anatofuz
parents:
diff changeset
20 // CHECK-DAG: distinct !DIGlobalVariable(name: "FileVar5", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]], isLocal: false, isDefinition: true)
anatofuz
parents:
diff changeset
21 global int *global FileVar5;
anatofuz
parents:
diff changeset
22 // CHECK-DAG: distinct !DIGlobalVariable(name: "FileVar6", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]], isLocal: false, isDefinition: true)
anatofuz
parents:
diff changeset
23 constant int *global FileVar6;
anatofuz
parents:
diff changeset
24 // CHECK-DAG: distinct !DIGlobalVariable(name: "FileVar7", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_LOCAL]], isLocal: false, isDefinition: true)
anatofuz
parents:
diff changeset
25 local int *global FileVar7;
anatofuz
parents:
diff changeset
26 // CHECK-DAG: distinct !DIGlobalVariable(name: "FileVar8", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_PRIVATE]], isLocal: false, isDefinition: true)
anatofuz
parents:
diff changeset
27 private int *global FileVar8;
anatofuz
parents:
diff changeset
28 // CHECK-DAG: distinct !DIGlobalVariable(name: "FileVar9", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]], isLocal: false, isDefinition: true)
anatofuz
parents:
diff changeset
29 int *global FileVar9;
anatofuz
parents:
diff changeset
30
anatofuz
parents:
diff changeset
31 // CHECK-DAG: distinct !DIGlobalVariable(name: "FileVar10", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]], isLocal: false, isDefinition: true)
anatofuz
parents:
diff changeset
32 global int *constant FileVar10 = 0;
anatofuz
parents:
diff changeset
33 // CHECK-DAG: distinct !DIGlobalVariable(name: "FileVar11", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]], isLocal: false, isDefinition: true)
anatofuz
parents:
diff changeset
34 constant int *constant FileVar11 = 0;
anatofuz
parents:
diff changeset
35 // CHECK-DAG: distinct !DIGlobalVariable(name: "FileVar12", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_LOCAL]], isLocal: false, isDefinition: true)
anatofuz
parents:
diff changeset
36 local int *constant FileVar12 = 0;
anatofuz
parents:
diff changeset
37 // CHECK-DAG: distinct !DIGlobalVariable(name: "FileVar13", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_PRIVATE]], isLocal: false, isDefinition: true)
anatofuz
parents:
diff changeset
38 private int *constant FileVar13 = 0;
anatofuz
parents:
diff changeset
39 // CHECK-DAG: distinct !DIGlobalVariable(name: "FileVar14", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]], isLocal: false, isDefinition: true)
anatofuz
parents:
diff changeset
40 int *constant FileVar14 = 0;
anatofuz
parents:
diff changeset
41
anatofuz
parents:
diff changeset
42 kernel void kernel1(
anatofuz
parents:
diff changeset
43 // CHECK-DAG: !DILocalVariable(name: "KernelArg0", arg: {{[0-9]+}}, scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]])
anatofuz
parents:
diff changeset
44 global int *KernelArg0,
anatofuz
parents:
diff changeset
45 // CHECK-DAG: !DILocalVariable(name: "KernelArg1", arg: {{[0-9]+}}, scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]])
anatofuz
parents:
diff changeset
46 constant int *KernelArg1,
anatofuz
parents:
diff changeset
47 // CHECK-DAG: !DILocalVariable(name: "KernelArg2", arg: {{[0-9]+}}, scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_LOCAL]])
anatofuz
parents:
diff changeset
48 local int *KernelArg2) {
anatofuz
parents:
diff changeset
49 private int *Tmp0;
anatofuz
parents:
diff changeset
50 int *Tmp1;
anatofuz
parents:
diff changeset
51
anatofuz
parents:
diff changeset
52 // CHECK-DAG: !DILocalVariable(name: "FuncVar0", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]])
anatofuz
parents:
diff changeset
53 global int *FuncVar0 = KernelArg0;
anatofuz
parents:
diff changeset
54 // CHECK-DAG: !DILocalVariable(name: "FuncVar1", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]])
anatofuz
parents:
diff changeset
55 constant int *FuncVar1 = KernelArg1;
anatofuz
parents:
diff changeset
56 // CHECK-DAG: !DILocalVariable(name: "FuncVar2", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_LOCAL]])
anatofuz
parents:
diff changeset
57 local int *FuncVar2 = KernelArg2;
anatofuz
parents:
diff changeset
58 // CHECK-DAG: !DILocalVariable(name: "FuncVar3", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_PRIVATE]])
anatofuz
parents:
diff changeset
59 private int *FuncVar3 = Tmp0;
anatofuz
parents:
diff changeset
60 // CHECK-DAG: !DILocalVariable(name: "FuncVar4", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]])
anatofuz
parents:
diff changeset
61 int *FuncVar4 = Tmp1;
anatofuz
parents:
diff changeset
62
anatofuz
parents:
diff changeset
63 // CHECK-DAG: distinct !DIGlobalVariable(name: "FuncVar5", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]], isLocal: true, isDefinition: true)
anatofuz
parents:
diff changeset
64 global int *constant FuncVar5 = 0;
anatofuz
parents:
diff changeset
65 // CHECK-DAG: distinct !DIGlobalVariable(name: "FuncVar6", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]], isLocal: true, isDefinition: true)
anatofuz
parents:
diff changeset
66 constant int *constant FuncVar6 = 0;
anatofuz
parents:
diff changeset
67 // CHECK-DAG: distinct !DIGlobalVariable(name: "FuncVar7", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_LOCAL]], isLocal: true, isDefinition: true)
anatofuz
parents:
diff changeset
68 local int *constant FuncVar7 = 0;
anatofuz
parents:
diff changeset
69 // CHECK-DAG: distinct !DIGlobalVariable(name: "FuncVar8", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_PRIVATE]], isLocal: true, isDefinition: true)
anatofuz
parents:
diff changeset
70 private int *constant FuncVar8 = 0;
anatofuz
parents:
diff changeset
71 // CHECK-DAG: distinct !DIGlobalVariable(name: "FuncVar9", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]], isLocal: true, isDefinition: true)
anatofuz
parents:
diff changeset
72 int *constant FuncVar9 = 0;
anatofuz
parents:
diff changeset
73
anatofuz
parents:
diff changeset
74 // CHECK-DAG: distinct !DIGlobalVariable(name: "FuncVar10", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]], isLocal: true, isDefinition: true)
anatofuz
parents:
diff changeset
75 global int *local FuncVar10; FuncVar10 = KernelArg0;
anatofuz
parents:
diff changeset
76 // CHECK-DAG: distinct !DIGlobalVariable(name: "FuncVar11", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]], isLocal: true, isDefinition: true)
anatofuz
parents:
diff changeset
77 constant int *local FuncVar11; FuncVar11 = KernelArg1;
anatofuz
parents:
diff changeset
78 // CHECK-DAG: distinct !DIGlobalVariable(name: "FuncVar12", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_LOCAL]], isLocal: true, isDefinition: true)
anatofuz
parents:
diff changeset
79 local int *local FuncVar12; FuncVar12 = KernelArg2;
anatofuz
parents:
diff changeset
80 // CHECK-DAG: distinct !DIGlobalVariable(name: "FuncVar13", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_PRIVATE]], isLocal: true, isDefinition: true)
anatofuz
parents:
diff changeset
81 private int *local FuncVar13; FuncVar13 = Tmp0;
anatofuz
parents:
diff changeset
82 // CHECK-DAG: distinct !DIGlobalVariable(name: "FuncVar14", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]], isLocal: true, isDefinition: true)
anatofuz
parents:
diff changeset
83 int *local FuncVar14; FuncVar14 = Tmp1;
anatofuz
parents:
diff changeset
84
anatofuz
parents:
diff changeset
85 // CHECK-DAG: !DILocalVariable(name: "FuncVar15", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]])
anatofuz
parents:
diff changeset
86 global int *private FuncVar15 = KernelArg0;
anatofuz
parents:
diff changeset
87 // CHECK-DAG: !DILocalVariable(name: "FuncVar16", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]])
anatofuz
parents:
diff changeset
88 constant int *private FuncVar16 = KernelArg1;
anatofuz
parents:
diff changeset
89 // CHECK-DAG: !DILocalVariable(name: "FuncVar17", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_LOCAL]])
anatofuz
parents:
diff changeset
90 local int *private FuncVar17 = KernelArg2;
anatofuz
parents:
diff changeset
91 // CHECK-DAG: !DILocalVariable(name: "FuncVar18", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_PRIVATE]])
anatofuz
parents:
diff changeset
92 private int *private FuncVar18 = Tmp0;
anatofuz
parents:
diff changeset
93 // CHECK-DAG: !DILocalVariable(name: "FuncVar19", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, type: ![[DWARF_ADDRESS_SPACE_NONE]])
anatofuz
parents:
diff changeset
94 int *private FuncVar19 = Tmp1;
anatofuz
parents:
diff changeset
95 }
anatofuz
parents:
diff changeset
96
anatofuz
parents:
diff changeset
97 struct FileStruct0 {
anatofuz
parents:
diff changeset
98 // CHECK-DAG: !DIDerivedType(tag: DW_TAG_member, name: "StructMem0", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, baseType: ![[DWARF_ADDRESS_SPACE_NONE]], size: {{[0-9]+}})
anatofuz
parents:
diff changeset
99 global int *StructMem0;
anatofuz
parents:
diff changeset
100 // CHECK-DAG: !DIDerivedType(tag: DW_TAG_member, name: "StructMem1", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, baseType: ![[DWARF_ADDRESS_SPACE_NONE]], size: {{[0-9]+}}, offset: {{[0-9]+}})
anatofuz
parents:
diff changeset
101 constant int *StructMem1;
anatofuz
parents:
diff changeset
102 // CHECK-DAG: !DIDerivedType(tag: DW_TAG_member, name: "StructMem2", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, baseType: ![[DWARF_ADDRESS_SPACE_LOCAL]], size: {{[0-9]+}}, offset: {{[0-9]+}})
anatofuz
parents:
diff changeset
103 local int *StructMem2;
anatofuz
parents:
diff changeset
104 // CHECK-DAG: !DIDerivedType(tag: DW_TAG_member, name: "StructMem3", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, baseType: ![[DWARF_ADDRESS_SPACE_PRIVATE]], size: {{[0-9]+}}, offset: {{[0-9]+}})
anatofuz
parents:
diff changeset
105 private int *StructMem3;
anatofuz
parents:
diff changeset
106 // CHECK-DAG: !DIDerivedType(tag: DW_TAG_member, name: "StructMem4", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, baseType: ![[DWARF_ADDRESS_SPACE_NONE]], size: {{[0-9]+}}, offset: {{[0-9]+}})
anatofuz
parents:
diff changeset
107 int *StructMem4;
anatofuz
parents:
diff changeset
108 };
anatofuz
parents:
diff changeset
109
anatofuz
parents:
diff changeset
110 struct FileStruct1 {
anatofuz
parents:
diff changeset
111 union {
anatofuz
parents:
diff changeset
112 // CHECK-DAG: !DIDerivedType(tag: DW_TAG_member, name: "UnionMem0", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, baseType: ![[DWARF_ADDRESS_SPACE_NONE]], size: {{[0-9]+}})
anatofuz
parents:
diff changeset
113 global int *UnionMem0;
anatofuz
parents:
diff changeset
114 // CHECK-DAG: !DIDerivedType(tag: DW_TAG_member, name: "UnionMem1", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, baseType: ![[DWARF_ADDRESS_SPACE_NONE]], size: {{[0-9]+}})
anatofuz
parents:
diff changeset
115 constant int *UnionMem1;
anatofuz
parents:
diff changeset
116 // CHECK-DAG: !DIDerivedType(tag: DW_TAG_member, name: "UnionMem2", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, baseType: ![[DWARF_ADDRESS_SPACE_LOCAL]], size: {{[0-9]+}})
anatofuz
parents:
diff changeset
117 local int *UnionMem2;
anatofuz
parents:
diff changeset
118 // CHECK-DAG: !DIDerivedType(tag: DW_TAG_member, name: "UnionMem3", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, baseType: ![[DWARF_ADDRESS_SPACE_PRIVATE]], size: {{[0-9]+}})
anatofuz
parents:
diff changeset
119 private int *UnionMem3;
anatofuz
parents:
diff changeset
120 // CHECK-DAG: !DIDerivedType(tag: DW_TAG_member, name: "UnionMem4", scope: !{{[0-9]+}}, file: !{{[0-9]+}}, line: {{[0-9]+}}, baseType: ![[DWARF_ADDRESS_SPACE_NONE]], size: {{[0-9]+}})
anatofuz
parents:
diff changeset
121 int *UnionMem4;
anatofuz
parents:
diff changeset
122 };
anatofuz
parents:
diff changeset
123 long StructMem0;
anatofuz
parents:
diff changeset
124 };
anatofuz
parents:
diff changeset
125
anatofuz
parents:
diff changeset
126 kernel void kernel2(global struct FileStruct0 *Kernel2Arg0,
anatofuz
parents:
diff changeset
127 global struct FileStruct1 *Kernel2Arg1) {}