1 #if TARGET_REGISTER_BITS == 64
2 # define dh_alias_tr i64
3 # define dh_is_64bit_tr 1
5 # define dh_alias_tr i32
6 # define dh_is_64bit_tr 0
8 #define dh_ctype_tr target_ureg
9 #define dh_is_signed_tr 0
11 DEF_HELPER_2(excp
, noreturn
, env
, int)
12 DEF_HELPER_FLAGS_2(tsv
, TCG_CALL_NO_WG
, void, env
, tr
)
13 DEF_HELPER_FLAGS_2(tcond
, TCG_CALL_NO_WG
, void, env
, tr
)
15 DEF_HELPER_FLAGS_3(stby_b
, TCG_CALL_NO_WG
, void, env
, tl
, tr
)
16 DEF_HELPER_FLAGS_3(stby_b_parallel
, TCG_CALL_NO_WG
, void, env
, tl
, tr
)
17 DEF_HELPER_FLAGS_3(stby_e
, TCG_CALL_NO_WG
, void, env
, tl
, tr
)
18 DEF_HELPER_FLAGS_3(stby_e_parallel
, TCG_CALL_NO_WG
, void, env
, tl
, tr
)
20 DEF_HELPER_FLAGS_1(ldc_check
, TCG_CALL_NO_RWG
, void, tl
)
22 DEF_HELPER_FLAGS_4(probe
, TCG_CALL_NO_WG
, tr
, env
, tl
, i32
, i32
)
24 DEF_HELPER_FLAGS_1(loaded_fr0
, TCG_CALL_NO_RWG
, void, env
)
26 DEF_HELPER_FLAGS_2(fsqrt_s
, TCG_CALL_NO_RWG
, f32
, env
, f32
)
27 DEF_HELPER_FLAGS_2(frnd_s
, TCG_CALL_NO_RWG
, f32
, env
, f32
)
28 DEF_HELPER_FLAGS_3(fadd_s
, TCG_CALL_NO_RWG
, f32
, env
, f32
, f32
)
29 DEF_HELPER_FLAGS_3(fsub_s
, TCG_CALL_NO_RWG
, f32
, env
, f32
, f32
)
30 DEF_HELPER_FLAGS_3(fmpy_s
, TCG_CALL_NO_RWG
, f32
, env
, f32
, f32
)
31 DEF_HELPER_FLAGS_3(fdiv_s
, TCG_CALL_NO_RWG
, f32
, env
, f32
, f32
)
33 DEF_HELPER_FLAGS_2(fsqrt_d
, TCG_CALL_NO_RWG
, f64
, env
, f64
)
34 DEF_HELPER_FLAGS_2(frnd_d
, TCG_CALL_NO_RWG
, f64
, env
, f64
)
35 DEF_HELPER_FLAGS_3(fadd_d
, TCG_CALL_NO_RWG
, f64
, env
, f64
, f64
)
36 DEF_HELPER_FLAGS_3(fsub_d
, TCG_CALL_NO_RWG
, f64
, env
, f64
, f64
)
37 DEF_HELPER_FLAGS_3(fmpy_d
, TCG_CALL_NO_RWG
, f64
, env
, f64
, f64
)
38 DEF_HELPER_FLAGS_3(fdiv_d
, TCG_CALL_NO_RWG
, f64
, env
, f64
, f64
)
40 DEF_HELPER_FLAGS_2(fcnv_s_d
, TCG_CALL_NO_RWG
, f64
, env
, f32
)
41 DEF_HELPER_FLAGS_2(fcnv_d_s
, TCG_CALL_NO_RWG
, f32
, env
, f64
)
43 DEF_HELPER_FLAGS_2(fcnv_w_s
, TCG_CALL_NO_RWG
, f32
, env
, s32
)
44 DEF_HELPER_FLAGS_2(fcnv_dw_s
, TCG_CALL_NO_RWG
, f32
, env
, s64
)
45 DEF_HELPER_FLAGS_2(fcnv_w_d
, TCG_CALL_NO_RWG
, f64
, env
, s32
)
46 DEF_HELPER_FLAGS_2(fcnv_dw_d
, TCG_CALL_NO_RWG
, f64
, env
, s64
)
48 DEF_HELPER_FLAGS_2(fcnv_s_w
, TCG_CALL_NO_RWG
, s32
, env
, f32
)
49 DEF_HELPER_FLAGS_2(fcnv_d_w
, TCG_CALL_NO_RWG
, s32
, env
, f64
)
50 DEF_HELPER_FLAGS_2(fcnv_s_dw
, TCG_CALL_NO_RWG
, s64
, env
, f32
)
51 DEF_HELPER_FLAGS_2(fcnv_d_dw
, TCG_CALL_NO_RWG
, s64
, env
, f64
)
53 DEF_HELPER_FLAGS_2(fcnv_t_s_w
, TCG_CALL_NO_RWG
, s32
, env
, f32
)
54 DEF_HELPER_FLAGS_2(fcnv_t_d_w
, TCG_CALL_NO_RWG
, s32
, env
, f64
)
55 DEF_HELPER_FLAGS_2(fcnv_t_s_dw
, TCG_CALL_NO_RWG
, s64
, env
, f32
)
56 DEF_HELPER_FLAGS_2(fcnv_t_d_dw
, TCG_CALL_NO_RWG
, s64
, env
, f64
)
58 DEF_HELPER_FLAGS_2(fcnv_uw_s
, TCG_CALL_NO_RWG
, f32
, env
, i32
)
59 DEF_HELPER_FLAGS_2(fcnv_udw_s
, TCG_CALL_NO_RWG
, f32
, env
, i64
)
60 DEF_HELPER_FLAGS_2(fcnv_uw_d
, TCG_CALL_NO_RWG
, f64
, env
, i32
)
61 DEF_HELPER_FLAGS_2(fcnv_udw_d
, TCG_CALL_NO_RWG
, f64
, env
, i64
)
63 DEF_HELPER_FLAGS_2(fcnv_s_uw
, TCG_CALL_NO_RWG
, i32
, env
, f32
)
64 DEF_HELPER_FLAGS_2(fcnv_d_uw
, TCG_CALL_NO_RWG
, i32
, env
, f64
)
65 DEF_HELPER_FLAGS_2(fcnv_s_udw
, TCG_CALL_NO_RWG
, i64
, env
, f32
)
66 DEF_HELPER_FLAGS_2(fcnv_d_udw
, TCG_CALL_NO_RWG
, i64
, env
, f64
)
68 DEF_HELPER_FLAGS_2(fcnv_t_s_uw
, TCG_CALL_NO_RWG
, i32
, env
, f32
)
69 DEF_HELPER_FLAGS_2(fcnv_t_d_uw
, TCG_CALL_NO_RWG
, i32
, env
, f64
)
70 DEF_HELPER_FLAGS_2(fcnv_t_s_udw
, TCG_CALL_NO_RWG
, i64
, env
, f32
)
71 DEF_HELPER_FLAGS_2(fcnv_t_d_udw
, TCG_CALL_NO_RWG
, i64
, env
, f64
)
73 DEF_HELPER_FLAGS_5(fcmp_s
, TCG_CALL_NO_RWG
, void, env
, f32
, f32
, i32
, i32
)
74 DEF_HELPER_FLAGS_5(fcmp_d
, TCG_CALL_NO_RWG
, void, env
, f64
, f64
, i32
, i32
)
76 DEF_HELPER_FLAGS_4(fmpyfadd_s
, TCG_CALL_NO_RWG
, i32
, env
, i32
, i32
, i32
)
77 DEF_HELPER_FLAGS_4(fmpynfadd_s
, TCG_CALL_NO_RWG
, i32
, env
, i32
, i32
, i32
)
78 DEF_HELPER_FLAGS_4(fmpyfadd_d
, TCG_CALL_NO_RWG
, i64
, env
, i64
, i64
, i64
)
79 DEF_HELPER_FLAGS_4(fmpynfadd_d
, TCG_CALL_NO_RWG
, i64
, env
, i64
, i64
, i64
)
81 DEF_HELPER_FLAGS_0(read_interval_timer
, TCG_CALL_NO_RWG
, tr
)
83 #ifndef CONFIG_USER_ONLY
84 DEF_HELPER_1(halt
, noreturn
, env
)
85 DEF_HELPER_1(reset
, noreturn
, 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
)