Statistics
| Branch: | Revision:

root / target-sparc / helper.h @ c48fcb47

History | View | Annotate | Download (6.7 kB)

1 1a2fb1c0 blueswir1
#define TCG_HELPER_PROTO
2 1a2fb1c0 blueswir1
3 1a2fb1c0 blueswir1
#ifndef TARGET_SPARC64
4 1a2fb1c0 blueswir1
void TCG_HELPER_PROTO helper_rett(void);
5 1a2fb1c0 blueswir1
void TCG_HELPER_PROTO helper_wrpsr(target_ulong new_psr);
6 1a2fb1c0 blueswir1
target_ulong TCG_HELPER_PROTO helper_rdpsr(void);
7 1a2fb1c0 blueswir1
#else
8 1a2fb1c0 blueswir1
void TCG_HELPER_PROTO helper_wrpstate(target_ulong new_state);
9 1a2fb1c0 blueswir1
void TCG_HELPER_PROTO helper_done(void);
10 1a2fb1c0 blueswir1
void TCG_HELPER_PROTO helper_retry(void);
11 72a9747b blueswir1
void TCG_HELPER_PROTO helper_flushw(void);
12 72a9747b blueswir1
void TCG_HELPER_PROTO helper_saved(void);
13 72a9747b blueswir1
void TCG_HELPER_PROTO helper_restored(void);
14 d35527d9 blueswir1
target_ulong TCG_HELPER_PROTO helper_rdccr(void);
15 d35527d9 blueswir1
void TCG_HELPER_PROTO helper_wrccr(target_ulong new_ccr);
16 d35527d9 blueswir1
target_ulong TCG_HELPER_PROTO helper_rdcwp(void);
17 d35527d9 blueswir1
void TCG_HELPER_PROTO helper_wrcwp(target_ulong new_cwp);
18 1f5063fb blueswir1
target_ulong TCG_HELPER_PROTO helper_array8(target_ulong pixel_addr,
19 1f5063fb blueswir1
                                            target_ulong cubesize);
20 1f5063fb blueswir1
target_ulong TCG_HELPER_PROTO helper_alignaddr(target_ulong addr,
21 1f5063fb blueswir1
                                               target_ulong offset);
22 1a2fb1c0 blueswir1
target_ulong TCG_HELPER_PROTO helper_popc(target_ulong val);
23 1a2fb1c0 blueswir1
void TCG_HELPER_PROTO helper_ldf_asi(target_ulong addr, int asi, int size,
24 1a2fb1c0 blueswir1
                                     int rd);
25 1a2fb1c0 blueswir1
void TCG_HELPER_PROTO helper_stf_asi(target_ulong addr, int asi, int size,
26 1a2fb1c0 blueswir1
                                     int rd);
27 1a2fb1c0 blueswir1
target_ulong TCG_HELPER_PROTO
28 1a2fb1c0 blueswir1
helper_cas_asi(target_ulong addr, target_ulong val1,
29 1a2fb1c0 blueswir1
               target_ulong val2, uint32_t asi);
30 1a2fb1c0 blueswir1
target_ulong  TCG_HELPER_PROTO
31 1a2fb1c0 blueswir1
helper_casx_asi(target_ulong addr, target_ulong val1,
32 1a2fb1c0 blueswir1
                target_ulong val2, uint32_t asi);
33 ccd4a219 blueswir1
void TCG_HELPER_PROTO helper_tick_set_count(void *opaque, uint64_t count);
34 ccd4a219 blueswir1
uint64_t TCG_HELPER_PROTO helper_tick_get_count(void *opaque);
35 ccd4a219 blueswir1
void TCG_HELPER_PROTO helper_tick_set_limit(void *opaque, uint64_t limit);
36 1a2fb1c0 blueswir1
#endif
37 1a2fb1c0 blueswir1
void TCG_HELPER_PROTO helper_trap(target_ulong nb_trap);
38 1a2fb1c0 blueswir1
void TCG_HELPER_PROTO helper_trapcc(target_ulong nb_trap,
39 1a2fb1c0 blueswir1
                                    target_ulong do_trap);
40 2b29924f blueswir1
void TCG_HELPER_PROTO helper_check_align(target_ulong addr, uint32_t align);
41 1a2fb1c0 blueswir1
void TCG_HELPER_PROTO helper_debug(void);
42 72a9747b blueswir1
void TCG_HELPER_PROTO helper_save(void);
43 72a9747b blueswir1
void TCG_HELPER_PROTO helper_restore(void);
44 1a2fb1c0 blueswir1
void TCG_HELPER_PROTO helper_flush(target_ulong addr);
45 3b89f26c blueswir1
target_ulong TCG_HELPER_PROTO helper_udiv(target_ulong a, target_ulong b);
46 3b89f26c blueswir1
target_ulong TCG_HELPER_PROTO helper_sdiv(target_ulong a, target_ulong b);
47 1a2fb1c0 blueswir1
uint64_t TCG_HELPER_PROTO helper_pack64(target_ulong high, target_ulong low);
48 1a2fb1c0 blueswir1
uint64_t TCG_HELPER_PROTO helper_ld_asi(target_ulong addr, int asi,
49 1a2fb1c0 blueswir1
                                        int size, int sign);
