mirror of
https://github.com/opencv/opencv.git
synced 2025-06-07 17:44:04 +08:00
Merge pull request #12960 from alalek:workaround_ipp_sse42_meanstddev
This commit is contained in:
commit
eea0f7fd76
@ -674,10 +674,23 @@ static bool ipp_meanStdDev(Mat& src, OutputArray _mean, OutputArray _sdv, Mat& m
|
|||||||
if (cn > 1)
|
if (cn > 1)
|
||||||
return false;
|
return false;
|
||||||
#endif
|
#endif
|
||||||
#if IPP_VERSION_X100 < 201901
|
#if IPP_VERSION_X100 >= 201900 && IPP_VERSION_X100 < 201901
|
||||||
// IPP_DISABLE: 32f C3C functions can read outside of allocated memory
|
// IPP_DISABLE: 32f C3C functions can read outside of allocated memory
|
||||||
if (cn > 1 && src.depth() == CV_32F)
|
if (cn > 1 && src.depth() == CV_32F)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
// SSE4.2 buffer overrun
|
||||||
|
#if defined(_WIN32) && !defined(_WIN64)
|
||||||
|
// IPPICV doesn't have AVX2 in 32-bit builds
|
||||||
|
// However cv::ipp::getIppTopFeatures() may return AVX2 value on AVX2 capable H/W
|
||||||
|
// details #12959
|
||||||
|
#else
|
||||||
|
if (cv::ipp::getIppTopFeatures() == ippCPUID_SSE42) // Linux x64 + OPENCV_IPP=SSE42 is affected too
|
||||||
|
#endif
|
||||||
|
{
|
||||||
|
if (src.depth() == CV_32F && src.dims > 1 && src.size[src.dims - 1] == 6)
|
||||||
|
return false;
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
size_t total_size = src.total();
|
size_t total_size = src.total();
|
||||||
|
Loading…
Reference in New Issue
Block a user