1 ; NOTE: Assertions have been autogenerated by utils/update_analyze_test_checks.py
2 ; RUN: opt -passes="print<cost-model>" 2>&1 -disable-output -mtriple=amdgcn-unknown-amdhsa -mcpu=kaveri < %s | FileCheck -check-prefixes=ALL %s
3 ; RUN: opt -passes="print<cost-model>" -cost-kind=code-size 2>&1 -disable-output -mtriple=amdgcn-unknown-amdhsa -mcpu=kaveri < %s | FileCheck -check-prefixes=ALL-SIZE %s
6 define void @addrspacecast_global_to_flat() #0 {
7 ; ALL-LABEL: 'addrspacecast_global_to_flat'
8 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %i8ptr = addrspacecast ptr addrspace(1) undef to ptr
9 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v2i8ptr = addrspacecast <2 x ptr addrspace(1)> undef to <2 x ptr>
10 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v3i8ptr = addrspacecast <3 x ptr addrspace(1)> undef to <3 x ptr>
11 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v4i8ptr = addrspacecast <4 x ptr addrspace(1)> undef to <4 x ptr>
12 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v32i8ptr = addrspacecast <32 x ptr addrspace(1)> undef to <32 x ptr>
13 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %i16ptr = addrspacecast ptr addrspace(1) undef to ptr
14 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v2i16ptr = addrspacecast <2 x ptr addrspace(1)> undef to <2 x ptr>
15 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v3i16ptr = addrspacecast <3 x ptr addrspace(1)> undef to <3 x ptr>
16 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v4i16ptr = addrspacecast <4 x ptr addrspace(1)> undef to <4 x ptr>
17 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v32i16ptr = addrspacecast <32 x ptr addrspace(1)> undef to <32 x ptr>
18 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %i32ptr = addrspacecast ptr addrspace(1) undef to ptr
19 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v2i32ptr = addrspacecast <2 x ptr addrspace(1)> undef to <2 x ptr>
20 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v3i32ptr = addrspacecast <3 x ptr addrspace(1)> undef to <3 x ptr>
21 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v4i32ptr = addrspacecast <4 x ptr addrspace(1)> undef to <4 x ptr>
22 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v32i32ptr = addrspacecast <32 x ptr addrspace(1)> undef to <32 x ptr>
23 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %i64ptr = addrspacecast ptr addrspace(1) undef to ptr
24 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v2i64ptr = addrspacecast <2 x ptr addrspace(1)> undef to <2 x ptr>
25 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v3i64ptr = addrspacecast <3 x ptr addrspace(1)> undef to <3 x ptr>
26 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v4i64ptr = addrspacecast <4 x ptr addrspace(1)> undef to <4 x ptr>
27 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v32i64ptr = addrspacecast <32 x ptr addrspace(1)> undef to <32 x ptr>
28 ; ALL-NEXT: Cost Model: Found an estimated cost of 10 for instruction: ret void
30 ; ALL-SIZE-LABEL: 'addrspacecast_global_to_flat'
31 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %i8ptr = addrspacecast ptr addrspace(1) undef to ptr
32 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v2i8ptr = addrspacecast <2 x ptr addrspace(1)> undef to <2 x ptr>
33 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v3i8ptr = addrspacecast <3 x ptr addrspace(1)> undef to <3 x ptr>
34 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v4i8ptr = addrspacecast <4 x ptr addrspace(1)> undef to <4 x ptr>
35 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v32i8ptr = addrspacecast <32 x ptr addrspace(1)> undef to <32 x ptr>
36 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %i16ptr = addrspacecast ptr addrspace(1) undef to ptr
37 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v2i16ptr = addrspacecast <2 x ptr addrspace(1)> undef to <2 x ptr>
38 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v3i16ptr = addrspacecast <3 x ptr addrspace(1)> undef to <3 x ptr>
39 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v4i16ptr = addrspacecast <4 x ptr addrspace(1)> undef to <4 x ptr>
40 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v32i16ptr = addrspacecast <32 x ptr addrspace(1)> undef to <32 x ptr>
41 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %i32ptr = addrspacecast ptr addrspace(1) undef to ptr
42 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v2i32ptr = addrspacecast <2 x ptr addrspace(1)> undef to <2 x ptr>
43 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v3i32ptr = addrspacecast <3 x ptr addrspace(1)> undef to <3 x ptr>
44 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v4i32ptr = addrspacecast <4 x ptr addrspace(1)> undef to <4 x ptr>
45 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v32i32ptr = addrspacecast <32 x ptr addrspace(1)> undef to <32 x ptr>
46 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %i64ptr = addrspacecast ptr addrspace(1) undef to ptr
47 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v2i64ptr = addrspacecast <2 x ptr addrspace(1)> undef to <2 x ptr>
48 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v3i64ptr = addrspacecast <3 x ptr addrspace(1)> undef to <3 x ptr>
49 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v4i64ptr = addrspacecast <4 x ptr addrspace(1)> undef to <4 x ptr>
50 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v32i64ptr = addrspacecast <32 x ptr addrspace(1)> undef to <32 x ptr>
51 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret void
53 %i8ptr = addrspacecast ptr addrspace(1) undef to ptr
54 %v2i8ptr = addrspacecast <2 x ptr addrspace(1)> undef to <2 x ptr>
55 %v3i8ptr = addrspacecast <3 x ptr addrspace(1)> undef to <3 x ptr>
56 %v4i8ptr = addrspacecast <4 x ptr addrspace(1)> undef to <4 x ptr>
57 %v32i8ptr = addrspacecast <32 x ptr addrspace(1)> undef to <32 x ptr>
58 %i16ptr = addrspacecast ptr addrspace(1) undef to ptr
59 %v2i16ptr = addrspacecast <2 x ptr addrspace(1)> undef to <2 x ptr>
60 %v3i16ptr = addrspacecast <3 x ptr addrspace(1)> undef to <3 x ptr>
61 %v4i16ptr = addrspacecast <4 x ptr addrspace(1)> undef to <4 x ptr>
62 %v32i16ptr = addrspacecast <32 x ptr addrspace(1)> undef to <32 x ptr>
63 %i32ptr = addrspacecast ptr addrspace(1) undef to ptr
64 %v2i32ptr = addrspacecast <2 x ptr addrspace(1)> undef to <2 x ptr>
65 %v3i32ptr = addrspacecast <3 x ptr addrspace(1)> undef to <3 x ptr>
66 %v4i32ptr = addrspacecast <4 x ptr addrspace(1)> undef to <4 x ptr>
67 %v32i32ptr = addrspacecast <32 x ptr addrspace(1)> undef to <32 x ptr>
68 %i64ptr = addrspacecast ptr addrspace(1) undef to ptr
69 %v2i64ptr = addrspacecast <2 x ptr addrspace(1)> undef to <2 x ptr>
70 %v3i64ptr = addrspacecast <3 x ptr addrspace(1)> undef to <3 x ptr>
71 %v4i64ptr = addrspacecast <4 x ptr addrspace(1)> undef to <4 x ptr>
72 %v32i64ptr = addrspacecast <32 x ptr addrspace(1)> undef to <32 x ptr>
76 define void @addrspacecast_local_to_flat() #0 {
77 ; ALL-LABEL: 'addrspacecast_local_to_flat'
78 ; ALL-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %i8ptr = addrspacecast ptr addrspace(3) undef to ptr
79 ; ALL-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %v2i8ptr = addrspacecast <2 x ptr addrspace(3)> undef to <2 x ptr>
80 ; ALL-NEXT: Cost Model: Found an estimated cost of 3 for instruction: %v3i8ptr = addrspacecast <3 x ptr addrspace(3)> undef to <3 x ptr>
81 ; ALL-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %v4i8ptr = addrspacecast <4 x ptr addrspace(3)> undef to <4 x ptr>
82 ; ALL-NEXT: Cost Model: Found an estimated cost of 32 for instruction: %v32i8ptr = addrspacecast <32 x ptr addrspace(3)> undef to <32 x ptr>
83 ; ALL-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %i16ptr = addrspacecast ptr addrspace(3) undef to ptr
84 ; ALL-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %v2i16ptr = addrspacecast <2 x ptr addrspace(3)> undef to <2 x ptr>
85 ; ALL-NEXT: Cost Model: Found an estimated cost of 3 for instruction: %v3i16ptr = addrspacecast <3 x ptr addrspace(3)> undef to <3 x ptr>
86 ; ALL-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %v4i16ptr = addrspacecast <4 x ptr addrspace(3)> undef to <4 x ptr>
87 ; ALL-NEXT: Cost Model: Found an estimated cost of 32 for instruction: %v32i16ptr = addrspacecast <32 x ptr addrspace(3)> undef to <32 x ptr>
88 ; ALL-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %i32ptr = addrspacecast ptr addrspace(3) undef to ptr
89 ; ALL-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %v2i32ptr = addrspacecast <2 x ptr addrspace(3)> undef to <2 x ptr>
90 ; ALL-NEXT: Cost Model: Found an estimated cost of 3 for instruction: %v3i32ptr = addrspacecast <3 x ptr addrspace(3)> undef to <3 x ptr>
91 ; ALL-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %v4i32ptr = addrspacecast <4 x ptr addrspace(3)> undef to <4 x ptr>
92 ; ALL-NEXT: Cost Model: Found an estimated cost of 32 for instruction: %v32i32ptr = addrspacecast <32 x ptr addrspace(3)> undef to <32 x ptr>
93 ; ALL-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %i64ptr = addrspacecast ptr addrspace(3) undef to ptr
94 ; ALL-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %v2i64ptr = addrspacecast <2 x ptr addrspace(3)> undef to <2 x ptr>
95 ; ALL-NEXT: Cost Model: Found an estimated cost of 3 for instruction: %v3i64ptr = addrspacecast <3 x ptr addrspace(3)> undef to <3 x ptr>
96 ; ALL-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %v4i64ptr = addrspacecast <4 x ptr addrspace(3)> undef to <4 x ptr>
97 ; ALL-NEXT: Cost Model: Found an estimated cost of 32 for instruction: %v32i64ptr = addrspacecast <32 x ptr addrspace(3)> undef to <32 x ptr>
98 ; ALL-NEXT: Cost Model: Found an estimated cost of 10 for instruction: ret void
100 ; ALL-SIZE-LABEL: 'addrspacecast_local_to_flat'
101 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %i8ptr = addrspacecast ptr addrspace(3) undef to ptr
102 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %v2i8ptr = addrspacecast <2 x ptr addrspace(3)> undef to <2 x ptr>
103 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 3 for instruction: %v3i8ptr = addrspacecast <3 x ptr addrspace(3)> undef to <3 x ptr>
104 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %v4i8ptr = addrspacecast <4 x ptr addrspace(3)> undef to <4 x ptr>
105 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 32 for instruction: %v32i8ptr = addrspacecast <32 x ptr addrspace(3)> undef to <32 x ptr>
106 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %i16ptr = addrspacecast ptr addrspace(3) undef to ptr
107 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %v2i16ptr = addrspacecast <2 x ptr addrspace(3)> undef to <2 x ptr>
108 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 3 for instruction: %v3i16ptr = addrspacecast <3 x ptr addrspace(3)> undef to <3 x ptr>
109 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %v4i16ptr = addrspacecast <4 x ptr addrspace(3)> undef to <4 x ptr>
110 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 32 for instruction: %v32i16ptr = addrspacecast <32 x ptr addrspace(3)> undef to <32 x ptr>
111 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %i32ptr = addrspacecast ptr addrspace(3) undef to ptr
112 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %v2i32ptr = addrspacecast <2 x ptr addrspace(3)> undef to <2 x ptr>
113 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 3 for instruction: %v3i32ptr = addrspacecast <3 x ptr addrspace(3)> undef to <3 x ptr>
114 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %v4i32ptr = addrspacecast <4 x ptr addrspace(3)> undef to <4 x ptr>
115 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 32 for instruction: %v32i32ptr = addrspacecast <32 x ptr addrspace(3)> undef to <32 x ptr>
116 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %i64ptr = addrspacecast ptr addrspace(3) undef to ptr
117 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %v2i64ptr = addrspacecast <2 x ptr addrspace(3)> undef to <2 x ptr>
118 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 3 for instruction: %v3i64ptr = addrspacecast <3 x ptr addrspace(3)> undef to <3 x ptr>
119 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %v4i64ptr = addrspacecast <4 x ptr addrspace(3)> undef to <4 x ptr>
120 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 32 for instruction: %v32i64ptr = addrspacecast <32 x ptr addrspace(3)> undef to <32 x ptr>
121 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret void
123 %i8ptr = addrspacecast ptr addrspace(3) undef to ptr
124 %v2i8ptr = addrspacecast <2 x ptr addrspace(3)> undef to <2 x ptr>
125 %v3i8ptr = addrspacecast <3 x ptr addrspace(3)> undef to <3 x ptr>
126 %v4i8ptr = addrspacecast <4 x ptr addrspace(3)> undef to <4 x ptr>
127 %v32i8ptr = addrspacecast <32 x ptr addrspace(3)> undef to <32 x ptr>
128 %i16ptr = addrspacecast ptr addrspace(3) undef to ptr
129 %v2i16ptr = addrspacecast <2 x ptr addrspace(3)> undef to <2 x ptr>
130 %v3i16ptr = addrspacecast <3 x ptr addrspace(3)> undef to <3 x ptr>
131 %v4i16ptr = addrspacecast <4 x ptr addrspace(3)> undef to <4 x ptr>
132 %v32i16ptr = addrspacecast <32 x ptr addrspace(3)> undef to <32 x ptr>
133 %i32ptr = addrspacecast ptr addrspace(3) undef to ptr
134 %v2i32ptr = addrspacecast <2 x ptr addrspace(3)> undef to <2 x ptr>
135 %v3i32ptr = addrspacecast <3 x ptr addrspace(3)> undef to <3 x ptr>
136 %v4i32ptr = addrspacecast <4 x ptr addrspace(3)> undef to <4 x ptr>
137 %v32i32ptr = addrspacecast <32 x ptr addrspace(3)> undef to <32 x ptr>
138 %i64ptr = addrspacecast ptr addrspace(3) undef to ptr
139 %v2i64ptr = addrspacecast <2 x ptr addrspace(3)> undef to <2 x ptr>
140 %v3i64ptr = addrspacecast <3 x ptr addrspace(3)> undef to <3 x ptr>
141 %v4i64ptr = addrspacecast <4 x ptr addrspace(3)> undef to <4 x ptr>
142 %v32i64ptr = addrspacecast <32 x ptr addrspace(3)> undef to <32 x ptr>
146 define void @addrspacecast_flat_to_local() #0 {
147 ; ALL-LABEL: 'addrspacecast_flat_to_local'
148 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %i8ptr = addrspacecast ptr undef to ptr addrspace(3)
149 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v2i8ptr = addrspacecast <2 x ptr> undef to <2 x ptr addrspace(3)>
150 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v3i8ptr = addrspacecast <3 x ptr> undef to <3 x ptr addrspace(3)>
151 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v4i8ptr = addrspacecast <4 x ptr> undef to <4 x ptr addrspace(3)>
152 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v32i8ptr = addrspacecast <32 x ptr> undef to <32 x ptr addrspace(3)>
153 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %i16ptr = addrspacecast ptr undef to ptr addrspace(3)
154 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v2i16ptr = addrspacecast <2 x ptr> undef to <2 x ptr addrspace(3)>
155 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v3i16ptr = addrspacecast <3 x ptr> undef to <3 x ptr addrspace(3)>
156 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v4i16ptr = addrspacecast <4 x ptr> undef to <4 x ptr addrspace(3)>
157 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v32i16ptr = addrspacecast <32 x ptr> undef to <32 x ptr addrspace(3)>
158 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %i32ptr = addrspacecast ptr undef to ptr addrspace(3)
159 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v2i32ptr = addrspacecast <2 x ptr> undef to <2 x ptr addrspace(3)>
160 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v3i32ptr = addrspacecast <3 x ptr> undef to <3 x ptr addrspace(3)>
161 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v4i32ptr = addrspacecast <4 x ptr> undef to <4 x ptr addrspace(3)>
162 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v32i32ptr = addrspacecast <32 x ptr> undef to <32 x ptr addrspace(3)>
163 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %i64ptr = addrspacecast ptr undef to ptr addrspace(3)
164 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v2i64ptr = addrspacecast <2 x ptr> undef to <2 x ptr addrspace(3)>
165 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v3i64ptr = addrspacecast <3 x ptr> undef to <3 x ptr addrspace(3)>
166 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v4i64ptr = addrspacecast <4 x ptr> undef to <4 x ptr addrspace(3)>
167 ; ALL-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v32i64ptr = addrspacecast <32 x ptr> undef to <32 x ptr addrspace(3)>
168 ; ALL-NEXT: Cost Model: Found an estimated cost of 10 for instruction: ret void
170 ; ALL-SIZE-LABEL: 'addrspacecast_flat_to_local'
171 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %i8ptr = addrspacecast ptr undef to ptr addrspace(3)
172 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v2i8ptr = addrspacecast <2 x ptr> undef to <2 x ptr addrspace(3)>
173 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v3i8ptr = addrspacecast <3 x ptr> undef to <3 x ptr addrspace(3)>
174 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v4i8ptr = addrspacecast <4 x ptr> undef to <4 x ptr addrspace(3)>
175 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v32i8ptr = addrspacecast <32 x ptr> undef to <32 x ptr addrspace(3)>
176 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %i16ptr = addrspacecast ptr undef to ptr addrspace(3)
177 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v2i16ptr = addrspacecast <2 x ptr> undef to <2 x ptr addrspace(3)>
178 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v3i16ptr = addrspacecast <3 x ptr> undef to <3 x ptr addrspace(3)>
179 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v4i16ptr = addrspacecast <4 x ptr> undef to <4 x ptr addrspace(3)>
180 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v32i16ptr = addrspacecast <32 x ptr> undef to <32 x ptr addrspace(3)>
181 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %i32ptr = addrspacecast ptr undef to ptr addrspace(3)
182 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v2i32ptr = addrspacecast <2 x ptr> undef to <2 x ptr addrspace(3)>
183 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v3i32ptr = addrspacecast <3 x ptr> undef to <3 x ptr addrspace(3)>
184 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v4i32ptr = addrspacecast <4 x ptr> undef to <4 x ptr addrspace(3)>
185 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v32i32ptr = addrspacecast <32 x ptr> undef to <32 x ptr addrspace(3)>
186 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %i64ptr = addrspacecast ptr undef to ptr addrspace(3)
187 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v2i64ptr = addrspacecast <2 x ptr> undef to <2 x ptr addrspace(3)>
188 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v3i64ptr = addrspacecast <3 x ptr> undef to <3 x ptr addrspace(3)>
189 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v4i64ptr = addrspacecast <4 x ptr> undef to <4 x ptr addrspace(3)>
190 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 0 for instruction: %v32i64ptr = addrspacecast <32 x ptr> undef to <32 x ptr addrspace(3)>
191 ; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret void
193 %i8ptr = addrspacecast ptr undef to ptr addrspace(3)
194 %v2i8ptr = addrspacecast <2 x ptr> undef to <2 x ptr addrspace(3)>
195 %v3i8ptr = addrspacecast <3 x ptr> undef to <3 x ptr addrspace(3)>
196 %v4i8ptr = addrspacecast <4 x ptr> undef to <4 x ptr addrspace(3)>
197 %v32i8ptr = addrspacecast <32 x ptr> undef to <32 x ptr addrspace(3)>
198 %i16ptr = addrspacecast ptr undef to ptr addrspace(3)
199 %v2i16ptr = addrspacecast <2 x ptr> undef to <2 x ptr addrspace(3)>
200 %v3i16ptr = addrspacecast <3 x ptr> undef to <3 x ptr addrspace(3)>
201 %v4i16ptr = addrspacecast <4 x ptr> undef to <4 x ptr addrspace(3)>
202 %v32i16ptr = addrspacecast <32 x ptr> undef to <32 x ptr addrspace(3)>
203 %i32ptr = addrspacecast ptr undef to ptr addrspace(3)
204 %v2i32ptr = addrspacecast <2 x ptr> undef to <2 x ptr addrspace(3)>
205 %v3i32ptr = addrspacecast <3 x ptr> undef to <3 x ptr addrspace(3)>
206 %v4i32ptr = addrspacecast <4 x ptr> undef to <4 x ptr addrspace(3)>
207 %v32i32ptr = addrspacecast <32 x ptr> undef to <32 x ptr addrspace(3)>
208 %i64ptr = addrspacecast ptr undef to ptr addrspace(3)
209 %v2i64ptr = addrspacecast <2 x ptr> undef to <2 x ptr addrspace(3)>
210 %v3i64ptr = addrspacecast <3 x ptr> undef to <3 x ptr addrspace(3)>
211 %v4i64ptr = addrspacecast <4 x ptr> undef to <4 x ptr addrspace(3)>
212 %v32i64ptr = addrspacecast <32 x ptr> undef to <32 x ptr addrspace(3)>
216 attributes #0 = { nounwind readnone }