From 6bf88fd950a9606d41d611ace8368f319a4b06e0 Mon Sep 17 00:00:00 2001 From: Josh Blum Date: Mon, 14 Nov 2011 09:48:20 -0800 Subject: volk: avx support for MSVC --- volk/gen/compilers.xml | 14 +++++++++++++- volk/gen/machines.xml | 8 ++++++-- volk/gen/make_cpuid_c.py | 2 +- 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/volk/gen/compilers.xml b/volk/gen/compilers.xml index 70c82e555..005eda2aa 100644 --- a/volk/gen/compilers.xml +++ b/volk/gen/compilers.xml @@ -2,9 +2,21 @@ + arch:SSE arch:SSE + + arch:SSE2 + + + arch:AVX + arch:AVX + arch:AVX + arch:AVX + arch:AVX + arch:AVX + / @@ -15,4 +27,4 @@ - \ No newline at end of file + diff --git a/volk/gen/machines.xml b/volk/gen/machines.xml index b872b9fb1..9c19c91c6 100644 --- a/volk/gen/machines.xml +++ b/volk/gen/machines.xml @@ -15,9 +15,9 @@ --> @@ -57,6 +57,10 @@ however it does not support the gcc style inline assembly. generic 32|64 mmx sse sse2 sse3 ssse3 sse4_1 sse4_2 popcount avx + +generic mmx sse sse2 sse3 ssse3 sse4_1 sse4_2 popcount avx + + generic altivec diff --git a/volk/gen/make_cpuid_c.py b/volk/gen/make_cpuid_c.py index 7281f45a3..2be1123a8 100644 --- a/volk/gen/make_cpuid_c.py +++ b/volk/gen/make_cpuid_c.py @@ -39,7 +39,7 @@ struct VOLK_CPU volk_cpu; //implement get cpuid for gcc compilers using a copy of cpuid.h #if defined(__GNUC__) #include -#define cpuid_x86(op, r) __get_cpuid(op, r+0, r+1, r+2, r+3) +#define cpuid_x86(op, r) __get_cpuid(op, (unsigned int *)r+0, (unsigned int *)r+1, (unsigned int *)r+2, (unsigned int *)r+3) //implement get cpuid for MSVC compilers using __cpuid intrinsic #elif defined(_MSC_VER) -- cgit