-
Notifications
You must be signed in to change notification settings - Fork 220
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Builds fail on AMD without flags #93
Comments
from the wikipedia page on FMA3/FMA4:
GCC and clang go on what |
We should work out how to do CPU detection to rectify this bug its really annoying :( |
confirming that #138 fixes this for me |
@KeeJef you mean AMD_RYZEN_HACK makes it compile for you? I'd like to keep the issue open until we can actually get a build-time test, if that's possible. |
Yes AMD_RYZEN_HACK makes it compile without needing the above flags |
ye that's because it fills in those flags for you |
Builds still failing with fastadd errors if make is not passed
CFLAGS='-march=haswell -mfma' CXXFLAGS='-march=haswell -mfma'
We should include some kind of fix for this since AMD architecture is very common and we don't want people to have to go searching for the flags just to build Lokinet
In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:85:0, from /home/dev/loki-network/crypto/libntrup/src/avx/mult.c:3: /home/dev/loki-network/crypto/libntrup/src/avx/mult.c: In function ‘fastadd’: /usr/lib/gcc/x86_64-linux-gnu/7/include/fmaintrin.h:63:1: error: inlining failed in call to always_inline ‘_mm256_fmadd_ps’: target specific option mismatch _mm256_fmadd_ps (__m256 __A, __m256 __B, __m256 __C) ^~~~~~~~~~~~~~~ /home/dev/loki-network/crypto/libntrup/src/avx/mult.c:128:10: note: called from here return _mm256_fmadd_ps(y, v1_float, x); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:85:0, from /home/dev/loki-network/crypto/libntrup/src/avx/mult.c:3: /usr/lib/gcc/x86_64-linux-gnu/7/include/fmaintrin.h:63:1: error: inlining failed in call to always_inline ‘_mm256_fmadd_ps’: target specific option mismatch _mm256_fmadd_ps (__m256 __A, __m256 __B, __m256 __C) ^~~~~~~~~~~~~~~ /home/dev/loki-network/crypto/libntrup/src/avx/mult.c:128:10: note: called from here return _mm256_fmadd_ps(y, v1_float, x); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This issue is a replication of #92
The text was updated successfully, but these errors were encountered: