2020-12-16 20:19:01 +01:00
|
|
|
#define dh_alias_Reg ptr
|
|
|
|
#define dh_alias_f80 ptr
|
|
|
|
#define dh_ctype_Reg E2KReg *
|
|
|
|
#define dh_ctype_f80 floatx80 *
|
|
|
|
#define dh_typecode_Reg dh_typecode_ptr
|
|
|
|
#define dh_typecode_f80 dh_typecode_ptr
|
|
|
|
#define dh_is_signed_Reg dh_is_signed_ptr
|
|
|
|
#define dh_is_signed_f80 dh_is_signed_ptr
|
|
|
|
|
2020-11-10 13:06:44 +01:00
|
|
|
DEF_HELPER_2(raise_exception, noreturn, env, int)
|
2020-12-14 08:22:21 +01:00
|
|
|
DEF_HELPER_2(raise_exception_no_spill, noreturn, env, int)
|
2020-11-28 10:32:50 +01:00
|
|
|
DEF_HELPER_2(prep_return, i64, env, int)
|
2020-11-23 07:14:26 +01:00
|
|
|
DEF_HELPER_1(return, void, env)
|
2020-11-28 08:44:53 +01:00
|
|
|
DEF_HELPER_4(call, void, env, i64, int, tl)
|
2020-12-06 15:58:07 +01:00
|
|
|
DEF_HELPER_2(sxt, i64, i64, i32)
|
2020-11-13 15:49:28 +01:00
|
|
|
DEF_HELPER_1(debug_i32, void, i32)
|
|
|
|
DEF_HELPER_1(debug_i64, void, i64)
|
2020-11-28 17:43:24 +01:00
|
|
|
DEF_HELPER_1(debug_ptr, void, ptr)
|
2020-12-01 13:00:12 +01:00
|
|
|
DEF_HELPER_2(state_reg_read_i64, i64, env, int)
|
|
|
|
DEF_HELPER_2(state_reg_read_i32, i32, env, int)
|
|
|
|
DEF_HELPER_3(state_reg_write_i64, void, env, int, i64)
|
|
|
|
DEF_HELPER_3(state_reg_write_i32, void, env, int, i32)
|
2020-12-03 20:04:53 +01:00
|
|
|
DEF_HELPER_2(getsp, i64, env, i32) /* FIXME: return tl? */
|
2020-11-23 07:14:26 +01:00
|
|
|
DEF_HELPER_1(break_restore_state, void, env)
|
2020-11-26 21:02:34 +01:00
|
|
|
DEF_HELPER_2(setwd, void, env, i32)
|
2020-12-02 14:06:50 +01:00
|
|
|
DEF_HELPER_2(probe_read_access, int, env, tl)
|
|
|
|
DEF_HELPER_2(probe_write_access, int, env, tl)
|
2020-12-02 19:38:14 +01:00
|
|
|
DEF_HELPER_3(packed_shuffle_i64, i64, i64, i64, i64)
|
2020-12-03 19:38:46 +01:00
|
|
|
DEF_HELPER_2(pcmpeqb, i64, i64, i64)
|
2020-12-09 22:27:05 +01:00
|
|
|
DEF_HELPER_2(pminub, i64, i64, i64)
|
|
|
|
DEF_HELPER_2(pminsh, i64, i64, i64)
|
|
|
|
DEF_HELPER_2(pmaxub, i64, i64, i64)
|
|
|
|
DEF_HELPER_2(pmaxsh, i64, i64, i64)
|
2020-12-09 22:41:19 +01:00
|
|
|
DEF_HELPER_2(pmovmskb, i64, i64, i64)
|
2020-12-08 17:57:28 +01:00
|
|
|
DEF_HELPER_1(aau_load_program, void, env)
|
|
|
|
DEF_HELPER_3(mova_ptr, tl, env, int, int)
|
|
|
|
DEF_HELPER_3(aau_am, void, env, int, int)
|
2020-12-15 16:16:37 +01:00
|
|
|
DEF_HELPER_4(dam_lock_addr, void, env, i64, int, int)
|
|
|
|
DEF_HELPER_4(dam_unlock_addr, int, env, i64, int, int)
|
2020-12-09 20:12:43 +01:00
|
|
|
|
|
|
|
#define DEF_HELPER_3_32_64(name) \
|
|
|
|
DEF_HELPER_3(name##s, i32, env, i32, i32) \
|
|
|
|
DEF_HELPER_3(name##d, i64, env, i64, i64)
|
|
|
|
|
2020-12-21 17:10:14 +01:00
|
|
|
#define DEF_HELPER_3_32_64_80(name) \
|
|
|
|
DEF_HELPER_3_32_64(f##name) \
|
|
|
|
DEF_HELPER_3(fx##name##x, i64, env, f80, f80)
|
|
|
|
|
2020-12-09 20:12:43 +01:00
|
|
|
DEF_HELPER_3_32_64(fadd)
|
|
|
|
DEF_HELPER_3_32_64(fsub)
|
|
|
|
DEF_HELPER_3_32_64(fmin)
|
|
|
|
DEF_HELPER_3_32_64(fmax)
|
|
|
|
DEF_HELPER_3_32_64(fmul)
|
|
|
|
DEF_HELPER_3_32_64(fdiv)
|
2020-12-21 17:10:14 +01:00
|
|
|
DEF_HELPER_3_32_64_80(cmpeq)
|
|
|
|
DEF_HELPER_3_32_64_80(cmpneq)
|
|
|
|
DEF_HELPER_3_32_64_80(cmple)
|
|
|
|
DEF_HELPER_3_32_64_80(cmpnle)
|
|
|
|
DEF_HELPER_3_32_64_80(cmplt)
|
|
|
|
DEF_HELPER_3_32_64_80(cmpnlt)
|
|
|
|
DEF_HELPER_3_32_64_80(cmpuod)
|
|
|
|
DEF_HELPER_3_32_64_80(cmpod)
|
|
|
|
#undef DEF_HELPER_3_32_64_80
|
2020-12-09 23:23:46 +01:00
|
|
|
#undef DEF_HELPER_3_32_64
|
|
|
|
|
|
|
|
DEF_HELPER_2(fstois, i32, env, i32)
|
|
|
|
DEF_HELPER_2(istofs, i32, env, i32)
|
|
|
|
DEF_HELPER_2(fstoistr, i32, env, i32)
|
2020-12-16 20:19:01 +01:00
|
|
|
DEF_HELPER_3(fstofx, void, f80, env, i32)
|
2020-12-09 23:23:46 +01:00
|
|
|
|
|
|
|
DEF_HELPER_2(fdtoid, i64, env, i64)
|
|
|
|
DEF_HELPER_2(idtofd, i64, env, i64)
|
|
|
|
DEF_HELPER_2(fdtoidtr, i64, env, i64)
|
2020-12-16 20:19:01 +01:00
|
|
|
DEF_HELPER_3(fdtofx, void, f80, env, i64)
|
2020-12-09 23:23:46 +01:00
|
|
|
|
|
|
|
DEF_HELPER_2(fstofd, i64, env, i32)
|
|
|
|
DEF_HELPER_2(fstoid, i64, env, i32)
|
|
|
|
DEF_HELPER_2(istofd, i64, env, i32)
|
|
|
|
DEF_HELPER_2(fstoidtr, i64, env, i32)
|
|
|
|
|
|
|
|
DEF_HELPER_2(fdtofs, i32, env, i64)
|
|
|
|
DEF_HELPER_2(fdtois, i32, env, i64)
|
|
|
|
DEF_HELPER_2(idtofs, i32, env, i64)
|
|
|
|
DEF_HELPER_2(fdtoistr, i32, env, i64)
|
2020-12-16 20:19:01 +01:00
|
|
|
|
|
|
|
DEF_HELPER_2(fxtofs, i32, env, f80)
|
|
|
|
DEF_HELPER_2(fxtofd, i64, env, f80)
|
|
|
|
|
|
|
|
DEF_HELPER_3(fxaddxx, void, env, f80, f80)
|
|
|
|
DEF_HELPER_3(fxsubxx, void, env, f80, f80)
|
|
|
|
DEF_HELPER_3(fxrsubxx, void, env, f80, f80)
|
|
|
|
DEF_HELPER_3(fxmulxx, void, env, f80, f80)
|
|
|
|
DEF_HELPER_3(fxdivxx, void, env, f80, f80)
|