]> git.proxmox.com Git - mirror_qemu.git/blame - target/ppc/helper.h
hax: Honor CPUState::halted
[mirror_qemu.git] / target / ppc / helper.h
CommitLineData
76a3d2f7
BH
1DEF_HELPER_FLAGS_3(raise_exception_err, TCG_CALL_NO_WG, void, env, i32, i32)
2DEF_HELPER_FLAGS_2(raise_exception, TCG_CALL_NO_WG, void, env, i32)
a007b19b 3DEF_HELPER_FLAGS_4(tw, TCG_CALL_NO_WG, void, env, tl, tl, i32)
cab3bee2 4#if defined(TARGET_PPC64)
a007b19b 5DEF_HELPER_FLAGS_4(td, TCG_CALL_NO_WG, void, env, tl, tl, i32)
cab3bee2 6#endif
d72a19f7 7#if !defined(CONFIG_USER_ONLY)
e5f17ac6
BS
8DEF_HELPER_2(store_msr, void, env, tl)
9DEF_HELPER_1(rfi, void, env)
10DEF_HELPER_1(rfsvc, void, env)
11DEF_HELPER_1(40x_rfci, void, env)
12DEF_HELPER_1(rfci, void, env)
13DEF_HELPER_1(rfdi, void, env)
14DEF_HELPER_1(rfmci, void, env)
d72a19f7 15#if defined(TARGET_PPC64)
7778a575 16DEF_HELPER_2(pminsn, void, env, i32)
e5f17ac6
BS
17DEF_HELPER_1(rfid, void, env)
18DEF_HELPER_1(hrfid, void, env)
4b3fc377 19DEF_HELPER_2(store_lpcr, void, env, tl)
6b375544 20DEF_HELPER_2(store_pcr, void, env, tl)
d72a19f7 21#endif
e3cffe6f
ND
22DEF_HELPER_1(check_tlb_flush_local, void, env)
23DEF_HELPER_1(check_tlb_flush_global, void, env)
d72a19f7 24#endif
64adab3f 25
2f5a189c 26DEF_HELPER_3(lmw, void, env, tl, i32)
a007b19b 27DEF_HELPER_FLAGS_3(stmw, TCG_CALL_NO_WG, void, env, tl, i32)
2f5a189c
BS
28DEF_HELPER_4(lsw, void, env, tl, i32, i32)
29DEF_HELPER_5(lswx, void, env, tl, i32, i32, i32)
a007b19b
BH
30DEF_HELPER_FLAGS_4(stsw, TCG_CALL_NO_WG, void, env, tl, i32, i32)
31DEF_HELPER_FLAGS_3(dcbz, TCG_CALL_NO_WG, void, env, tl, i32)
50728199 32DEF_HELPER_FLAGS_3(dcbzep, TCG_CALL_NO_WG, void, env, tl, i32)
a007b19b 33DEF_HELPER_FLAGS_2(icbi, TCG_CALL_NO_WG, void, env, tl)
50728199 34DEF_HELPER_FLAGS_2(icbiep, TCG_CALL_NO_WG, void, env, tl)
2f5a189c 35DEF_HELPER_5(lscbx, tl, env, tl, i32, i32, i32)
bdb4b689 36
74637406 37#if defined(TARGET_PPC64)
98d1eb27 38DEF_HELPER_4(divdeu, i64, env, i64, i64, i32)
e44259b6 39DEF_HELPER_4(divde, i64, env, i64, i64, i32)
74637406 40#endif
6a4fda33 41DEF_HELPER_4(divweu, tl, env, tl, tl, i32)
a98eb9e9 42DEF_HELPER_4(divwe, tl, env, tl, tl, i32)
74637406 43
8f885ef8 44DEF_HELPER_FLAGS_1(popcntb, TCG_CALL_NO_RWG_SE, tl, tl)
fcfda20f 45DEF_HELPER_FLAGS_2(cmpb, TCG_CALL_NO_RWG_SE, tl, tl, tl)
d15f74fb 46DEF_HELPER_3(sraw, tl, env, tl, tl)
26d67362 47#if defined(TARGET_PPC64)
082ce330 48DEF_HELPER_FLAGS_2(cmpeqb, TCG_CALL_NO_RWG_SE, i32, tl, tl)
79770002 49DEF_HELPER_FLAGS_1(popcntw, TCG_CALL_NO_RWG_SE, tl, tl)
86ba37ed 50DEF_HELPER_FLAGS_2(bpermd, TCG_CALL_NO_RWG_SE, i64, i64, i64)
d15f74fb 51DEF_HELPER_3(srad, tl, env, tl, tl)
fec5c62a
RB
52DEF_HELPER_0(darn32, tl)
53DEF_HELPER_0(darn64, tl)
26d67362
AJ
54#endif
55
8f885ef8
AJ
56DEF_HELPER_FLAGS_1(cntlsw32, TCG_CALL_NO_RWG_SE, i32, i32)
57DEF_HELPER_FLAGS_1(cntlzw32, TCG_CALL_NO_RWG_SE, i32, i32)
58DEF_HELPER_FLAGS_2(brinc, TCG_CALL_NO_RWG_SE, tl, tl, tl)
a7812ae4 59
8e703949
BS
60DEF_HELPER_1(float_check_status, void, env)
61DEF_HELPER_1(reset_fpstatus, void, env)
ffc67420 62DEF_HELPER_2(compute_fprf_float64, void, env, i64)
8e703949
BS
63DEF_HELPER_3(store_fpscr, void, env, i64, i32)
64DEF_HELPER_2(fpscr_clrbit, void, env, i32)
65DEF_HELPER_2(fpscr_setbit, void, env, i32)
86c0cab1
RH
66DEF_HELPER_FLAGS_1(todouble, TCG_CALL_NO_RWG_SE, i64, i32)
67DEF_HELPER_FLAGS_1(tosingle, TCG_CALL_NO_RWG_SE, i32, i64)
af12906f 68
8e703949
BS
69DEF_HELPER_4(fcmpo, void, env, i64, i64, i32)
70DEF_HELPER_4(fcmpu, void, env, i64, i64, i32)
d72a19f7 71
8e703949 72DEF_HELPER_2(fctiw, i64, env, i64)
fab7fe42 73DEF_HELPER_2(fctiwu, i64, env, i64)
8e703949 74DEF_HELPER_2(fctiwz, i64, env, i64)
fab7fe42 75DEF_HELPER_2(fctiwuz, i64, env, i64)
8e703949 76DEF_HELPER_2(fcfid, i64, env, i64)
28288b48
TM
77DEF_HELPER_2(fcfidu, i64, env, i64)
78DEF_HELPER_2(fcfids, i64, env, i64)
79DEF_HELPER_2(fcfidus, i64, env, i64)
8e703949 80DEF_HELPER_2(fctid, i64, env, i64)
fab7fe42 81DEF_HELPER_2(fctidu, i64, env, i64)
8e703949 82DEF_HELPER_2(fctidz, i64, env, i64)
fab7fe42 83DEF_HELPER_2(fctiduz, i64, env, i64)
8e703949
BS
84DEF_HELPER_2(frsp, i64, env, i64)
85DEF_HELPER_2(frin, i64, env, i64)
86DEF_HELPER_2(friz, i64, env, i64)
87DEF_HELPER_2(frip, i64, env, i64)
88DEF_HELPER_2(frim, i64, env, i64)
af12906f 89
ac43cec3
RH
90DEF_HELPER_3(fadd, f64, env, f64, f64)
91DEF_HELPER_3(fsub, f64, env, f64, f64)
79f91633 92DEF_HELPER_3(fmul, f64, env, f64, f64)
ae13018d 93DEF_HELPER_3(fdiv, f64, env, f64, f64)
8e703949
BS
94DEF_HELPER_4(fmadd, i64, env, i64, i64, i64)
95DEF_HELPER_4(fmsub, i64, env, i64, i64, i64)
96DEF_HELPER_4(fnmadd, i64, env, i64, i64, i64)
97DEF_HELPER_4(fnmsub, i64, env, i64, i64, i64)
49ab52ef 98DEF_HELPER_2(fsqrt, f64, env, f64)
8e703949
BS
99DEF_HELPER_2(fre, i64, env, i64)
100DEF_HELPER_2(fres, i64, env, i64)
101DEF_HELPER_2(frsqrte, i64, env, i64)
102DEF_HELPER_4(fsel, i64, env, i64, i64, i64)
af12906f 103
da29cb7b 104DEF_HELPER_FLAGS_2(ftdiv, TCG_CALL_NO_RWG_SE, i32, i64, i64)
6d41d146 105DEF_HELPER_FLAGS_1(ftsqrt, TCG_CALL_NO_RWG_SE, i32, i64)
da29cb7b 106
7872c51c 107#define dh_alias_avr ptr
c227f099 108#define dh_ctype_avr ppc_avr_t *
2bece2c8 109#define dh_is_signed_avr dh_is_signed_ptr
7872c51c 110
fab3cbe9
AJ
111DEF_HELPER_3(vavgub, void, avr, avr, avr)
112DEF_HELPER_3(vavguh, void, avr, avr, avr)
113DEF_HELPER_3(vavguw, void, avr, avr, avr)
37707059
SD
114DEF_HELPER_3(vabsdub, void, avr, avr, avr)
115DEF_HELPER_3(vabsduh, void, avr, avr, avr)
116DEF_HELPER_3(vabsduw, void, avr, avr, avr)
fab3cbe9
AJ
117DEF_HELPER_3(vavgsb, void, avr, avr, avr)
118DEF_HELPER_3(vavgsh, void, avr, avr, avr)
119DEF_HELPER_3(vavgsw, void, avr, avr, avr)
d15f74fb
BS
120DEF_HELPER_4(vcmpequb, void, env, avr, avr, avr)
121DEF_HELPER_4(vcmpequh, void, env, avr, avr, avr)
122DEF_HELPER_4(vcmpequw, void, env, avr, avr, avr)
6f3dab41 123DEF_HELPER_4(vcmpequd, void, env, avr, avr, avr)
0fa59364
RS
124DEF_HELPER_4(vcmpneb, void, env, avr, avr, avr)
125DEF_HELPER_4(vcmpneh, void, env, avr, avr, avr)
126DEF_HELPER_4(vcmpnew, void, env, avr, avr, avr)
f7cc8466
SB
127DEF_HELPER_4(vcmpnezb, void, env, avr, avr, avr)
128DEF_HELPER_4(vcmpnezh, void, env, avr, avr, avr)
129DEF_HELPER_4(vcmpnezw, void, env, avr, avr, avr)
d15f74fb
BS
130DEF_HELPER_4(vcmpgtub, void, env, avr, avr, avr)
131DEF_HELPER_4(vcmpgtuh, void, env, avr, avr, avr)
132DEF_HELPER_4(vcmpgtuw, void, env, avr, avr, avr)
6f3dab41 133DEF_HELPER_4(vcmpgtud, void, env, avr, avr, avr)
d15f74fb
BS
134DEF_HELPER_4(vcmpgtsb, void, env, avr, avr, avr)
135DEF_HELPER_4(vcmpgtsh, void, env, avr, avr, avr)
136DEF_HELPER_4(vcmpgtsw, void, env, avr, avr, avr)
6f3dab41 137DEF_HELPER_4(vcmpgtsd, void, env, avr, avr, avr)
d15f74fb
BS
138DEF_HELPER_4(vcmpeqfp, void, env, avr, avr, avr)
139DEF_HELPER_4(vcmpgefp, void, env, avr, avr, avr)
140DEF_HELPER_4(vcmpgtfp, void, env, avr, avr, avr)
141DEF_HELPER_4(vcmpbfp, void, env, avr, avr, avr)
142DEF_HELPER_4(vcmpequb_dot, void, env, avr, avr, avr)
143DEF_HELPER_4(vcmpequh_dot, void, env, avr, avr, avr)
144DEF_HELPER_4(vcmpequw_dot, void, env, avr, avr, avr)
6f3dab41 145DEF_HELPER_4(vcmpequd_dot, void, env, avr, avr, avr)
0fa59364
RS
146DEF_HELPER_4(vcmpneb_dot, void, env, avr, avr, avr)
147DEF_HELPER_4(vcmpneh_dot, void, env, avr, avr, avr)
148DEF_HELPER_4(vcmpnew_dot, void, env, avr, avr, avr)
f7cc8466
SB
149DEF_HELPER_4(vcmpnezb_dot, void, env, avr, avr, avr)
150DEF_HELPER_4(vcmpnezh_dot, void, env, avr, avr, avr)
151DEF_HELPER_4(vcmpnezw_dot, void, env, avr, avr, avr)
d15f74fb
BS
152DEF_HELPER_4(vcmpgtub_dot, void, env, avr, avr, avr)
153DEF_HELPER_4(vcmpgtuh_dot, void, env, avr, avr, avr)
154DEF_HELPER_4(vcmpgtuw_dot, void, env, avr, avr, avr)
6f3dab41 155DEF_HELPER_4(vcmpgtud_dot, void, env, avr, avr, avr)
d15f74fb
BS
156DEF_HELPER_4(vcmpgtsb_dot, void, env, avr, avr, avr)
157DEF_HELPER_4(vcmpgtsh_dot, void, env, avr, avr, avr)
158DEF_HELPER_4(vcmpgtsw_dot, void, env, avr, avr, avr)
6f3dab41 159DEF_HELPER_4(vcmpgtsd_dot, void, env, avr, avr, avr)
d15f74fb
BS
160DEF_HELPER_4(vcmpeqfp_dot, void, env, avr, avr, avr)
161DEF_HELPER_4(vcmpgefp_dot, void, env, avr, avr, avr)
162DEF_HELPER_4(vcmpgtfp_dot, void, env, avr, avr, avr)
163DEF_HELPER_4(vcmpbfp_dot, void, env, avr, avr, avr)
3b430048
AJ
164DEF_HELPER_3(vmrglb, void, avr, avr, avr)
165DEF_HELPER_3(vmrglh, void, avr, avr, avr)
166DEF_HELPER_3(vmrglw, void, avr, avr, avr)
167DEF_HELPER_3(vmrghb, void, avr, avr, avr)
168DEF_HELPER_3(vmrghh, void, avr, avr, avr)
169DEF_HELPER_3(vmrghw, void, avr, avr, avr)
2c277908
AJ
170DEF_HELPER_3(vmulesb, void, avr, avr, avr)
171DEF_HELPER_3(vmulesh, void, avr, avr, avr)
63be0936 172DEF_HELPER_3(vmulesw, void, avr, avr, avr)
2c277908
AJ
173DEF_HELPER_3(vmuleub, void, avr, avr, avr)
174DEF_HELPER_3(vmuleuh, void, avr, avr, avr)
63be0936 175DEF_HELPER_3(vmuleuw, void, avr, avr, avr)
2c277908
AJ
176DEF_HELPER_3(vmulosb, void, avr, avr, avr)
177DEF_HELPER_3(vmulosh, void, avr, avr, avr)
63be0936 178DEF_HELPER_3(vmulosw, void, avr, avr, avr)
2c277908
AJ
179DEF_HELPER_3(vmuloub, void, avr, avr, avr)
180DEF_HELPER_3(vmulouh, void, avr, avr, avr)
63be0936 181DEF_HELPER_3(vmulouw, void, avr, avr, avr)
953f0f58 182DEF_HELPER_3(vmuluwm, void, avr, avr, avr)
7b239bec
AJ
183DEF_HELPER_3(vslo, void, avr, avr, avr)
184DEF_HELPER_3(vsro, void, avr, avr, avr)
4004c1db 185DEF_HELPER_3(vsrv, void, avr, avr, avr)
5644a175 186DEF_HELPER_3(vslv, void, avr, avr, avr)
e343da72 187DEF_HELPER_3(vaddcuw, void, avr, avr, avr)
5c69452c
AK
188DEF_HELPER_2(vprtybw, void, avr, avr)
189DEF_HELPER_2(vprtybd, void, avr, avr)
190DEF_HELPER_2(vprtybq, void, avr, avr)
e343da72 191DEF_HELPER_3(vsubcuw, void, avr, avr, avr)
f5daeec4
RH
192DEF_HELPER_2(lvsl, void, avr, tl)
193DEF_HELPER_2(lvsr, void, avr, tl)
fb11ae7d
RH
194DEF_HELPER_FLAGS_5(vaddsbs, TCG_CALL_NO_RWG, void, avr, avr, avr, avr, i32)
195DEF_HELPER_FLAGS_5(vaddshs, TCG_CALL_NO_RWG, void, avr, avr, avr, avr, i32)
196DEF_HELPER_FLAGS_5(vaddsws, TCG_CALL_NO_RWG, void, avr, avr, avr, avr, i32)
197DEF_HELPER_FLAGS_5(vsubsbs, TCG_CALL_NO_RWG, void, avr, avr, avr, avr, i32)
198DEF_HELPER_FLAGS_5(vsubshs, TCG_CALL_NO_RWG, void, avr, avr, avr, avr, i32)
199DEF_HELPER_FLAGS_5(vsubsws, TCG_CALL_NO_RWG, void, avr, avr, avr, avr, i32)
200DEF_HELPER_FLAGS_5(vaddubs, TCG_CALL_NO_RWG, void, avr, avr, avr, avr, i32)
201DEF_HELPER_FLAGS_5(vadduhs, TCG_CALL_NO_RWG, void, avr, avr, avr, avr, i32)
202DEF_HELPER_FLAGS_5(vadduws, TCG_CALL_NO_RWG, void, avr, avr, avr, avr, i32)
203DEF_HELPER_FLAGS_5(vsububs, TCG_CALL_NO_RWG, void, avr, avr, avr, avr, i32)
204DEF_HELPER_FLAGS_5(vsubuhs, TCG_CALL_NO_RWG, void, avr, avr, avr, avr, i32)
205DEF_HELPER_FLAGS_5(vsubuws, TCG_CALL_NO_RWG, void, avr, avr, avr, avr, i32)
b41da4eb
TM
206DEF_HELPER_3(vadduqm, void, avr, avr, avr)
207DEF_HELPER_4(vaddecuq, void, avr, avr, avr, avr)
208DEF_HELPER_4(vaddeuqm, void, avr, avr, avr, avr)
209DEF_HELPER_3(vaddcuq, void, avr, avr, avr)
210DEF_HELPER_3(vsubuqm, void, avr, avr, avr)
211DEF_HELPER_4(vsubecuq, void, avr, avr, avr, avr)
212DEF_HELPER_4(vsubeuqm, void, avr, avr, avr, avr)
213DEF_HELPER_3(vsubcuq, void, avr, avr, avr)
5e1d0985
AJ
214DEF_HELPER_3(vrlb, void, avr, avr, avr)
215DEF_HELPER_3(vrlh, void, avr, avr, avr)
216DEF_HELPER_3(vrlw, void, avr, avr, avr)
2fdf78e6 217DEF_HELPER_3(vrld, void, avr, avr, avr)
d9430add
AJ
218DEF_HELPER_3(vsl, void, avr, avr, avr)
219DEF_HELPER_3(vsr, void, avr, avr, avr)
cd633b10 220DEF_HELPER_4(vsldoi, void, avr, avr, avr, i32)
b5d569a1
RS
221DEF_HELPER_3(vextractub, void, avr, avr, i32)
222DEF_HELPER_3(vextractuh, void, avr, avr, i32)
223DEF_HELPER_3(vextractuw, void, avr, avr, i32)
224DEF_HELPER_3(vextractd, void, avr, avr, i32)
e7b1e06f
RS
225DEF_HELPER_3(vinsertb, void, avr, avr, i32)
226DEF_HELPER_3(vinserth, void, avr, avr, i32)
227DEF_HELPER_3(vinsertw, void, avr, avr, i32)
228DEF_HELPER_3(vinsertd, void, avr, avr, i32)
125a9b23
ND
229DEF_HELPER_2(vextsb2w, void, avr, avr)
230DEF_HELPER_2(vextsh2w, void, avr, avr)
231DEF_HELPER_2(vextsb2d, void, avr, avr)
232DEF_HELPER_2(vextsh2d, void, avr, avr)
233DEF_HELPER_2(vextsw2d, void, avr, avr)
cc8b6e76
ND
234DEF_HELPER_2(vnegw, void, avr, avr)
235DEF_HELPER_2(vnegd, void, avr, avr)
79f85c3a
AJ
236DEF_HELPER_2(vupkhpx, void, avr, avr)
237DEF_HELPER_2(vupklpx, void, avr, avr)
6cf1c6e5
AJ
238DEF_HELPER_2(vupkhsb, void, avr, avr)
239DEF_HELPER_2(vupkhsh, void, avr, avr)
4430e076 240DEF_HELPER_2(vupkhsw, void, avr, avr)
6cf1c6e5
AJ
241DEF_HELPER_2(vupklsb, void, avr, avr)
242DEF_HELPER_2(vupklsh, void, avr, avr)
4430e076 243DEF_HELPER_2(vupklsw, void, avr, avr)
d15f74fb
BS
244DEF_HELPER_5(vmsumubm, void, env, avr, avr, avr, avr)
245DEF_HELPER_5(vmsummbm, void, env, avr, avr, avr, avr)
246DEF_HELPER_5(vsel, void, env, avr, avr, avr, avr)
247DEF_HELPER_5(vperm, void, env, avr, avr, avr, avr)
ab045436 248DEF_HELPER_5(vpermr, void, env, avr, avr, avr, avr)
d15f74fb
BS
249DEF_HELPER_4(vpkshss, void, env, avr, avr, avr)
250DEF_HELPER_4(vpkshus, void, env, avr, avr, avr)
251DEF_HELPER_4(vpkswss, void, env, avr, avr, avr)
252DEF_HELPER_4(vpkswus, void, env, avr, avr, avr)
024215b2
TM
253DEF_HELPER_4(vpksdss, void, env, avr, avr, avr)
254DEF_HELPER_4(vpksdus, void, env, avr, avr, avr)
d15f74fb
BS
255DEF_HELPER_4(vpkuhus, void, env, avr, avr, avr)
256DEF_HELPER_4(vpkuwus, void, env, avr, avr, avr)
024215b2 257DEF_HELPER_4(vpkudus, void, env, avr, avr, avr)
d15f74fb
BS
258DEF_HELPER_4(vpkuhum, void, env, avr, avr, avr)
259DEF_HELPER_4(vpkuwum, void, env, avr, avr, avr)
024215b2 260DEF_HELPER_4(vpkudum, void, env, avr, avr, avr)
1dd9ffb9 261DEF_HELPER_3(vpkpx, void, avr, avr, avr)
d15f74fb
BS
262DEF_HELPER_5(vmhaddshs, void, env, avr, avr, avr, avr)
263DEF_HELPER_5(vmhraddshs, void, env, avr, avr, avr, avr)
264DEF_HELPER_5(vmsumuhm, void, env, avr, avr, avr, avr)
265DEF_HELPER_5(vmsumuhs, void, env, avr, avr, avr, avr)
266DEF_HELPER_5(vmsumshm, void, env, avr, avr, avr, avr)
267DEF_HELPER_5(vmsumshs, void, env, avr, avr, avr, avr)
bcd2ee23 268DEF_HELPER_4(vmladduhm, void, avr, avr, avr, avr)
dedfaac7 269DEF_HELPER_FLAGS_2(mtvscr, TCG_CALL_NO_RWG, void, env, i32)
cc2b90d7 270DEF_HELPER_FLAGS_1(mfvscr, TCG_CALL_NO_RWG, i32, env)
2f5a189c
BS
271DEF_HELPER_3(lvebx, void, env, avr, tl)
272DEF_HELPER_3(lvehx, void, env, avr, tl)
273DEF_HELPER_3(lvewx, void, env, avr, tl)
274DEF_HELPER_3(stvebx, void, env, avr, tl)
275DEF_HELPER_3(stvehx, void, env, avr, tl)
276DEF_HELPER_3(stvewx, void, env, avr, tl)
6914bc4f
ND
277#if defined(TARGET_PPC64)
278DEF_HELPER_4(lxvl, void, env, tl, tl, tl)
176e44e7 279DEF_HELPER_4(lxvll, void, env, tl, tl, tl)
681c2478 280DEF_HELPER_4(stxvl, void, env, tl, tl, tl)
e122090d 281DEF_HELPER_4(stxvll, void, env, tl, tl, tl)
6914bc4f 282#endif
d15f74fb
BS
283DEF_HELPER_4(vsumsws, void, env, avr, avr, avr)
284DEF_HELPER_4(vsum2sws, void, env, avr, avr, avr)
285DEF_HELPER_4(vsum4sbs, void, env, avr, avr, avr)
286DEF_HELPER_4(vsum4shs, void, env, avr, avr, avr)
287DEF_HELPER_4(vsum4ubs, void, env, avr, avr, avr)
288DEF_HELPER_4(vaddfp, void, env, avr, avr, avr)
289DEF_HELPER_4(vsubfp, void, env, avr, avr, avr)
290DEF_HELPER_4(vmaxfp, void, env, avr, avr, avr)
291DEF_HELPER_4(vminfp, void, env, avr, avr, avr)
292DEF_HELPER_3(vrefp, void, env, avr, avr)
293DEF_HELPER_3(vrsqrtefp, void, env, avr, avr)
3e00884f
GS
294DEF_HELPER_3(vrlwmi, void, avr, avr, avr)
295DEF_HELPER_3(vrldmi, void, avr, avr, avr)
09a245e1
BR
296DEF_HELPER_3(vrldnm, void, avr, avr, avr)
297DEF_HELPER_3(vrlwnm, void, avr, avr, avr)
d15f74fb
BS
298DEF_HELPER_5(vmaddfp, void, env, avr, avr, avr, avr)
299DEF_HELPER_5(vnmsubfp, void, env, avr, avr, avr, avr)
300DEF_HELPER_3(vexptefp, void, env, avr, avr)
301DEF_HELPER_3(vlogefp, void, env, avr, avr)
302DEF_HELPER_3(vrfim, void, env, avr, avr)
303DEF_HELPER_3(vrfin, void, env, avr, avr)
304DEF_HELPER_3(vrfip, void, env, avr, avr)
305DEF_HELPER_3(vrfiz, void, env, avr, avr)
306DEF_HELPER_4(vcfux, void, env, avr, avr, i32)
307DEF_HELPER_4(vcfsx, void, env, avr, avr, i32)
308DEF_HELPER_4(vctuxs, void, env, avr, avr, i32)
309DEF_HELPER_4(vctsxs, void, env, avr, avr, i32)
fab3cbe9 310
f293f04a
TM
311DEF_HELPER_2(vclzb, void, avr, avr)
312DEF_HELPER_2(vclzh, void, avr, avr)
313DEF_HELPER_2(vclzw, void, avr, avr)
314DEF_HELPER_2(vclzd, void, avr, avr)
a5ad8fbf
RS
315DEF_HELPER_2(vctzb, void, avr, avr)
316DEF_HELPER_2(vctzh, void, avr, avr)
317DEF_HELPER_2(vctzw, void, avr, avr)
318DEF_HELPER_2(vctzd, void, avr, avr)
e13500b3
TM
319DEF_HELPER_2(vpopcntb, void, avr, avr)
320DEF_HELPER_2(vpopcnth, void, avr, avr)
321DEF_HELPER_2(vpopcntw, void, avr, avr)
322DEF_HELPER_2(vpopcntd, void, avr, avr)
4879538c
RS
323DEF_HELPER_1(vclzlsbb, tl, avr)
324DEF_HELPER_1(vctzlsbb, tl, avr)
01fe9a47 325DEF_HELPER_3(vbpermd, void, avr, avr, avr)
4d82038e 326DEF_HELPER_3(vbpermq, void, avr, avr, avr)
f1064f61 327DEF_HELPER_2(vgbbd, void, avr, avr)
b8476fc7
TM
328DEF_HELPER_3(vpmsumb, void, avr, avr, avr)
329DEF_HELPER_3(vpmsumh, void, avr, avr, avr)
330DEF_HELPER_3(vpmsumw, void, avr, avr, avr)
331DEF_HELPER_3(vpmsumd, void, avr, avr, avr)
60caf221
AK
332DEF_HELPER_2(vextublx, tl, tl, avr)
333DEF_HELPER_2(vextuhlx, tl, tl, avr)
334DEF_HELPER_2(vextuwlx, tl, tl, avr)
335DEF_HELPER_2(vextubrx, tl, tl, avr)
336DEF_HELPER_2(vextuhrx, tl, tl, avr)
337DEF_HELPER_2(vextuwrx, tl, tl, avr)
f293f04a 338
557d52fa
TM
339DEF_HELPER_2(vsbox, void, avr, avr)
340DEF_HELPER_3(vcipher, void, avr, avr, avr)
341DEF_HELPER_3(vcipherlast, void, avr, avr, avr)
342DEF_HELPER_3(vncipher, void, avr, avr, avr)
343DEF_HELPER_3(vncipherlast, void, avr, avr, avr)
57354f8f
TM
344DEF_HELPER_3(vshasigmaw, void, avr, avr, i32)
345DEF_HELPER_3(vshasigmad, void, avr, avr, i32)
ac174549 346DEF_HELPER_4(vpermxor, void, avr, avr, avr, avr)
557d52fa 347
e8f7b27b
TM
348DEF_HELPER_4(bcdadd, i32, avr, avr, avr, i32)
349DEF_HELPER_4(bcdsub, i32, avr, avr, avr, i32)
b8155872 350DEF_HELPER_3(bcdcfn, i32, avr, avr, i32)
e2106d73 351DEF_HELPER_3(bcdctn, i32, avr, avr, i32)
38f4cb04 352DEF_HELPER_3(bcdcfz, i32, avr, avr, i32)
0a890b31 353DEF_HELPER_3(bcdctz, i32, avr, avr, i32)
a406c058 354DEF_HELPER_3(bcdcfsq, i32, avr, avr, i32)
c85bc7dd 355DEF_HELPER_3(bcdctsq, i32, avr, avr, i32)
c3025c3b 356DEF_HELPER_4(bcdcpsgn, i32, avr, avr, avr, i32)
466a3f9c 357DEF_HELPER_3(bcdsetsgn, i32, avr, avr, i32)
e04797f7 358DEF_HELPER_4(bcds, i32, avr, avr, avr, i32)
a49a95e9 359DEF_HELPER_4(bcdus, i32, avr, avr, avr, i32)
a54238ad 360DEF_HELPER_4(bcdsr, i32, avr, avr, avr, i32)
31bc4d11 361DEF_HELPER_4(bcdtrunc, i32, avr, avr, avr, i32)
5c32e2e4 362DEF_HELPER_4(bcdutrunc, i32, avr, avr, avr, i32)
e8f7b27b 363
ee6e02c0 364DEF_HELPER_2(xsadddp, void, env, i32)
07bdd247 365DEF_HELPER_2(xsaddqp, void, env, i32)
ee6e02c0 366DEF_HELPER_2(xssubdp, void, env, i32)
5e591d88 367DEF_HELPER_2(xsmuldp, void, env, i32)
a811ec04 368DEF_HELPER_2(xsmulqp, void, env, i32)
4b98eeef 369DEF_HELPER_2(xsdivdp, void, env, i32)
314c1163 370DEF_HELPER_2(xsdivqp, void, env, i32)
2009227f 371DEF_HELPER_2(xsredp, void, env, i32)
d32404fe 372DEF_HELPER_2(xssqrtdp, void, env, i32)
d3f9df8f 373DEF_HELPER_2(xsrsqrtedp, void, env, i32)
bc80838f 374DEF_HELPER_2(xstdivdp, void, env, i32)
5cb151ac 375DEF_HELPER_2(xstsqrtdp, void, env, i32)
595c6eef
TM
376DEF_HELPER_2(xsmaddadp, void, env, i32)
377DEF_HELPER_2(xsmaddmdp, void, env, i32)
378DEF_HELPER_2(xsmsubadp, void, env, i32)
379DEF_HELPER_2(xsmsubmdp, void, env, i32)
380DEF_HELPER_2(xsnmaddadp, void, env, i32)
381DEF_HELPER_2(xsnmaddmdp, void, env, i32)
382DEF_HELPER_2(xsnmsubadp, void, env, i32)
383DEF_HELPER_2(xsnmsubmdp, void, env, i32)
6d1ff9a7
SD
384DEF_HELPER_2(xscmpeqdp, void, env, i32)
385DEF_HELPER_2(xscmpgtdp, void, env, i32)
386DEF_HELPER_2(xscmpgedp, void, env, i32)
387DEF_HELPER_2(xscmpnedp, void, env, i32)
3a20d11d
BR
388DEF_HELPER_2(xscmpexpdp, void, env, i32)
389DEF_HELPER_2(xscmpexpqp, void, env, i32)
4f17e9c7
TM
390DEF_HELPER_2(xscmpodp, void, env, i32)
391DEF_HELPER_2(xscmpudp, void, env, i32)
be0a4faf
BR
392DEF_HELPER_2(xscmpoqp, void, env, i32)
393DEF_HELPER_2(xscmpuqp, void, env, i32)
959e9c9d
TM
394DEF_HELPER_2(xsmaxdp, void, env, i32)
395DEF_HELPER_2(xsmindp, void, env, i32)
2770deed
BR
396DEF_HELPER_2(xsmaxcdp, void, env, i32)
397DEF_HELPER_2(xsmincdp, void, env, i32)
d4ccd87e
BR
398DEF_HELPER_2(xsmaxjdp, void, env, i32)
399DEF_HELPER_2(xsminjdp, void, env, i32)
f566c047 400DEF_HELPER_2(xscvdphp, void, env, i32)
e5487803 401DEF_HELPER_2(xscvdpqp, void, env, i32)
ed8ac568 402DEF_HELPER_2(xscvdpsp, void, env, i32)
7ee19fb9 403DEF_HELPER_2(xscvdpspn, i64, env, i64)
2a084dad 404DEF_HELPER_2(xscvqpdp, void, env, i32)
05590b92
BR
405DEF_HELPER_2(xscvqpsdz, void, env, i32)
406DEF_HELPER_2(xscvqpswz, void, env, i32)
e0aee726
BR
407DEF_HELPER_2(xscvqpudz, void, env, i32)
408DEF_HELPER_2(xscvqpuwz, void, env, i32)
f566c047 409DEF_HELPER_2(xscvhpdp, void, env, i32)
48ef23cb 410DEF_HELPER_2(xscvsdqp, void, env, i32)
ed8ac568 411DEF_HELPER_2(xscvspdp, void, env, i32)
7ee19fb9 412DEF_HELPER_2(xscvspdpn, i64, env, i64)
5177d2ca
TM
413DEF_HELPER_2(xscvdpsxds, void, env, i32)
414DEF_HELPER_2(xscvdpsxws, void, env, i32)
415DEF_HELPER_2(xscvdpuxds, void, env, i32)
416DEF_HELPER_2(xscvdpuxws, void, env, i32)
417DEF_HELPER_2(xscvsxddp, void, env, i32)
74698350
TM
418DEF_HELPER_2(xscvuxdsp, void, env, i32)
419DEF_HELPER_2(xscvsxdsp, void, env, i32)
48ef23cb 420DEF_HELPER_2(xscvudqp, void, env, i32)
5177d2ca 421DEF_HELPER_2(xscvuxddp, void, env, i32)
78241762
ND
422DEF_HELPER_2(xststdcsp, void, env, i32)
423DEF_HELPER_2(xststdcdp, void, env, i32)
424DEF_HELPER_2(xststdcqp, void, env, i32)
88e33d08
TM
425DEF_HELPER_2(xsrdpi, void, env, i32)
426DEF_HELPER_2(xsrdpic, void, env, i32)
427DEF_HELPER_2(xsrdpim, void, env, i32)
428DEF_HELPER_2(xsrdpip, void, env, i32)
429DEF_HELPER_2(xsrdpiz, void, env, i32)
be07ad58 430DEF_HELPER_2(xsrqpi, void, env, i32)
917950d7 431DEF_HELPER_2(xsrqpxp, void, env, i32)
a4a68476 432DEF_HELPER_2(xssqrtqp, void, env, i32)
f6b99afd 433DEF_HELPER_2(xssubqp, void, env, i32)
ee6e02c0 434
3fd0aadf
TM
435DEF_HELPER_2(xsaddsp, void, env, i32)
436DEF_HELPER_2(xssubsp, void, env, i32)
ab9408a2 437DEF_HELPER_2(xsmulsp, void, env, i32)
b24d0b47 438DEF_HELPER_2(xsdivsp, void, env, i32)
2c0c52ae 439DEF_HELPER_2(xsresp, void, env, i32)
3d1140bf 440DEF_HELPER_2(xsrsp, i64, env, i64)
cea4e574 441DEF_HELPER_2(xssqrtsp, void, env, i32)
968e76bc 442DEF_HELPER_2(xsrsqrtesp, void, env, i32)
f53f81e0
TM
443DEF_HELPER_2(xsmaddasp, void, env, i32)
444DEF_HELPER_2(xsmaddmsp, void, env, i32)
445DEF_HELPER_2(xsmsubasp, void, env, i32)
446DEF_HELPER_2(xsmsubmsp, void, env, i32)
447DEF_HELPER_2(xsnmaddasp, void, env, i32)
448DEF_HELPER_2(xsnmaddmsp, void, env, i32)
449DEF_HELPER_2(xsnmsubasp, void, env, i32)
450DEF_HELPER_2(xsnmsubmsp, void, env, i32)
3fd0aadf 451
ee6e02c0
TM
452DEF_HELPER_2(xvadddp, void, env, i32)
453DEF_HELPER_2(xvsubdp, void, env, i32)
5e591d88 454DEF_HELPER_2(xvmuldp, void, env, i32)
4b98eeef 455DEF_HELPER_2(xvdivdp, void, env, i32)
2009227f 456DEF_HELPER_2(xvredp, void, env, i32)
d32404fe 457DEF_HELPER_2(xvsqrtdp, void, env, i32)
d3f9df8f 458DEF_HELPER_2(xvrsqrtedp, void, env, i32)
bc80838f 459DEF_HELPER_2(xvtdivdp, void, env, i32)
5cb151ac 460DEF_HELPER_2(xvtsqrtdp, void, env, i32)
595c6eef
TM
461DEF_HELPER_2(xvmaddadp, void, env, i32)
462DEF_HELPER_2(xvmaddmdp, void, env, i32)
463DEF_HELPER_2(xvmsubadp, void, env, i32)
464DEF_HELPER_2(xvmsubmdp, void, env, i32)
465DEF_HELPER_2(xvnmaddadp, void, env, i32)
466DEF_HELPER_2(xvnmaddmdp, void, env, i32)
467DEF_HELPER_2(xvnmsubadp, void, env, i32)
468DEF_HELPER_2(xvnmsubmdp, void, env, i32)
959e9c9d
TM
469DEF_HELPER_2(xvmaxdp, void, env, i32)
470DEF_HELPER_2(xvmindp, void, env, i32)
354a6dec
TM
471DEF_HELPER_2(xvcmpeqdp, void, env, i32)
472DEF_HELPER_2(xvcmpgedp, void, env, i32)
473DEF_HELPER_2(xvcmpgtdp, void, env, i32)
6db246f9 474DEF_HELPER_2(xvcmpnedp, void, env, i32)
ed8ac568 475DEF_HELPER_2(xvcvdpsp, void, env, i32)
5177d2ca
TM
476DEF_HELPER_2(xvcvdpsxds, void, env, i32)
477DEF_HELPER_2(xvcvdpsxws, void, env, i32)
478DEF_HELPER_2(xvcvdpuxds, void, env, i32)
479DEF_HELPER_2(xvcvdpuxws, void, env, i32)
480DEF_HELPER_2(xvcvsxddp, void, env, i32)
481DEF_HELPER_2(xvcvuxddp, void, env, i32)
482DEF_HELPER_2(xvcvsxwdp, void, env, i32)
483DEF_HELPER_2(xvcvuxwdp, void, env, i32)
88e33d08
TM
484DEF_HELPER_2(xvrdpi, void, env, i32)
485DEF_HELPER_2(xvrdpic, void, env, i32)
486DEF_HELPER_2(xvrdpim, void, env, i32)
487DEF_HELPER_2(xvrdpip, void, env, i32)
488DEF_HELPER_2(xvrdpiz, void, env, i32)
ee6e02c0
TM
489
490DEF_HELPER_2(xvaddsp, void, env, i32)
491DEF_HELPER_2(xvsubsp, void, env, i32)
5e591d88 492DEF_HELPER_2(xvmulsp, void, env, i32)
4b98eeef 493DEF_HELPER_2(xvdivsp, void, env, i32)
2009227f 494DEF_HELPER_2(xvresp, void, env, i32)
d32404fe 495DEF_HELPER_2(xvsqrtsp, void, env, i32)
d3f9df8f 496DEF_HELPER_2(xvrsqrtesp, void, env, i32)
bc80838f 497DEF_HELPER_2(xvtdivsp, void, env, i32)
5cb151ac 498DEF_HELPER_2(xvtsqrtsp, void, env, i32)
595c6eef
TM
499DEF_HELPER_2(xvmaddasp, void, env, i32)
500DEF_HELPER_2(xvmaddmsp, void, env, i32)
501DEF_HELPER_2(xvmsubasp, void, env, i32)
502DEF_HELPER_2(xvmsubmsp, void, env, i32)
503DEF_HELPER_2(xvnmaddasp, void, env, i32)
504DEF_HELPER_2(xvnmaddmsp, void, env, i32)
505DEF_HELPER_2(xvnmsubasp, void, env, i32)
506DEF_HELPER_2(xvnmsubmsp, void, env, i32)
959e9c9d
TM
507DEF_HELPER_2(xvmaxsp, void, env, i32)
508DEF_HELPER_2(xvminsp, void, env, i32)
354a6dec
TM
509DEF_HELPER_2(xvcmpeqsp, void, env, i32)
510DEF_HELPER_2(xvcmpgesp, void, env, i32)
511DEF_HELPER_2(xvcmpgtsp, void, env, i32)
6db246f9 512DEF_HELPER_2(xvcmpnesp, void, env, i32)
ed8ac568 513DEF_HELPER_2(xvcvspdp, void, env, i32)
8b920d8a
ND
514DEF_HELPER_2(xvcvsphp, void, env, i32)
515DEF_HELPER_2(xvcvhpsp, void, env, i32)
5177d2ca
TM
516DEF_HELPER_2(xvcvspsxds, void, env, i32)
517DEF_HELPER_2(xvcvspsxws, void, env, i32)
518DEF_HELPER_2(xvcvspuxds, void, env, i32)
519DEF_HELPER_2(xvcvspuxws, void, env, i32)
520DEF_HELPER_2(xvcvsxdsp, void, env, i32)
521DEF_HELPER_2(xvcvuxdsp, void, env, i32)
522DEF_HELPER_2(xvcvsxwsp, void, env, i32)
523DEF_HELPER_2(xvcvuxwsp, void, env, i32)
403a884a
ND
524DEF_HELPER_2(xvtstdcsp, void, env, i32)
525DEF_HELPER_2(xvtstdcdp, void, env, i32)
88e33d08
TM
526DEF_HELPER_2(xvrspi, void, env, i32)
527DEF_HELPER_2(xvrspic, void, env, i32)
528DEF_HELPER_2(xvrspim, void, env, i32)
529DEF_HELPER_2(xvrspip, void, env, i32)
530DEF_HELPER_2(xvrspiz, void, env, i32)
234068ab
BR
531DEF_HELPER_2(xxperm, void, env, i32)
532DEF_HELPER_2(xxpermr, void, env, i32)
8ad901e5 533DEF_HELPER_4(xxextractuw, void, env, tl, tl, i32)
3398b742 534DEF_HELPER_4(xxinsertw, void, env, tl, tl, i32)
c5969d2e 535DEF_HELPER_2(xvxsigsp, void, env, i32)
ee6e02c0 536
8e703949
BS
537DEF_HELPER_2(efscfsi, i32, env, i32)
538DEF_HELPER_2(efscfui, i32, env, i32)
539DEF_HELPER_2(efscfuf, i32, env, i32)
540DEF_HELPER_2(efscfsf, i32, env, i32)
541DEF_HELPER_2(efsctsi, i32, env, i32)
542DEF_HELPER_2(efsctui, i32, env, i32)
543DEF_HELPER_2(efsctsiz, i32, env, i32)
544DEF_HELPER_2(efsctuiz, i32, env, i32)
545DEF_HELPER_2(efsctsf, i32, env, i32)
546DEF_HELPER_2(efsctuf, i32, env, i32)
547DEF_HELPER_2(evfscfsi, i64, env, i64)
548DEF_HELPER_2(evfscfui, i64, env, i64)
549DEF_HELPER_2(evfscfuf, i64, env, i64)
550DEF_HELPER_2(evfscfsf, i64, env, i64)
551DEF_HELPER_2(evfsctsi, i64, env, i64)
552DEF_HELPER_2(evfsctui, i64, env, i64)
553DEF_HELPER_2(evfsctsiz, i64, env, i64)
554DEF_HELPER_2(evfsctuiz, i64, env, i64)
555DEF_HELPER_2(evfsctsf, i64, env, i64)
556DEF_HELPER_2(evfsctuf, i64, env, i64)
557DEF_HELPER_3(efsadd, i32, env, i32, i32)
558DEF_HELPER_3(efssub, i32, env, i32, i32)
559DEF_HELPER_3(efsmul, i32, env, i32, i32)
560DEF_HELPER_3(efsdiv, i32, env, i32, i32)
561DEF_HELPER_3(evfsadd, i64, env, i64, i64)
562DEF_HELPER_3(evfssub, i64, env, i64, i64)
563DEF_HELPER_3(evfsmul, i64, env, i64, i64)
564DEF_HELPER_3(evfsdiv, i64, env, i64, i64)
565DEF_HELPER_3(efststlt, i32, env, i32, i32)
566DEF_HELPER_3(efststgt, i32, env, i32, i32)
567DEF_HELPER_3(efststeq, i32, env, i32, i32)
568DEF_HELPER_3(efscmplt, i32, env, i32, i32)
569DEF_HELPER_3(efscmpgt, i32, env, i32, i32)
570DEF_HELPER_3(efscmpeq, i32, env, i32, i32)
571DEF_HELPER_3(evfststlt, i32, env, i64, i64)
572DEF_HELPER_3(evfststgt, i32, env, i64, i64)
573DEF_HELPER_3(evfststeq, i32, env, i64, i64)
574DEF_HELPER_3(evfscmplt, i32, env, i64, i64)
575DEF_HELPER_3(evfscmpgt, i32, env, i64, i64)
576DEF_HELPER_3(evfscmpeq, i32, env, i64, i64)
577DEF_HELPER_2(efdcfsi, i64, env, i32)
578DEF_HELPER_2(efdcfsid, i64, env, i64)
579DEF_HELPER_2(efdcfui, i64, env, i32)
580DEF_HELPER_2(efdcfuid, i64, env, i64)
581DEF_HELPER_2(efdctsi, i32, env, i64)
582DEF_HELPER_2(efdctui, i32, env, i64)
583DEF_HELPER_2(efdctsiz, i32, env, i64)
584DEF_HELPER_2(efdctsidz, i64, env, i64)
585DEF_HELPER_2(efdctuiz, i32, env, i64)
586DEF_HELPER_2(efdctuidz, i64, env, i64)
587DEF_HELPER_2(efdcfsf, i64, env, i32)
588DEF_HELPER_2(efdcfuf, i64, env, i32)
589DEF_HELPER_2(efdctsf, i32, env, i64)
590DEF_HELPER_2(efdctuf, i32, env, i64)
591DEF_HELPER_2(efscfd, i32, env, i64)
592DEF_HELPER_2(efdcfs, i64, env, i32)
593DEF_HELPER_3(efdadd, i64, env, i64, i64)
594DEF_HELPER_3(efdsub, i64, env, i64, i64)
595DEF_HELPER_3(efdmul, i64, env, i64, i64)
596DEF_HELPER_3(efddiv, i64, env, i64, i64)
597DEF_HELPER_3(efdtstlt, i32, env, i64, i64)
598DEF_HELPER_3(efdtstgt, i32, env, i64, i64)
599DEF_HELPER_3(efdtsteq, i32, env, i64, i64)
600DEF_HELPER_3(efdcmplt, i32, env, i64, i64)
601DEF_HELPER_3(efdcmpgt, i32, env, i64, i64)
602DEF_HELPER_3(efdcmpeq, i32, env, i64, i64)
1c97856d 603
0f3955e2 604#if !defined(CONFIG_USER_ONLY)
c6c7cf05
BS
605DEF_HELPER_2(4xx_tlbre_hi, tl, env, tl)
606DEF_HELPER_2(4xx_tlbre_lo, tl, env, tl)
607DEF_HELPER_3(4xx_tlbwe_hi, void, env, tl, tl)
608DEF_HELPER_3(4xx_tlbwe_lo, void, env, tl, tl)
609DEF_HELPER_2(4xx_tlbsx, tl, env, tl)
610DEF_HELPER_3(440_tlbre, tl, env, i32, tl)
611DEF_HELPER_4(440_tlbwe, void, env, i32, tl, tl)
612DEF_HELPER_2(440_tlbsx, tl, env, tl)
613DEF_HELPER_1(booke206_tlbre, void, env)
614DEF_HELPER_1(booke206_tlbwe, void, env)
615DEF_HELPER_2(booke206_tlbsx, void, env, tl)
616DEF_HELPER_2(booke206_tlbivax, void, env, tl)
617DEF_HELPER_2(booke206_tlbilx0, void, env, tl)
618DEF_HELPER_2(booke206_tlbilx1, void, env, tl)
619DEF_HELPER_2(booke206_tlbilx3, void, env, tl)
a721d390 620DEF_HELPER_2(booke206_tlbflush, void, env, tl)
c6c7cf05 621DEF_HELPER_3(booke_setpid, void, env, i32, tl)
50728199
RK
622DEF_HELPER_2(booke_set_eplc, void, env, tl)
623DEF_HELPER_2(booke_set_epsc, void, env, tl)
c6c7cf05
BS
624DEF_HELPER_2(6xx_tlbd, void, env, tl)
625DEF_HELPER_2(6xx_tlbi, void, env, tl)
626DEF_HELPER_2(74xx_tlbd, void, env, tl)
627DEF_HELPER_2(74xx_tlbi, void, env, tl)
8f885ef8
AJ
628DEF_HELPER_FLAGS_1(tlbia, TCG_CALL_NO_RWG, void, env)
629DEF_HELPER_FLAGS_2(tlbie, TCG_CALL_NO_RWG, void, env, tl)
4693364f 630DEF_HELPER_FLAGS_2(tlbiva, TCG_CALL_NO_RWG, void, env, tl)
74d37793 631#if defined(TARGET_PPC64)
8f885ef8 632DEF_HELPER_FLAGS_3(store_slb, TCG_CALL_NO_RWG, void, env, tl, tl)
c6c7cf05
BS
633DEF_HELPER_2(load_slb_esid, tl, env, tl)
634DEF_HELPER_2(load_slb_vsid, tl, env, tl)
c76c22d5 635DEF_HELPER_2(find_slb_vsid, tl, env, tl)
8f885ef8
AJ
636DEF_HELPER_FLAGS_1(slbia, TCG_CALL_NO_RWG, void, env)
637DEF_HELPER_FLAGS_2(slbie, TCG_CALL_NO_RWG, void, env, tl)
a63f1dfc 638DEF_HELPER_FLAGS_2(slbieg, TCG_CALL_NO_RWG, void, env, tl)
74d37793 639#endif
f5daeec4 640DEF_HELPER_FLAGS_2(load_sr, TCG_CALL_NO_RWG, tl, env, tl)
8f885ef8 641DEF_HELPER_FLAGS_3(store_sr, TCG_CALL_NO_RWG, void, env, tl, tl)
cf02a65c 642
8f885ef8 643DEF_HELPER_FLAGS_1(602_mfrom, TCG_CALL_NO_RWG_SE, tl, tl)
d5d11a39 644DEF_HELPER_1(msgsnd, void, tl)
e5f17ac6 645DEF_HELPER_2(msgclr, void, env, tl)
7af1e7b0
CLG
646DEF_HELPER_1(book3s_msgsnd, void, tl)
647DEF_HELPER_2(book3s_msgclr, void, env, tl)
0f3955e2
AJ
648#endif
649
d15f74fb 650DEF_HELPER_4(dlmzb, tl, env, tl, tl, i32)
8f885ef8 651DEF_HELPER_FLAGS_2(clcs, TCG_CALL_NO_RWG_SE, tl, env, i32)
22e0e173 652#if !defined(CONFIG_USER_ONLY)
c6c7cf05 653DEF_HELPER_2(rac, tl, env, tl)
22e0e173 654#endif
d15f74fb
BS
655DEF_HELPER_3(div, tl, env, tl, tl)
656DEF_HELPER_3(divo, tl, env, tl, tl)
657DEF_HELPER_3(divs, tl, env, tl, tl)
658DEF_HELPER_3(divso, tl, env, tl, tl)
ef0d51af 659
f5daeec4 660DEF_HELPER_2(load_dcr, tl, env, tl)
d0f1562d 661DEF_HELPER_3(store_dcr, void, env, tl, tl)
45d827d2 662
d523dd00
BS
663DEF_HELPER_2(load_dump_spr, void, env, i32)
664DEF_HELPER_2(store_dump_spr, void, env, i32)
7019cb3d 665DEF_HELPER_4(fscr_facility_check, void, env, i32, i32, i32)
cdcdda27 666DEF_HELPER_4(msr_facility_check, void, env, i32, i32, i32)
d0f6ced1
BH
667DEF_HELPER_FLAGS_1(load_tbl, TCG_CALL_NO_RWG, tl, env)
668DEF_HELPER_FLAGS_1(load_tbu, TCG_CALL_NO_RWG, tl, env)
669DEF_HELPER_FLAGS_1(load_atbl, TCG_CALL_NO_RWG, tl, env)
670DEF_HELPER_FLAGS_1(load_atbu, TCG_CALL_NO_RWG, tl, env)
671DEF_HELPER_FLAGS_1(load_601_rtcl, TCG_CALL_NO_RWG, tl, env)
672DEF_HELPER_FLAGS_1(load_601_rtcu, TCG_CALL_NO_RWG, tl, env)
45d827d2
AJ
673#if !defined(CONFIG_USER_ONLY)
674#if defined(TARGET_PPC64)
d0f6ced1 675DEF_HELPER_FLAGS_1(load_purr, TCG_CALL_NO_RWG, tl, env)
4a7518e0 676DEF_HELPER_2(store_ptcr, void, env, tl)
45d827d2 677#endif
d523dd00 678DEF_HELPER_2(store_sdr1, void, env, tl)
31b2b0f8 679DEF_HELPER_2(store_pidr, void, env, tl)
c4dae9cd 680DEF_HELPER_2(store_lpidr, void, env, tl)
d0f6ced1
BH
681DEF_HELPER_FLAGS_2(store_tbl, TCG_CALL_NO_RWG, void, env, tl)
682DEF_HELPER_FLAGS_2(store_tbu, TCG_CALL_NO_RWG, void, env, tl)
683DEF_HELPER_FLAGS_2(store_atbl, TCG_CALL_NO_RWG, void, env, tl)
684DEF_HELPER_FLAGS_2(store_atbu, TCG_CALL_NO_RWG, void, env, tl)
685DEF_HELPER_FLAGS_2(store_601_rtcl, TCG_CALL_NO_RWG, void, env, tl)
686DEF_HELPER_FLAGS_2(store_601_rtcu, TCG_CALL_NO_RWG, void, env, tl)
687DEF_HELPER_FLAGS_1(load_decr, TCG_CALL_NO_RWG, tl, env)
688DEF_HELPER_FLAGS_2(store_decr, TCG_CALL_NO_RWG, void, env, tl)
689DEF_HELPER_FLAGS_1(load_hdecr, TCG_CALL_NO_RWG, tl, env)
690DEF_HELPER_FLAGS_2(store_hdecr, TCG_CALL_NO_RWG, void, env, tl)
d523dd00
BS
691DEF_HELPER_2(store_hid0_601, void, env, tl)
692DEF_HELPER_3(store_403_pbr, void, env, i32, tl)
d0f6ced1
BH
693DEF_HELPER_FLAGS_1(load_40x_pit, TCG_CALL_NO_RWG, tl, env)
694DEF_HELPER_FLAGS_2(store_40x_pit, TCG_CALL_NO_RWG, void, env, tl)
d523dd00
BS
695DEF_HELPER_2(store_40x_dbcr0, void, env, tl)
696DEF_HELPER_2(store_40x_sler, void, env, tl)
d0f6ced1
BH
697DEF_HELPER_FLAGS_2(store_booke_tcr, TCG_CALL_NO_RWG, void, env, tl)
698DEF_HELPER_FLAGS_2(store_booke_tsr, TCG_CALL_NO_RWG, void, env, tl)
c6c7cf05
BS
699DEF_HELPER_3(store_ibatl, void, env, i32, tl)
700DEF_HELPER_3(store_ibatu, void, env, i32, tl)
701DEF_HELPER_3(store_dbatl, void, env, i32, tl)
702DEF_HELPER_3(store_dbatu, void, env, i32, tl)
703DEF_HELPER_3(store_601_batl, void, env, i32, tl)
704DEF_HELPER_3(store_601_batu, void, env, i32, tl)
45d827d2 705#endif
a4f27cc8
TM
706
707#define dh_alias_fprp ptr
708#define dh_ctype_fprp uint64_t *
709#define dh_is_signed_fprp dh_is_signed_ptr
a9d7ba03
TM
710
711DEF_HELPER_4(dadd, void, env, fprp, fprp, fprp)
712DEF_HELPER_4(daddq, void, env, fprp, fprp, fprp)
2128f8a5
TM
713DEF_HELPER_4(dsub, void, env, fprp, fprp, fprp)
714DEF_HELPER_4(dsubq, void, env, fprp, fprp, fprp)
8de6a1cc
TM
715DEF_HELPER_4(dmul, void, env, fprp, fprp, fprp)
716DEF_HELPER_4(dmulq, void, env, fprp, fprp, fprp)
9024ff40
TM
717DEF_HELPER_4(ddiv, void, env, fprp, fprp, fprp)
718DEF_HELPER_4(ddivq, void, env, fprp, fprp, fprp)
5833505b
TM
719DEF_HELPER_3(dcmpo, i32, env, fprp, fprp)
720DEF_HELPER_3(dcmpoq, i32, env, fprp, fprp)
721DEF_HELPER_3(dcmpu, i32, env, fprp, fprp)
722DEF_HELPER_3(dcmpuq, i32, env, fprp, fprp)
e601c1ee
TM
723DEF_HELPER_3(dtstdc, i32, env, fprp, i32)
724DEF_HELPER_3(dtstdcq, i32, env, fprp, i32)
1bf9c0e1
TM
725DEF_HELPER_3(dtstdg, i32, env, fprp, i32)
726DEF_HELPER_3(dtstdgq, i32, env, fprp, i32)
f3d2b0bc
TM
727DEF_HELPER_3(dtstex, i32, env, fprp, fprp)
728DEF_HELPER_3(dtstexq, i32, env, fprp, fprp)
f6022a76
TM
729DEF_HELPER_3(dtstsf, i32, env, fprp, fprp)
730DEF_HELPER_3(dtstsfq, i32, env, fprp, fprp)
217f6b88
SD
731DEF_HELPER_3(dtstsfi, i32, env, i32, fprp)
732DEF_HELPER_3(dtstsfiq, i32, env, i32, fprp)
5826ebe2
TM
733DEF_HELPER_5(dquai, void, env, fprp, fprp, i32, i32)
734DEF_HELPER_5(dquaiq, void, env, fprp, fprp, i32, i32)
735DEF_HELPER_5(dqua, void, env, fprp, fprp, fprp, i32)
736DEF_HELPER_5(dquaq, void, env, fprp, fprp, fprp, i32)
512918aa
TM
737DEF_HELPER_5(drrnd, void, env, fprp, fprp, fprp, i32)
738DEF_HELPER_5(drrndq, void, env, fprp, fprp, fprp, i32)
97c0d930
TM
739DEF_HELPER_5(drintx, void, env, fprp, fprp, i32, i32)
740DEF_HELPER_5(drintxq, void, env, fprp, fprp, i32, i32)
741DEF_HELPER_5(drintn, void, env, fprp, fprp, i32, i32)
742DEF_HELPER_5(drintnq, void, env, fprp, fprp, i32, i32)
290d9ee5
TM
743DEF_HELPER_3(dctdp, void, env, fprp, fprp)
744DEF_HELPER_3(dctqpq, void, env, fprp, fprp)
ca603eb4
TM
745DEF_HELPER_3(drsp, void, env, fprp, fprp)
746DEF_HELPER_3(drdpq, void, env, fprp, fprp)
f1214193
TM
747DEF_HELPER_3(dcffix, void, env, fprp, fprp)
748DEF_HELPER_3(dcffixq, void, env, fprp, fprp)
bea0dd79
TM
749DEF_HELPER_3(dctfix, void, env, fprp, fprp)
750DEF_HELPER_3(dctfixq, void, env, fprp, fprp)
7796676f
TM
751DEF_HELPER_4(ddedpd, void, env, fprp, fprp, i32)
752DEF_HELPER_4(ddedpdq, void, env, fprp, fprp, i32)
013c3ac0
TM
753DEF_HELPER_4(denbcd, void, env, fprp, fprp, i32)
754DEF_HELPER_4(denbcdq, void, env, fprp, fprp, i32)
e8a48460
TM
755DEF_HELPER_3(dxex, void, env, fprp, fprp)
756DEF_HELPER_3(dxexq, void, env, fprp, fprp)
297666eb
TM
757DEF_HELPER_4(diex, void, env, fprp, fprp, fprp)
758DEF_HELPER_4(diexq, void, env, fprp, fprp, fprp)
804e654a
TM
759DEF_HELPER_4(dscri, void, env, fprp, fprp, i32)
760DEF_HELPER_4(dscriq, void, env, fprp, fprp, i32)
761DEF_HELPER_4(dscli, void, env, fprp, fprp, i32)
762DEF_HELPER_4(dscliq, void, env, fprp, fprp, i32)
0ff93d11
TM
763
764DEF_HELPER_1(tbegin, void, env)
a007b19b 765DEF_HELPER_FLAGS_1(fixup_thrm, TCG_CALL_NO_RWG, void, env)
94bf2658 766
f34ec0f6 767#ifdef TARGET_PPC64
94bf2658
RH
768DEF_HELPER_FLAGS_3(lq_le_parallel, TCG_CALL_NO_WG, i64, env, tl, i32)
769DEF_HELPER_FLAGS_3(lq_be_parallel, TCG_CALL_NO_WG, i64, env, tl, i32)
f89ced5f
RH
770DEF_HELPER_FLAGS_5(stq_le_parallel, TCG_CALL_NO_WG,
771 void, env, tl, i64, i64, i32)
772DEF_HELPER_FLAGS_5(stq_be_parallel, TCG_CALL_NO_WG,
773 void, env, tl, i64, i64, i32)
4a9b3c5d
RH
774DEF_HELPER_5(stqcx_le_parallel, i32, env, tl, i64, i64, i32)
775DEF_HELPER_5(stqcx_be_parallel, i32, env, tl, i64, i64, i32)
94bf2658 776#endif