1 #include "def-helper.h"
3 DEF_HELPER_3(excp
, noreturn
, env
, int, int)
4 DEF_HELPER_FLAGS_1(load_pcc
, TCG_CALL_CONST
| TCG_CALL_PURE
, i64
, env
)
6 DEF_HELPER_3(addqv
, i64
, env
, i64
, i64
)
7 DEF_HELPER_3(addlv
, i64
, env
, i64
, i64
)
8 DEF_HELPER_3(subqv
, i64
, env
, i64
, i64
)
9 DEF_HELPER_3(sublv
, i64
, env
, i64
, i64
)
10 DEF_HELPER_3(mullv
, i64
, env
, i64
, i64
)
11 DEF_HELPER_3(mulqv
, i64
, env
, i64
, i64
)
12 DEF_HELPER_FLAGS_2(umulh
, TCG_CALL_CONST
| TCG_CALL_PURE
, i64
, i64
, i64
)
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
)
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
)
21 DEF_HELPER_FLAGS_2(cmpbge
, TCG_CALL_CONST
| TCG_CALL_PURE
, i64
, i64
, i64
)
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
)
37 DEF_HELPER_FLAGS_1(load_fpcr
, TCG_CALL_CONST
| TCG_CALL_PURE
, i64
, env
)
38 DEF_HELPER_FLAGS_2(store_fpcr
, TCG_CALL_CONST
, void, env
, i64
)
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_3(addf
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
43 DEF_HELPER_FLAGS_3(subf
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
44 DEF_HELPER_FLAGS_3(mulf
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
45 DEF_HELPER_FLAGS_3(divf
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
46 DEF_HELPER_FLAGS_2(sqrtf
, TCG_CALL_CONST
, i64
, env
, i64
)
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_3(addg
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
51 DEF_HELPER_FLAGS_3(subg
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
52 DEF_HELPER_FLAGS_3(mulg
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
53 DEF_HELPER_FLAGS_3(divg
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
54 DEF_HELPER_FLAGS_2(sqrtg
, TCG_CALL_CONST
, i64
, env
, i64
)
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_3(adds
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
59 DEF_HELPER_FLAGS_3(subs
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
60 DEF_HELPER_FLAGS_3(muls
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
61 DEF_HELPER_FLAGS_3(divs
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
62 DEF_HELPER_FLAGS_2(sqrts
, TCG_CALL_CONST
, i64
, env
, i64
)
64 DEF_HELPER_FLAGS_3(addt
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
65 DEF_HELPER_FLAGS_3(subt
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
66 DEF_HELPER_FLAGS_3(mult
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
67 DEF_HELPER_FLAGS_3(divt
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
68 DEF_HELPER_FLAGS_2(sqrtt
, TCG_CALL_CONST
, i64
, env
, i64
)
70 DEF_HELPER_FLAGS_3(cmptun
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
71 DEF_HELPER_FLAGS_3(cmpteq
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
72 DEF_HELPER_FLAGS_3(cmptle
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
73 DEF_HELPER_FLAGS_3(cmptlt
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
74 DEF_HELPER_FLAGS_3(cmpgeq
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
75 DEF_HELPER_FLAGS_3(cmpgle
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
76 DEF_HELPER_FLAGS_3(cmpglt
, TCG_CALL_CONST
, i64
, env
, i64
, i64
)
78 DEF_HELPER_FLAGS_2(cvtts
, TCG_CALL_CONST
, i64
, env
, i64
)
79 DEF_HELPER_FLAGS_2(cvtst
, TCG_CALL_CONST
, i64
, env
, i64
)
80 DEF_HELPER_FLAGS_2(cvtqs
, TCG_CALL_CONST
, i64
, env
, i64
)
81 DEF_HELPER_FLAGS_2(cvtqt
, TCG_CALL_CONST
, i64
, env
, i64
)
82 DEF_HELPER_FLAGS_2(cvtqf
, TCG_CALL_CONST
, i64
, env
, i64
)
83 DEF_HELPER_FLAGS_2(cvtgf
, TCG_CALL_CONST
, i64
, env
, i64
)
84 DEF_HELPER_FLAGS_2(cvtgq
, TCG_CALL_CONST
, i64
, env
, i64
)
85 DEF_HELPER_FLAGS_2(cvtqg
, TCG_CALL_CONST
, i64
, env
, i64
)
87 DEF_HELPER_FLAGS_2(cvttq
, TCG_CALL_CONST
, i64
, env
, i64
)
88 DEF_HELPER_FLAGS_2(cvttq_c
, TCG_CALL_CONST
, i64
, env
, i64
)
89 DEF_HELPER_FLAGS_2(cvttq_svic
, TCG_CALL_CONST
, i64
, env
, i64
)
91 DEF_HELPER_FLAGS_2(setroundmode
, TCG_CALL_CONST
, void, env
, i32
)
92 DEF_HELPER_FLAGS_2(setflushzero
, TCG_CALL_CONST
, void, env
, i32
)
93 DEF_HELPER_FLAGS_1(fp_exc_clear
, TCG_CALL_CONST
, void, env
)
94 DEF_HELPER_FLAGS_1(fp_exc_get
, TCG_CALL_CONST
| TCG_CALL_PURE
, i32
, env
)
95 DEF_HELPER_3(fp_exc_raise
, void, env
, i32
, i32
)
96 DEF_HELPER_3(fp_exc_raise_s
, void, env
, i32
, i32
)
98 DEF_HELPER_2(ieee_input
, void, env
, i64
)
99 DEF_HELPER_2(ieee_input_cmp
, void, env
, i64
)
101 #if !defined (CONFIG_USER_ONLY)
102 DEF_HELPER_2(hw_ret
, void, env
, i64
)
104 DEF_HELPER_1(ldl_phys
, i64
, i64
)
105 DEF_HELPER_1(ldq_phys
, i64
, i64
)
106 DEF_HELPER_2(ldl_l_phys
, i64
, env
, i64
)
107 DEF_HELPER_2(ldq_l_phys
, i64
, env
, i64
)
108 DEF_HELPER_2(stl_phys
, void, i64
, i64
)
109 DEF_HELPER_2(stq_phys
, void, i64
, i64
)
110 DEF_HELPER_3(stl_c_phys
, i64
, env
, i64
, i64
)
111 DEF_HELPER_3(stq_c_phys
, i64
, env
, i64
, i64
)
113 DEF_HELPER_FLAGS_1(tbia
, TCG_CALL_CONST
, void, env
)
114 DEF_HELPER_FLAGS_2(tbis
, TCG_CALL_CONST
, void, env
, i64
)
116 DEF_HELPER_1(halt
, void, i64
);
118 DEF_HELPER_FLAGS_0(get_time
, TCG_CALL_CONST
, i64
)
119 DEF_HELPER_FLAGS_2(set_alarm
, TCG_CALL_CONST
, void, env
, i64
)
122 #include "def-helper.h"