~ubuntu-branches/ubuntu/trusty/qemu/trusty

« back to all changes in this revision

Viewing changes to .pc/ubuntu/arm64/0028-target-arm-A64-add-stubs-for-a64-specific-helpers.patch/target-arm/helper.h

  • Committer: Package Import Robot
  • Author(s): Serge Hallyn
  • Date: 2014-02-04 12:13:08 UTC
  • mfrom: (10.1.45 sid)
  • Revision ID: package-import@ubuntu.com-20140204121308-1xq92lrfs75agw2g
Tags: 1.7.0+dfsg-3ubuntu1~ppa1
* Merge 1.7.0+dfsg-3 from debian.  Remaining changes:
  - debian/patches/ubuntu:
    * expose-vmx_qemu64cpu.patch
    * linaro (omap3) and arm64 patches
    * ubuntu/target-ppc-add-stubs-for-kvm-breakpoints: fix FTBFS
      on ppc
    * ubuntu/CVE-2013-4377.patch: fix denial of service via virtio
  - debian/qemu-system-x86.modprobe: set kvm_intel nested=1 options
  - debian/control:
    * add arm64 to Architectures
    * add qemu-common and qemu-system-aarch64 packages
  - debian/qemu-system-common.install: add debian/tmp/usr/lib
  - debian/qemu-system-common.preinst: add kvm group
  - debian/qemu-system-common.postinst: remove acl placed by udev,
    and add udevadm trigger.
  - qemu-system-x86.links: add eepro100.rom, remove pxe-virtio,
    pxe-e1000 and pxe-rtl8139.
  - add qemu-system-x86.qemu-kvm.upstart and .default
  - qemu-user-static.postinst-in: remove arm64 binfmt
  - debian/rules:
    * allow parallel build
    * add aarch64 to system_targets and sys_systems
    * add qemu-kvm-spice links
    * install qemu-system-x86.modprobe
  - add debian/qemu-system-common.links for OVMF.fd link
* Remove kvm-img, kvm-nbd, kvm-ifup and kvm-ifdown symlinks.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#include "exec/def-helper.h"
 
2
 
 
3
DEF_HELPER_FLAGS_1(clz, TCG_CALL_NO_RWG_SE, i32, i32)
 
4
DEF_HELPER_FLAGS_1(sxtb16, TCG_CALL_NO_RWG_SE, i32, i32)
 
5
DEF_HELPER_FLAGS_1(uxtb16, TCG_CALL_NO_RWG_SE, i32, i32)
 
6
 
 
7
DEF_HELPER_3(add_setq, i32, env, i32, i32)
 
8
DEF_HELPER_3(add_saturate, i32, env, i32, i32)
 
9
DEF_HELPER_3(sub_saturate, i32, env, i32, i32)
 
10
DEF_HELPER_3(add_usaturate, i32, env, i32, i32)
 
11
DEF_HELPER_3(sub_usaturate, i32, env, i32, i32)
 
12
DEF_HELPER_2(double_saturate, i32, env, s32)
 
13
DEF_HELPER_FLAGS_2(sdiv, TCG_CALL_NO_RWG_SE, s32, s32, s32)
 
14
DEF_HELPER_FLAGS_2(udiv, TCG_CALL_NO_RWG_SE, i32, i32, i32)
 
15
DEF_HELPER_FLAGS_1(rbit, TCG_CALL_NO_RWG_SE, i32, i32)
 
16
 
 
17
#define PAS_OP(pfx)  \
 
