xref: /qemu/target/m68k/helper.h (revision 5add1ac42faffd3d3639101fa778dced693a65a3)
1a7812ae4Spbrook DEF_HELPER_1(bitrev, i32, i32)
2a7812ae4Spbrook DEF_HELPER_1(ff1, i32, i32)
3620c6cf6SRichard Henderson DEF_HELPER_FLAGS_2(sats, TCG_CALL_NO_RWG_SE, i32, i32, i32)
40ccb9c1dSLaurent Vivier DEF_HELPER_3(divuw, void, env, int, i32)
50ccb9c1dSLaurent Vivier DEF_HELPER_3(divsw, void, env, int, s32)
60ccb9c1dSLaurent Vivier DEF_HELPER_4(divul, void, env, int, int, i32)
70ccb9c1dSLaurent Vivier DEF_HELPER_4(divsl, void, env, int, int, s32)
80ccb9c1dSLaurent Vivier DEF_HELPER_4(divull, void, env, int, int, i32)
90ccb9c1dSLaurent Vivier DEF_HELPER_4(divsll, void, env, int, int, s32)
10a7812ae4Spbrook DEF_HELPER_2(set_sr, void, env, i32)
116e22b28eSLaurent Vivier DEF_HELPER_3(cf_movec_to, void, env, i32, i32)
126e22b28eSLaurent Vivier DEF_HELPER_3(m68k_movec_to, void, env, i32, i32)
136e22b28eSLaurent Vivier DEF_HELPER_2(m68k_movec_from, i32, env, i32)
1414f94406SLaurent Vivier DEF_HELPER_4(cas2w, void, env, i32, i32, i32)
1514f94406SLaurent Vivier DEF_HELPER_4(cas2l, void, env, i32, i32, i32)
16f0ddf11bSEmilio G. Cota DEF_HELPER_4(cas2l_parallel, void, env, i32, i32, i32)
17e1f3808eSpbrook 
18f83311e4SLaurent Vivier #define dh_alias_fp ptr
19f83311e4SLaurent Vivier #define dh_ctype_fp FPReg *
20f83311e4SLaurent Vivier #define dh_is_signed_fp dh_is_signed_ptr
21f83311e4SLaurent Vivier 
22f83311e4SLaurent Vivier DEF_HELPER_3(exts32, void, env, fp, s32)
23f83311e4SLaurent Vivier DEF_HELPER_3(extf32, void, env, fp, f32)
24f83311e4SLaurent Vivier DEF_HELPER_3(extf64, void, env, fp, f64)
25f83311e4SLaurent Vivier DEF_HELPER_2(redf32, f32, env, fp)
26f83311e4SLaurent Vivier DEF_HELPER_2(redf64, f64, env, fp)
27f83311e4SLaurent Vivier DEF_HELPER_2(reds32, s32, env, fp)
28f83311e4SLaurent Vivier 
2977bdb229SLaurent Vivier DEF_HELPER_3(fsround, void, env, fp, fp)
3077bdb229SLaurent Vivier DEF_HELPER_3(fdround, void, env, fp, fp)
31f83311e4SLaurent Vivier DEF_HELPER_3(firound, void, env, fp, fp)
32f83311e4SLaurent Vivier DEF_HELPER_3(fitrunc, void, env, fp, fp)
33f83311e4SLaurent Vivier DEF_HELPER_3(fsqrt, void, env, fp, fp)
34a51b6bc3SLaurent Vivier DEF_HELPER_3(fssqrt, void, env, fp, fp)
35a51b6bc3SLaurent Vivier DEF_HELPER_3(fdsqrt, void, env, fp, fp)
36f83311e4SLaurent Vivier DEF_HELPER_3(fabs, void, env, fp, fp)
3777bdb229SLaurent Vivier DEF_HELPER_3(fsabs, void, env, fp, fp)
3877bdb229SLaurent Vivier DEF_HELPER_3(fdabs, void, env, fp, fp)
3977bdb229SLaurent Vivier DEF_HELPER_3(fneg, void, env, fp, fp)
4077bdb229SLaurent Vivier DEF_HELPER_3(fsneg, void, env, fp, fp)
4177bdb229SLaurent Vivier DEF_HELPER_3(fdneg, void, env, fp, fp)
42f83311e4SLaurent Vivier DEF_HELPER_4(fadd, void, env, fp, fp, fp)
43a51b6bc3SLaurent Vivier DEF_HELPER_4(fsadd, void, env, fp, fp, fp)
44a51b6bc3SLaurent Vivier DEF_HELPER_4(fdadd, void, env, fp, fp, fp)
45f83311e4SLaurent Vivier DEF_HELPER_4(fsub, void, env, fp, fp, fp)
46a51b6bc3SLaurent Vivier DEF_HELPER_4(fssub, void, env, fp, fp, fp)
47a51b6bc3SLaurent Vivier DEF_HELPER_4(fdsub, void, env, fp, fp, fp)
48f83311e4SLaurent Vivier DEF_HELPER_4(fmul, void, env, fp, fp, fp)
49a51b6bc3SLaurent Vivier DEF_HELPER_4(fsmul, void, env, fp, fp, fp)
50a51b6bc3SLaurent Vivier DEF_HELPER_4(fdmul, void, env, fp, fp, fp)
512f77995cSLaurent Vivier DEF_HELPER_4(fsglmul, void, env, fp, fp, fp)
52f83311e4SLaurent Vivier DEF_HELPER_4(fdiv, void, env, fp, fp, fp)
53a51b6bc3SLaurent Vivier DEF_HELPER_4(fsdiv, void, env, fp, fp, fp)
54a51b6bc3SLaurent Vivier DEF_HELPER_4(fddiv, void, env, fp, fp, fp)
552f77995cSLaurent Vivier DEF_HELPER_4(fsgldiv, void, env, fp, fp, fp)
56ba624944SLaurent Vivier DEF_HELPER_FLAGS_3(fcmp, TCG_CALL_NO_RWG, void, env, fp, fp)
57ba624944SLaurent Vivier DEF_HELPER_FLAGS_2(set_fpcr, TCG_CALL_NO_RWG, void, env, i32)
58ba624944SLaurent Vivier DEF_HELPER_FLAGS_2(ftst, TCG_CALL_NO_RWG, void, env, fp)
599d403660SLaurent Vivier DEF_HELPER_3(fconst, void, env, fp, i32)
60a1e58ddcSLaurent Vivier DEF_HELPER_3(fmovemx_st_predec, i32, env, i32, i32)
61a1e58ddcSLaurent Vivier DEF_HELPER_3(fmovemx_st_postinc, i32, env, i32, i32)
62a1e58ddcSLaurent Vivier DEF_HELPER_3(fmovemx_ld_postinc, i32, env, i32, i32)
63a1e58ddcSLaurent Vivier DEF_HELPER_3(fmovemd_st_predec, i32, env, i32, i32)
64a1e58ddcSLaurent Vivier DEF_HELPER_3(fmovemd_st_postinc, i32, env, i32, i32)
65a1e58ddcSLaurent Vivier DEF_HELPER_3(fmovemd_ld_postinc, i32, env, i32, i32)
66591596b7SLaurent Vivier DEF_HELPER_4(fmod, void, env, fp, fp, fp)
67591596b7SLaurent Vivier DEF_HELPER_4(frem, void, env, fp, fp, fp)
680d379c17SLaurent Vivier DEF_HELPER_3(fgetexp, void, env, fp, fp)
690d379c17SLaurent Vivier DEF_HELPER_3(fgetman, void, env, fp, fp)
700d379c17SLaurent Vivier DEF_HELPER_4(fscale, void, env, fp, fp, fp)
714b5c65b8SLaurent Vivier DEF_HELPER_3(flognp1, void, env, fp, fp)
7250067bd1SLaurent Vivier DEF_HELPER_3(flogn, void, env, fp, fp)
73248efb66SLaurent Vivier DEF_HELPER_3(flog10, void, env, fp, fp)
7467b453edSLaurent Vivier DEF_HELPER_3(flog2, void, env, fp, fp)
7540ad0873SLaurent Vivier DEF_HELPER_3(fetox, void, env, fp, fp)
76068f1615SLaurent Vivier DEF_HELPER_3(ftwotox, void, env, fp, fp)
776c25be6eSLaurent Vivier DEF_HELPER_3(ftentox, void, env, fp, fp)
7827340180SLaurent Vivier DEF_HELPER_3(ftan, void, env, fp, fp)
79*5add1ac4SLaurent Vivier DEF_HELPER_3(fsin, void, env, fp, fp)
80e1f3808eSpbrook 
81a7812ae4Spbrook DEF_HELPER_3(mac_move, void, env, i32, i32)
82a7812ae4Spbrook DEF_HELPER_3(macmulf, i64, env, i32, i32)
83a7812ae4Spbrook DEF_HELPER_3(macmuls, i64, env, i32, i32)
84a7812ae4Spbrook DEF_HELPER_3(macmulu, i64, env, i32, i32)
85a7812ae4Spbrook DEF_HELPER_2(macsats, void, env, i32)
86a7812ae4Spbrook DEF_HELPER_2(macsatu, void, env, i32)
87a7812ae4Spbrook DEF_HELPER_2(macsatf, void, env, i32)
88a7812ae4Spbrook DEF_HELPER_2(mac_set_flags, void, env, i32)
89a7812ae4Spbrook DEF_HELPER_2(set_macsr, void, env, i32)
90a7812ae4Spbrook DEF_HELPER_2(get_macf, i32, env, i64)
91a7812ae4Spbrook DEF_HELPER_1(get_macs, i32, i64)
92a7812ae4Spbrook DEF_HELPER_1(get_macu, i32, i64)
93a7812ae4Spbrook DEF_HELPER_2(get_mac_extf, i32, env, i32)
94a7812ae4Spbrook DEF_HELPER_2(get_mac_exti, i32, env, i32)
95a7812ae4Spbrook DEF_HELPER_3(set_mac_extf, void, env, i32, i32)
96a7812ae4Spbrook DEF_HELPER_3(set_mac_exts, void, env, i32, i32)
97a7812ae4Spbrook DEF_HELPER_3(set_mac_extu, void, env, i32, i32)
98e1f3808eSpbrook 
99620c6cf6SRichard Henderson DEF_HELPER_2(flush_flags, void, env, i32)
100620c6cf6SRichard Henderson DEF_HELPER_2(set_ccr, void, env, i32)
101620c6cf6SRichard Henderson DEF_HELPER_FLAGS_1(get_ccr, TCG_CALL_NO_WG_SE, i32, env)
10231871141SBlue Swirl DEF_HELPER_2(raise_exception, void, env, i32)
103f2224f2cSRichard Henderson 
104a45f1763SRichard Henderson DEF_HELPER_FLAGS_3(bfffo_reg, TCG_CALL_NO_RWG_SE, i32, i32, i32, i32)
105a45f1763SRichard Henderson 
106f2224f2cSRichard Henderson DEF_HELPER_FLAGS_4(bfexts_mem, TCG_CALL_NO_WG, i32, env, i32, s32, i32)
107f2224f2cSRichard Henderson DEF_HELPER_FLAGS_4(bfextu_mem, TCG_CALL_NO_WG, i64, env, i32, s32, i32)
108f2224f2cSRichard Henderson DEF_HELPER_FLAGS_5(bfins_mem, TCG_CALL_NO_WG, i32, env, i32, i32, s32, i32)
109f2224f2cSRichard Henderson DEF_HELPER_FLAGS_4(bfchg_mem, TCG_CALL_NO_WG, i32, env, i32, s32, i32)
110f2224f2cSRichard Henderson DEF_HELPER_FLAGS_4(bfclr_mem, TCG_CALL_NO_WG, i32, env, i32, s32, i32)
111f2224f2cSRichard Henderson DEF_HELPER_FLAGS_4(bfset_mem, TCG_CALL_NO_WG, i32, env, i32, s32, i32)
112a45f1763SRichard Henderson DEF_HELPER_FLAGS_4(bfffo_mem, TCG_CALL_NO_WG, i64, env, i32, s32, i32)
1138bf6cbafSLaurent Vivier 
1148bf6cbafSLaurent Vivier DEF_HELPER_3(chk, void, env, s32, s32)
1158bf6cbafSLaurent Vivier DEF_HELPER_4(chk2, void, env, s32, s32, s32)
1160bdb2b3bSLaurent Vivier 
1170bdb2b3bSLaurent Vivier #if defined(CONFIG_SOFTMMU)
118e55886c3SLaurent Vivier DEF_HELPER_3(ptest, void, env, i32, i32)
119e55886c3SLaurent Vivier DEF_HELPER_3(pflush, void, env, i32, i32)
1200bdb2b3bSLaurent Vivier DEF_HELPER_FLAGS_1(reset, TCG_CALL_NO_RWG, void, env)
1210bdb2b3bSLaurent Vivier #endif
122