Statistics
| Branch: | Revision:

root / target-ppc / helper.h @ c026766b

History | View | Annotate | Download (12.2 kB)

1
#include "def-helper.h"
2

    
3
DEF_HELPER_2(raise_exception_err, void, i32, i32)
4
DEF_HELPER_1(raise_exception, void, i32)
5
DEF_HELPER_3(tw, void, tl, tl, i32)
6
#if defined(TARGET_PPC64)
7
DEF_HELPER_3(td, void, tl, tl, i32)
8
#endif
9
#if !defined(CONFIG_USER_ONLY)
10
DEF_HELPER_1(store_msr, void, tl)
11
DEF_HELPER_0(rfi, void)
12
DEF_HELPER_0(rfsvc, void)
13
DEF_HELPER_0(40x_rfci, void)
14
DEF_HELPER_0(rfci, void)
15
DEF_HELPER_0(rfdi, void)
16
DEF_HELPER_0(rfmci, void)
17
#if defined(TARGET_PPC64)
18
DEF_HELPER_0(rfid, void)
19
DEF_HELPER_0(hrfid, void)
20
#endif
21
#endif
22

    
23
DEF_HELPER_2(lmw, void, tl, i32)
24
DEF_HELPER_2(stmw, void, tl, i32)
25
DEF_HELPER_3(lsw, void, tl, i32, i32)
26
DEF_HELPER_4(lswx, void, tl, i32, i32, i32)
27
DEF_HELPER_3(stsw, void, tl, i32, i32)
28
DEF_HELPER_1(dcbz, void, tl)
29
DEF_HELPER_1(dcbz_970, void, tl)
30
DEF_HELPER_1(icbi, void, tl)
31
DEF_HELPER_4(lscbx, tl, tl, i32, i32, i32)
32

    
33
DEF_HELPER_0(load_cr, tl)
34
DEF_HELPER_2(store_cr, void, tl, i32)
35

    
36
#if defined(TARGET_PPC64)
37
DEF_HELPER_2(mulhd, i64, i64, i64)
38
DEF_HELPER_2(mulhdu, i64, i64, i64)
39
DEF_HELPER_2(mulldo, i64, i64, i64)
40
#endif
41

    
42
DEF_HELPER_1(cntlzw, tl, tl)
43
DEF_HELPER_1(popcntb, tl, tl)
44
DEF_HELPER_2(sraw, tl, tl, tl)
45
#if defined(TARGET_PPC64)
46
DEF_HELPER_1(cntlzd, tl, tl)
47
DEF_HELPER_1(popcntb_64, tl, tl)
48
DEF_HELPER_2(srad, tl, tl, tl)
49
#endif
50

    
51
DEF_HELPER_1(cntlsw32, i32, i32)
52
DEF_HELPER_1(cntlzw32, i32, i32)
53
DEF_HELPER_2(brinc, tl, tl, tl)
54

    
55
DEF_HELPER_0(float_check_status, void)
56
#ifdef CONFIG_SOFTFLOAT
57
DEF_HELPER_0(reset_fpstatus, void)
58
#endif
59
DEF_HELPER_2(compute_fprf, i32, i64, i32)
60
DEF_HELPER_2(store_fpscr, void, i64, i32)
61
DEF_HELPER_1(fpscr_clrbit, void, i32)
62
DEF_HELPER_1(fpscr_setbit, void, i32)
63
DEF_HELPER_1(float64_to_float32, i32, i64)
64
DEF_HELPER_1(float32_to_float64, i64, i32)
65

    
66
DEF_HELPER_3(fcmpo, void, i64, i64, i32)
67
DEF_HELPER_3(fcmpu, void, i64, i64, i32)
68

    
69
DEF_HELPER_1(fctiw, i64, i64)
70
DEF_HELPER_1(fctiwz, i64, i64)
71
#if defined(TARGET_PPC64)
72
DEF_HELPER_1(fcfid, i64, i64)
73
DEF_HELPER_1(fctid, i64, i64)
74
DEF_HELPER_1(fctidz, i64, i64)
75
#endif
76
DEF_HELPER_1(frsp, i64, i64)
77
DEF_HELPER_1(frin, i64, i64)
78
DEF_HELPER_1(friz, i64, i64)
79
DEF_HELPER_1(frip, i64, i64)
80
DEF_HELPER_1(frim, i64, i64)
81

    
82
DEF_HELPER_2(fadd, i64, i64, i64)
83
DEF_HELPER_2(fsub, i64, i64, i64)
84
DEF_HELPER_2(fmul, i64, i64, i64)
85
DEF_HELPER_2(fdiv, i64, i64, i64)
86
DEF_HELPER_3(fmadd, i64, i64, i64, i64)
87
DEF_HELPER_3(fmsub, i64, i64, i64, i64)
88
DEF_HELPER_3(fnmadd, i64, i64, i64, i64)
89
DEF_HELPER_3(fnmsub, i64, i64, i64, i64)
90
DEF_HELPER_1(fabs, i64, i64)
91
DEF_HELPER_1(fnabs, i64, i64)
92
DEF_HELPER_1(fneg, i64, i64)
93
DEF_HELPER_1(fsqrt, i64, i64)
94
DEF_HELPER_1(fre, i64, i64)
95
DEF_HELPER_1(fres, i64, i64)
96
DEF_HELPER_1(frsqrte, i64, i64)
97
DEF_HELPER_3(fsel, i64, i64, i64, i64)
98

    
99
#define dh_alias_avr ptr
100
#define dh_ctype_avr ppc_avr_t *
101

    
102
DEF_HELPER_3(vaddubm, void, avr, avr, avr)
103
DEF_HELPER_3(vadduhm, void, avr, avr, avr)
104
DEF_HELPER_3(vadduwm, void, avr, avr, avr)
105
DEF_HELPER_3(vsububm, void, avr, avr, avr)
106
DEF_HELPER_3(vsubuhm, void, avr, avr, avr)
107
DEF_HELPER_3(vsubuwm, void, avr, avr, avr)
108
DEF_HELPER_3(vavgub, void, avr, avr, avr)
109
DEF_HELPER_3(vavguh, void, avr, avr, avr)
110
DEF_HELPER_3(vavguw, void, avr, avr, avr)
111
DEF_HELPER_3(vavgsb, void, avr, avr, avr)
112
DEF_HELPER_3(vavgsh, void, avr, avr, avr)
113
DEF_HELPER_3(vavgsw, void, avr, avr, avr)
114
DEF_HELPER_3(vminsb, void, avr, avr, avr)
115
DEF_HELPER_3(vminsh, void, avr, avr, avr)
116
DEF_HELPER_3(vminsw, void, avr, avr, avr)
117
DEF_HELPER_3(vmaxsb, void, avr, avr, avr)
118
DEF_HELPER_3(vmaxsh, void, avr, avr, avr)
119
DEF_HELPER_3(vmaxsw, void, avr, avr, avr)
120
DEF_HELPER_3(vminub, void, avr, avr, avr)
121
DEF_HELPER_3(vminuh, void, avr, avr, avr)
122
DEF_HELPER_3(vminuw, void, avr, avr, avr)
123
DEF_HELPER_3(vmaxub, void, avr, avr, avr)
124
DEF_HELPER_3(vmaxuh, void, avr, avr, avr)
125
DEF_HELPER_3(vmaxuw, void, avr, avr, avr)
126
DEF_HELPER_3(vcmpequb, void, avr, avr, avr)
127
DEF_HELPER_3(vcmpequh, void, avr, avr, avr)
128
DEF_HELPER_3(vcmpequw, void, avr, avr, avr)
129
DEF_HELPER_3(vcmpgtub, void, avr, avr, avr)
130
DEF_HELPER_3(vcmpgtuh, void, avr, avr, avr)
131
DEF_HELPER_3(vcmpgtuw, void, avr, avr, avr)
132
DEF_HELPER_3(vcmpgtsb, void, avr, avr, avr)
133
DEF_HELPER_3(vcmpgtsh, void, avr, avr, avr)
134
DEF_HELPER_3(vcmpgtsw, void, avr, avr, avr)
135
DEF_HELPER_3(vcmpequb_dot, void, avr, avr, avr)
136
DEF_HELPER_3(vcmpequh_dot, void, avr, avr, avr)
137
DEF_HELPER_3(vcmpequw_dot, void, avr, avr, avr)
138
DEF_HELPER_3(vcmpgtub_dot, void, avr, avr, avr)
139
DEF_HELPER_3(vcmpgtuh_dot, void, avr, avr, avr)
140
DEF_HELPER_3(vcmpgtuw_dot, void, avr, avr, avr)
141
DEF_HELPER_3(vcmpgtsb_dot, void, avr, avr, avr)
142
DEF_HELPER_3(vcmpgtsh_dot, void, avr, avr, avr)
143
DEF_HELPER_3(vcmpgtsw_dot, void, avr, avr, avr)
144
DEF_HELPER_3(vmrglb, void, avr, avr, avr)
145
DEF_HELPER_3(vmrglh, void, avr, avr, avr)
146
DEF_HELPER_3(vmrglw, void, avr, avr, avr)
147
DEF_HELPER_3(vmrghb, void, avr, avr, avr)
148
DEF_HELPER_3(vmrghh, void, avr, avr, avr)
149
DEF_HELPER_3(vmrghw, void, avr, avr, avr)
150
DEF_HELPER_3(vmulesb, void, avr, avr, avr)
151
DEF_HELPER_3(vmulesh, void, avr, avr, avr)
152
DEF_HELPER_3(vmuleub, void, avr, avr, avr)
153
DEF_HELPER_3(vmuleuh, void, avr, avr, avr)
154
DEF_HELPER_3(vmulosb, void, avr, avr, avr)
155
DEF_HELPER_3(vmulosh, void, avr, avr, avr)
156
DEF_HELPER_3(vmuloub, void, avr, avr, avr)
157
DEF_HELPER_3(vmulouh, void, avr, avr, avr)
158
DEF_HELPER_3(vsrab, void, avr, avr, avr)
159
DEF_HELPER_3(vsrah, void, avr, avr, avr)
160
DEF_HELPER_3(vsraw, void, avr, avr, avr)
161
DEF_HELPER_3(vsrb, void, avr, avr, avr)
162
DEF_HELPER_3(vsrh, void, avr, avr, avr)
163
DEF_HELPER_3(vsrw, void, avr, avr, avr)
164
DEF_HELPER_3(vslb, void, avr, avr, avr)
165
DEF_HELPER_3(vslh, void, avr, avr, avr)
166
DEF_HELPER_3(vslw, void, avr, avr, avr)
167
DEF_HELPER_3(vslo, void, avr, avr, avr)
168
DEF_HELPER_3(vsro, void, avr, avr, avr)
169
DEF_HELPER_3(vaddcuw, void, avr, avr, avr)
170
DEF_HELPER_3(vsubcuw, void, avr, avr, avr)
171
DEF_HELPER_2(lvsl, void, avr, tl);
172
DEF_HELPER_2(lvsr, void, avr, tl);
173
DEF_HELPER_3(vrlb, void, avr, avr, avr)
174
DEF_HELPER_3(vrlh, void, avr, avr, avr)
175
DEF_HELPER_3(vrlw, void, avr, avr, avr)
176
DEF_HELPER_3(vsl, void, avr, avr, avr)
177
DEF_HELPER_3(vsr, void, avr, avr, avr)
178
DEF_HELPER_4(vsldoi, void, avr, avr, avr, i32)
179
DEF_HELPER_2(vspltisb, void, avr, i32)
180
DEF_HELPER_2(vspltish, void, avr, i32)
181
DEF_HELPER_2(vspltisw, void, avr, i32)
182
DEF_HELPER_3(vspltb, void, avr, avr, i32)
183
DEF_HELPER_3(vsplth, void, avr, avr, i32)
184
DEF_HELPER_3(vspltw, void, avr, avr, i32)
185
DEF_HELPER_2(vupkhpx, void, avr, avr)
186
DEF_HELPER_2(vupklpx, void, avr, avr)
187
DEF_HELPER_2(vupkhsb, void, avr, avr)
188
DEF_HELPER_2(vupkhsh, void, avr, avr)
189
DEF_HELPER_2(vupklsb, void, avr, avr)
190
DEF_HELPER_2(vupklsh, void, avr, avr)
191
DEF_HELPER_4(vmsumubm, void, avr, avr, avr, avr)
192
DEF_HELPER_4(vmsummbm, void, avr, avr, avr, avr)
193
DEF_HELPER_4(vsel, void, avr, avr, avr, avr)
194
DEF_HELPER_4(vperm, void, avr, avr, avr, avr)
195
DEF_HELPER_3(vpkshss, void, avr, avr, avr)
196
DEF_HELPER_3(vpkshus, void, avr, avr, avr)
197
DEF_HELPER_3(vpkswss, void, avr, avr, avr)
198
DEF_HELPER_3(vpkswus, void, avr, avr, avr)
199
DEF_HELPER_3(vpkuhus, void, avr, avr, avr)
200
DEF_HELPER_3(vpkuwus, void, avr, avr, avr)
201
DEF_HELPER_3(vpkuhum, void, avr, avr, avr)
202
DEF_HELPER_3(vpkuwum, void, avr, avr, avr)
203
DEF_HELPER_3(vpkpx, void, avr, avr, avr)
204
DEF_HELPER_4(vmhaddshs, void, avr, avr, avr, avr)
205
DEF_HELPER_4(vmhraddshs, void, avr, avr, avr, avr)
206
DEF_HELPER_4(vmsumuhm, void, avr, avr, avr, avr)
207
DEF_HELPER_4(vmsumuhs, void, avr, avr, avr, avr)
208
DEF_HELPER_4(vmsumshm, void, avr, avr, avr, avr)
209
DEF_HELPER_4(vmsumshs, void, avr, avr, avr, avr)
210
DEF_HELPER_4(vmladduhm, void, avr, avr, avr, avr)
211
DEF_HELPER_2(lvebx, void, avr, tl)
212
DEF_HELPER_2(lvehx, void, avr, tl)
213
DEF_HELPER_2(lvewx, void, avr, tl)
214
DEF_HELPER_2(stvebx, void, avr, tl)
215
DEF_HELPER_2(stvehx, void, avr, tl)
216
DEF_HELPER_2(stvewx, void, avr, tl)
217
DEF_HELPER_3(vsumsws, void, avr, avr, avr)
218
DEF_HELPER_3(vsum2sws, void, avr, avr, avr)
219
DEF_HELPER_3(vsum4sbs, void, avr, avr, avr)
220
DEF_HELPER_3(vsum4shs, void, avr, avr, avr)
221
DEF_HELPER_3(vsum4ubs, void, avr, avr, avr)
222

    
223
DEF_HELPER_1(efscfsi, i32, i32)
224
DEF_HELPER_1(efscfui, i32, i32)
225
DEF_HELPER_1(efscfuf, i32, i32)
226
DEF_HELPER_1(efscfsf, i32, i32)
227
DEF_HELPER_1(efsctsi, i32, i32)
228
DEF_HELPER_1(efsctui, i32, i32)
229
DEF_HELPER_1(efsctsiz, i32, i32)
230
DEF_HELPER_1(efsctuiz, i32, i32)
231
DEF_HELPER_1(efsctsf, i32, i32)
232
DEF_HELPER_1(efsctuf, i32, i32)
233
DEF_HELPER_1(evfscfsi, i64, i64)
234
DEF_HELPER_1(evfscfui, i64, i64)
235
DEF_HELPER_1(evfscfuf, i64, i64)
236
DEF_HELPER_1(evfscfsf, i64, i64)
237
DEF_HELPER_1(evfsctsi, i64, i64)
238
DEF_HELPER_1(evfsctui, i64, i64)
239
DEF_HELPER_1(evfsctsiz, i64, i64)
240
DEF_HELPER_1(evfsctuiz, i64, i64)
241
DEF_HELPER_1(evfsctsf, i64, i64)
242
DEF_HELPER_1(evfsctuf, i64, i64)
243
DEF_HELPER_2(efsadd, i32, i32, i32)
244
DEF_HELPER_2(efssub, i32, i32, i32)
245
DEF_HELPER_2(efsmul, i32, i32, i32)
246
DEF_HELPER_2(efsdiv, i32, i32, i32)
247
DEF_HELPER_2(evfsadd, i64, i64, i64)
248
DEF_HELPER_2(evfssub, i64, i64, i64)
249
DEF_HELPER_2(evfsmul, i64, i64, i64)
250
DEF_HELPER_2(evfsdiv, i64, i64, i64)
251
DEF_HELPER_2(efststlt, i32, i32, i32)
252
DEF_HELPER_2(efststgt, i32, i32, i32)
253
DEF_HELPER_2(efststeq, i32, i32, i32)
254
DEF_HELPER_2(efscmplt, i32, i32, i32)
255
DEF_HELPER_2(efscmpgt, i32, i32, i32)
256
DEF_HELPER_2(efscmpeq, i32, i32, i32)
257
DEF_HELPER_2(evfststlt, i32, i64, i64)
258
DEF_HELPER_2(evfststgt, i32, i64, i64)
259
DEF_HELPER_2(evfststeq, i32, i64, i64)
260
DEF_HELPER_2(evfscmplt, i32, i64, i64)
261
DEF_HELPER_2(evfscmpgt, i32, i64, i64)
262
DEF_HELPER_2(evfscmpeq, i32, i64, i64)
263
DEF_HELPER_1(efdcfsi, i64, i32)
264
DEF_HELPER_1(efdcfsid, i64, i64)
265
DEF_HELPER_1(efdcfui, i64, i32)
266
DEF_HELPER_1(efdcfuid, i64, i64)
267
DEF_HELPER_1(efdctsi, i32, i64)
268
DEF_HELPER_1(efdctui, i32, i64)
269
DEF_HELPER_1(efdctsiz, i32, i64)
270
DEF_HELPER_1(efdctsidz, i64, i64)
271
DEF_HELPER_1(efdctuiz, i32, i64)
272
DEF_HELPER_1(efdctuidz, i64, i64)
273
DEF_HELPER_1(efdcfsf, i64, i32)
274
DEF_HELPER_1(efdcfuf, i64, i32)
275
DEF_HELPER_1(efdctsf, i32, i64)
276
DEF_HELPER_1(efdctuf, i32, i64)
277
DEF_HELPER_1(efscfd, i32, i64)
278
DEF_HELPER_1(efdcfs, i64, i32)
279
DEF_HELPER_2(efdadd, i64, i64, i64)
280
DEF_HELPER_2(efdsub, i64, i64, i64)
281
DEF_HELPER_2(efdmul, i64, i64, i64)
282
DEF_HELPER_2(efddiv, i64, i64, i64)
283
DEF_HELPER_2(efdtstlt, i32, i64, i64)
284
DEF_HELPER_2(efdtstgt, i32, i64, i64)
285
DEF_HELPER_2(efdtsteq, i32, i64, i64)
286
DEF_HELPER_2(efdcmplt, i32, i64, i64)
287
DEF_HELPER_2(efdcmpgt, i32, i64, i64)
288
DEF_HELPER_2(efdcmpeq, i32, i64, i64)
289

    
290
#if !defined(CONFIG_USER_ONLY)
291
DEF_HELPER_1(4xx_tlbre_hi, tl, tl)
292
DEF_HELPER_1(4xx_tlbre_lo, tl, tl)
293
DEF_HELPER_2(4xx_tlbwe_hi, void, tl, tl)
294
DEF_HELPER_2(4xx_tlbwe_lo, void, tl, tl)
295
DEF_HELPER_1(4xx_tlbsx, tl, tl)
296
DEF_HELPER_2(440_tlbre, tl, i32, tl)
297
DEF_HELPER_3(440_tlbwe, void, i32, tl, tl)
298
DEF_HELPER_1(440_tlbsx, tl, tl)
299
DEF_HELPER_1(6xx_tlbd, void, tl)
300
DEF_HELPER_1(6xx_tlbi, void, tl)
301
DEF_HELPER_1(74xx_tlbd, void, tl)
302
DEF_HELPER_1(74xx_tlbi, void, tl)
303
DEF_HELPER_0(tlbia, void)
304
DEF_HELPER_1(tlbie, void, tl)
305
#if defined(TARGET_PPC64)
306
DEF_HELPER_1(load_slb, tl, tl)
307
DEF_HELPER_2(store_slb, void, tl, tl)
308
DEF_HELPER_0(slbia, void)
309
DEF_HELPER_1(slbie, void, tl)
310
#endif
311
DEF_HELPER_1(load_sr, tl, tl);
312
DEF_HELPER_2(store_sr, void, tl, tl)
313

    
314
DEF_HELPER_1(602_mfrom, tl, tl)
315
#endif
316

    
317
DEF_HELPER_3(dlmzb, tl, tl, tl, i32)
318
DEF_HELPER_1(clcs, tl, i32)
319
#if !defined(CONFIG_USER_ONLY)
320
DEF_HELPER_1(rac, tl, tl)
321
#endif
322
DEF_HELPER_2(div, tl, tl, tl)
323
DEF_HELPER_2(divo, tl, tl, tl)
324
DEF_HELPER_2(divs, tl, tl, tl)
325
DEF_HELPER_2(divso, tl, tl, tl)
326

    
327
DEF_HELPER_1(load_dcr, tl, tl);
328
DEF_HELPER_2(store_dcr, void, tl, tl)
329

    
330
DEF_HELPER_1(load_dump_spr, void, i32)
331
DEF_HELPER_1(store_dump_spr, void, i32)
332
DEF_HELPER_0(load_tbl, tl)
333
DEF_HELPER_0(load_tbu, tl)
334
DEF_HELPER_0(load_atbl, tl)
335
DEF_HELPER_0(load_atbu, tl)
336
DEF_HELPER_0(load_601_rtcl, tl)
337
DEF_HELPER_0(load_601_rtcu, tl)
338
#if !defined(CONFIG_USER_ONLY)
339
#if defined(TARGET_PPC64)
340
DEF_HELPER_1(store_asr, void, tl)
341
#endif
342
DEF_HELPER_1(store_sdr1, void, tl)
343
DEF_HELPER_1(store_tbl, void, tl)
344
DEF_HELPER_1(store_tbu, void, tl)
345
DEF_HELPER_1(store_atbl, void, tl)
346
DEF_HELPER_1(store_atbu, void, tl)
347
DEF_HELPER_1(store_601_rtcl, void, tl)
348
DEF_HELPER_1(store_601_rtcu, void, tl)
349
DEF_HELPER_0(load_decr, tl)
350
DEF_HELPER_1(store_decr, void, tl)
351
DEF_HELPER_1(store_hid0_601, void, tl)
352
DEF_HELPER_2(store_403_pbr, void, i32, tl)
353
DEF_HELPER_0(load_40x_pit, tl)
354
DEF_HELPER_1(store_40x_pit, void, tl)
355
DEF_HELPER_1(store_40x_dbcr0, void, tl)
356
DEF_HELPER_1(store_40x_sler, void, tl)
357
DEF_HELPER_1(store_booke_tcr, void, tl)
358
DEF_HELPER_1(store_booke_tsr, void, tl)
359
DEF_HELPER_2(store_ibatl, void, i32, tl)
360
DEF_HELPER_2(store_ibatu, void, i32, tl)
361
DEF_HELPER_2(store_dbatl, void, i32, tl)
362
DEF_HELPER_2(store_dbatu, void, i32, tl)
363
DEF_HELPER_2(store_601_batl, void, i32, tl)
364
DEF_HELPER_2(store_601_batu, void, i32, tl)
365
#endif
366

    
367
#include "def-helper.h"