xref: /openbmc/qemu/target/m68k/helper.h (revision ef929281f1ddb1ce74f5fe39377a88e6cc8237aa)
1  DEF_HELPER_1(bitrev, i32, i32)
2  DEF_HELPER_1(ff1, i32, i32)
3  DEF_HELPER_FLAGS_2(sats, TCG_CALL_NO_RWG_SE, i32, i32, i32)
4  DEF_HELPER_4(divuw, void, env, int, i32, int)
5  DEF_HELPER_4(divsw, void, env, int, s32, int)
6  DEF_HELPER_5(divul, void, env, int, int, i32, int)
7  DEF_HELPER_5(divsl, void, env, int, int, s32, int)
8  DEF_HELPER_5(divull, void, env, int, int, i32, int)
9  DEF_HELPER_5(divsll, void, env, int, int, s32, int)
10  DEF_HELPER_2(set_sr, void, env, i32)
11  DEF_HELPER_3(cf_movec_to, void, env, i32, i32)
12  DEF_HELPER_3(m68k_movec_to, void, env, i32, i32)
13  DEF_HELPER_2(m68k_movec_from, i32, env, i32)
14  DEF_HELPER_4(cas2w, void, env, i32, i32, i32)
15  DEF_HELPER_4(cas2l, void, env, i32, i32, i32)
16  DEF_HELPER_4(cas2l_parallel, void, env, i32, i32, i32)
17  
18  #define dh_alias_fp ptr
19  #define dh_ctype_fp FPReg *
20  #define dh_typecode_fp dh_typecode_ptr
21  
22  DEF_HELPER_3(exts32, void, env, fp, s32)
23  DEF_HELPER_3(extf32, void, env, fp, f32)
24  DEF_HELPER_3(extf64, void, env, fp, f64)
25  DEF_HELPER_2(redf32, f32, env, fp)
26  DEF_HELPER_2(redf64, f64, env, fp)
27  DEF_HELPER_2(reds32, s32, env, fp)
28  
29  DEF_HELPER_3(fsround, void, env, fp, fp)
30  DEF_HELPER_3(fdround, void, env, fp, fp)
31  DEF_HELPER_3(firound, void, env, fp, fp)
32  DEF_HELPER_3(fitrunc, void, env, fp, fp)
33  DEF_HELPER_3(fsqrt, void, env, fp, fp)
34  DEF_HELPER_3(fssqrt, void, env, fp, fp)
35  DEF_HELPER_3(fdsqrt, void, env, fp, fp)
36  DEF_HELPER_3(fabs, void, env, fp, fp)
37  DEF_HELPER_3(fsabs, void, env, fp, fp)
38  DEF_HELPER_3(fdabs, void, env, fp, fp)
39  DEF_HELPER_3(fneg, void, env, fp, fp)
40  DEF_HELPER_3(fsneg, void, env, fp, fp)
41  DEF_HELPER_3(fdneg, void, env, fp, fp)
42  DEF_HELPER_4(fadd, void, env, fp, fp, fp)
43  DEF_HELPER_4(fsadd, void, env, fp, fp, fp)
44  DEF_HELPER_4(fdadd, void, env, fp, fp, fp)
45  DEF_HELPER_4(fsub, void, env, fp, fp, fp)
46  DEF_HELPER_4(fssub, void, env, fp, fp, fp)
47  DEF_HELPER_4(fdsub, void, env, fp, fp, fp)
48  DEF_HELPER_4(fmul, void, env, fp, fp, fp)
49  DEF_HELPER_4(fsmul, void, env, fp, fp, fp)
50  DEF_HELPER_4(fdmul, void, env, fp, fp, fp)
51  DEF_HELPER_4(fsglmul, void, env, fp, fp, fp)
52  DEF_HELPER_4(fdiv, void, env, fp, fp, fp)
53  DEF_HELPER_4(fsdiv, void, env, fp, fp, fp)
54  DEF_HELPER_4(fddiv, void, env, fp, fp, fp)
55  DEF_HELPER_4(fsgldiv, void, env, fp, fp, fp)
56  DEF_HELPER_FLAGS_3(fcmp, TCG_CALL_NO_RWG, void, env, fp, fp)
57  DEF_HELPER_2(set_fpsr, void, env, i32)
58  DEF_HELPER_1(get_fpsr, i32, env)
59  DEF_HELPER_FLAGS_2(set_fpcr, TCG_CALL_NO_RWG, void, env, i32)
60  DEF_HELPER_FLAGS_2(ftst, TCG_CALL_NO_RWG, void, env, fp)
61  DEF_HELPER_3(fconst, void, env, fp, i32)
62  DEF_HELPER_3(fmovemx_st_predec, i32, env, i32, i32)
63  DEF_HELPER_3(fmovemx_st_postinc, i32, env, i32, i32)
64  DEF_HELPER_3(fmovemx_ld_postinc, i32, env, i32, i32)
65  DEF_HELPER_3(fmovemd_st_predec, i32, env, i32, i32)
66  DEF_HELPER_3(fmovemd_st_postinc, i32, env, i32, i32)
67  DEF_HELPER_3(fmovemd_ld_postinc, i32, env, i32, i32)
68  DEF_HELPER_4(fmod, void, env, fp, fp, fp)
69  DEF_HELPER_4(frem, void, env, fp, fp, fp)
70  DEF_HELPER_3(fgetexp, void, env, fp, fp)
71  DEF_HELPER_3(fgetman, void, env, fp, fp)
72  DEF_HELPER_4(fscale, void, env, fp, fp, fp)
73  DEF_HELPER_3(flognp1, void, env, fp, fp)
74  DEF_HELPER_3(flogn, void, env, fp, fp)
75  DEF_HELPER_3(flog10, void, env, fp, fp)
76  DEF_HELPER_3(flog2, void, env, fp, fp)
77  DEF_HELPER_3(fetox, void, env, fp, fp)
78  DEF_HELPER_3(ftwotox, void, env, fp, fp)
79  DEF_HELPER_3(ftentox, void, env, fp, fp)
80  DEF_HELPER_3(ftan, void, env, fp, fp)
81  DEF_HELPER_3(fsin, void, env, fp, fp)
82  DEF_HELPER_3(fcos, void, env, fp, fp)
83  DEF_HELPER_4(fsincos, void, env, fp, fp, fp)
84  DEF_HELPER_3(fatan, void, env, fp, fp)
85  DEF_HELPER_3(fasin, void, env, fp, fp)
86  DEF_HELPER_3(facos, void, env, fp, fp)
87  DEF_HELPER_3(fatanh, void, env, fp, fp)
88  DEF_HELPER_3(fetoxm1, void, env, fp, fp)
89  DEF_HELPER_3(ftanh, void, env, fp, fp)
90  DEF_HELPER_3(fsinh, void, env, fp, fp)
91  DEF_HELPER_3(fcosh, void, env, fp, fp)
92  
93  DEF_HELPER_3(mac_move, void, env, i32, i32)
94  DEF_HELPER_3(macmulf, i64, env, i32, i32)
95  DEF_HELPER_3(macmuls, i64, env, i32, i32)
96  DEF_HELPER_3(macmulu, i64, env, i32, i32)
97  DEF_HELPER_2(macsats, void, env, i32)
98  DEF_HELPER_2(macsatu, void, env, i32)
99  DEF_HELPER_2(macsatf, void, env, i32)
100  DEF_HELPER_2(mac_set_flags, void, env, i32)
101  DEF_HELPER_2(set_macsr, void, env, i32)
102  DEF_HELPER_2(get_macf, i32, env, i64)
103  DEF_HELPER_1(get_macs, i32, i64)
104  DEF_HELPER_1(get_macu, i32, i64)
105  DEF_HELPER_2(get_mac_extf, i32, env, i32)
106  DEF_HELPER_2(get_mac_exti, i32, env, i32)
107  DEF_HELPER_3(set_mac_extf, void, env, i32, i32)
108  DEF_HELPER_3(set_mac_exts, void, env, i32, i32)
109  DEF_HELPER_3(set_mac_extu, void, env, i32, i32)
110  
111  DEF_HELPER_2(flush_flags, void, env, i32)
112  DEF_HELPER_2(set_ccr, void, env, i32)
113  DEF_HELPER_FLAGS_1(get_ccr, TCG_CALL_NO_WG_SE, i32, env)
114  DEF_HELPER_2(raise_exception, noreturn, env, i32)
115  
116  DEF_HELPER_FLAGS_3(bfffo_reg, TCG_CALL_NO_RWG_SE, i32, i32, i32, i32)
117  
118  DEF_HELPER_FLAGS_4(bfexts_mem, TCG_CALL_NO_WG, i32, env, i32, s32, i32)
119  DEF_HELPER_FLAGS_4(bfextu_mem, TCG_CALL_NO_WG, i64, env, i32, s32, i32)
120  DEF_HELPER_FLAGS_5(bfins_mem, TCG_CALL_NO_WG, i32, env, i32, i32, s32, i32)
121  DEF_HELPER_FLAGS_4(bfchg_mem, TCG_CALL_NO_WG, i32, env, i32, s32, i32)
122  DEF_HELPER_FLAGS_4(bfclr_mem, TCG_CALL_NO_WG, i32, env, i32, s32, i32)
123  DEF_HELPER_FLAGS_4(bfset_mem, TCG_CALL_NO_WG, i32, env, i32, s32, i32)
124  DEF_HELPER_FLAGS_4(bfffo_mem, TCG_CALL_NO_WG, i64, env, i32, s32, i32)
125  
126  DEF_HELPER_3(chk, void, env, s32, s32)
127  DEF_HELPER_4(chk2, void, env, s32, s32, s32)
128  
129  #if !defined(CONFIG_USER_ONLY)
130  DEF_HELPER_3(ptest, void, env, i32, i32)
131  DEF_HELPER_3(pflush, void, env, i32, i32)
132  DEF_HELPER_FLAGS_1(reset, TCG_CALL_NO_RWG, void, env)
133  #endif
134