mirror of
https://github.com/opencv/opencv.git
synced 2024-12-04 00:39:11 +08:00
cmake: fix POPCNT & SSE4.2 detection code
This commit is contained in:
parent
c5c3ec46ad
commit
4c2858fd61
@ -1,8 +1,22 @@
|
|||||||
#include <nmmintrin.h>
|
#ifdef _MSC_VER
|
||||||
#ifndef _MSC_VER
|
# include <nmmintrin.h>
|
||||||
#include <popcntintrin.h>
|
# if defined(_M_X64)
|
||||||
|
# define CV_POPCNT_U64 _mm_popcnt_u64
|
||||||
|
# endif
|
||||||
|
# define CV_POPCNT_U32 _mm_popcnt_u32
|
||||||
|
#else
|
||||||
|
# include <popcntintrin.h>
|
||||||
|
# if defined(__x86_64__)
|
||||||
|
# define CV_POPCNT_U64 __builtin_popcountll
|
||||||
|
# endif
|
||||||
|
# define CV_POPCNT_U32 __builtin_popcount
|
||||||
#endif
|
#endif
|
||||||
int main() {
|
|
||||||
int i = _mm_popcnt_u64(1);
|
int main()
|
||||||
|
{
|
||||||
|
#ifdef CV_POPCNT_U64
|
||||||
|
int i = CV_POPCNT_U64(1);
|
||||||
|
#endif
|
||||||
|
int j = CV_POPCNT_U32(1);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
#include <nmmintrin.h>
|
#include <nmmintrin.h>
|
||||||
int main() {
|
|
||||||
int i = _mm_popcnt_u64(1);
|
int main()
|
||||||
|
{
|
||||||
|
unsigned int res = _mm_crc32_u8(1, 2);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user