Cannot build on macOS if adding -mavx / -mavx2 to global build flags
- Dominant language
- C++
- Stars
- 6.6k
- Forks
- 1.1k
- Avg merge
- 3d 5h
- Merged PRs (30d)
- 4
Description
Repro:
```
$ clang++ -DHAVE_CONFIG_H -I/Users/jcelerier/build-score-qt_rhi-Debug/3rdparty/snappy -I/Users/jcelerier/score/3rdparty/snappy -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -c /Users/jcelerier/score/3rdparty/snappy/snappy.cc -mssse3 -mavx2 -std=c++20
/Users/jcelerier/score/3rdparty/snappy/snappy.cc:1242:3: error: unknown type name '__m256i'
__m256i data = _mm256_lddqu_si256(static_cast(src));
^
/Users/jcelerier/score/3rdparty/snappy/snappy.cc:1242:55: error: unknown type name '__m256i'
__m256i data = _mm256_lddqu_si256(static_cast(src));
^
/Users/jcelerier/score/3rdparty/snappy/snappy.cc:1242:18: error: use of undeclared identifier '_mm256_lddqu_si256'; did you mean '_mm_lddqu_si128'?
__m256i data = _mm256_lddqu_si256(static_cast(src));
^~~~~~~~~~~~~~~~~~
_mm_lddqu_si128
```
It works if I add
#include
at the top of snappy-internal.h:
```c++
#if SNAPPY_HAVE_SSSE3
// Please do not replace with or with headers that assume more
// advanced SSE versions without checking with all the OWNERS.
#include
#include
#include
#endif
```
Apple clang version 15.0.0 (clang-1500.3.9.4)
Target: x86_64-apple-darwin24.0.0
Contributor guide
Assessment
This issue has not been assessed yet.