mirror of
https://github.com/opencv/opencv.git
synced 2025-06-17 15:20:51 +08:00
build: fix build with ICC
This commit is contained in:
parent
6bf6d1dc6b
commit
29dbeb253c
@ -113,9 +113,9 @@ static void store_interleave(float* ptr, const __m256& a, const __m256& b, const
|
|||||||
v_pack4x3to3x4(u0.val, u1.val, u2.val, u3.val, a1, b1, c1);
|
v_pack4x3to3x4(u0.val, u1.val, u2.val, u3.val, a1, b1, c1);
|
||||||
|
|
||||||
#if !defined(__GNUC__) || defined(__INTEL_COMPILER)
|
#if !defined(__GNUC__) || defined(__INTEL_COMPILER)
|
||||||
_mm256_storeu_ps(ptr, _mm256_setr_m128(_mm_castsi128_ps(a0), _mm_castsi128_ps(b0)));
|
_mm256_storeu_ps(ptr, _mm256_castsi256_ps(_mm256_setr_m128i(a0, b0)));
|
||||||
_mm256_storeu_ps(ptr + 8, _mm256_setr_m128(_mm_castsi128_ps(c0), _mm_castsi128_ps(a1)));
|
_mm256_storeu_ps(ptr + 8, _mm256_castsi256_ps(_mm256_setr_m128i(c0, a1)));
|
||||||
_mm256_storeu_ps(ptr + 16, _mm256_setr_m128(_mm_castsi128_ps(b1), _mm_castsi128_ps(c1)));
|
_mm256_storeu_ps(ptr + 16, _mm256_castsi256_ps(_mm256_setr_m128i(b1, c1)));
|
||||||
#else
|
#else
|
||||||
// GCC: workaround for missing AVX intrinsic: "_mm256_setr_m128()"
|
// GCC: workaround for missing AVX intrinsic: "_mm256_setr_m128()"
|
||||||
_mm256_storeu_ps(ptr, _mm256_insertf128_ps(_mm256_castps128_ps256(_mm_castsi128_ps(a0)), _mm_castsi128_ps(b0), 1));
|
_mm256_storeu_ps(ptr, _mm256_insertf128_ps(_mm256_castps128_ps256(_mm_castsi128_ps(a0)), _mm_castsi128_ps(b0), 1));
|
||||||
|
@ -21691,7 +21691,9 @@ class WithParamInterface {
|
|||||||
return *GetParameterPtrRef_();
|
return *GetParameterPtrRef_();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifndef __INTEL_COMPILER // compilation workaround, templated friend is not handled properly by ICC (perhaps due using of anonymous namespaces)
|
||||||
private:
|
private:
|
||||||
|
#endif
|
||||||
// Sets parameter value. The caller is responsible for making sure the value
|
// Sets parameter value. The caller is responsible for making sure the value
|
||||||
// remains alive and unchanged throughout the current test.
|
// remains alive and unchanged throughout the current test.
|
||||||
static void SetParam(const ParamType* parameter) {
|
static void SetParam(const ParamType* parameter) {
|
||||||
|
Loading…
Reference in New Issue
Block a user