Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / Analysis / CostModel / SystemZ / fp-cast.ll
blob837962cb98018d540ec10e026856352ee53c286a
1 ; RUN: opt < %s -passes="print<cost-model>" 2>&1 -disable-output -mtriple=systemz-unknown -mcpu=z13 \
2 ; RUN:  | FileCheck %s -check-prefixes=CHECK,Z13
3 ; RUN: opt < %s -passes="print<cost-model>" 2>&1 -disable-output -mtriple=systemz-unknown -mcpu=z15 \
4 ; RUN:  | FileCheck %s -check-prefixes=CHECK,Z15
6 ; Note: The scalarized vector instructions costs are not including any
7 ; extracts, due to the undef operands.
9 define void @fpext() {
10   %v0 = fpext double undef to fp128
11   %v1 = fpext float undef to fp128
12   %v2 = fpext float undef to double
13   %v3 = fpext <2 x double> undef to <2 x fp128>
14   %v4 = fpext <2 x float> undef to <2 x fp128>
15   %v5 = fpext <2 x float> undef to <2 x double>
16   %v6 = fpext <4 x double> undef to <4 x fp128>
17   %v7 = fpext <4 x float> undef to <4 x fp128>
18   %v8 = fpext <4 x float> undef to <4 x double>
19   %v9 = fpext <8 x double> undef to <8 x fp128>
20   %v10 = fpext <8 x float> undef to <8 x fp128>
21   %v11 = fpext <8 x float> undef to <8 x double>
22   %v12 = fpext <16 x float> undef to <16 x double>
24 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v0 = fpext double undef to fp128
25 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v1 = fpext float undef to fp128
26 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v2 = fpext float undef to double
27 ; CHECK: Cost Model: Found an estimated cost of 4 for instruction:   %v3 = fpext <2 x double> undef to <2 x fp128>
28 ; CHECK: Cost Model: Found an estimated cost of 4 for instruction:   %v4 = fpext <2 x float> undef to <2 x fp128>
29 ; CHECK: Cost Model: Found an estimated cost of 4 for instruction:   %v5 = fpext <2 x float> undef to <2 x double>
30 ; CHECK: Cost Model: Found an estimated cost of 8 for instruction:   %v6 = fpext <4 x double> undef to <4 x fp128>
31 ; CHECK: Cost Model: Found an estimated cost of 8 for instruction:   %v7 = fpext <4 x float> undef to <4 x fp128>
32 ; CHECK: Cost Model: Found an estimated cost of 8 for instruction:   %v8 = fpext <4 x float> undef to <4 x double>
33 ; CHECK: Cost Model: Found an estimated cost of 16 for instruction:   %v9 = fpext <8 x double> undef to <8 x fp128>
34 ; CHECK: Cost Model: Found an estimated cost of 16 for instruction:   %v10 = fpext <8 x float> undef to <8 x fp128>
35 ; CHECK: Cost Model: Found an estimated cost of 16 for instruction:   %v11 = fpext <8 x float> undef to <8 x double>
36 ; CHECK: Cost Model: Found an estimated cost of 32 for instruction:   %v12 = fpext <16 x float> undef to <16 x double>
38   ret void;
41 define void @fptosi() {
42   %v0 = fptosi fp128 undef to i64
43   %v1 = fptosi fp128 undef to i32
44   %v2 = fptosi fp128 undef to i16
45   %v3 = fptosi fp128 undef to i8
46   %v4 = fptosi double undef to i64
47   %v5 = fptosi double undef to i32
48   %v6 = fptosi double undef to i16
49   %v7 = fptosi double undef to i8
50   %v8 = fptosi float undef to i64
51   %v9 = fptosi float undef to i32
52   %v10 = fptosi float undef to i16
53   %v11 = fptosi float undef to i8
54   %v12 = fptosi <2 x fp128> undef to <2 x i64>
55   %v13 = fptosi <2 x fp128> undef to <2 x i32>
56   %v14 = fptosi <2 x fp128> undef to <2 x i16>
57   %v15 = fptosi <2 x fp128> undef to <2 x i8>
58   %v16 = fptosi <2 x double> undef to <2 x i64>
59   %v17 = fptosi <2 x double> undef to <2 x i32>
60   %v18 = fptosi <2 x double> undef to <2 x i16>
61   %v19 = fptosi <2 x double> undef to <2 x i8>
62   %v20 = fptosi <2 x float> undef to <2 x i64>
63   %v21 = fptosi <2 x float> undef to <2 x i32>
64   %v22 = fptosi <2 x float> undef to <2 x i16>
65   %v23 = fptosi <2 x float> undef to <2 x i8>
66   %v24 = fptosi <4 x fp128> undef to <4 x i64>
67   %v25 = fptosi <4 x fp128> undef to <4 x i32>
68   %v26 = fptosi <4 x fp128> undef to <4 x i16>
69   %v27 = fptosi <4 x fp128> undef to <4 x i8>
70   %v28 = fptosi <4 x double> undef to <4 x i64>
71   %v29 = fptosi <4 x double> undef to <4 x i32>
72   %v30 = fptosi <4 x double> undef to <4 x i16>
73   %v31 = fptosi <4 x double> undef to <4 x i8>
74   %v32 = fptosi <4 x float> undef to <4 x i64>
75   %v33 = fptosi <4 x float> undef to <4 x i32>
76   %v34 = fptosi <4 x float> undef to <4 x i16>
77   %v35 = fptosi <4 x float> undef to <4 x i8>
78   %v36 = fptosi <8 x fp128> undef to <8 x i64>
79   %v37 = fptosi <8 x fp128> undef to <8 x i32>
80   %v38 = fptosi <8 x fp128> undef to <8 x i16>
81   %v39 = fptosi <8 x fp128> undef to <8 x i8>
82   %v40 = fptosi <8 x double> undef to <8 x i64>
83   %v41 = fptosi <8 x double> undef to <8 x i32>
84   %v42 = fptosi <8 x double> undef to <8 x i16>
85   %v43 = fptosi <8 x double> undef to <8 x i8>
86   %v44 = fptosi <8 x float> undef to <8 x i64>
87   %v45 = fptosi <8 x float> undef to <8 x i32>
88   %v46 = fptosi <8 x float> undef to <8 x i16>
89   %v47 = fptosi <8 x float> undef to <8 x i8>
90   %v48 = fptosi <16 x double> undef to <16 x i64>
91   %v49 = fptosi <16 x double> undef to <16 x i32>
92   %v50 = fptosi <16 x double> undef to <16 x i16>
93   %v51 = fptosi <16 x double> undef to <16 x i8>
94   %v52 = fptosi <16 x float> undef to <16 x i64>
95   %v53 = fptosi <16 x float> undef to <16 x i32>
96   %v54 = fptosi <16 x float> undef to <16 x i16>
97   %v55 = fptosi <16 x float> undef to <16 x i8>
99 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v0 = fptosi fp128 undef to i64
100 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v1 = fptosi fp128 undef to i32
101 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v2 = fptosi fp128 undef to i16
102 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v3 = fptosi fp128 undef to i8
103 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v4 = fptosi double undef to i64
104 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v5 = fptosi double undef to i32
105 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v6 = fptosi double undef to i16
106 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v7 = fptosi double undef to i8
107 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v8 = fptosi float undef to i64
108 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v9 = fptosi float undef to i32
109 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v10 = fptosi float undef to i16
110 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v11 = fptosi float undef to i8
111 ; CHECK: Cost Model: Found an estimated cost of 3 for instruction:   %v12 = fptosi <2 x fp128> undef to <2 x i64>
112 ; CHECK: Cost Model: Found an estimated cost of 4 for instruction:   %v13 = fptosi <2 x fp128> undef to <2 x i32>
113 ; CHECK: Cost Model: Found an estimated cost of 4 for instruction:   %v14 = fptosi <2 x fp128> undef to <2 x i16>
114 ; CHECK: Cost Model: Found an estimated cost of 4 for instruction:   %v15 = fptosi <2 x fp128> undef to <2 x i8>
115 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v16 = fptosi <2 x double> undef to <2 x i64>
116 ; CHECK: Cost Model: Found an estimated cost of 6 for instruction:   %v17 = fptosi <2 x double> undef to <2 x i32>
117 ; CHECK: Cost Model: Found an estimated cost of 6 for instruction:   %v18 = fptosi <2 x double> undef to <2 x i16>
118 ; CHECK: Cost Model: Found an estimated cost of 6 for instruction:   %v19 = fptosi <2 x double> undef to <2 x i8>
119 ; CHECK: Cost Model: Found an estimated cost of 5 for instruction:   %v20 = fptosi <2 x float> undef to <2 x i64>
120 ; Z13:   Cost Model: Found an estimated cost of 12 for instruction:   %v21 = fptosi <2 x float> undef to <2 x i32>
121 ; Z15:   Cost Model: Found an estimated cost of 1 for instruction:   %v21 = fptosi <2 x float> undef to <2 x i32>
122 ; CHECK: Cost Model: Found an estimated cost of 6 for instruction:   %v22 = fptosi <2 x float> undef to <2 x i16>
123 ; CHECK: Cost Model: Found an estimated cost of 6 for instruction:   %v23 = fptosi <2 x float> undef to <2 x i8>
124 ; CHECK: Cost Model: Found an estimated cost of 6 for instruction:   %v24 = fptosi <4 x fp128> undef to <4 x i64>
125 ; CHECK: Cost Model: Found an estimated cost of 8 for instruction:   %v25 = fptosi <4 x fp128> undef to <4 x i32>
126 ; CHECK: Cost Model: Found an estimated cost of 8 for instruction:   %v26 = fptosi <4 x fp128> undef to <4 x i16>
127 ; CHECK: Cost Model: Found an estimated cost of 8 for instruction:   %v27 = fptosi <4 x fp128> undef to <4 x i8>
128 ; CHECK: Cost Model: Found an estimated cost of 2 for instruction:   %v28 = fptosi <4 x double> undef to <4 x i64>
129 ; CHECK: Cost Model: Found an estimated cost of 12 for instruction:   %v29 = fptosi <4 x double> undef to <4 x i32>
130 ; CHECK: Cost Model: Found an estimated cost of 12 for instruction:   %v30 = fptosi <4 x double> undef to <4 x i16>
131 ; CHECK: Cost Model: Found an estimated cost of 12 for instruction:   %v31 = fptosi <4 x double> undef to <4 x i8>
132 ; CHECK: Cost Model: Found an estimated cost of 10 for instruction:   %v32 = fptosi <4 x float> undef to <4 x i64>
133 ; Z13:   Cost Model: Found an estimated cost of 12 for instruction:   %v33 = fptosi <4 x float> undef to <4 x i32>
134 ; Z15:   Cost Model: Found an estimated cost of 1 for instruction:   %v33 = fptosi <4 x float> undef to <4 x i32>
135 ; CHECK: Cost Model: Found an estimated cost of 12 for instruction:   %v34 = fptosi <4 x float> undef to <4 x i16>
136 ; CHECK: Cost Model: Found an estimated cost of 12 for instruction:   %v35 = fptosi <4 x float> undef to <4 x i8>
137 ; CHECK: Cost Model: Found an estimated cost of 12 for instruction:   %v36 = fptosi <8 x fp128> undef to <8 x i64>
138 ; CHECK: Cost Model: Found an estimated cost of 16 for instruction:   %v37 = fptosi <8 x fp128> undef to <8 x i32>
139 ; CHECK: Cost Model: Found an estimated cost of 16 for instruction:   %v38 = fptosi <8 x fp128> undef to <8 x i16>
140 ; CHECK: Cost Model: Found an estimated cost of 16 for instruction:   %v39 = fptosi <8 x fp128> undef to <8 x i8>
141 ; CHECK: Cost Model: Found an estimated cost of 4 for instruction:   %v40 = fptosi <8 x double> undef to <8 x i64>
142 ; CHECK: Cost Model: Found an estimated cost of 24 for instruction:   %v41 = fptosi <8 x double> undef to <8 x i32>
143 ; CHECK: Cost Model: Found an estimated cost of 24 for instruction:   %v42 = fptosi <8 x double> undef to <8 x i16>
144 ; CHECK: Cost Model: Found an estimated cost of 24 for instruction:   %v43 = fptosi <8 x double> undef to <8 x i8>
145 ; CHECK: Cost Model: Found an estimated cost of 20 for instruction:   %v44 = fptosi <8 x float> undef to <8 x i64>
146 ; Z13:   Cost Model: Found an estimated cost of 24 for instruction:   %v45 = fptosi <8 x float> undef to <8 x i32>
147 ; Z15:   Cost Model: Found an estimated cost of 2 for instruction:   %v45 = fptosi <8 x float> undef to <8 x i32>
148 ; CHECK: Cost Model: Found an estimated cost of 24 for instruction:   %v46 = fptosi <8 x float> undef to <8 x i16>
149 ; CHECK: Cost Model: Found an estimated cost of 24 for instruction:   %v47 = fptosi <8 x float> undef to <8 x i8>
150 ; CHECK: Cost Model: Found an estimated cost of 8 for instruction:   %v48 = fptosi <16 x double> undef to <16 x i64>
151 ; CHECK: Cost Model: Found an estimated cost of 48 for instruction:   %v49 = fptosi <16 x double> undef to <16 x i32>
152 ; CHECK: Cost Model: Found an estimated cost of 48 for instruction:   %v50 = fptosi <16 x double> undef to <16 x i16>
153 ; CHECK: Cost Model: Found an estimated cost of 48 for instruction:   %v51 = fptosi <16 x double> undef to <16 x i8>
154 ; CHECK: Cost Model: Found an estimated cost of 40 for instruction:   %v52 = fptosi <16 x float> undef to <16 x i64>
155 ; Z13:   Cost Model: Found an estimated cost of 48 for instruction:   %v53 = fptosi <16 x float> undef to <16 x i32>
156 ; Z15:   Cost Model: Found an estimated cost of 4 for instruction:   %v53 = fptosi <16 x float> undef to <16 x i32>
157 ; CHECK: Cost Model: Found an estimated cost of 48 for instruction:   %v54 = fptosi <16 x float> undef to <16 x i16>
158 ; CHECK: Cost Model: Found an estimated cost of 48 for instruction:   %v55 = fptosi <16 x float> undef to <16 x i8>
160   ret void;
164 define void @fptoui() {
165   %v0 = fptoui fp128 undef to i64
166   %v1 = fptoui fp128 undef to i32
167   %v2 = fptoui fp128 undef to i16
168   %v3 = fptoui fp128 undef to i8
169   %v4 = fptoui double undef to i64
170   %v5 = fptoui double undef to i32
171   %v6 = fptoui double undef to i16
172   %v7 = fptoui double undef to i8
173   %v8 = fptoui float undef to i64
174   %v9 = fptoui float undef to i32
175   %v10 = fptoui float undef to i16
176   %v11 = fptoui float undef to i8
177   %v12 = fptoui <2 x fp128> undef to <2 x i64>
178   %v13 = fptoui <2 x fp128> undef to <2 x i32>
179   %v14 = fptoui <2 x fp128> undef to <2 x i16>
180   %v15 = fptoui <2 x fp128> undef to <2 x i8>
181   %v16 = fptoui <2 x double> undef to <2 x i64>
182   %v17 = fptoui <2 x double> undef to <2 x i32>
183   %v18 = fptoui <2 x double> undef to <2 x i16>
184   %v19 = fptoui <2 x double> undef to <2 x i8>
185   %v20 = fptoui <2 x float> undef to <2 x i64>
186   %v21 = fptoui <2 x float> undef to <2 x i32>
187   %v22 = fptoui <2 x float> undef to <2 x i16>
188   %v23 = fptoui <2 x float> undef to <2 x i8>
189   %v24 = fptoui <4 x fp128> undef to <4 x i64>
190   %v25 = fptoui <4 x fp128> undef to <4 x i32>
191   %v26 = fptoui <4 x fp128> undef to <4 x i16>
192   %v27 = fptoui <4 x fp128> undef to <4 x i8>
193   %v28 = fptoui <4 x double> undef to <4 x i64>
194   %v29 = fptoui <4 x double> undef to <4 x i32>
195   %v30 = fptoui <4 x double> undef to <4 x i16>
196   %v31 = fptoui <4 x double> undef to <4 x i8>
197   %v32 = fptoui <4 x float> undef to <4 x i64>
198   %v33 = fptoui <4 x float> undef to <4 x i32>
199   %v34 = fptoui <4 x float> undef to <4 x i16>
200   %v35 = fptoui <4 x float> undef to <4 x i8>
201   %v36 = fptoui <8 x fp128> undef to <8 x i64>
202   %v37 = fptoui <8 x fp128> undef to <8 x i32>
203   %v38 = fptoui <8 x fp128> undef to <8 x i16>
204   %v39 = fptoui <8 x fp128> undef to <8 x i8>
205   %v40 = fptoui <8 x double> undef to <8 x i64>
206   %v41 = fptoui <8 x double> undef to <8 x i32>
207   %v42 = fptoui <8 x double> undef to <8 x i16>
208   %v43 = fptoui <8 x double> undef to <8 x i8>
209   %v44 = fptoui <8 x float> undef to <8 x i64>
210   %v45 = fptoui <8 x float> undef to <8 x i32>
211   %v46 = fptoui <8 x float> undef to <8 x i16>
212   %v47 = fptoui <8 x float> undef to <8 x i8>
213   %v48 = fptoui <16 x double> undef to <16 x i64>
214   %v49 = fptoui <16 x double> undef to <16 x i32>
215   %v50 = fptoui <16 x double> undef to <16 x i16>
216   %v51 = fptoui <16 x double> undef to <16 x i8>
217   %v52 = fptoui <16 x float> undef to <16 x i64>
218   %v53 = fptoui <16 x float> undef to <16 x i32>
219   %v54 = fptoui <16 x float> undef to <16 x i16>
220   %v55 = fptoui <16 x float> undef to <16 x i8>
222 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v0 = fptoui fp128 undef to i64
223 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v1 = fptoui fp128 undef to i32
224 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v2 = fptoui fp128 undef to i16
225 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v3 = fptoui fp128 undef to i8
226 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v4 = fptoui double undef to i64
227 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v5 = fptoui double undef to i32
228 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v6 = fptoui double undef to i16
229 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v7 = fptoui double undef to i8
230 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v8 = fptoui float undef to i64
231 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v9 = fptoui float undef to i32
232 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v10 = fptoui float undef to i16
233 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v11 = fptoui float undef to i8
234 ; CHECK: Cost Model: Found an estimated cost of 3 for instruction:   %v12 = fptoui <2 x fp128> undef to <2 x i64>
235 ; CHECK: Cost Model: Found an estimated cost of 4 for instruction:   %v13 = fptoui <2 x fp128> undef to <2 x i32>
236 ; CHECK: Cost Model: Found an estimated cost of 4 for instruction:   %v14 = fptoui <2 x fp128> undef to <2 x i16>
237 ; CHECK: Cost Model: Found an estimated cost of 4 for instruction:   %v15 = fptoui <2 x fp128> undef to <2 x i8>
238 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v16 = fptoui <2 x double> undef to <2 x i64>
239 ; CHECK: Cost Model: Found an estimated cost of 6 for instruction:   %v17 = fptoui <2 x double> undef to <2 x i32>
240 ; CHECK: Cost Model: Found an estimated cost of 6 for instruction:   %v18 = fptoui <2 x double> undef to <2 x i16>
241 ; CHECK: Cost Model: Found an estimated cost of 6 for instruction:   %v19 = fptoui <2 x double> undef to <2 x i8>
242 ; CHECK: Cost Model: Found an estimated cost of 5 for instruction:   %v20 = fptoui <2 x float> undef to <2 x i64>
243 ; Z13:   Cost Model: Found an estimated cost of 12 for instruction:   %v21 = fptoui <2 x float> undef to <2 x i32>
244 ; Z15:   Cost Model: Found an estimated cost of 1 for instruction:   %v21 = fptoui <2 x float> undef to <2 x i32>
245 ; CHECK: Cost Model: Found an estimated cost of 6 for instruction:   %v22 = fptoui <2 x float> undef to <2 x i16>
246 ; CHECK: Cost Model: Found an estimated cost of 6 for instruction:   %v23 = fptoui <2 x float> undef to <2 x i8>
247 ; CHECK: Cost Model: Found an estimated cost of 6 for instruction:   %v24 = fptoui <4 x fp128> undef to <4 x i64>
248 ; CHECK: Cost Model: Found an estimated cost of 8 for instruction:   %v25 = fptoui <4 x fp128> undef to <4 x i32>
249 ; CHECK: Cost Model: Found an estimated cost of 8 for instruction:   %v26 = fptoui <4 x fp128> undef to <4 x i16>
250 ; CHECK: Cost Model: Found an estimated cost of 8 for instruction:   %v27 = fptoui <4 x fp128> undef to <4 x i8>
251 ; CHECK: Cost Model: Found an estimated cost of 2 for instruction:   %v28 = fptoui <4 x double> undef to <4 x i64>
252 ; CHECK: Cost Model: Found an estimated cost of 12 for instruction:   %v29 = fptoui <4 x double> undef to <4 x i32>
253 ; CHECK: Cost Model: Found an estimated cost of 12 for instruction:   %v30 = fptoui <4 x double> undef to <4 x i16>
254 ; CHECK: Cost Model: Found an estimated cost of 12 for instruction:   %v31 = fptoui <4 x double> undef to <4 x i8>
255 ; CHECK: Cost Model: Found an estimated cost of 10 for instruction:   %v32 = fptoui <4 x float> undef to <4 x i64>
256 ; Z13:   Cost Model: Found an estimated cost of 12 for instruction:   %v33 = fptoui <4 x float> undef to <4 x i32>
257 ; Z15:   Cost Model: Found an estimated cost of 1 for instruction:   %v33 = fptoui <4 x float> undef to <4 x i32>
258 ; CHECK: Cost Model: Found an estimated cost of 12 for instruction:   %v34 = fptoui <4 x float> undef to <4 x i16>
259 ; CHECK: Cost Model: Found an estimated cost of 12 for instruction:   %v35 = fptoui <4 x float> undef to <4 x i8>
260 ; CHECK: Cost Model: Found an estimated cost of 12 for instruction:   %v36 = fptoui <8 x fp128> undef to <8 x i64>
261 ; CHECK: Cost Model: Found an estimated cost of 16 for instruction:   %v37 = fptoui <8 x fp128> undef to <8 x i32>
262 ; CHECK: Cost Model: Found an estimated cost of 16 for instruction:   %v38 = fptoui <8 x fp128> undef to <8 x i16>
263 ; CHECK: Cost Model: Found an estimated cost of 16 for instruction:   %v39 = fptoui <8 x fp128> undef to <8 x i8>
264 ; CHECK: Cost Model: Found an estimated cost of 4 for instruction:   %v40 = fptoui <8 x double> undef to <8 x i64>
265 ; CHECK: Cost Model: Found an estimated cost of 24 for instruction:   %v41 = fptoui <8 x double> undef to <8 x i32>
266 ; CHECK: Cost Model: Found an estimated cost of 24 for instruction:   %v42 = fptoui <8 x double> undef to <8 x i16>
267 ; CHECK: Cost Model: Found an estimated cost of 24 for instruction:   %v43 = fptoui <8 x double> undef to <8 x i8>
268 ; CHECK: Cost Model: Found an estimated cost of 20 for instruction:   %v44 = fptoui <8 x float> undef to <8 x i64>
269 ; Z13:   Cost Model: Found an estimated cost of 24 for instruction:   %v45 = fptoui <8 x float> undef to <8 x i32>
270 ; Z15:   Cost Model: Found an estimated cost of 2 for instruction:   %v45 = fptoui <8 x float> undef to <8 x i32>
271 ; CHECK: Cost Model: Found an estimated cost of 24 for instruction:   %v46 = fptoui <8 x float> undef to <8 x i16>
272 ; CHECK: Cost Model: Found an estimated cost of 24 for instruction:   %v47 = fptoui <8 x float> undef to <8 x i8>
273 ; CHECK: Cost Model: Found an estimated cost of 8 for instruction:   %v48 = fptoui <16 x double> undef to <16 x i64>
274 ; CHECK: Cost Model: Found an estimated cost of 48 for instruction:   %v49 = fptoui <16 x double> undef to <16 x i32>
275 ; CHECK: Cost Model: Found an estimated cost of 48 for instruction:   %v50 = fptoui <16 x double> undef to <16 x i16>
276 ; CHECK: Cost Model: Found an estimated cost of 48 for instruction:   %v51 = fptoui <16 x double> undef to <16 x i8>
277 ; CHECK: Cost Model: Found an estimated cost of 40 for instruction:   %v52 = fptoui <16 x float> undef to <16 x i64>
278 ; Z13:   Cost Model: Found an estimated cost of 48 for instruction:   %v53 = fptoui <16 x float> undef to <16 x i32>
279 ; Z15:   Cost Model: Found an estimated cost of 4 for instruction:   %v53 = fptoui <16 x float> undef to <16 x i32>
280 ; CHECK: Cost Model: Found an estimated cost of 48 for instruction:   %v54 = fptoui <16 x float> undef to <16 x i16>
281 ; CHECK: Cost Model: Found an estimated cost of 48 for instruction:   %v55 = fptoui <16 x float> undef to <16 x i8>
283   ret void;
286 define void @fptrunc() {
287   %v0 = fptrunc fp128 undef to double
288   %v1 = fptrunc fp128 undef to float
289   %v2 = fptrunc double undef to float
290   %v3 = fptrunc <2 x fp128> undef to <2 x double>
291   %v4 = fptrunc <2 x fp128> undef to <2 x float>
292   %v5 = fptrunc <2 x double> undef to <2 x float>
293   %v6 = fptrunc <4 x fp128> undef to <4 x double>
294   %v7 = fptrunc <4 x fp128> undef to <4 x float>
295   %v8 = fptrunc <4 x double> undef to <4 x float>
296   %v9 = fptrunc <8 x fp128> undef to <8 x double>
297   %v10 = fptrunc <8 x fp128> undef to <8 x float>
298   %v11 = fptrunc <8 x double> undef to <8 x float>
299   %v12 = fptrunc <16 x double> undef to <16 x float>
301 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v0 = fptrunc fp128 undef to double
302 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v1 = fptrunc fp128 undef to float
303 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v2 = fptrunc double undef to float
304 ; CHECK: Cost Model: Found an estimated cost of 4 for instruction:   %v3 = fptrunc <2 x fp128> undef to <2 x double>
305 ; CHECK: Cost Model: Found an estimated cost of 4 for instruction:   %v4 = fptrunc <2 x fp128> undef to <2 x float>
306 ; CHECK: Cost Model: Found an estimated cost of 2 for instruction:   %v5 = fptrunc <2 x double> undef to <2 x float>
307 ; CHECK: Cost Model: Found an estimated cost of 8 for instruction:   %v6 = fptrunc <4 x fp128> undef to <4 x double>
308 ; CHECK: Cost Model: Found an estimated cost of 8 for instruction:   %v7 = fptrunc <4 x fp128> undef to <4 x float>
309 ; CHECK: Cost Model: Found an estimated cost of 3 for instruction:   %v8 = fptrunc <4 x double> undef to <4 x float>
310 ; CHECK: Cost Model: Found an estimated cost of 16 for instruction:   %v9 = fptrunc <8 x fp128> undef to <8 x double>
311 ; CHECK: Cost Model: Found an estimated cost of 16 for instruction:   %v10 = fptrunc <8 x fp128> undef to <8 x float>
312 ; CHECK: Cost Model: Found an estimated cost of 6 for instruction:   %v11 = fptrunc <8 x double> undef to <8 x float>
313 ; CHECK: Cost Model: Found an estimated cost of 12 for instruction:   %v12 = fptrunc <16 x double> undef to <16 x float>
315   ret void;
318 define void @sitofp() {
319   %v0 = sitofp i64 undef to fp128
320   %v1 = sitofp i64 undef to double
321   %v2 = sitofp i64 undef to float
322   %v3 = sitofp i32 undef to fp128
323   %v4 = sitofp i32 undef to double
324   %v5 = sitofp i32 undef to float
325   %v6 = sitofp i16 undef to fp128
326   %v7 = sitofp i16 undef to double
327   %v8 = sitofp i16 undef to float
328   %v9 = sitofp i8 undef to fp128
329   %v10 = sitofp i8 undef to double
330   %v11 = sitofp i8 undef to float
331   %v12 = sitofp <2 x i64> undef to <2 x fp128>
332   %v13 = sitofp <2 x i64> undef to <2 x double>
333   %v14 = sitofp <2 x i64> undef to <2 x float>
334   %v15 = sitofp <2 x i32> undef to <2 x fp128>
335   %v16 = sitofp <2 x i32> undef to <2 x double>
336   %v17 = sitofp <2 x i32> undef to <2 x float>
337   %v18 = sitofp <2 x i16> undef to <2 x fp128>
338   %v19 = sitofp <2 x i16> undef to <2 x double>
339   %v20 = sitofp <2 x i16> undef to <2 x float>
340   %v21 = sitofp <2 x i8> undef to <2 x fp128>
341   %v22 = sitofp <2 x i8> undef to <2 x double>
342   %v23 = sitofp <2 x i8> undef to <2 x float>
343   %v24 = sitofp <4 x i64> undef to <4 x fp128>
344   %v25 = sitofp <4 x i64> undef to <4 x double>
345   %v26 = sitofp <4 x i64> undef to <4 x float>
346   %v27 = sitofp <4 x i32> undef to <4 x fp128>
347   %v28 = sitofp <4 x i32> undef to <4 x double>
348   %v29 = sitofp <4 x i32> undef to <4 x float>
349   %v30 = sitofp <4 x i16> undef to <4 x fp128>
350   %v31 = sitofp <4 x i16> undef to <4 x double>
351   %v32 = sitofp <4 x i16> undef to <4 x float>
352   %v33 = sitofp <4 x i8> undef to <4 x fp128>
353   %v34 = sitofp <4 x i8> undef to <4 x double>
354   %v35 = sitofp <4 x i8> undef to <4 x float>
355   %v36 = sitofp <8 x i64> undef to <8 x fp128>
356   %v37 = sitofp <8 x i64> undef to <8 x double>
357   %v38 = sitofp <8 x i64> undef to <8 x float>
358   %v39 = sitofp <8 x i32> undef to <8 x fp128>
359   %v40 = sitofp <8 x i32> undef to <8 x double>
360   %v41 = sitofp <8 x i32> undef to <8 x float>
361   %v42 = sitofp <8 x i16> undef to <8 x fp128>
362   %v43 = sitofp <8 x i16> undef to <8 x double>
363   %v44 = sitofp <8 x i16> undef to <8 x float>
364   %v45 = sitofp <8 x i8> undef to <8 x fp128>
365   %v46 = sitofp <8 x i8> undef to <8 x double>
366   %v47 = sitofp <8 x i8> undef to <8 x float>
367   %v48 = sitofp <16 x i64> undef to <16 x double>
368   %v49 = sitofp <16 x i64> undef to <16 x float>
369   %v50 = sitofp <16 x i32> undef to <16 x double>
370   %v51 = sitofp <16 x i32> undef to <16 x float>
371   %v52 = sitofp <16 x i16> undef to <16 x double>
372   %v53 = sitofp <16 x i16> undef to <16 x float>
373   %v54 = sitofp <16 x i8> undef to <16 x double>
374   %v55 = sitofp <16 x i8> undef to <16 x float>
376 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v0 = sitofp i64 undef to fp128
377 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v1 = sitofp i64 undef to double
378 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v2 = sitofp i64 undef to float
379 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v3 = sitofp i32 undef to fp128
380 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v4 = sitofp i32 undef to double
381 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v5 = sitofp i32 undef to float
382 ; CHECK: Cost Model: Found an estimated cost of 2 for instruction:   %v6 = sitofp i16 undef to fp128
383 ; CHECK: Cost Model: Found an estimated cost of 2 for instruction:   %v7 = sitofp i16 undef to double
384 ; CHECK: Cost Model: Found an estimated cost of 2 for instruction:   %v8 = sitofp i16 undef to float
385 ; CHECK: Cost Model: Found an estimated cost of 2 for instruction:   %v9 = sitofp i8 undef to fp128
386 ; CHECK: Cost Model: Found an estimated cost of 2 for instruction:   %v10 = sitofp i8 undef to double
387 ; CHECK: Cost Model: Found an estimated cost of 2 for instruction:   %v11 = sitofp i8 undef to float
388 ; CHECK: Cost Model: Found an estimated cost of 5 for instruction:   %v12 = sitofp <2 x i64> undef to <2 x fp128>
389 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v13 = sitofp <2 x i64> undef to <2 x double>
390 ; CHECK: Cost Model: Found an estimated cost of 7 for instruction:   %v14 = sitofp <2 x i64> undef to <2 x float>
391 ; CHECK: Cost Model: Found an estimated cost of 5 for instruction:   %v15 = sitofp <2 x i32> undef to <2 x fp128>
392 ; CHECK: Cost Model: Found an estimated cost of 7 for instruction:   %v16 = sitofp <2 x i32> undef to <2 x double>
393 ; Z13:   Cost Model: Found an estimated cost of 14 for instruction:   %v17 = sitofp <2 x i32> undef to <2 x float>
394 ; Z15:   Cost Model: Found an estimated cost of 1 for instruction:   %v17 = sitofp <2 x i32> undef to <2 x float>
395 ; CHECK: Cost Model: Found an estimated cost of 7 for instruction:   %v18 = sitofp <2 x i16> undef to <2 x fp128>
396 ; CHECK: Cost Model: Found an estimated cost of 9 for instruction:   %v19 = sitofp <2 x i16> undef to <2 x double>
397 ; CHECK: Cost Model: Found an estimated cost of 9 for instruction:   %v20 = sitofp <2 x i16> undef to <2 x float>
398 ; CHECK: Cost Model: Found an estimated cost of 7 for instruction:   %v21 = sitofp <2 x i8> undef to <2 x fp128>
399 ; CHECK: Cost Model: Found an estimated cost of 9 for instruction:   %v22 = sitofp <2 x i8> undef to <2 x double>
400 ; CHECK: Cost Model: Found an estimated cost of 9 for instruction:   %v23 = sitofp <2 x i8> undef to <2 x float>
401 ; CHECK: Cost Model: Found an estimated cost of 9 for instruction:   %v24 = sitofp <4 x i64> undef to <4 x fp128>
402 ; CHECK: Cost Model: Found an estimated cost of 2 for instruction:   %v25 = sitofp <4 x i64> undef to <4 x double>
403 ; CHECK: Cost Model: Found an estimated cost of 13 for instruction:   %v26 = sitofp <4 x i64> undef to <4 x float>
404 ; CHECK: Cost Model: Found an estimated cost of 9 for instruction:   %v27 = sitofp <4 x i32> undef to <4 x fp128>
405 ; CHECK: Cost Model: Found an estimated cost of 13 for instruction:   %v28 = sitofp <4 x i32> undef to <4 x double>
406 ; Z13:   Cost Model: Found an estimated cost of 13 for instruction:   %v29 = sitofp <4 x i32> undef to <4 x float>
407 ; Z15:   Cost Model: Found an estimated cost of 1 for instruction:   %v29 = sitofp <4 x i32> undef to <4 x float>
408 ; CHECK: Cost Model: Found an estimated cost of 13 for instruction:   %v30 = sitofp <4 x i16> undef to <4 x fp128>
409 ; CHECK: Cost Model: Found an estimated cost of 17 for instruction:   %v31 = sitofp <4 x i16> undef to <4 x double>
410 ; CHECK: Cost Model: Found an estimated cost of 17 for instruction:   %v32 = sitofp <4 x i16> undef to <4 x float>
411 ; CHECK: Cost Model: Found an estimated cost of 13 for instruction:   %v33 = sitofp <4 x i8> undef to <4 x fp128>
412 ; CHECK: Cost Model: Found an estimated cost of 17 for instruction:   %v34 = sitofp <4 x i8> undef to <4 x double>
413 ; CHECK: Cost Model: Found an estimated cost of 17 for instruction:   %v35 = sitofp <4 x i8> undef to <4 x float>
414 ; CHECK: Cost Model: Found an estimated cost of 17 for instruction:   %v36 = sitofp <8 x i64> undef to <8 x fp128>
415 ; CHECK: Cost Model: Found an estimated cost of 4 for instruction:   %v37 = sitofp <8 x i64> undef to <8 x double>
416 ; CHECK: Cost Model: Found an estimated cost of 25 for instruction:   %v38 = sitofp <8 x i64> undef to <8 x float>
417 ; CHECK: Cost Model: Found an estimated cost of 17 for instruction:   %v39 = sitofp <8 x i32> undef to <8 x fp128>
418 ; CHECK: Cost Model: Found an estimated cost of 25 for instruction:   %v40 = sitofp <8 x i32> undef to <8 x double>
419 ; Z13:   Cost Model: Found an estimated cost of 25 for instruction:   %v41 = sitofp <8 x i32> undef to <8 x float>
420 ; Z15:   Cost Model: Found an estimated cost of 2 for instruction:   %v41 = sitofp <8 x i32> undef to <8 x float>
421 ; CHECK: Cost Model: Found an estimated cost of 25 for instruction:   %v42 = sitofp <8 x i16> undef to <8 x fp128>
422 ; CHECK: Cost Model: Found an estimated cost of 33 for instruction:   %v43 = sitofp <8 x i16> undef to <8 x double>
423 ; CHECK: Cost Model: Found an estimated cost of 33 for instruction:   %v44 = sitofp <8 x i16> undef to <8 x float>
424 ; CHECK: Cost Model: Found an estimated cost of 25 for instruction:   %v45 = sitofp <8 x i8> undef to <8 x fp128>
425 ; CHECK: Cost Model: Found an estimated cost of 33 for instruction:   %v46 = sitofp <8 x i8> undef to <8 x double>
426 ; CHECK: Cost Model: Found an estimated cost of 33 for instruction:   %v47 = sitofp <8 x i8> undef to <8 x float>
427 ; CHECK: Cost Model: Found an estimated cost of 8 for instruction:   %v48 = sitofp <16 x i64> undef to <16 x double>
428 ; CHECK: Cost Model: Found an estimated cost of 49 for instruction:   %v49 = sitofp <16 x i64> undef to <16 x float>
429 ; CHECK: Cost Model: Found an estimated cost of 49 for instruction:   %v50 = sitofp <16 x i32> undef to <16 x double>
430 ; Z13:   Cost Model: Found an estimated cost of 49 for instruction:   %v51 = sitofp <16 x i32> undef to <16 x float>
431 ; Z15:   Cost Model: Found an estimated cost of 4 for instruction:   %v51 = sitofp <16 x i32> undef to <16 x float>
432 ; CHECK: Cost Model: Found an estimated cost of 65 for instruction:   %v52 = sitofp <16 x i16> undef to <16 x double>
433 ; CHECK: Cost Model: Found an estimated cost of 65 for instruction:   %v53 = sitofp <16 x i16> undef to <16 x float>
434 ; CHECK: Cost Model: Found an estimated cost of 65 for instruction:   %v54 = sitofp <16 x i8> undef to <16 x double>
435 ; CHECK: Cost Model: Found an estimated cost of 65 for instruction:   %v55 = sitofp <16 x i8> undef to <16 x float>
437   ret void;
440 define void @uitofp() {
441   %v0 = uitofp i64 undef to fp128
442   %v1 = uitofp i64 undef to double
443   %v2 = uitofp i64 undef to float
444   %v3 = uitofp i32 undef to fp128
445   %v4 = uitofp i32 undef to double
446   %v5 = uitofp i32 undef to float
447   %v6 = uitofp i16 undef to fp128
448   %v7 = uitofp i16 undef to double
449   %v8 = uitofp i16 undef to float
450   %v9 = uitofp i8 undef to fp128
451   %v10 = uitofp i8 undef to double
452   %v11 = uitofp i8 undef to float
453   %v12 = uitofp <2 x i64> undef to <2 x fp128>
454   %v13 = uitofp <2 x i64> undef to <2 x double>
455   %v14 = uitofp <2 x i64> undef to <2 x float>
456   %v15 = uitofp <2 x i32> undef to <2 x fp128>
457   %v16 = uitofp <2 x i32> undef to <2 x double>
458   %v17 = uitofp <2 x i32> undef to <2 x float>
459   %v18 = uitofp <2 x i16> undef to <2 x fp128>
460   %v19 = uitofp <2 x i16> undef to <2 x double>
461   %v20 = uitofp <2 x i16> undef to <2 x float>
462   %v21 = uitofp <2 x i8> undef to <2 x fp128>
463   %v22 = uitofp <2 x i8> undef to <2 x double>
464   %v23 = uitofp <2 x i8> undef to <2 x float>
465   %v24 = uitofp <4 x i64> undef to <4 x fp128>
466   %v25 = uitofp <4 x i64> undef to <4 x double>
467   %v26 = uitofp <4 x i64> undef to <4 x float>
468   %v27 = uitofp <4 x i32> undef to <4 x fp128>
469   %v28 = uitofp <4 x i32> undef to <4 x double>
470   %v29 = uitofp <4 x i32> undef to <4 x float>
471   %v30 = uitofp <4 x i16> undef to <4 x fp128>
472   %v31 = uitofp <4 x i16> undef to <4 x double>
473   %v32 = uitofp <4 x i16> undef to <4 x float>
474   %v33 = uitofp <4 x i8> undef to <4 x fp128>
475   %v34 = uitofp <4 x i8> undef to <4 x double>
476   %v35 = uitofp <4 x i8> undef to <4 x float>
477   %v36 = uitofp <8 x i64> undef to <8 x fp128>
478   %v37 = uitofp <8 x i64> undef to <8 x double>
479   %v38 = uitofp <8 x i64> undef to <8 x float>
480   %v39 = uitofp <8 x i32> undef to <8 x fp128>
481   %v40 = uitofp <8 x i32> undef to <8 x double>
482   %v41 = uitofp <8 x i32> undef to <8 x float>
483   %v42 = uitofp <8 x i16> undef to <8 x fp128>
484   %v43 = uitofp <8 x i16> undef to <8 x double>
485   %v44 = uitofp <8 x i16> undef to <8 x float>
486   %v45 = uitofp <8 x i8> undef to <8 x fp128>
487   %v46 = uitofp <8 x i8> undef to <8 x double>
488   %v47 = uitofp <8 x i8> undef to <8 x float>
489   %v48 = uitofp <16 x i64> undef to <16 x double>
490   %v49 = uitofp <16 x i64> undef to <16 x float>
491   %v50 = uitofp <16 x i32> undef to <16 x double>
492   %v51 = uitofp <16 x i32> undef to <16 x float>
493   %v52 = uitofp <16 x i16> undef to <16 x double>
494   %v53 = uitofp <16 x i16> undef to <16 x float>
495   %v54 = uitofp <16 x i8> undef to <16 x double>
496   %v55 = uitofp <16 x i8> undef to <16 x float>
498 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v0 = uitofp i64 undef to fp128
499 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v1 = uitofp i64 undef to double
500 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v2 = uitofp i64 undef to float
501 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v3 = uitofp i32 undef to fp128
502 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v4 = uitofp i32 undef to double
503 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v5 = uitofp i32 undef to float
504 ; CHECK: Cost Model: Found an estimated cost of 2 for instruction:   %v6 = uitofp i16 undef to fp128
505 ; CHECK: Cost Model: Found an estimated cost of 2 for instruction:   %v7 = uitofp i16 undef to double
506 ; CHECK: Cost Model: Found an estimated cost of 2 for instruction:   %v8 = uitofp i16 undef to float
507 ; CHECK: Cost Model: Found an estimated cost of 2 for instruction:   %v9 = uitofp i8 undef to fp128
508 ; CHECK: Cost Model: Found an estimated cost of 2 for instruction:   %v10 = uitofp i8 undef to double
509 ; CHECK: Cost Model: Found an estimated cost of 2 for instruction:   %v11 = uitofp i8 undef to float
510 ; CHECK: Cost Model: Found an estimated cost of 5 for instruction:   %v12 = uitofp <2 x i64> undef to <2 x fp128>
511 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v13 = uitofp <2 x i64> undef to <2 x double>
512 ; CHECK: Cost Model: Found an estimated cost of 7 for instruction:   %v14 = uitofp <2 x i64> undef to <2 x float>
513 ; CHECK: Cost Model: Found an estimated cost of 5 for instruction:   %v15 = uitofp <2 x i32> undef to <2 x fp128>
514 ; CHECK: Cost Model: Found an estimated cost of 7 for instruction:   %v16 = uitofp <2 x i32> undef to <2 x double>
515 ; Z13:   Cost Model: Found an estimated cost of 14 for instruction:   %v17 = uitofp <2 x i32> undef to <2 x float>
516 ; Z15:   Cost Model: Found an estimated cost of 1 for instruction:   %v17 = uitofp <2 x i32> undef to <2 x float>
517 ; CHECK: Cost Model: Found an estimated cost of 7 for instruction:   %v18 = uitofp <2 x i16> undef to <2 x fp128>
518 ; CHECK: Cost Model: Found an estimated cost of 9 for instruction:   %v19 = uitofp <2 x i16> undef to <2 x double>
519 ; CHECK: Cost Model: Found an estimated cost of 9 for instruction:   %v20 = uitofp <2 x i16> undef to <2 x float>
520 ; CHECK: Cost Model: Found an estimated cost of 7 for instruction:   %v21 = uitofp <2 x i8> undef to <2 x fp128>
521 ; CHECK: Cost Model: Found an estimated cost of 9 for instruction:   %v22 = uitofp <2 x i8> undef to <2 x double>
522 ; CHECK: Cost Model: Found an estimated cost of 9 for instruction:   %v23 = uitofp <2 x i8> undef to <2 x float>
523 ; CHECK: Cost Model: Found an estimated cost of 9 for instruction:   %v24 = uitofp <4 x i64> undef to <4 x fp128>
524 ; CHECK: Cost Model: Found an estimated cost of 2 for instruction:   %v25 = uitofp <4 x i64> undef to <4 x double>
525 ; CHECK: Cost Model: Found an estimated cost of 13 for instruction:   %v26 = uitofp <4 x i64> undef to <4 x float>
526 ; CHECK: Cost Model: Found an estimated cost of 9 for instruction:   %v27 = uitofp <4 x i32> undef to <4 x fp128>
527 ; CHECK: Cost Model: Found an estimated cost of 13 for instruction:   %v28 = uitofp <4 x i32> undef to <4 x double>
528 ; Z13:   Cost Model: Found an estimated cost of 13 for instruction:   %v29 = uitofp <4 x i32> undef to <4 x float>
529 ; Z15:   Cost Model: Found an estimated cost of 1 for instruction:   %v29 = uitofp <4 x i32> undef to <4 x float>
530 ; CHECK: Cost Model: Found an estimated cost of 13 for instruction:   %v30 = uitofp <4 x i16> undef to <4 x fp128>
531 ; CHECK: Cost Model: Found an estimated cost of 17 for instruction:   %v31 = uitofp <4 x i16> undef to <4 x double>
532 ; CHECK: Cost Model: Found an estimated cost of 17 for instruction:   %v32 = uitofp <4 x i16> undef to <4 x float>
533 ; CHECK: Cost Model: Found an estimated cost of 13 for instruction:   %v33 = uitofp <4 x i8> undef to <4 x fp128>
534 ; CHECK: Cost Model: Found an estimated cost of 17 for instruction:   %v34 = uitofp <4 x i8> undef to <4 x double>
535 ; CHECK: Cost Model: Found an estimated cost of 17 for instruction:   %v35 = uitofp <4 x i8> undef to <4 x float>
536 ; CHECK: Cost Model: Found an estimated cost of 17 for instruction:   %v36 = uitofp <8 x i64> undef to <8 x fp128>
537 ; CHECK: Cost Model: Found an estimated cost of 4 for instruction:   %v37 = uitofp <8 x i64> undef to <8 x double>
538 ; CHECK: Cost Model: Found an estimated cost of 25 for instruction:   %v38 = uitofp <8 x i64> undef to <8 x float>
539 ; CHECK: Cost Model: Found an estimated cost of 17 for instruction:   %v39 = uitofp <8 x i32> undef to <8 x fp128>
540 ; CHECK: Cost Model: Found an estimated cost of 25 for instruction:   %v40 = uitofp <8 x i32> undef to <8 x double>
541 ; Z13:   Cost Model: Found an estimated cost of 25 for instruction:   %v41 = uitofp <8 x i32> undef to <8 x float>
542 ; Z15:   Cost Model: Found an estimated cost of 2 for instruction:   %v41 = uitofp <8 x i32> undef to <8 x float>
543 ; CHECK: Cost Model: Found an estimated cost of 25 for instruction:   %v42 = uitofp <8 x i16> undef to <8 x fp128>
544 ; CHECK: Cost Model: Found an estimated cost of 33 for instruction:   %v43 = uitofp <8 x i16> undef to <8 x double>
545 ; CHECK: Cost Model: Found an estimated cost of 33 for instruction:   %v44 = uitofp <8 x i16> undef to <8 x float>
546 ; CHECK: Cost Model: Found an estimated cost of 25 for instruction:   %v45 = uitofp <8 x i8> undef to <8 x fp128>
547 ; CHECK: Cost Model: Found an estimated cost of 33 for instruction:   %v46 = uitofp <8 x i8> undef to <8 x double>
548 ; CHECK: Cost Model: Found an estimated cost of 33 for instruction:   %v47 = uitofp <8 x i8> undef to <8 x float>
549 ; CHECK: Cost Model: Found an estimated cost of 8 for instruction:   %v48 = uitofp <16 x i64> undef to <16 x double>
550 ; CHECK: Cost Model: Found an estimated cost of 49 for instruction:   %v49 = uitofp <16 x i64> undef to <16 x float>
551 ; CHECK: Cost Model: Found an estimated cost of 49 for instruction:   %v50 = uitofp <16 x i32> undef to <16 x double>
552 ; Z13:   Cost Model: Found an estimated cost of 49 for instruction:   %v51 = uitofp <16 x i32> undef to <16 x float>
553 ; Z15:   Cost Model: Found an estimated cost of 4 for instruction:   %v51 = uitofp <16 x i32> undef to <16 x float>
554 ; CHECK: Cost Model: Found an estimated cost of 65 for instruction:   %v52 = uitofp <16 x i16> undef to <16 x double>
555 ; CHECK: Cost Model: Found an estimated cost of 65 for instruction:   %v53 = uitofp <16 x i16> undef to <16 x float>
556 ; CHECK: Cost Model: Found an estimated cost of 65 for instruction:   %v54 = uitofp <16 x i8> undef to <16 x double>
557 ; CHECK: Cost Model: Found an estimated cost of 65 for instruction:   %v55 = uitofp <16 x i8> undef to <16 x float>
559   ret void;
562 define void @sitofp_extload(ptr %src16, ptr %src8) {
563   %ld16 = load i16, ptr %src16
564   %v6 = sitofp i16 %ld16 to fp128
565   %v7 = sitofp i16 %ld16 to double
566   %v8 = sitofp i16 %ld16 to float
568   %ld8 = load i8, ptr %src8
569   %v9 = sitofp i8 %ld8 to fp128
570   %v10 = sitofp i8 %ld8 to double
571   %v11 = sitofp i8 %ld8 to float
573 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %ld16 = load i16, ptr %src16
574 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v6 = sitofp i16 %ld16 to fp128
575 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v7 = sitofp i16 %ld16 to double
576 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v8 = sitofp i16 %ld16 to float
577 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %ld8 = load i8, ptr %src8
578 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v9 = sitofp i8 %ld8 to fp128
579 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v10 = sitofp i8 %ld8 to double
580 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v11 = sitofp i8 %ld8 to float
582   ret void;
585 define void @uitofp_extload(ptr %src16, ptr %src8) {
586   %ld16 = load i16, ptr %src16
587   %v6 = uitofp i16 %ld16 to fp128
588   %v7 = uitofp i16 %ld16 to double
589   %v8 = uitofp i16 %ld16 to float
591   %ld8 = load i8, ptr %src8
592   %v9 = uitofp i8 %ld8 to fp128
593   %v10 = uitofp i8 %ld8 to double
594   %v11 = uitofp i8 %ld8 to float
596 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %ld16 = load i16, ptr %src16
597 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v6 = uitofp i16 %ld16 to fp128
598 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v7 = uitofp i16 %ld16 to double
599 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v8 = uitofp i16 %ld16 to float
600 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %ld8 = load i8, ptr %src8
601 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v9 = uitofp i8 %ld8 to fp128
602 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v10 = uitofp i8 %ld8 to double
603 ; CHECK: Cost Model: Found an estimated cost of 1 for instruction:   %v11 = uitofp i8 %ld8 to float
605   ret void;