add conditional for __clang__

This commit is contained in:
Konstantinos Margaritis 2023-10-04 20:28:35 +03:00
parent b7d1bc0298
commit 354fda48fb
3 changed files with 6 additions and 0 deletions

View File

@ -43,6 +43,7 @@
#include <string.h> // for memcpy
#if defined(__clang__) && (__clang_major__ == 15)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecate-lax-vec-conv-all"
@ -424,5 +425,6 @@ m128 set2x64(u64a hi, u64a lo) {
}
#pragma clang diagnostic pop
#endif // defined(__clang__) && (__clang_major__ == 15)
#endif // ARCH_PPC64EL_SIMD_UTILS_H

View File

@ -158,6 +158,7 @@ really_inline SuperVector<16>::SuperVector(uint32_t const other)
u.u32x4[0] = vec_splats(static_cast<uint32_t>(other));
}
#if defined(__clang__) && (__clang_major__ == 15)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecate-lax-vec-conv-all"
template<>
@ -167,6 +168,7 @@ really_inline SuperVector<16>::SuperVector(int64_t const other)
u.s64x2[0] = static_cast<int64x2_t>(vec_splats(static_cast<ulong64_t>(other)));
}
#pragma clang diagnostic pop
#endif // defined(__clang__) && (__clang_major__ == 15)
template<>
template<>

View File

@ -673,11 +673,13 @@ TEST(SimdUtilsTest, movq) {
int64x2_t a = { 0x123456789abcdefLL, ~0LL };
simd = vreinterpretq_s32_s64(a);
#elif defined(ARCH_PPC64EL)
#if defined(__clang__) && (__clang_major__ == 15)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecate-lax-vec-conv-all"
int64x2_t a = {0x123456789abcdefLL, ~0LL };
simd = static_cast<m128>(a);
#pragma clang diagnostic pop
#endif // defined(__clang__) && (__clang_major__ == 15)
#endif
#endif
r = movq(simd);