Skip to content

Commit 44e1ebc

Browse files
committed
[mypyc] librt base64: replace BASE64_WITH_[x86 features] with directly using HAVE_[x86 features]
1 parent 379cd1e commit 44e1ebc

File tree

3 files changed

+24
-27
lines changed

3 files changed

+24
-27
lines changed

mypyc/build_setup.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,16 +15,16 @@
1515

1616
EXTRA_FLAGS_PER_COMPILER_TYPE_PER_PATH_COMPONENT = {
1717
"unix": {
18-
"base64/arch/ssse3": ["-mssse3", "-DBASE64_WITH_SSSE3"],
19-
"base64/arch/sse41": ["-msse4.1", "-DBASE64_WITH_SSE41"],
20-
"base64/arch/sse42": ["-msse4.2", "-DBASE64_WITH_SSE42"],
21-
"base64/arch/avx2": ["-mavx2", "-DBASE64_WITH_AVX2"],
22-
"base64/arch/avx": ["-mavx", "-DBASE64_WITH_AVX"],
18+
"base64/arch/ssse3": ["-mssse3"],
19+
"base64/arch/sse41": ["-msse4.1"],
20+
"base64/arch/sse42": ["-msse4.2"],
21+
"base64/arch/avx2": ["-mavx2"],
22+
"base64/arch/avx": ["-mavx"],
2323
},
2424
"msvc": {
25-
"base64/arch/sse42": ["/arch:SSE4.2", "/DBASE64_WITH_SSE42"],
26-
"base64/arch/avx2": ["/arch:AVX2", "/DBASE64_WITH_AVX2"],
27-
"base64/arch/avx": ["/arch:AVX", "/DBASE64_WITH_AVX"],
25+
"base64/arch/sse42": ["/arch:SSE4.2"],
26+
"base64/arch/avx2": ["/arch:AVX2"],
27+
"base64/arch/avx": ["/arch:AVX"],
2828
},
2929
}
3030

mypyc/lib-rt/base64/config.h

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,14 @@
11
#ifndef BASE64_CONFIG_H
22
#define BASE64_CONFIG_H
33

4-
#define HAVE_SSSE3 BASE64_WITH_SSSE3
5-
6-
#define HAVE_SSE41 BASE64_WITH_SSE41
7-
8-
#define HAVE_SSE42 BASE64_WITH_SSE42
9-
10-
#define HAVE_AVX BASE64_WITH_AVX
11-
12-
#define HAVE_AVX2 BASE64_WITH_AVX2
13-
14-
#define HAVE_AVX512 BASE64_WITH_AVX512
4+
#if (defined(__x86_64__) && defined(__LP64__)) || defined(_M_X64)
5+
#define HAVE_SSSE3 1
6+
#define HAVE_SSE41 1
7+
#define HAVE_SSE42 1
8+
#define HAVE_AVX 1
9+
#define HAVE_AVX2 1
10+
#define HAVE_AVX512 0
11+
#endif
1512

1613
#define BASE64_WITH_NEON32 0
1714
#define HAVE_NEON32 BASE64_WITH_NEON32

mypyc/lib-rt/setup.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -27,16 +27,16 @@
2727

2828
EXTRA_FLAGS_PER_COMPILER_TYPE_PER_PATH_COMPONENT = {
2929
"unix": {
30-
"base64/arch/ssse3": ["-mssse3", "-DBASE64_WITH_SSSE3"],
31-
"base64/arch/sse41": ["-msse4.1", "-DBASE64_WITH_SSE41"],
32-
"base64/arch/sse42": ["-msse4.2", "-DBASE64_WITH_SSE42"],
33-
"base64/arch/avx2": ["-mavx2", "-DBASE64_WITH_AVX2"],
34-
"base64/arch/avx": ["-mavx", "-DBASE64_WITH_AVX"],
30+
"base64/arch/ssse3": ["-mssse3"],
31+
"base64/arch/sse41": ["-msse4.1"],
32+
"base64/arch/sse42": ["-msse4.2"],
33+
"base64/arch/avx2": ["-mavx2"],
34+
"base64/arch/avx": ["-mavx"],
3535
},
3636
"msvc": {
37-
"base64/arch/sse42": ["/arch:SSE4.2", "/DBASE64_WITH_SSE42"],
38-
"base64/arch/avx2": ["/arch:AVX2", "/DBASE64_WITH_AVX2"],
39-
"base64/arch/avx": ["/arch:AVX", "/DBASE64_WITH_AVX"],
37+
"base64/arch/sse42": ["/arch:SSE4.2"],
38+
"base64/arch/avx2": ["/arch:AVX2"],
39+
"base64/arch/avx": ["/arch:AVX"],
4040
},
4141
}
4242

0 commit comments

Comments
 (0)