]>
Commit | Line | Data |
---|---|---|
a7812ae4 PB |
1 | #include "def-helper.h" |
2 | ||
a7812ae4 | 3 | DEF_HELPER_2(excp, void, int, int) |
0c287402 | 4 | DEF_HELPER_FLAGS_0(load_pcc, TCG_CALL_CONST | TCG_CALL_PURE, i64) |
a7812ae4 PB |
5 | |
6 | DEF_HELPER_2(addqv, i64, i64, i64) | |
7 | DEF_HELPER_2(addlv, i64, i64, i64) | |
8 | DEF_HELPER_2(subqv, i64, i64, i64) | |
9 | DEF_HELPER_2(sublv, i64, i64, i64) | |
10 | DEF_HELPER_2(mullv, i64, i64, i64) | |
11 | DEF_HELPER_2(mulqv, i64, i64, i64) | |
0c287402 RH |
12 | DEF_HELPER_FLAGS_2(umulh, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) |
13 | ||
14 | DEF_HELPER_FLAGS_1(ctpop, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64) | |
15 | DEF_HELPER_FLAGS_1(ctlz, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64) | |
16 | DEF_HELPER_FLAGS_1(cttz, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64) | |
17 | ||
18 | DEF_HELPER_FLAGS_2(zap, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
19 | DEF_HELPER_FLAGS_2(zapnot, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
20 | ||
21 | DEF_HELPER_FLAGS_2(cmpbge, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
22 | ||
23 | DEF_HELPER_FLAGS_2(minub8, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
24 | DEF_HELPER_FLAGS_2(minsb8, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
25 | DEF_HELPER_FLAGS_2(minuw4, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
26 | DEF_HELPER_FLAGS_2(minsw4, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
27 | DEF_HELPER_FLAGS_2(maxub8, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
28 | DEF_HELPER_FLAGS_2(maxsb8, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
29 | DEF_HELPER_FLAGS_2(maxuw4, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
30 | DEF_HELPER_FLAGS_2(maxsw4, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
31 | DEF_HELPER_FLAGS_2(perr, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
32 | DEF_HELPER_FLAGS_1(pklb, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64) | |
33 | DEF_HELPER_FLAGS_1(pkwb, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64) | |
34 | DEF_HELPER_FLAGS_1(unpkbl, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64) | |
35 | DEF_HELPER_FLAGS_1(unpkbw, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64) | |
36 | ||
37 | DEF_HELPER_FLAGS_0(load_fpcr, TCG_CALL_CONST | TCG_CALL_PURE, i64) | |
38 | DEF_HELPER_FLAGS_1(store_fpcr, TCG_CALL_CONST, void, i64) | |
39 | ||
40 | DEF_HELPER_FLAGS_1(f_to_memory, TCG_CALL_CONST | TCG_CALL_PURE, i32, i64) | |
41 | DEF_HELPER_FLAGS_1(memory_to_f, TCG_CALL_CONST | TCG_CALL_PURE, i64, i32) | |
42 | DEF_HELPER_FLAGS_2(addf, TCG_CALL_CONST, i64, i64, i64) | |
43 | DEF_HELPER_FLAGS_2(subf, TCG_CALL_CONST, i64, i64, i64) | |
44 | DEF_HELPER_FLAGS_2(mulf, TCG_CALL_CONST, i64, i64, i64) | |
45 | DEF_HELPER_FLAGS_2(divf, TCG_CALL_CONST, i64, i64, i64) | |
46 | DEF_HELPER_FLAGS_1(sqrtf, TCG_CALL_CONST, i64, i64) | |
47 | ||
48 | DEF_HELPER_FLAGS_1(g_to_memory, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64) | |
49 | DEF_HELPER_FLAGS_1(memory_to_g, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64) | |
50 | DEF_HELPER_FLAGS_2(addg, TCG_CALL_CONST, i64, i64, i64) | |
51 | DEF_HELPER_FLAGS_2(subg, TCG_CALL_CONST, i64, i64, i64) | |
52 | DEF_HELPER_FLAGS_2(mulg, TCG_CALL_CONST, i64, i64, i64) | |
53 | DEF_HELPER_FLAGS_2(divg, TCG_CALL_CONST, i64, i64, i64) | |
54 | DEF_HELPER_FLAGS_1(sqrtg, TCG_CALL_CONST, i64, i64) | |
55 | ||
56 | DEF_HELPER_FLAGS_1(s_to_memory, TCG_CALL_CONST | TCG_CALL_PURE, i32, i64) | |
57 | DEF_HELPER_FLAGS_1(memory_to_s, TCG_CALL_CONST | TCG_CALL_PURE, i64, i32) | |
58 | DEF_HELPER_FLAGS_2(adds, TCG_CALL_CONST, i64, i64, i64) | |
59 | DEF_HELPER_FLAGS_2(subs, TCG_CALL_CONST, i64, i64, i64) | |
60 | DEF_HELPER_FLAGS_2(muls, TCG_CALL_CONST, i64, i64, i64) | |
61 | DEF_HELPER_FLAGS_2(divs, TCG_CALL_CONST, i64, i64, i64) | |
62 | DEF_HELPER_FLAGS_1(sqrts, TCG_CALL_CONST, i64, i64) | |
63 | ||
64 | DEF_HELPER_FLAGS_2(addt, TCG_CALL_CONST, i64, i64, i64) | |
65 | DEF_HELPER_FLAGS_2(subt, TCG_CALL_CONST, i64, i64, i64) | |
66 | DEF_HELPER_FLAGS_2(mult, TCG_CALL_CONST, i64, i64, i64) | |
67 | DEF_HELPER_FLAGS_2(divt, TCG_CALL_CONST, i64, i64, i64) | |
68 | DEF_HELPER_FLAGS_1(sqrtt, TCG_CALL_CONST, i64, i64) | |
69 | ||
70 | DEF_HELPER_FLAGS_2(cmptun, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
71 | DEF_HELPER_FLAGS_2(cmpteq, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
72 | DEF_HELPER_FLAGS_2(cmptle, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
73 | DEF_HELPER_FLAGS_2(cmptlt, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
74 | DEF_HELPER_FLAGS_2(cmpgeq, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
75 | DEF_HELPER_FLAGS_2(cmpgle, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
76 | DEF_HELPER_FLAGS_2(cmpglt, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64) | |
77 | ||
0c287402 RH |
78 | DEF_HELPER_FLAGS_1(cvtts, TCG_CALL_CONST, i64, i64) |
79 | DEF_HELPER_FLAGS_1(cvtst, TCG_CALL_CONST, i64, i64) | |
80 | DEF_HELPER_FLAGS_1(cvtqs, TCG_CALL_CONST, i64, i64) | |
81 | DEF_HELPER_FLAGS_1(cvtqt, TCG_CALL_CONST, i64, i64) | |
82 | DEF_HELPER_FLAGS_1(cvtqf, TCG_CALL_CONST, i64, i64) | |
83 | DEF_HELPER_FLAGS_1(cvtgf, TCG_CALL_CONST, i64, i64) | |
84 | DEF_HELPER_FLAGS_1(cvtgq, TCG_CALL_CONST, i64, i64) | |
85 | DEF_HELPER_FLAGS_1(cvtqg, TCG_CALL_CONST, i64, i64) | |
0c287402 RH |
86 | |
87 | DEF_HELPER_FLAGS_1(cvttq, TCG_CALL_CONST, i64, i64) | |
88 | DEF_HELPER_FLAGS_1(cvttq_c, TCG_CALL_CONST, i64, i64) | |
89 | DEF_HELPER_FLAGS_1(cvttq_svic, TCG_CALL_CONST, i64, i64) | |
90 | ||
0c287402 RH |
91 | DEF_HELPER_FLAGS_1(setroundmode, TCG_CALL_CONST, void, i32) |
92 | DEF_HELPER_FLAGS_1(setflushzero, TCG_CALL_CONST, void, i32) | |
93 | DEF_HELPER_FLAGS_0(fp_exc_clear, TCG_CALL_CONST, void) | |
94 | DEF_HELPER_FLAGS_0(fp_exc_get, TCG_CALL_CONST | TCG_CALL_PURE, i32) | |
f24518b5 RH |
95 | DEF_HELPER_2(fp_exc_raise, void, i32, i32) |
96 | DEF_HELPER_2(fp_exc_raise_s, void, i32, i32) | |
97 | ||
98 | DEF_HELPER_1(ieee_input, i64, i64) | |
99 | DEF_HELPER_1(ieee_input_cmp, i64, i64) | |
100 | DEF_HELPER_1(ieee_input_s, i64, i64) | |
f18cd223 | 101 | |
8bb6e981 | 102 | #if !defined (CONFIG_USER_ONLY) |
a7812ae4 PB |
103 | DEF_HELPER_0(hw_rei, void) |
104 | DEF_HELPER_1(hw_ret, void, i64) | |
105 | DEF_HELPER_2(mfpr, i64, int, i64) | |
106 | DEF_HELPER_2(mtpr, void, int, i64) | |
107 | DEF_HELPER_0(set_alt_mode, void) | |
108 | DEF_HELPER_0(restore_mode, void) | |
109 | ||
110 | DEF_HELPER_1(ld_virt_to_phys, i64, i64) | |
111 | DEF_HELPER_1(st_virt_to_phys, i64, i64) | |
112 | DEF_HELPER_2(ldl_raw, void, i64, i64) | |
113 | DEF_HELPER_2(ldq_raw, void, i64, i64) | |
114 | DEF_HELPER_2(ldl_l_raw, void, i64, i64) | |
115 | DEF_HELPER_2(ldq_l_raw, void, i64, i64) | |
116 | DEF_HELPER_2(ldl_kernel, void, i64, i64) | |
117 | DEF_HELPER_2(ldq_kernel, void, i64, i64) | |
118 | DEF_HELPER_2(ldl_data, void, i64, i64) | |
119 | DEF_HELPER_2(ldq_data, void, i64, i64) | |
120 | DEF_HELPER_2(stl_raw, void, i64, i64) | |
121 | DEF_HELPER_2(stq_raw, void, i64, i64) | |
122 | DEF_HELPER_2(stl_c_raw, i64, i64, i64) | |
123 | DEF_HELPER_2(stq_c_raw, i64, i64, i64) | |
8bb6e981 | 124 | #endif |
a7812ae4 PB |
125 | |
126 | #include "def-helper.h" |