* in the file PATENTS. All contributing project authors may
* be found in the AUTHORS file in the root of the source tree.
*/
+#include <string>
+#include "vpx_config.h"
+#if ARCH_X86 || ARCH_X86_64
+#include "vpx_ports/x86.h"
+#endif
#include "third_party/googletest/src/include/gtest/gtest.h"
+
+static void append_gtest_filter(const char *str)
+{
+ std::string filter = ::testing::FLAGS_gtest_filter;
+ filter += str;
+ ::testing::FLAGS_gtest_filter = filter;
+}
+
int main(int argc, char **argv) {
::testing::InitGoogleTest(&argc, argv);
+
+#if ARCH_X86 || ARCH_X86_64
+ int simd_caps = x86_simd_caps();
+ if(!(simd_caps & HAS_MMX))
+ append_gtest_filter(":-MMX/*");
+ if(!(simd_caps & HAS_SSE))
+ append_gtest_filter(":-SSE/*");
+ if(!(simd_caps & HAS_SSE2))
+ append_gtest_filter(":-SSE2/*");
+ if(!(simd_caps & HAS_SSE3))
+ append_gtest_filter(":-SSE3/*");
+ if(!(simd_caps & HAS_SSSE3))
+ append_gtest_filter(":-SSSE3/*");
+ if(!(simd_caps & HAS_SSE4_1))
+ append_gtest_filter(":-SSE4_1/*");
+#endif
+
return RUN_ALL_TESTS();
}