]> git.proxmox.com Git - qemu.git/blob - target-alpha/helper.h
target-alpha: Implement cpys{, n, e} inline.
[qemu.git] / target-alpha / helper.h
1 #include "def-helper.h"
2
3 DEF_HELPER_2(excp, void, int, int)
4 DEF_HELPER_FLAGS_0(load_pcc, TCG_CALL_CONST | TCG_CALL_PURE, i64)
5 DEF_HELPER_FLAGS_0(rc, TCG_CALL_CONST, i64)
6 DEF_HELPER_FLAGS_0(rs, TCG_CALL_CONST, i64)
7
8 DEF_HELPER_2(addqv, i64, i64, i64)
9 DEF_HELPER_2(addlv, i64, i64, i64)
10 DEF_HELPER_2(subqv, i64, i64, i64)
11 DEF_HELPER_2(sublv, i64, i64, i64)
12 DEF_HELPER_2(mullv, i64, i64, i64)
13 DEF_HELPER_2(mulqv, i64, i64, i64)
14 DEF_HELPER_FLAGS_2(umulh, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
15
16 DEF_HELPER_FLAGS_1(ctpop, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64)
17 DEF_HELPER_FLAGS_1(ctlz, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64)
18 DEF_HELPER_FLAGS_1(cttz, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64)
19
20 DEF_HELPER_FLAGS_2(zap, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
21 DEF_HELPER_FLAGS_2(zapnot, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
22
23 DEF_HELPER_FLAGS_2(cmpbge, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
24
25 DEF_HELPER_FLAGS_2(minub8, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
26 DEF_HELPER_FLAGS_2(minsb8, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
27 DEF_HELPER_FLAGS_2(minuw4, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
28 DEF_HELPER_FLAGS_2(minsw4, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
29 DEF_HELPER_FLAGS_2(maxub8, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
30 DEF_HELPER_FLAGS_2(maxsb8, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
31 DEF_HELPER_FLAGS_2(maxuw4, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
32 DEF_HELPER_FLAGS_2(maxsw4, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
33 DEF_HELPER_FLAGS_2(perr, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
34 DEF_HELPER_FLAGS_1(pklb, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64)
35 DEF_HELPER_FLAGS_1(pkwb, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64)
36 DEF_HELPER_FLAGS_1(unpkbl, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64)
37 DEF_HELPER_FLAGS_1(unpkbw, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64)
38
39 DEF_HELPER_FLAGS_0(load_fpcr, TCG_CALL_CONST | TCG_CALL_PURE, i64)
40 DEF_HELPER_FLAGS_1(store_fpcr, TCG_CALL_CONST, void, i64)
41
42 DEF_HELPER_FLAGS_1(f_to_memory, TCG_CALL_CONST | TCG_CALL_PURE, i32, i64)
43 DEF_HELPER_FLAGS_1(memory_to_f, TCG_CALL_CONST | TCG_CALL_PURE, i64, i32)
44 DEF_HELPER_FLAGS_2(addf, TCG_CALL_CONST, i64, i64, i64)
45 DEF_HELPER_FLAGS_2(subf, TCG_CALL_CONST, i64, i64, i64)
46 DEF_HELPER_FLAGS_2(mulf, TCG_CALL_CONST, i64, i64, i64)
47 DEF_HELPER_FLAGS_2(divf, TCG_CALL_CONST, i64, i64, i64)
48 DEF_HELPER_FLAGS_1(sqrtf, TCG_CALL_CONST, i64, i64)
49
50 DEF_HELPER_FLAGS_1(g_to_memory, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64)
51 DEF_HELPER_FLAGS_1(memory_to_g, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64)
52 DEF_HELPER_FLAGS_2(addg, TCG_CALL_CONST, i64, i64, i64)
53 DEF_HELPER_FLAGS_2(subg, TCG_CALL_CONST, i64, i64, i64)
54 DEF_HELPER_FLAGS_2(mulg, TCG_CALL_CONST, i64, i64, i64)
55 DEF_HELPER_FLAGS_2(divg, TCG_CALL_CONST, i64, i64, i64)
56 DEF_HELPER_FLAGS_1(sqrtg, TCG_CALL_CONST, i64, i64)
57
58 DEF_HELPER_FLAGS_1(s_to_memory, TCG_CALL_CONST | TCG_CALL_PURE, i32, i64)
59 DEF_HELPER_FLAGS_1(memory_to_s, TCG_CALL_CONST | TCG_CALL_PURE, i64, i32)
60 DEF_HELPER_FLAGS_2(adds, TCG_CALL_CONST, i64, i64, i64)
61 DEF_HELPER_FLAGS_2(subs, TCG_CALL_CONST, i64, i64, i64)
62 DEF_HELPER_FLAGS_2(muls, TCG_CALL_CONST, i64, i64, i64)
63 DEF_HELPER_FLAGS_2(divs, TCG_CALL_CONST, i64, i64, i64)
64 DEF_HELPER_FLAGS_1(sqrts, TCG_CALL_CONST, i64, i64)
65
66 DEF_HELPER_FLAGS_2(addt, TCG_CALL_CONST, i64, i64, i64)
67 DEF_HELPER_FLAGS_2(subt, TCG_CALL_CONST, i64, i64, i64)
68 DEF_HELPER_FLAGS_2(mult, TCG_CALL_CONST, i64, i64, i64)
69 DEF_HELPER_FLAGS_2(divt, TCG_CALL_CONST, i64, i64, i64)
70 DEF_HELPER_FLAGS_1(sqrtt, TCG_CALL_CONST, i64, i64)
71
72 DEF_HELPER_FLAGS_2(cmptun, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
73 DEF_HELPER_FLAGS_2(cmpteq, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
74 DEF_HELPER_FLAGS_2(cmptle, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
75 DEF_HELPER_FLAGS_2(cmptlt, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
76 DEF_HELPER_FLAGS_2(cmpgeq, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
77 DEF_HELPER_FLAGS_2(cmpgle, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
78 DEF_HELPER_FLAGS_2(cmpglt, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64, i64)
79
80 DEF_HELPER_FLAGS_1(cvtts, TCG_CALL_CONST, i64, i64)
81 DEF_HELPER_FLAGS_1(cvtst, TCG_CALL_CONST, i64, i64)
82 DEF_HELPER_FLAGS_1(cvtqs, TCG_CALL_CONST, i64, i64)
83 DEF_HELPER_FLAGS_1(cvtqt, TCG_CALL_CONST, i64, i64)
84 DEF_HELPER_FLAGS_1(cvtqf, TCG_CALL_CONST, i64, i64)
85 DEF_HELPER_FLAGS_1(cvtgf, TCG_CALL_CONST, i64, i64)
86 DEF_HELPER_FLAGS_1(cvtgq, TCG_CALL_CONST, i64, i64)
87 DEF_HELPER_FLAGS_1(cvtqg, TCG_CALL_CONST, i64, i64)
88 DEF_HELPER_FLAGS_1(cvtlq, TCG_CALL_CONST | TCG_CALL_PURE, i64, i64)
89
90 DEF_HELPER_FLAGS_1(cvttq, TCG_CALL_CONST, i64, i64)
91 DEF_HELPER_FLAGS_1(cvttq_c, TCG_CALL_CONST, i64, i64)
92 DEF_HELPER_FLAGS_1(cvttq_svic, TCG_CALL_CONST, i64, i64)
93
94 DEF_HELPER_FLAGS_1(setroundmode, TCG_CALL_CONST, void, i32)
95 DEF_HELPER_FLAGS_1(setflushzero, TCG_CALL_CONST, void, i32)
96 DEF_HELPER_FLAGS_0(fp_exc_clear, TCG_CALL_CONST, void)
97 DEF_HELPER_FLAGS_0(fp_exc_get, TCG_CALL_CONST | TCG_CALL_PURE, i32)
98 DEF_HELPER_2(fp_exc_raise, void, i32, i32)
99 DEF_HELPER_2(fp_exc_raise_s, void, i32, i32)
100
101 DEF_HELPER_1(ieee_input, i64, i64)
102 DEF_HELPER_1(ieee_input_cmp, i64, i64)
103 DEF_HELPER_1(ieee_input_s, i64, i64)
104
105 #if !defined (CONFIG_USER_ONLY)
106 DEF_HELPER_0(hw_rei, void)
107 DEF_HELPER_1(hw_ret, void, i64)
108 DEF_HELPER_2(mfpr, i64, int, i64)
109 DEF_HELPER_2(mtpr, void, int, i64)
110 DEF_HELPER_0(set_alt_mode, void)
111 DEF_HELPER_0(restore_mode, void)
112
113 DEF_HELPER_1(ld_virt_to_phys, i64, i64)
114 DEF_HELPER_1(st_virt_to_phys, i64, i64)
115 DEF_HELPER_2(ldl_raw, void, i64, i64)
116 DEF_HELPER_2(ldq_raw, void, i64, i64)
117 DEF_HELPER_2(ldl_l_raw, void, i64, i64)
118 DEF_HELPER_2(ldq_l_raw, void, i64, i64)
119 DEF_HELPER_2(ldl_kernel, void, i64, i64)
120 DEF_HELPER_2(ldq_kernel, void, i64, i64)
121 DEF_HELPER_2(ldl_data, void, i64, i64)
122 DEF_HELPER_2(ldq_data, void, i64, i64)
123 DEF_HELPER_2(stl_raw, void, i64, i64)
124 DEF_HELPER_2(stq_raw, void, i64, i64)
125 DEF_HELPER_2(stl_c_raw, i64, i64, i64)
126 DEF_HELPER_2(stq_c_raw, i64, i64, i64)
127 #endif
128
129 #include "def-helper.h"