18
    DEF_HELPER_3(pfx ## add8, i32, i32, i32, ptr) \
 
19
    DEF_HELPER_3(pfx ## sub8, i32, i32, i32, ptr) \
 
20
    DEF_HELPER_3(pfx ## sub16, i32, i32, i32, ptr) \
 
21
    DEF_HELPER_3(pfx ## add16, i32, i32, i32, ptr) \
 
22
    DEF_HELPER_3(pfx ## addsubx, i32, i32, i32, ptr) \
 
23
    DEF_HELPER_3(pfx ## subaddx, i32, i32, i32, ptr)
 
24
 
 
25
PAS_OP(s)
 
26
PAS_OP(u)
 
27
#undef PAS_OP
 
28
 
 
29
#define PAS_OP(pfx)  \
 
30
    DEF_HELPER_2(pfx ## add8, i32, i32, i32) \
 
31
    DEF_HELPER_2(pfx ## sub8, i32, i32, i32) \
 
32
    DEF_HELPER_2(pfx ## sub16, i32, i32, i32) \
 
33
    DEF_HELPER_2(pfx ## add16, i32, i32, i32) \
 
34
    DEF_HELPER_2(pfx ## addsubx, i32, i32, i32) \
 
35
    DEF_HELPER_2(pfx ## subaddx, i32, i32, i32)
 
36
PAS_OP(q)
 
37
PAS_OP(sh)
 
38
PAS_OP(uq)
 
39
PAS_OP(uh)
 
40
#undef PAS_OP
 
41
 
 
42
DEF_HELPER_3(ssat, i32, env, i32, i32)
 
43
DEF_HELPER_3(usat, i32, env, i32, i32)
 
44
DEF_HELPER_3(ssat16, i32, env, i32, i32)
 
45
DEF_HELPER_3(usat16, i32, env, i32, i32)
 
46
 
 
47
DEF_HELPER_FLAGS_2(usad8, TCG_CALL_NO_RWG_SE, i32, i32, i32)
 
48
 
 
49
DEF_HELPER_FLAGS_3(sel_flags, TCG_CALL_NO_RWG_SE,
 
50
                   i32, i32, i32, i32)
 
51
DEF_HELPER_2(exception, void, env, i32)
 
52
DEF_HELPER_1(wfi, void, env)
 
53
 
 
54
DEF_HELPER_3(cpsr_write, void, env, i32, i32)
 
55
DEF_HELPER_1(cpsr_read, i32, env)
 
56
 
 
57
DEF_HELPER_3(v7m_msr, void, env, i32, i32)
 
58
DEF_HELPER_2(v7m_mrs, i32, env, i32)
 
59
 
 
60
DEF_HELPER_3(set_cp_reg, void, env, ptr, i32)
 
61
DEF_HELPER_2(get_cp_reg, i32, env, ptr)
 
62
DEF_HELPER_3(set_cp_reg64, void, env, ptr, i64)
 
63
DEF_HELPER_2(get_cp_reg64, i64, env, ptr)
 
64
 
 
65
DEF_HELPER_2(get_r13_banked, i32, env, i32)
 
66
DEF_HELPER_3(set_r13_banked, void, env, i32, i32)
 
67
 
 
68
DEF_HELPER_2(get_user_reg, i32, env, i32)
 
69
DEF_HELPER_3(set_user_reg, void, env, i32, i32)
 
70
 
 
71
DEF_HELPER_1(vfp_get_fpscr, i32, env)
 
72
DEF_HELPER_2(vfp_set_fpscr, void, env, i32)
 
73
 
 
74
DEF_HELPER_3(vfp_adds, f32, f32, f32, ptr)
 
75
DEF_HELPER_3(vfp_addd, f64, f64, f64, ptr)
 
76
DEF_HELPER_3(vfp_subs, f32, f32, f32, ptr)
 
77
DEF_HELPER_3(vfp_subd, f64, f64, f64, ptr)
 
78
DEF_HELPER_3(vfp_muls, f32, f32, f32, ptr)
 
79
DEF_HELPER_3(vfp_muld, f64, f64, f64, ptr)
 
80
DEF_HELPER_3(vfp_divs, f32, f32, f32, ptr)
 
81
DEF_HELPER_3(vfp_divd, f64, f64, f64, ptr)
 
82
DEF_HELPER_1(vfp_negs, f32, f32)
 
83
DEF_HELPER_1(vfp_negd, f64, f64)
 
84
DEF_HELPER_1(vfp_abss, f32, f32)
 
85
DEF_HELPER_1(vfp_absd, f64, f64)
 
86
DEF_HELPER_2(vfp_sqrts, f32, f32, env)
 
87
DEF_HELPER_2(vfp_sqrtd, f64, f64, env)
 
88
DEF_HELPER_3(vfp_cmps, void, f32, f32, env)
 
89
DEF_HELPER_3(vfp_cmpd, void, f64, f64, env)
 
90
DEF_HELPER_3(vfp_cmpes, void, f32, f32, env)
 
91
DEF_HELPER_3(vfp_cmped, void, f64, f64, env)
 
92
 
 
93
DEF_HELPER_2(vfp_fcvtds, f64, f32, env)
 
94
DEF_HELPER_2(vfp_fcvtsd, f32, f64, env)
 
95
 
 
96
DEF_HELPER_2(vfp_uitos, f32, i32, ptr)
 
97
DEF_HELPER_2(vfp_uitod, f64, i32, ptr)
 
98
DEF_HELPER_2(vfp_sitos, f32, i32, ptr)
 
99
DEF_HELPER_2(vfp_sitod, f64, i32, ptr)
 
100
 
 
101
DEF_HELPER_2(vfp_touis, i32, f32, ptr)
 
102
DEF_HELPER_2(vfp_touid, i32, f64, ptr)
 
103
DEF_HELPER_2(vfp_touizs, i32, f32, ptr)
 
104
DEF_HELPER_2(vfp_touizd, i32, f64, ptr)
 
105
DEF_HELPER_2(vfp_tosis, i32, f32, ptr)
 
106
DEF_HELPER_2(vfp_tosid, i32, f64, ptr)
 
107
DEF_HELPER_2(vfp_tosizs, i32, f32, ptr)
 
108
DEF_HELPER_2(vfp_tosizd, i32, f64, ptr)
 
109
 
 
110
DEF_HELPER_3(vfp_toshs, i32, f32, i32, ptr)
 
111
DEF_HELPER_3(vfp_tosls, i32, f32, i32, ptr)
 
112
DEF_HELPER_3(vfp_touhs, i32, f32, i32, ptr)
 
113
DEF_HELPER_3(vfp_touls, i32, f32, i32, ptr)
 
114
DEF_HELPER_3(vfp_toshd, i64, f64, i32, ptr)
 
115
DEF_HELPER_3(vfp_tosld, i64, f64, i32, ptr)
 
116
DEF_HELPER_3(vfp_touhd, i64, f64, i32, ptr)
 
117
DEF_HELPER_3(vfp_tould, i64, f64, i32, ptr)
 
118
DEF_HELPER_3(vfp_shtos, f32, i32, i32, ptr)
 
119
DEF_HELPER_3(vfp_sltos, f32, i32, i32, ptr)
 
120
DEF_HELPER_3(vfp_uhtos, f32, i32, i32, ptr)
 
121
DEF_HELPER_3(vfp_ultos, f32, i32, i32, ptr)
 
122
DEF_HELPER_3(vfp_shtod, f64, i64, i32, ptr)
 
123
DEF_HELPER_3(vfp_sltod, f64, i64, i32, ptr)
 
124
DEF_HELPER_3(vfp_uhtod, f64, i64, i32, ptr)
 
125
DEF_HELPER_3(vfp_ultod, f64, i64, i32, ptr)
 
126
 
 
127
DEF_HELPER_2(vfp_fcvt_f16_to_f32, f32, i32, env)
 
128
DEF_HELPER_2(vfp_fcvt_f32_to_f16, i32, f32, env)
 
129
DEF_HELPER_2(neon_fcvt_f16_to_f32, f32, i32, env)
 
130
DEF_HELPER_2(neon_fcvt_f32_to_f16, i32, f32, env)
 
131
 
 
132
DEF_HELPER_4(vfp_muladdd, f64, f64, f64, f64, ptr)
 
133
DEF_HELPER_4(vfp_muladds, f32, f32, f32, f32, ptr)
 
134
 
 
135
DEF_HELPER_3(vfp_maxnmd, f64, f64, f64, ptr)
 
136
DEF_HELPER_3(vfp_maxnms, f32, f32, f32, ptr)
 
137
DEF_HELPER_3(vfp_minnmd, f64, f64, f64, ptr)
 
138
DEF_HELPER_3(vfp_minnms, f32, f32, f32, ptr)
 
139
 
 
140
DEF_HELPER_3(recps_f32, f32, f32, f32, env)
 
141
DEF_HELPER_3(rsqrts_f32, f32, f32, f32, env)
 
142
DEF_HELPER_2(recpe_f32, f32, f32, env)
 
143
DEF_HELPER_2(rsqrte_f32, f32, f32, env)
 
144
DEF_HELPER_2(recpe_u32, i32, i32, env)
 
145
DEF_HELPER_2(rsqrte_u32, i32, i32, env)
 
146
DEF_HELPER_5(neon_tbl, i32, env, i32, i32, i32, i32)
 
147
 
 
148
DEF_HELPER_3(shl_cc, i32, env, i32, i32)
 
149
DEF_HELPER_3(shr_cc, i32, env, i32, i32)
 
150
DEF_HELPER_3(sar_cc, i32, env, i32, i32)
 
151
DEF_HELPER_3(ror_cc, i32, env, i32, i32)
 
152
 
 
153
/* neon_helper.c */
 
154
DEF_HELPER_3(neon_qadd_u8, i32, env, i32, i32)
 
155
DEF_HELPER_3(neon_qadd_s8, i32, env, i32, i32)
 
156
DEF_HELPER_3(neon_qadd_u16, i32, env, i32, i32)
 
157
DEF_HELPER_3(neon_qadd_s16, i32, env, i32, i32)
 
158
DEF_HELPER_3(neon_qadd_u32, i32, env, i32, i32)
 
159
DEF_HELPER_3(neon_qadd_s32, i32, env, i32, i32)
 
160
DEF_HELPER_3(neon_qsub_u8, i32, env, i32, i32)
 
161
DEF_HELPER_3(neon_qsub_s8, i32, env, i32, i32)
 
162
DEF_HELPER_3(neon_qsub_u16, i32, env, i32, i32)
 
163
DEF_HELPER_3(neon_qsub_s16, i32, env, i32, i32)
 
164
DEF_HELPER_3(neon_qsub_u32, i32, env, i32, i32)
 
165
DEF_HELPER_3(neon_qsub_s32, i32, env, i32, i32)
 
166
DEF_HELPER_3(neon_qadd_u64, i64, env, i64, i64)
 
167
DEF_HELPER_3(neon_qadd_s64, i64, env, i64, i64)
 
168
DEF_HELPER_3(neon_qsub_u64, i64, env, i64, i64)
 
169
DEF_HELPER_3(neon_qsub_s64, i64, env, i64, i64)
 
170
 
 
171
DEF_HELPER_2(neon_hadd_s8, i32, i32, i32)
 
172
DEF_HELPER_2(neon_hadd_u8, i32, i32, i32)
 
173
DEF_HELPER_2(neon_hadd_s16, i32, i32, i32)
 
174
DEF_HELPER_2(neon_hadd_u16, i32, i32, i32)
 
175
DEF_HELPER_2(neon_hadd_s32, s32, s32, s32)
 
176
DEF_HELPER_2(neon_hadd_u32, i32, i32, i32)
 
177
DEF_HELPER_2(neon_rhadd_s8, i32, i32, i32)
 
178
DEF_HELPER_2(neon_rhadd_u8, i32, i32, i32)
 
179
DEF_HELPER_2(neon_rhadd_s16, i32, i32, i32)
 
180
DEF_HELPER_2(neon_rhadd_u16, i32, i32, i32)
 
181
DEF_HELPER_2(neon_rhadd_s32, s32, s32, s32)
 
182
DEF_HELPER_2(neon_rhadd_u32, i32, i32, i32)
 
183
DEF_HELPER_2(neon_hsub_s8, i32, i32, i32)
 
184
DEF_HELPER_2(neon_hsub_u8, i32, i32, i32)
 
185
DEF_HELPER_2(neon_hsub_s16, i32, i32, i32)
 
186
DEF_HELPER_2(neon_hsub_u16, i32, i32, i32)
 
187
DEF_HELPER_2(neon_hsub_s32, s32, s32, s32)
 
188
DEF_HELPER_2(neon_hsub_u32, i32, i32, i32)
 
189
 
 
190
DEF_HELPER_2(neon_cgt_u8, i32, i32, i32)
 
191
DEF_HELPER_2(neon_cgt_s8, i32, i32, i32)
 
192
DEF_HELPER_2(neon_cgt_u16, i32, i32, i32)
 
193
DEF_HELPER_2(neon_cgt_s16, i32, i32, i32)
 
194
DEF_HELPER_2(neon_cgt_u32, i32, i32, i32)
 
195
DEF_HELPER_2(neon_cgt_s32, i32, i32, i32)
 
196
DEF_HELPER_2(neon_cge_u8, i32, i32, i32)
 
197
DEF_HELPER_2(neon_cge_s8, i32, i32, i32)
 
198
DEF_HELPER_2(neon_cge_u16, i32, i32, i32)
 
199
DEF_HELPER_2(neon_cge_s16, i32, i32, i32)
 
200
DEF_HELPER_2(neon_cge_u32, i32, i32, i32)
 
201
DEF_HELPER_2(neon_cge_s32, i32, i32, i32)
 
202
 
 
203
DEF_HELPER_2(neon_min_u8, i32, i32, i32)
 
204
DEF_HELPER_2(neon_min_s8, i32, i32, i32)
 
205
DEF_HELPER_2(neon_min_u16, i32, i32, i32)
 
206
DEF_HELPER_2(neon_min_s16, i32, i32, i32)
 
207
DEF_HELPER_2(neon_min_u32, i32, i32, i32)
 
208
DEF_HELPER_2(neon_min_s32, i32, i32, i32)
 
209
DEF_HELPER_2(neon_max_u8, i32, i32, i32)
 
210
DEF_HELPER_2(neon_max_s8, i32, i32, i32)
 
211
DEF_HELPER_2(neon_max_u16, i32, i32, i32)
 
212
DEF_HELPER_2(neon_max_s16, i32, i32, i32)
 
213
DEF_HELPER_2(neon_max_u32, i32, i32, i32)
 
214
DEF_HELPER_2(neon_max_s32, i32, i32, i32)
 
215
DEF_HELPER_2(neon_pmin_u8, i32, i32, i32)
 
216
DEF_HELPER_2(neon_pmin_s8, i32, i32, i32)
 
217
DEF_HELPER_2(neon_pmin_u16, i32, i32, i32)
 
218
DEF_HELPER_2(neon_pmin_s16, i32, i32, i32)
 
219
DEF_HELPER_2(neon_pmax_u8, i32, i32, i32)
 
220
DEF_HELPER_2(neon_pmax_s8, i32, i32, i32)
 
221
DEF_HELPER_2(neon_pmax_u16, i32, i32, i32)
 
222
DEF_HELPER_2(neon_pmax_s16, i32, i32, i32)
 
223
 
 
224
DEF_HELPER_2(neon_abd_u8, i32, i32, i32)
 
225
DEF_HELPER_2(neon_abd_s8, i32, i32, i32)
 
226
DEF_HELPER_2(neon_abd_u16, i32, i32, i32)
 
227
DEF_HELPER_2(neon_abd_s16, i32, i32, i32)
 
228
DEF_HELPER_2(neon_abd_u32, i32, i32, i32)
 
229
DEF_HELPER_2(neon_abd_s32, i32, i32, i32)
 
230
 
 
231
DEF_HELPER_2(neon_shl_u8, i32, i32, i32)
 
232
DEF_HELPER_2(neon_shl_s8, i32, i32, i32)
 
233
DEF_HELPER_2(neon_shl_u16, i32, i32, i32)
 
234
DEF_HELPER_2(neon_shl_s16, i32, i32, i32)
 
235
DEF_HELPER_2(neon_shl_u32, i32, i32, i32)
 
236
DEF_HELPER_2(neon_shl_s32, i32, i32, i32)
 
237
DEF_HELPER_2(neon_shl_u64, i64, i64, i64)
 
238
DEF_HELPER_2(neon_shl_s64, i64, i64, i64)
 
239
DEF_HELPER_2(neon_rshl_u8, i32, i32, i32)
 
240
DEF_HELPER_2(neon_rshl_s8, i32, i32, i32)
 
241
DEF_HELPER_2(neon_rshl_u16, i32, i32, i32)
 
242
DEF_HELPER_2(neon_rshl_s16, i32, i32, i32)
 
243
DEF_HELPER_2(neon_rshl_u32, i32, i32, i32)
 
244
DEF_HELPER_2(neon_rshl_s32, i32, i32, i32)
 
245
DEF_HELPER_2(neon_rshl_u64, i64, i64, i64)
 
246
DEF_HELPER_2(neon_rshl_s64, i64, i64, i64)
 
247
DEF_HELPER_3(neon_qshl_u8, i32, env, i32, i32)
 
248
DEF_HELPER_3(neon_qshl_s8, i32, env, i32, i32)
 
249
DEF_HELPER_3(neon_qshl_u16, i32, env, i32, i32)
 
250
DEF_HELPER_3(neon_qshl_s16, i32, env, i32, i32)
 
251
DEF_HELPER_3(neon_qshl_u32, i32, env, i32, i32)
 
252
DEF_HELPER_3(neon_qshl_s32, i32, env, i32, i32)
 
253
DEF_HELPER_3(neon_qshl_u64, i64, env, i64, i64)
 
254
DEF_HELPER_3(neon_qshl_s64, i64, env, i64, i64)
 
255
DEF_HELPER_3(neon_qshlu_s8, i32, env, i32, i32)
 
256
DEF_HELPER_3(neon_qshlu_s16, i32, env, i32, i32)
 
257
DEF_HELPER_3(neon_qshlu_s32, i32, env, i32, i32)
 
258
DEF_HELPER_3(neon_qshlu_s64, i64, env, i64, i64)
 
259
DEF_HELPER_3(neon_qrshl_u8, i32, env, i32, i32)
 
260
DEF_HELPER_3(neon_qrshl_s8, i32, env, i32, i32)
 
261
DEF_HELPER_3(neon_qrshl_u16, i32, env, i32, i32)
 
262
DEF_HELPER_3(neon_qrshl_s16, i32, env, i32, i32)
 
263
DEF_HELPER_3(neon_qrshl_u32, i32, env, i32, i32)
 
264
DEF_HELPER_3(neon_qrshl_s32, i32, env, i32, i32)
 
265
DEF_HELPER_3(neon_qrshl_u64, i64, env, i64, i64)
 
266
DEF_HELPER_3(neon_qrshl_s64, i64, env, i64, i64)
 
267
 
 
268
DEF_HELPER_2(neon_add_u8, i32, i32, i32)
 
269
DEF_HELPER_2(neon_add_u16, i32, i32, i32)
 
270
DEF_HELPER_2(neon_padd_u8, i32, i32, i32)
 
271
DEF_HELPER_2(neon_padd_u16, i32, i32, i32)
 
272
DEF_HELPER_2(neon_sub_u8, i32, i32, i32)
 
273
DEF_HELPER_2(neon_sub_u16, i32, i32, i32)
 
274
DEF_HELPER_2(neon_mul_u8, i32, i32, i32)
 
275
DEF_HELPER_2(neon_mul_u16, i32, i32, i32)
 
276
DEF_HELPER_2(neon_mul_p8, i32, i32, i32)
 
277
DEF_HELPER_2(neon_mull_p8, i64, i32, i32)
 
278
 
 
279
DEF_HELPER_2(neon_tst_u8, i32, i32, i32)
 
280
DEF_HELPER_2(neon_tst_u16, i32, i32, i32)
 
281
DEF_HELPER_2(neon_tst_u32, i32, i32, i32)
 
282
DEF_HELPER_2(neon_ceq_u8, i32, i32, i32)
 
283
DEF_HELPER_2(neon_ceq_u16, i32, i32, i32)
 
284
DEF_HELPER_2(neon_ceq_u32, i32, i32, i32)
 
285
 
 
286
DEF_HELPER_1(neon_abs_s8, i32, i32)
 
287
DEF_HELPER_1(neon_abs_s16, i32, i32)
 
288
DEF_HELPER_1(neon_clz_u8, i32, i32)
 
289
DEF_HELPER_1(neon_clz_u16, i32, i32)
 
290
DEF_HELPER_1(neon_cls_s8, i32, i32)
 
291
DEF_HELPER_1(neon_cls_s16, i32, i32)
 
292
DEF_HELPER_1(neon_cls_s32, i32, i32)
 
293
DEF_HELPER_1(neon_cnt_u8, i32, i32)
 
294
 
 
295
DEF_HELPER_3(neon_qdmulh_s16, i32, env, i32, i32)
 
296
DEF_HELPER_3(neon_qrdmulh_s16, i32, env, i32, i32)
 
297
DEF_HELPER_3(neon_qdmulh_s32, i32, env, i32, i32)
 
298
DEF_HELPER_3(neon_qrdmulh_s32, i32, env, i32, i32)
 
299
 
 
300
DEF_HELPER_1(neon_narrow_u8, i32, i64)
 
301
DEF_HELPER_1(neon_narrow_u16, i32, i64)
 
302
DEF_HELPER_2(neon_unarrow_sat8, i32, env, i64)
 
303
DEF_HELPER_2(neon_narrow_sat_u8, i32, env, i64)
 
304
DEF_HELPER_2(neon_narrow_sat_s8, i32, env, i64)
 
305
DEF_HELPER_2(neon_unarrow_sat16, i32, env, i64)
 
306
DEF_HELPER_2(neon_narrow_sat_u16, i32, env, i64)
 
307
DEF_HELPER_2(neon_narrow_sat_s16, i32, env, i64)
 
308
DEF_HELPER_2(neon_unarrow_sat32, i32, env, i64)
 
309
DEF_HELPER_2(neon_narrow_sat_u32, i32, env, i64)
 
310
DEF_HELPER_2(neon_narrow_sat_s32, i32, env, i64)
 
311
DEF_HELPER_1(neon_narrow_high_u8, i32, i64)
 
312
DEF_HELPER_1(neon_narrow_high_u16, i32, i64)
 
313
DEF_HELPER_1(neon_narrow_round_high_u8, i32, i64)
 
314
DEF_HELPER_1(neon_narrow_round_high_u16, i32, i64)
 
315
DEF_HELPER_1(neon_widen_u8, i64, i32)
 
316
DEF_HELPER_1(neon_widen_s8, i64, i32)
 
317
DEF_HELPER_1(neon_widen_u16, i64, i32)
 
318
DEF_HELPER_1(neon_widen_s16, i64, i32)
 
319
 
 
320
DEF_HELPER_2(neon_addl_u16, i64, i64, i64)
 
321
DEF_HELPER_2(neon_addl_u32, i64, i64, i64)
 
322
DEF_HELPER_2(neon_paddl_u16, i64, i64, i64)
 
323
DEF_HELPER_2(neon_paddl_u32, i64, i64, i64)
 
324
DEF_HELPER_2(neon_subl_u16, i64, i64, i64)
 
325
DEF_HELPER_2(neon_subl_u32, i64, i64, i64)
 
326
DEF_HELPER_3(neon_addl_saturate_s32, i64, env, i64, i64)
 
327
DEF_HELPER_3(neon_addl_saturate_s64, i64, env, i64, i64)
 
328
DEF_HELPER_2(neon_abdl_u16, i64, i32, i32)
 
329
DEF_HELPER_2(neon_abdl_s16, i64, i32, i32)
 
330
DEF_HELPER_2(neon_abdl_u32, i64, i32, i32)
 
331
DEF_HELPER_2(neon_abdl_s32, i64, i32, i32)
 
332
DEF_HELPER_2(neon_abdl_u64, i64, i32, i32)
 
333
DEF_HELPER_2(neon_abdl_s64, i64, i32, i32)
 
334
DEF_HELPER_2(neon_mull_u8, i64, i32, i32)
 
335
DEF_HELPER_2(neon_mull_s8, i64, i32, i32)
 
336
DEF_HELPER_2(neon_mull_u16, i64, i32, i32)
 
337
DEF_HELPER_2(neon_mull_s16, i64, i32, i32)
 
338
 
 
339
DEF_HELPER_1(neon_negl_u16, i64, i64)
 
340
DEF_HELPER_1(neon_negl_u32, i64, i64)
 
341
 
 
342
DEF_HELPER_2(neon_qabs_s8, i32, env, i32)
 
343
DEF_HELPER_2(neon_qabs_s16, i32, env, i32)
 
344
DEF_HELPER_2(neon_qabs_s32, i32, env, i32)
 
345
DEF_HELPER_2(neon_qneg_s8, i32, env, i32)
 
346
DEF_HELPER_2(neon_qneg_s16, i32, env, i32)
 
347
DEF_HELPER_2(neon_qneg_s32, i32, env, i32)
 
348
 
 
349
DEF_HELPER_3(neon_min_f32, i32, i32, i32, ptr)
 
350
DEF_HELPER_3(neon_max_f32, i32, i32, i32, ptr)
 
351
DEF_HELPER_3(neon_abd_f32, i32, i32, i32, ptr)
 
352
DEF_HELPER_3(neon_ceq_f32, i32, i32, i32, ptr)
 
353
DEF_HELPER_3(neon_cge_f32, i32, i32, i32, ptr)
 
354
DEF_HELPER_3(neon_cgt_f32, i32, i32, i32, ptr)
 
355
DEF_HELPER_3(neon_acge_f32, i32, i32, i32, ptr)
 
356
DEF_HELPER_3(neon_acgt_f32, i32, i32, i32, ptr)
 
357
 
 
358
/* iwmmxt_helper.c */
 
359
DEF_HELPER_2(iwmmxt_maddsq, i64, i64, i64)
 
360
DEF_HELPER_2(iwmmxt_madduq, i64, i64, i64)
 
361
DEF_HELPER_2(iwmmxt_sadb, i64, i64, i64)
 
362
DEF_HELPER_2(iwmmxt_sadw, i64, i64, i64)
 
363
DEF_HELPER_2(iwmmxt_mulslw, i64, i64, i64)
 
364
DEF_HELPER_2(iwmmxt_mulshw, i64, i64, i64)
 
365
DEF_HELPER_2(iwmmxt_mululw, i64, i64, i64)
 
366
DEF_HELPER_2(iwmmxt_muluhw, i64, i64, i64)
 
367
DEF_HELPER_2(iwmmxt_macsw, i64, i64, i64)
 
368
DEF_HELPER_2(iwmmxt_macuw, i64, i64, i64)
 
369
DEF_HELPER_1(iwmmxt_setpsr_nz, i32, i64)
 
370
 
 
371
#define DEF_IWMMXT_HELPER_SIZE_ENV(name) \
 
372
DEF_HELPER_3(iwmmxt_##name##b, i64, env, i64, i64) \
 
373
DEF_HELPER_3(iwmmxt_##name##w, i64, env, i64, i64) \
 
374
DEF_HELPER_3(iwmmxt_##name##l, i64, env, i64, i64) \
 
375
 
 
376
DEF_IWMMXT_HELPER_SIZE_ENV(unpackl)
 
377
DEF_IWMMXT_HELPER_SIZE_ENV(unpackh)
 
378
 
 
379
DEF_HELPER_2(iwmmxt_unpacklub, i64, env, i64)
 
380
DEF_HELPER_2(iwmmxt_unpackluw, i64, env, i64)
 
381
DEF_HELPER_2(iwmmxt_unpacklul, i64, env, i64)
 
382
DEF_HELPER_2(iwmmxt_unpackhub, i64, env, i64)
 
383
DEF_HELPER_2(iwmmxt_unpackhuw, i64, env, i64)
 
384
DEF_HELPER_2(iwmmxt_unpackhul, i64, env, i64)
 
385
DEF_HELPER_2(iwmmxt_unpacklsb, i64, env, i64)
 
386
DEF_HELPER_2(iwmmxt_unpacklsw, i64, env, i64)
 
387
DEF_HELPER_2(iwmmxt_unpacklsl, i64, env, i64)
 
388
DEF_HELPER_2(iwmmxt_unpackhsb, i64, env, i64)
 
389
DEF_HELPER_2(iwmmxt_unpackhsw, i64, env, i64)
 
390
DEF_HELPER_2(iwmmxt_unpackhsl, i64, env, i64)
 
391
 
 
392
DEF_IWMMXT_HELPER_SIZE_ENV(cmpeq)
 
393
DEF_IWMMXT_HELPER_SIZE_ENV(cmpgtu)
 
394
DEF_IWMMXT_HELPER_SIZE_ENV(cmpgts)
 
395
 
 
396
DEF_IWMMXT_HELPER_SIZE_ENV(mins)
 
397
DEF_IWMMXT_HELPER_SIZE_ENV(minu)
 
398
DEF_IWMMXT_HELPER_SIZE_ENV(maxs)
 
399
DEF_IWMMXT_HELPER_SIZE_ENV(maxu)
 
400
 
 
401
DEF_IWMMXT_HELPER_SIZE_ENV(subn)
 
402
DEF_IWMMXT_HELPER_SIZE_ENV(addn)
 
403
DEF_IWMMXT_HELPER_SIZE_ENV(subu)
 
404
DEF_IWMMXT_HELPER_SIZE_ENV(addu)
 
405
DEF_IWMMXT_HELPER_SIZE_ENV(subs)
 
406
DEF_IWMMXT_HELPER_SIZE_ENV(adds)
 
407
 
 
408
DEF_HELPER_3(iwmmxt_avgb0, i64, env, i64, i64)
 
409
DEF_HELPER_3(iwmmxt_avgb1, i64, env, i64, i64)
 
410
DEF_HELPER_3(iwmmxt_avgw0, i64, env, i64, i64)
 
411
DEF_HELPER_3(iwmmxt_avgw1, i64, env, i64, i64)
 
412
 
 
413
DEF_HELPER_2(iwmmxt_msadb, i64, i64, i64)
 
414
 
 
415
DEF_HELPER_3(iwmmxt_align, i64, i64, i64, i32)
 
416
DEF_HELPER_4(iwmmxt_insr, i64, i64, i32, i32, i32)
 
417
 
 
418
DEF_HELPER_1(iwmmxt_bcstb, i64, i32)
 
419
DEF_HELPER_1(iwmmxt_bcstw, i64, i32)
 
420
DEF_HELPER_1(iwmmxt_bcstl, i64, i32)
 
421
 
 
422
DEF_HELPER_1(iwmmxt_addcb, i64, i64)
 
423
DEF_HELPER_1(iwmmxt_addcw, i64, i64)
 
424
DEF_HELPER_1(iwmmxt_addcl, i64, i64)
 
425
 
 
426
DEF_HELPER_1(iwmmxt_msbb, i32, i64)
 
427
DEF_HELPER_1(iwmmxt_msbw, i32, i64)
 
428
DEF_HELPER_1(iwmmxt_msbl, i32, i64)
 
429
 
 
430
DEF_HELPER_3(iwmmxt_srlw, i64, env, i64, i32)
 
431
DEF_HELPER_3(iwmmxt_srll, i64, env, i64, i32)
 
432
DEF_HELPER_3(iwmmxt_srlq, i64, env, i64, i32)
 
433
DEF_HELPER_3(iwmmxt_sllw, i64, env, i64, i32)
 
434
DEF_HELPER_3(iwmmxt_slll, i64, env, i64, i32)
 
435
DEF_HELPER_3(iwmmxt_sllq, i64, env, i64, i32)
 
436
DEF_HELPER_3(iwmmxt_sraw, i64, env, i64, i32)
 
437
DEF_HELPER_3(iwmmxt_sral, i64, env, i64, i32)
 
438
DEF_HELPER_3(iwmmxt_sraq, i64, env, i64, i32)
 
439
DEF_HELPER_3(iwmmxt_rorw, i64, env, i64, i32)
 
440
DEF_HELPER_3(iwmmxt_rorl, i64, env, i64, i32)
 
441
DEF_HELPER_3(iwmmxt_rorq, i64, env, i64, i32)
 
442
DEF_HELPER_3(iwmmxt_shufh, i64, env, i64, i32)
 
443
 
 
444
DEF_HELPER_3(iwmmxt_packuw, i64, env, i64, i64)
 
445
DEF_HELPER_3(iwmmxt_packul, i64, env, i64, i64)
 
446
DEF_HELPER_3(iwmmxt_packuq, i64, env, i64, i64)
 
447
DEF_HELPER_3(iwmmxt_packsw, i64, env, i64, i64)
 
448
DEF_HELPER_3(iwmmxt_packsl, i64, env, i64, i64)
 
449
DEF_HELPER_3(iwmmxt_packsq, i64, env, i64, i64)
 
450
 
 
451
DEF_HELPER_3(iwmmxt_muladdsl, i64, i64, i32, i32)
 
452
DEF_HELPER_3(iwmmxt_muladdsw, i64, i64, i32, i32)
 
453
DEF_HELPER_3(iwmmxt_muladdswl, i64, i64, i32, i32)
 
454
 
 
455
DEF_HELPER_3(neon_unzip8, void, env, i32, i32)
 
456
DEF_HELPER_3(neon_unzip16, void, env, i32, i32)
 
457
DEF_HELPER_3(neon_qunzip8, void, env, i32, i32)
 
458
DEF_HELPER_3(neon_qunzip16, void, env, i32, i32)
 
459
DEF_HELPER_3(neon_qunzip32, void, env, i32, i32)
 
460
DEF_HELPER_3(neon_zip8, void, env, i32, i32)
 
461
DEF_HELPER_3(neon_zip16, void, env, i32, i32)
 
462
DEF_HELPER_3(neon_qzip8, void, env, i32, i32)
 
463
DEF_HELPER_3(neon_qzip16, void, env, i32, i32)
 
464
DEF_HELPER_3(neon_qzip32, void, env, i32, i32)
 
465
 
 
466
#include "exec/def-helper.h"