1 #if TARGET_REGISTER_BITS == 64
2 # define dh_alias_tr i64
3 # define dh_typecode_tr dh_typecode_i64
5 # define dh_alias_tr i32
6 # define dh_typecode_tr dh_typecode_i32
8 #define dh_ctype_tr target_ureg
10 DEF_HELPER_2(excp
, noreturn
, env
, int)
11 DEF_HELPER_FLAGS_2(tsv
, TCG_CALL_NO_WG
, void, env
, tr
)
12 DEF_HELPER_FLAGS_2(tcond
, TCG_CALL_NO_WG
, void, env
, tr
)
14 DEF_HELPER_FLAGS_3(stby_b
, TCG_CALL_NO_WG
, void, env
, tl
, tr
)
15 DEF_HELPER_FLAGS_3(stby_b_parallel
, TCG_CALL_NO_WG
, void, env
, tl
, tr
)
16 DEF_HELPER_FLAGS_3(stby_e
, TCG_CALL_NO_WG
, void, env
, tl
, tr
)
17 DEF_HELPER_FLAGS_3(stby_e_parallel
, TCG_CALL_NO_WG
, void, env
, tl
, tr
)
19 DEF_HELPER_FLAGS_1(ldc_check
, TCG_CALL_NO_RWG
, void, tl
)
21 DEF_HELPER_FLAGS_4(probe
, TCG_CALL_NO_WG
, tr
, env
, tl
, i32
, i32
)
23 DEF_HELPER_FLAGS_1(loaded_fr0
, TCG_CALL_NO_RWG
, void, env
)
25 DEF_HELPER_FLAGS_2(fsqrt_s
, TCG_CALL_NO_RWG
, f32
, env
, f32
)
26 DEF_HELPER_FLAGS_2(frnd_s
, TCG_CALL_NO_RWG
, f32
, env
, f32
)
27 DEF_HELPER_FLAGS_3(fadd_s
, TCG_CALL_NO_RWG
, f32
, env
, f32
, f32
)
28 DEF_HELPER_FLAGS_3(fsub_s
, TCG_CALL_NO_RWG
, f32
, env
, f32
, f32
)
29 DEF_HELPER_FLAGS_3(fmpy_s
, TCG_CALL_NO_RWG
, f32
, env
, f32
, f32
)
30 DEF_HELPER_FLAGS_3(fdiv_s
, TCG_CALL_NO_RWG
, f32
, env
, f32
, f32
)
32 DEF_HELPER_FLAGS_2(fsqrt_d
, TCG_CALL_NO_RWG
, f64
, env
, f64
)
33 DEF_HELPER_FLAGS_2(frnd_d
, TCG_CALL_NO_RWG
, f64
, env
, f64
)
34 DEF_HELPER_FLAGS_3(fadd_d
, TCG_CALL_NO_RWG
, f64
, env
, f64
, f64
)
35 DEF_HELPER_FLAGS_3(fsub_d
, TCG_CALL_NO_RWG
, f64
, env
, f64
, f64
)
36 DEF_HELPER_FLAGS_3(fmpy_d
, TCG_CALL_NO_RWG
, f64
, env
, f64
, f64
)
37 DEF_HELPER_FLAGS_3(fdiv_d
, TCG_CALL_NO_RWG
, f64
, env
, f64
, f64
)
39 DEF_HELPER_FLAGS_2(fcnv_s_d
, TCG_CALL_NO_RWG
, f64
, env
, f32
)
40 DEF_HELPER_FLAGS_2(fcnv_d_s
, TCG_CALL_NO_RWG
, f32
, env
, f64
)
42 DEF_HELPER_FLAGS_2(fcnv_w_s
, TCG_CALL_NO_RWG
, f32
, env
, s32
)
43 DEF_HELPER_FLAGS_2(fcnv_dw_s
, TCG_CALL_NO_RWG
, f32
, env
, s64
)
44 DEF_HELPER_FLAGS_2(fcnv_w_d
, TCG_CALL_NO_RWG
, f64
, env
, s32
)
45 DEF_HELPER_FLAGS_2(fcnv_dw_d
, TCG_CALL_NO_RWG
, f64
, env
, s64
)
47 DEF_HELPER_FLAGS_2(fcnv_s_w
, TCG_CALL_NO_RWG
, s32
, env
, f32
)
48 DEF_HELPER_FLAGS_2(fcnv_d_w
, TCG_CALL_NO_RWG
, s32
, env
, f64
)
49 DEF_HELPER_FLAGS_2(fcnv_s_dw
, TCG_CALL_NO_RWG
, s64
, env
, f32
)
50 DEF_HELPER_FLAGS_2(fcnv_d_dw
, TCG_CALL_NO_RWG
, s64
, env
, f64
)
52 DEF_HELPER_FLAGS_2(fcnv_t_s_w
, TCG_CALL_NO_RWG
, s32
, env
, f32
)
53 DEF_HELPER_FLAGS_2(fcnv_t_d_w
, TCG_CALL_NO_RWG
, s32
, env
, f64
)
54 DEF_HELPER_FLAGS_2(fcnv_t_s_dw
, TCG_CALL_NO_RWG
, s64
, env
, f32
)
55 DEF_HELPER_FLAGS_2(fcnv_t_d_dw
, TCG_CALL_NO_RWG
, s64
, env
, f64
)
57 DEF_HELPER_FLAGS_2(fcnv_uw_s
, TCG_CALL_NO_RWG
, f32
, env
, i32
)
58 DEF_HELPER_FLAGS_2(fcnv_udw_s
, TCG_CALL_NO_RWG
, f32
, env
, i64
)
59 DEF_HELPER_FLAGS_2(fcnv_uw_d
, TCG_CALL_NO_RWG
, f64
, env
, i32
)
60 DEF_HELPER_FLAGS_2(fcnv_udw_d
, TCG_CALL_NO_RWG
, f64
, env
, i64
)
62 DEF_HELPER_FLAGS_2(fcnv_s_uw
, TCG_CALL_NO_RWG
, i32
, env
, f32
)
63 DEF_HELPER_FLAGS_2(fcnv_d_uw
, TCG_CALL_NO_RWG
, i32
, env
, f64
)
64 DEF_HELPER_FLAGS_2(fcnv_s_udw
, TCG_CALL_NO_RWG
, i64
, env
, f32
)
65 DEF_HELPER_FLAGS_2(fcnv_d_udw
, TCG_CALL_NO_RWG
, i64
, env
, f64
)
67 DEF_HELPER_FLAGS_2(fcnv_t_s_uw
, TCG_CALL_NO_RWG
, i32
, env
, f32
)
68 DEF_HELPER_FLAGS_2(fcnv_t_d_uw
, TCG_CALL_NO_RWG
, i32
, env
, f64
)
69 DEF_HELPER_FLAGS_2(fcnv_t_s_udw
, TCG_CALL_NO_RWG
, i64
, env
, f32
)
70 DEF_HELPER_FLAGS_2(fcnv_t_d_udw
, TCG_CALL_NO_RWG
, i64
, env
, f64
)
72 DEF_HELPER_FLAGS_5(fcmp_s
, TCG_CALL_NO_RWG
, void, env
, f32
, f32
, i32
, i32
)
73 DEF_HELPER_FLAGS_5(fcmp_d
, TCG_CALL_NO_RWG
, void, env
, f64
, f64
, i32
, i32
)
75 DEF_HELPER_FLAGS_4(fmpyfadd_s
, TCG_CALL_NO_RWG
, i32
, env
, i32
, i32
, i32
)
76 DEF_HELPER_FLAGS_4(fmpynfadd_s
, TCG_CALL_NO_RWG
, i32
, env
, i32
, i32
, i32
)
77 DEF_HELPER_FLAGS_4(fmpyfadd_d
, TCG_CALL_NO_RWG
, i64
, env
, i64
, i64
, i64
)
78 DEF_HELPER_FLAGS_4(fmpynfadd_d
, TCG_CALL_NO_RWG
, i64
, env
, i64
, i64
, i64
)
80 DEF_HELPER_FLAGS_0(read_interval_timer
, TCG_CALL_NO_RWG
, tr
)
82 #ifndef CONFIG_USER_ONLY
83 DEF_HELPER_1(halt
, noreturn
, env
)
84 DEF_HELPER_1(reset
, noreturn
, env
)
85 DEF_HELPER_1(getshadowregs
, void, env
)
86 DEF_HELPER_1(rfi
, void, env
)
87 DEF_HELPER_1(rfi_r
, void, env
)
88 DEF_HELPER_FLAGS_2(write_interval_timer
, TCG_CALL_NO_RWG
, void, env
, tr
)
89 DEF_HELPER_FLAGS_2(write_eirr
, TCG_CALL_NO_RWG
, void, env
, tr
)
90 DEF_HELPER_FLAGS_2(write_eiem
, TCG_CALL_NO_RWG
, void, env
, tr
)
91 DEF_HELPER_FLAGS_2(swap_system_mask
, TCG_CALL_NO_RWG
, tr
, env
, tr
)
92 DEF_HELPER_FLAGS_3(itlba
, TCG_CALL_NO_RWG
, void, env
, tl
, tr
)
93 DEF_HELPER_FLAGS_3(itlbp
, TCG_CALL_NO_RWG
, void, env
, tl
, tr
)
94 DEF_HELPER_FLAGS_2(ptlb
, TCG_CALL_NO_RWG
, void, env
, tl
)
95 DEF_HELPER_FLAGS_1(ptlbe
, TCG_CALL_NO_RWG
, void, env
)
96 DEF_HELPER_FLAGS_2(lpa
, TCG_CALL_NO_WG
, tr
, env
, tl
)
97 DEF_HELPER_FLAGS_1(change_prot_id
, TCG_CALL_NO_RWG
, void, env
)