Skip to content

Commit bc71db9

Browse files
committed
add MISSING.md
1 parent 01f3bc7 commit bc71db9

File tree

1 file changed

+194
-0
lines changed

1 file changed

+194
-0
lines changed

crates/core_arch/MISSING.md

+194
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,194 @@
1+
## The following neon instructions are currently not implemented in stdarch
2+
3+
### Can be implemented next:
4+
5+
`vcls_u16`
6+
7+
`vcls_u32`
8+
9+
`vcls_u8`
10+
11+
`vclsq_u16`
12+
13+
`vclsq_u32`
14+
15+
`vclsq_u8`
16+
17+
`vcreate_s16`
18+
19+
`vcreate_u16`
20+
21+
`vpaddq_s64`
22+
23+
`vpaddq_u64`
24+
25+
`vreinterpretq_p128_f32`
26+
27+
`vreinterpretq_p128_f64`
28+
29+
`vreinterpretq_p128_p16`
30+
31+
`vreinterpretq_p128_p8`
32+
33+
`vreinterpretq_p128_s16`
34+
35+
`vreinterpretq_p128_s32`
36+
37+
`vreinterpretq_p128_s64`
38+
39+
`vreinterpretq_p128_s8`
40+
41+
`vreinterpretq_p128_u16`
42+
43+
`vreinterpretq_p128_u32`
44+
45+
`vreinterpretq_p128_u64`
46+
47+
`vreinterpretq_p128_u8`
48+
49+
`vslid_n_s64`
50+
51+
`vslid_n_u64`
52+
53+
`vsrid_n_s64`
54+
55+
`vsrid_n_u64`
56+
57+
### Not implemented on arm:
58+
59+
`vcadd_rot270_f32`
60+
61+
`vcadd_rot90_f32`
62+
63+
`vcaddq_rot270_f32`
64+
65+
`vcaddq_rot90_f32`
66+
67+
`vdot_s32`
68+
69+
`vdot_u32`
70+
71+
`vdotq_s32`
72+
73+
`vdotq_u32`
74+
75+
`vdot_lane_s32`
76+
77+
`vdot_lane_u32`
78+
79+
`vdotq_lane_s32`
80+
81+
`vdotq_lane_u32`
82+
83+
`vcmla_f32`
84+
85+
`vcmla_lane_f32`
86+
87+
`vcmla_laneq_f32`
88+
89+
`vcmla_rot180_f32`
90+
91+
`vcmla_rot180_lane_f32`
92+
93+
`vcmla_rot180_laneq_f32`
94+
95+
`vcmla_rot270_f32`
96+
97+
`vcmla_rot270_lane_f32`
98+
99+
`vcmla_rot270_laneq_f32`
100+
101+
`vcmla_rot90_f32`
102+
103+
`vcmla_rot90_lane_f32`
104+
105+
`vcmla_rot90_laneq_f32`
106+
107+
`vcmlaq_f32`
108+
109+
`vcmlaq_lane_f32`
110+
111+
`vcmlaq_laneq_f32`
112+
113+
`vcmlaq_rot180_f32`
114+
115+
`vcmlaq_rot180_lane_f32`
116+
117+
`vcmlaq_rot180_laneq_f32`
118+
119+
`vcmlaq_rot270_f32`
120+
121+
`vcmlaq_rot270_lane_f32`
122+
123+
`vcmlaq_rot270_laneq_f32`
124+
125+
`vcmlaq_rot90_f32`
126+
127+
`vcmlaq_rot90_lane_f32`
128+
129+
`vcmlaq_rot90_laneq_f32`
130+
131+
### Not implemented in LLVM:
132+
133+
`vrnd32x_f64`
134+
135+
`vrnd32xq_f64`
136+
137+
`vrnd32z_f64`
138+
139+
`vrnd32zq_f64`
140+
141+
`vrnd64x_f64`
142+
143+
`vrnd64xq_f64`
144+
145+
`vrnd64z_f64`
146+
147+
`vrnd64zq_f64`
148+
149+
### LLVM Select errors may occur:
150+
151+
`vsudot_lane_s32`
152+
153+
`vsudot_laneq_s32`
154+
155+
`vsudotq_lane_s32`
156+
157+
`vsudotq_laneq_s32`
158+
159+
`vusdot_lane_s32`
160+
161+
`vusdot_laneq_s32`
162+
163+
`vusdot_s32`
164+
165+
`vusdotq_lane_s32`
166+
167+
`vusdotq_laneq_s32`
168+
169+
`vusdotq_s32v`
170+
171+
`vqshlu_n_s16`
172+
173+
`vqshlu_n_s32`
174+
175+
`vqshlu_n_s64`
176+
177+
`vqshlu_n_s8`
178+
179+
`vqshlub_n_s8`
180+
181+
`vqshlud_n_s64`
182+
183+
`vqshluh_n_s16`
184+
185+
`vqshluq_n_s16`
186+
187+
`vqshluq_n_s32`
188+
189+
`vqshluq_n_s64`
190+
191+
`vqshluq_n_s8`
192+
193+
`vqshlus_n_s32`
194+

0 commit comments

Comments
 (0)