50 1a2fb1c0 blueswir1
void TCG_HELPER_PROTO helper_st_asi(target_ulong addr, uint64_t val, int asi,
51 1a2fb1c0 blueswir1
                                    int size);
52 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_ldfsr(void);
53 bb5529bb blueswir1
void TCG_HELPER_PROTO helper_stfsr(void);
54 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_check_ieee_exceptions(void);
55 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_clear_float_exceptions(void);
56 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fabss(void);
57 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fsqrts(void);
58 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fsqrtd(void);
59 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmps(void);
60 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmpd(void);
61 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmpes(void);
62 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmped(void);
63 7e8c2b6c blueswir1
#if defined(CONFIG_USER_ONLY)
64 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fsqrtq(void);
65 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmpq(void);
66 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmpeq(void);
67 7e8c2b6c blueswir1
#endif
68 7e8c2b6c blueswir1
#ifdef TARGET_SPARC64
69 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fabsd(void);
70 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmps_fcc1(void);
71 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmpd_fcc1(void);
72 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmps_fcc2(void);
73 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmpd_fcc2(void);
74 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmps_fcc3(void);
75 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmpd_fcc3(void);
76 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmpes_fcc1(void);
77 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmped_fcc1(void);
78 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmpes_fcc2(void);
79 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmped_fcc2(void);
80 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmpes_fcc3(void);
81 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmped_fcc3(void);
82 7e8c2b6c blueswir1
#if defined(CONFIG_USER_ONLY)
83 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fabsq(void);
84 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmpq_fcc1(void);
85 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmpq_fcc2(void);
86 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmpq_fcc3(void);
87 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmpeq_fcc1(void);
88 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmpeq_fcc2(void);
89 7e8c2b6c blueswir1
void TCG_HELPER_PROTO helper_fcmpeq_fcc3(void);
90 7e8c2b6c blueswir1
#endif
91 7e8c2b6c blueswir1
#endif
92 134d77a1 blueswir1
void TCG_HELPER_PROTO raise_exception(int tt);
93 44e7757c blueswir1
#define F_HELPER_0_0(name) void TCG_HELPER_PROTO helper_f ## name(void)
94 44e7757c blueswir1
#if defined(CONFIG_USER_ONLY)
95 44e7757c blueswir1
#define F_HELPER_SDQ_0_0(name)                  \
96 44e7757c blueswir1
    F_HELPER_0_0(name ## s);                    \
97 44e7757c blueswir1
    F_HELPER_0_0(name ## d);                    \
98 44e7757c blueswir1
    F_HELPER_0_0(name ## q)
99 44e7757c blueswir1
#else
100 44e7757c blueswir1
#define F_HELPER_SDQ_0_0(name)                  \
101 44e7757c blueswir1
    F_HELPER_0_0(name ## s);                    \
102 44e7757c blueswir1
    F_HELPER_0_0(name ## d);
103 44e7757c blueswir1
#endif
104 44e7757c blueswir1
105 44e7757c blueswir1
F_HELPER_SDQ_0_0(add);
106 44e7757c blueswir1
F_HELPER_SDQ_0_0(sub);
107 44e7757c blueswir1
F_HELPER_SDQ_0_0(mul);
108 44e7757c blueswir1
F_HELPER_SDQ_0_0(div);
109 44e7757c blueswir1
110 44e7757c blueswir1
F_HELPER_0_0(smuld);
111 44e7757c blueswir1
F_HELPER_0_0(dmulq);
112 44e7757c blueswir1
113 44e7757c blueswir1
F_HELPER_SDQ_0_0(neg);
114 44e7757c blueswir1
F_HELPER_SDQ_0_0(ito);
115 44e7757c blueswir1
#ifdef TARGET_SPARC64
116 44e7757c blueswir1
F_HELPER_SDQ_0_0(xto);
117 44e7757c blueswir1
#endif
118 44e7757c blueswir1
F_HELPER_0_0(dtos);
119 44e7757c blueswir1
F_HELPER_0_0(stod);
120 44e7757c blueswir1
#if defined(CONFIG_USER_ONLY)
121 44e7757c blueswir1
F_HELPER_0_0(qtos);
122 44e7757c blueswir1
F_HELPER_0_0(stoq);
123 44e7757c blueswir1
F_HELPER_0_0(qtod);
124 44e7757c blueswir1
F_HELPER_0_0(dtoq);
125 44e7757c blueswir1
#endif
126 44e7757c blueswir1
F_HELPER_0_0(stoi);
127 44e7757c blueswir1
F_HELPER_0_0(dtoi);
128 44e7757c blueswir1
#if defined(CONFIG_USER_ONLY)
129 44e7757c blueswir1
F_HELPER_0_0(qtoi);
130 44e7757c blueswir1
#endif
131 44e7757c blueswir1
#ifdef TARGET_SPARC64
132 44e7757c blueswir1
F_HELPER_0_0(stox);
133 44e7757c blueswir1
F_HELPER_0_0(dtox);
134 44e7757c blueswir1
#if defined(CONFIG_USER_ONLY)
135 44e7757c blueswir1
F_HELPER_0_0(qtox);
136 44e7757c blueswir1
#endif
137 44e7757c blueswir1
F_HELPER_0_0(aligndata);
138 44e7757c blueswir1
void TCG_HELPER_PROTO helper_movl_FT0_0(void);
139 44e7757c blueswir1
void TCG_HELPER_PROTO helper_movl_DT0_0(void);
140 44e7757c blueswir1
void TCG_HELPER_PROTO helper_movl_FT0_1(void);
141 44e7757c blueswir1
void TCG_HELPER_PROTO helper_movl_DT0_1(void);
142 44e7757c blueswir1
F_HELPER_0_0(not);
143 44e7757c blueswir1
F_HELPER_0_0(nots);
144 44e7757c blueswir1
F_HELPER_0_0(nor);
145 44e7757c blueswir1
F_HELPER_0_0(nors);
146 44e7757c blueswir1
F_HELPER_0_0(or);
147 44e7757c blueswir1
F_HELPER_0_0(ors);
148 44e7757c blueswir1
F_HELPER_0_0(xor);
149 44e7757c blueswir1
F_HELPER_0_0(xors);
150 44e7757c blueswir1
F_HELPER_0_0(and);
151 44e7757c blueswir1
F_HELPER_0_0(ands);
152 44e7757c blueswir1
F_HELPER_0_0(ornot);
153 44e7757c blueswir1
F_HELPER_0_0(ornots);
154 44e7757c blueswir1
F_HELPER_0_0(andnot);
155 44e7757c blueswir1
F_HELPER_0_0(andnots);
156 44e7757c blueswir1
F_HELPER_0_0(nand);
157 44e7757c blueswir1
F_HELPER_0_0(nands);
158 44e7757c blueswir1
F_HELPER_0_0(xnor);
159 44e7757c blueswir1
F_HELPER_0_0(xnors);
160 44e7757c blueswir1
F_HELPER_0_0(pmerge);
161 44e7757c blueswir1
F_HELPER_0_0(mul8x16);
162 44e7757c blueswir1
F_HELPER_0_0(mul8x16al);
163 44e7757c blueswir1
F_HELPER_0_0(mul8x16au);
164 44e7757c blueswir1
F_HELPER_0_0(mul8sux16);
165 44e7757c blueswir1
F_HELPER_0_0(mul8ulx16);
166 44e7757c blueswir1
F_HELPER_0_0(muld8sux16);
167 44e7757c blueswir1
F_HELPER_0_0(muld8ulx16);
168 44e7757c blueswir1
F_HELPER_0_0(expand);
169 44e7757c blueswir1
#define VIS_HELPER(name)                                 \
170 44e7757c blueswir1
    F_HELPER_0_0(name##16);                              \
171 44e7757c blueswir1
    F_HELPER_0_0(name##16s);                             \
172 44e7757c blueswir1
    F_HELPER_0_0(name##32);                              \
173 44e7757c blueswir1
    F_HELPER_0_0(name##32s)
174 44e7757c blueswir1
175 44e7757c blueswir1
VIS_HELPER(padd);
176 44e7757c blueswir1
VIS_HELPER(psub);
177 44e7757c blueswir1
#define VIS_CMPHELPER(name)                              \
178 44e7757c blueswir1
    F_HELPER_0_0(name##16);                              \
179 44e7757c blueswir1
    F_HELPER_0_0(name##32)
180 44e7757c blueswir1
VIS_CMPHELPER(cmpgt);
181 44e7757c blueswir1
VIS_CMPHELPER(cmpeq);
182 44e7757c blueswir1
VIS_CMPHELPER(cmple);
183 44e7757c blueswir1
VIS_CMPHELPER(cmpne);
184 44e7757c blueswir1
#endif
185 44e7757c blueswir1
#undef F_HELPER_0_0
186 44e7757c blueswir1
#undef F_HELPER_SDQ_0_0
187 44e7757c blueswir1
#undef VIS_HELPER
188 44e7757c blueswir1
#undef VIS_CMPHELPER