xref: /openbmc/qemu/target/m68k/helper.h (revision fee571c7afced9bf4b01b864ea6e85f00fb50e30)
1fcf5ef2aSThomas Huth DEF_HELPER_1(bitrev, i32, i32)
2fcf5ef2aSThomas Huth DEF_HELPER_1(ff1, i32, i32)
3fcf5ef2aSThomas Huth DEF_HELPER_FLAGS_2(sats, TCG_CALL_NO_RWG_SE, i32, i32, i32)
4710d747bSRichard Henderson DEF_HELPER_4(divuw, void, env, int, i32, int)
5710d747bSRichard Henderson DEF_HELPER_4(divsw, void, env, int, s32, int)
6710d747bSRichard Henderson DEF_HELPER_5(divul, void, env, int, int, i32, int)
7710d747bSRichard Henderson DEF_HELPER_5(divsl, void, env, int, int, s32, int)
8710d747bSRichard Henderson DEF_HELPER_5(divull, void, env, int, int, i32, int)
9710d747bSRichard Henderson DEF_HELPER_5(divsll, void, env, int, int, s32, int)
10fcf5ef2aSThomas Huth 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)
17fcf5ef2aSThomas Huth 
18f83311e4SLaurent Vivier #define dh_alias_fp ptr
19f83311e4SLaurent Vivier #define dh_ctype_fp FPReg *
208929906eSRichard Henderson #define dh_typecode_fp dh_typecode_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)
57*58883579SKeith Packard DEF_HELPER_2(set_fpsr, void, env, i32)
58*58883579SKeith Packard DEF_HELPER_1(get_fpsr, i32, env)
59ba624944SLaurent Vivier DEF_HELPER_FLAGS_2(set_fpcr, TCG_CALL_NO_RWG, void, env, i32)
60ba624944SLaurent Vivier DEF_HELPER_FLAGS_2(ftst, TCG_CALL_NO_RWG, void, env, fp)
619d403660SLaurent Vivier DEF_HELPER_3(fconst, void, env, fp, i32)
62a1e58ddcSLaurent Vivier DEF_HELPER_3(fmovemx_st_predec, i32, env, i32, i32)
63a1e58ddcSLaurent Vivier DEF_HELPER_3(fmovemx_st_postinc, i32, env, i32, i32)
64a1e58ddcSLaurent Vivier DEF_HELPER_3(fmovemx_ld_postinc, i32, env, i32, i32)
65a1e58ddcSLaurent Vivier DEF_HELPER_3(fmovemd_st_predec, i32, env, i32, i32)
66a1e58ddcSLaurent Vivier DEF_HELPER_3(fmovemd_st_postinc, i32, env, i32, i32)
67a1e58ddcSLaurent Vivier DEF_HELPER_3(fmovemd_ld_postinc, i32, env, i32, i32)
68591596b7SLaurent Vivier DEF_HELPER_4(fmod, void, env, fp, fp, fp)
69591596b7SLaurent Vivier DEF_HELPER_4(frem, void, env, fp, fp, fp)
700d379c17SLaurent Vivier DEF_HELPER_3(fgetexp, void, env, fp, fp)
710d379c17SLaurent Vivier DEF_HELPER_3(fgetman, void, env, fp, fp)
720d379c17SLaurent Vivier DEF_HELPER_4(fscale, void, env, fp, fp, fp)
734b5c65b8SLaurent Vivier DEF_HELPER_3(flognp1, void, env, fp, fp)
7450067bd1SLaurent Vivier DEF_HELPER_3(flogn, void, env, fp, fp)
75248efb66SLaurent Vivier DEF_HELPER_3(flog10, void, env, fp, fp)
7667b453edSLaurent Vivier DEF_HELPER_3(flog2, void, env, fp, fp)
7740ad0873SLaurent Vivier DEF_HELPER_3(fetox, void, env, fp, fp)
78068f1615SLaurent Vivier DEF_HELPER_3(ftwotox, void, env, fp, fp)
796c25be6eSLaurent Vivier DEF_HELPER_3(ftentox, void, env, fp, fp)
8027340180SLaurent Vivier DEF_HELPER_3(ftan, void, env, fp, fp)
815add1ac4SLaurent Vivier DEF_HELPER_3(fsin, void, env, fp, fp)
8268d0ed37SLaurent Vivier DEF_HELPER_3(fcos, void, env, fp, fp)
8347446c9cSLaurent Vivier DEF_HELPER_4(fsincos, void, env, fp, fp, fp)
848c992abcSLaurent Vivier DEF_HELPER_3(fatan, void, env, fp, fp)
85bc20b34eSLaurent Vivier DEF_HELPER_3(fasin, void, env, fp, fp)
86c84813b8SLaurent Vivier DEF_HELPER_3(facos, void, env, fp, fp)
87e3655afaSLaurent Vivier DEF_HELPER_3(fatanh, void, env, fp, fp)
88250b1da3SLaurent Vivier DEF_HELPER_3(fetoxm1, void, env, fp, fp)
899937b029SLaurent Vivier DEF_HELPER_3(ftanh, void, env, fp, fp)
90eee6b892SLaurent Vivier DEF_HELPER_3(fsinh, void, env, fp, fp)
9102f9124eSLaurent Vivier DEF_HELPER_3(fcosh, void, env, fp, fp)
92fcf5ef2aSThomas Huth 
93fcf5ef2aSThomas Huth DEF_HELPER_3(mac_move, void, env, i32, i32)
94fcf5ef2aSThomas Huth DEF_HELPER_3(macmulf, i64, env, i32, i32)
95fcf5ef2aSThomas Huth DEF_HELPER_3(macmuls, i64, env, i32, i32)
96fcf5ef2aSThomas Huth DEF_HELPER_3(macmulu, i64, env, i32, i32)
97fcf5ef2aSThomas Huth DEF_HELPER_2(macsats, void, env, i32)
98fcf5ef2aSThomas Huth DEF_HELPER_2(macsatu, void, env, i32)
99fcf5ef2aSThomas Huth DEF_HELPER_2(macsatf, void, env, i32)
100fcf5ef2aSThomas Huth DEF_HELPER_2(mac_set_flags, void, env, i32)
101fcf5ef2aSThomas Huth DEF_HELPER_2(set_macsr, void, env, i32)
102fcf5ef2aSThomas Huth DEF_HELPER_2(get_macf, i32, env, i64)
103fcf5ef2aSThomas Huth DEF_HELPER_1(get_macs, i32, i64)
104fcf5ef2aSThomas Huth DEF_HELPER_1(get_macu, i32, i64)
105fcf5ef2aSThomas Huth DEF_HELPER_2(get_mac_extf, i32, env, i32)
106fcf5ef2aSThomas Huth DEF_HELPER_2(get_mac_exti, i32, env, i32)
107fcf5ef2aSThomas Huth DEF_HELPER_3(set_mac_extf, void, env, i32, i32)
108fcf5ef2aSThomas Huth DEF_HELPER_3(set_mac_exts, void, env, i32, i32)
109fcf5ef2aSThomas Huth DEF_HELPER_3(set_mac_extu, void, env, i32, i32)
110fcf5ef2aSThomas Huth 
111fcf5ef2aSThomas Huth DEF_HELPER_2(flush_flags, void, env, i32)
112fcf5ef2aSThomas Huth DEF_HELPER_2(set_ccr, void, env, i32)
113fcf5ef2aSThomas Huth DEF_HELPER_FLAGS_1(get_ccr, TCG_CALL_NO_WG_SE, i32, env)
11436a0ab59SRichard Henderson DEF_HELPER_2(raise_exception, noreturn, env, i32)
115f2224f2cSRichard Henderson 
116a45f1763SRichard Henderson DEF_HELPER_FLAGS_3(bfffo_reg, TCG_CALL_NO_RWG_SE, i32, i32, i32, i32)
117a45f1763SRichard Henderson 
118f2224f2cSRichard Henderson DEF_HELPER_FLAGS_4(bfexts_mem, TCG_CALL_NO_WG, i32, env, i32, s32, i32)
119f2224f2cSRichard Henderson DEF_HELPER_FLAGS_4(bfextu_mem, TCG_CALL_NO_WG, i64, env, i32, s32, i32)
120f2224f2cSRichard Henderson DEF_HELPER_FLAGS_5(bfins_mem, TCG_CALL_NO_WG, i32, env, i32, i32, s32, i32)
121f2224f2cSRichard Henderson DEF_HELPER_FLAGS_4(bfchg_mem, TCG_CALL_NO_WG, i32, env, i32, s32, i32)
122f2224f2cSRichard Henderson DEF_HELPER_FLAGS_4(bfclr_mem, TCG_CALL_NO_WG, i32, env, i32, s32, i32)
123f2224f2cSRichard Henderson DEF_HELPER_FLAGS_4(bfset_mem, TCG_CALL_NO_WG, i32, env, i32, s32, i32)
124a45f1763SRichard Henderson DEF_HELPER_FLAGS_4(bfffo_mem, TCG_CALL_NO_WG, i64, env, i32, s32, i32)
1258bf6cbafSLaurent Vivier 
1268bf6cbafSLaurent Vivier DEF_HELPER_3(chk, void, env, s32, s32)
1278bf6cbafSLaurent Vivier DEF_HELPER_4(chk2, void, env, s32, s32, s32)
1280bdb2b3bSLaurent Vivier 
1296a140586SPhilippe Mathieu-Daudé #if !defined(CONFIG_USER_ONLY)
130e55886c3SLaurent Vivier DEF_HELPER_3(ptest, void, env, i32, i32)
131e55886c3SLaurent Vivier DEF_HELPER_3(pflush, void, env, i32, i32)
1320bdb2b3bSLaurent Vivier DEF_HELPER_FLAGS_1(reset, TCG_CALL_NO_RWG, void, env)
1330bdb2b3bSLaurent Vivier #endif
134