diff options
Diffstat (limited to 'meta-oe/recipes-extended/minifi-cpp/files/0008-libsodium-aarch64_crypto.patch')
-rw-r--r-- | meta-oe/recipes-extended/minifi-cpp/files/0008-libsodium-aarch64_crypto.patch | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/meta-oe/recipes-extended/minifi-cpp/files/0008-libsodium-aarch64_crypto.patch b/meta-oe/recipes-extended/minifi-cpp/files/0008-libsodium-aarch64_crypto.patch new file mode 100644 index 000000000..c2c51148f --- /dev/null +++ b/meta-oe/recipes-extended/minifi-cpp/files/0008-libsodium-aarch64_crypto.patch | |||
@@ -0,0 +1,38 @@ | |||
1 | Move target #pragma after arm_neon.h include | ||
2 | |||
3 | Fix per android/ndk#1945 | ||
4 | |||
5 | If the pragma is done before the header include, | ||
6 | when using clang compiler attribute may apply to the functions in arm_neon.h | ||
7 | |||
8 | Upstream-Status: Submitted [https://github.com/jedisct1/libsodium/pull/1321] | ||
9 | |||
10 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
11 | --- a/thirdparty/libsodium-stable/src/libsodium/crypto_aead/aes256gcm/armcrypto/aead_aes256gcm_armcrypto.c | ||
12 | +++ b/thirdparty/libsodium-stable/src/libsodium/crypto_aead/aes256gcm/armcrypto/aead_aes256gcm_armcrypto.c | ||
13 | @@ -19,12 +19,6 @@ | ||
14 | #define __vectorcall | ||
15 | #endif | ||
16 | |||
17 | -#ifdef __clang__ | ||
18 | -#pragma clang attribute push(__attribute__((target("neon,crypto,aes"))), apply_to = function) | ||
19 | -#elif defined(__GNUC__) | ||
20 | -#pragma GCC target("+simd+crypto") | ||
21 | -#endif | ||
22 | - | ||
23 | #ifndef __ARM_FEATURE_CRYPTO | ||
24 | #define __ARM_FEATURE_CRYPTO 1 | ||
25 | #endif | ||
26 | @@ -34,6 +28,12 @@ | ||
27 | |||
28 | #include <arm_neon.h> | ||
29 | |||
30 | +#ifdef __clang__ | ||
31 | +#pragma clang attribute push(__attribute__((target("neon,crypto,aes"))), apply_to = function) | ||
32 | +#elif defined(__GNUC__) | ||
33 | +#pragma GCC target("+simd+crypto") | ||
34 | +#endif | ||
35 | + | ||
36 | #define ABYTES crypto_aead_aes256gcm_ABYTES | ||
37 | #define NPUBBYTES crypto_aead_aes256gcm_NPUBBYTES | ||
38 | #define KEYBYTES crypto_aead_aes256gcm_KEYBYTES | ||