Skip to content

Commit 3447076

Browse files
authored
avx512vbmi2 (#979)
1 parent 0000457 commit 3447076

File tree

6 files changed

+3639
-5
lines changed

6 files changed

+3639
-5
lines changed

.github/workflows/main.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ jobs:
7777
- mips64-unknown-linux-gnuabi64
7878
- mips64el-unknown-linux-gnuabi64
7979
- s390x-unknown-linux-gnu
80-
- wasm32-wasi
80+
#- wasm32-wasi
8181
- i586-unknown-linux-gnu
8282
- x86_64-linux-android
8383
- arm-linux-androideabi
@@ -130,8 +130,8 @@ jobs:
130130
disable_assert_instr: true
131131
- target: s390x-unknown-linux-gnu
132132
os: ubuntu-latest
133-
- target: wasm32-wasi
134-
os: ubuntu-latest
133+
#- target: wasm32-wasi
134+
# os: ubuntu-latest
135135
- target: aarch64-unknown-linux-gnu
136136
os: ubuntu-latest
137137
- target: x86_64-apple-darwin

crates/core_arch/avx512vbmi2.md

+153
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,153 @@
1+
<summary>["AVX512_VBMI2"]</summary><p>
2+
3+
* [x] [`_mm_mask_compress_epi16`]
4+
* [x] [`_mm_maskz_compress_epi16`]
5+
* [x] [`_mm256_mask_compress_epi16`]
6+
* [x] [`_mm256_maskz_compress_epi16`]
7+
* [x] [`_mm512_mask_compress_epi16`]
8+
* [x] [`_mm512_maskz_compress_epi16`]
9+
* [x] [`_mm_mask_compress_epi8`]
10+
* [x] [`_mm_maskz_compress_epi8`]
11+
* [x] [`_mm256_mask_compress_epi8`]
12+
* [x] [`_mm256_maskz_compress_epi8`]
13+
* [x] [`_mm512_mask_compress_epi8`]
14+
* [x] [`_mm512_maskz_compress_epi8`]
15+
* [_] [`_mm_mask_compressstoreu_epi16`]
16+
* [_] [`_mm256_mask_compressstoreu_epi16`]
17+
* [_] [`_mm512_mask_compressstoreu_epi16`]
18+
* [_] [`_mm_mask_compressstoreu_epi8`]
19+
* [_] [`_mm256_mask_compressstoreu_epi8`]
20+
* [_] [`_mm512_mask_compressstoreu_epi8`]
21+
* [x] [`_mm_mask_expand_epi16`]
22+
* [x] [`_mm_maskz_expand_epi16`]
23+
* [x] [`_mm256_mask_expand_epi16`]
24+
* [x] [`_mm256_maskz_expand_epi16`]
25+
* [x] [`_mm512_mask_expand_epi16`]
26+
* [x] [`_mm512_maskz_expand_epi16`]
27+
* [x] [`_mm_mask_expand_epi8`]
28+
* [x] [`_mm_maskz_expand_epi8`]
29+
* [x] [`_mm256_mask_expand_epi8`]
30+
* [x] [`_mm256_maskz_expand_epi8`]
31+
* [x] [`_mm512_mask_expand_epi8`]
32+
* [x] [`_mm512_maskz_expand_epi8`]
33+
* [_] [`_mm_mask_expandloadu_epi16`]
34+
* [_] [`_mm_maskz_expandloadu_epi16`]
35+
* [_] [`_mm256_mask_expandloadu_epi16`]
36+
* [_] [`_mm256_maskz_expandloadu_epi16`]
37+
* [_] [`_mm512_mask_expandloadu_epi16`]
38+
* [_] [`_mm512_maskz_expandloadu_epi16`]
39+
* [_] [`_mm_mask_expandloadu_epi8`]
40+
* [_] [`_mm_maskz_expandloadu_epi8`]
41+
* [_] [`_mm256_mask_expandloadu_epi8`]
42+
* [_] [`_mm256_maskz_expandloadu_epi8`]
43+
* [_] [`_mm512_mask_expandloadu_epi8`]
44+
* [_] [`_mm512_maskz_expandloadu_epi8`]
45+
* [x] [`_mm_mask_shldi_epi16`]
46+
* [x] [`_mm_maskz_shldi_epi16`]
47+
* [x] [`_mm_shldi_epi16`]
48+
* [x] [`_mm256_mask_shldi_epi16`]
49+
* [x] [`_mm256_maskz_shldi_epi16`]
50+
* [x] [`_mm256_shldi_epi16`]
51+
* [x] [`_mm512_mask_shldi_epi16`]
52+
* [x] [`_mm512_maskz_shldi_epi16`]
53+
* [x] [`_mm512_shldi_epi16`]
54+
* [x] [`_mm_mask_shldi_epi32`]
55+
* [x] [`_mm_maskz_shldi_epi32`]
56+
* [x] [`_mm_shldi_epi32`]
57+
* [x] [`_mm256_mask_shldi_epi32`]
58+
* [x] [`_mm256_maskz_shldi_epi32`]
59+
* [x] [`_mm256_shldi_epi32`]
60+
* [x] [`_mm512_mask_shldi_epi32`]
61+
* [x] [`_mm512_maskz_shldi_epi32`]
62+
* [x] [`_mm512_shldi_epi32`]
63+
* [x] [`_mm_mask_shldi_epi64`]
64+
* [x] [`_mm_maskz_shldi_epi64`]
65+
* [x] [`_mm_shldi_epi64`]
66+
* [x] [`_mm256_mask_shldi_epi64`]
67+
* [x] [`_mm256_maskz_shldi_epi64`]
68+
* [x] [`_mm256_shldi_epi64`]
69+
* [x] [`_mm512_mask_shldi_epi64`]
70+
* [x] [`_mm512_maskz_shldi_epi64`]
71+
* [x] [`_mm512_shldi_epi64`]
72+
* [x] [`_mm_mask_shldv_epi16`]
73+
* [x] [`_mm_maskz_shldv_epi16`]
74+
* [x] [`_mm_shldv_epi16`]
75+
* [x] [`_mm256_mask_shldv_epi16`]
76+
* [x] [`_mm256_maskz_shldv_epi16`]
77+
* [x] [`_mm256_shldv_epi16`]
78+
* [x] [`_mm512_mask_shldv_epi16`]
79+
* [x] [`_mm512_maskz_shldv_epi16`]
80+
* [x] [`_mm512_shldv_epi16`]
81+
* [x] [`_mm_mask_shldv_epi32`]
82+
* [x] [`_mm_maskz_shldv_epi32`]
83+
* [x] [`_mm_shldv_epi32`]
84+
* [x] [`_mm256_mask_shldv_epi32`]
85+
* [x] [`_mm256_maskz_shldv_epi32`]
86+
* [x] [`_mm256_shldv_epi32`]
87+
* [x] [`_mm512_mask_shldv_epi32`]
88+
* [x] [`_mm512_maskz_shldv_epi32`]
89+
* [x] [`_mm512_shldv_epi32`]
90+
* [x] [`_mm_mask_shldv_epi64`]
91+
* [x] [`_mm_maskz_shldv_epi64`]
92+
* [x] [`_mm_shldv_epi64`]
93+
* [x] [`_mm256_mask_shldv_epi64`]
94+
* [x] [`_mm256_maskz_shldv_epi64`]
95+
* [x] [`_mm256_shldv_epi64`]
96+
* [x] [`_mm512_mask_shldv_epi64`]
97+
* [x] [`_mm512_maskz_shldv_epi64`]
98+
* [x] [`_mm512_shldv_epi64`]
99+
* [x] [`_mm_mask_shrdi_epi16`]
100+
* [x] [`_mm_maskz_shrdi_epi16`]
101+
* [x] [`_mm_shrdi_epi16`]
102+
* [x] [`_mm256_mask_shrdi_epi16`]
103+
* [x] [`_mm256_maskz_shrdi_epi16`]
104+
* [x] [`_mm256_shrdi_epi16`]
105+
* [x] [`_mm512_mask_shrdi_epi16`]
106+
* [x] [`_mm512_maskz_shrdi_epi16`]
107+
* [x] [`_mm512_shrdi_epi16`]
108+
* [x] [`_mm_mask_shrdi_epi32`]
109+
* [x] [`_mm_maskz_shrdi_epi32`]
110+
* [x] [`_mm_shrdi_epi32`]
111+
* [x] [`_mm256_mask_shrdi_epi32`]
112+
* [x] [`_mm256_maskz_shrdi_epi32`]
113+
* [x] [`_mm256_shrdi_epi32`]
114+
* [x] [`_mm512_mask_shrdi_epi32`]
115+
* [x] [`_mm512_maskz_shrdi_epi32`]
116+
* [x] [`_mm512_shrdi_epi32`]
117+
* [x] [`_mm_mask_shrdi_epi64`]
118+
* [x] [`_mm_maskz_shrdi_epi64`]
119+
* [x] [`_mm_shrdi_epi64`]
120+
* [x] [`_mm256_mask_shrdi_epi64`]
121+
* [x] [`_mm256_maskz_shrdi_epi64`]
122+
* [x] [`_mm256_shrdi_epi64`]
123+
* [x] [`_mm512_mask_shrdi_epi64`]
124+
* [x] [`_mm512_maskz_shrdi_epi64`]
125+
* [x] [`_mm512_shrdi_epi64`]
126+
* [x] [`_mm_mask_shrdv_epi16`]
127+
* [x] [`_mm_maskz_shrdv_epi16`]
128+
* [x] [`_mm_shrdv_epi16`]
129+
* [x] [`_mm256_mask_shrdv_epi16`]
130+
* [x] [`_mm256_maskz_shrdv_epi16`]
131+
* [x] [`_mm256_shrdv_epi16`]
132+
* [x] [`_mm512_mask_shrdv_epi16`]
133+
* [x] [`_mm512_maskz_shrdv_epi16`]
134+
* [x] [`_mm512_shrdv_epi16`]
135+
* [x] [`_mm_mask_shrdv_epi32`]
136+
* [x] [`_mm_maskz_shrdv_epi32`]
137+
* [x] [`_mm_shrdv_epi32`]
138+
* [x] [`_mm256_mask_shrdv_epi32`]
139+
* [x] [`_mm256_maskz_shrdv_epi32`]
140+
* [x] [`_mm256_shrdv_epi32`]
141+
* [x] [`_mm512_mask_shrdv_epi32`]
142+
* [x] [`_mm512_maskz_shrdv_epi32`]
143+
* [x] [`_mm512_shrdv_epi32`]
144+
* [x] [`_mm_mask_shrdv_epi64`]
145+
* [x] [`_mm_maskz_shrdv_epi64`]
146+
* [x] [`_mm_shrdv_epi64`]
147+
* [x] [`_mm256_mask_shrdv_epi64`]
148+
* [x] [`_mm256_maskz_shrdv_epi64`]
149+
* [x] [`_mm256_shrdv_epi64`]
150+
* [x] [`_mm512_mask_shrdv_epi64`]
151+
* [x] [`_mm512_maskz_shrdv_epi64`]
152+
* [x] [`_mm512_shrdv_epi64`]
153+
</p>

crates/core_arch/src/x86/avx512vbmi.rs

-2
Original file line numberDiff line numberDiff line change
@@ -438,8 +438,6 @@ mod tests {
438438
use stdarch_test::simd_test;
439439

440440
use crate::core_arch::x86::*;
441-
//use crate::hint::black_box;
442-
//use crate::mem::{self};
443441

444442
#[simd_test(enable = "avx512vbmi")]
445443
unsafe fn test_mm512_permutex2var_epi8() {

0 commit comments

Comments
 (0)