1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
mod reference;
#[cfg(all(
any(target_arch = "x86", target_arch = "x86_64"),
target_feature = "sse4.1"
))]
mod sse41;
#[cfg(all(
any(target_arch = "x86", target_arch = "x86_64"),
all(target_feature = "sse4.1", target_feature = "avx"),
))]
mod avx;
#[cfg(not(all(
any(target_arch = "x86", target_arch = "x86_64"),
any(target_feature = "sse4.1", target_feature = "avx")
)))]
pub(crate) use reference::*;
#[cfg(all(
target_arch = "x86_64",
all(target_feature = "sse4.1", not(target_feature = "avx")),
))]
pub(crate) use sse41::*;
#[cfg(all(
target_arch = "x86_64",
all(target_feature = "sse4.1", target_feature = "avx"),
))]
pub(crate) use avx::*;