shithub: libvpx

Download patch

ref: 6f014dc5ad805411a7fe14b627e564a5cccda20f
parent: fbf052df4246bb4886d055f0fcda7c97de90d360
author: John Koleszar <jkoleszar@google.com>
date: Thu Dec 6 08:56:25 EST 2012

libvpx_test: ensure rtcd init functions are called

In addition to allowing tests to use the RTCD-enabled functions (perhaps transitively)
without having run a full encode/decode test yet, this fixes a linking issue with
Apple's G++ whereby the Common symbols (the function pointers themselves) wouldn't
be resolved. Fixing this linking issue is the primary impetus for this patch, as none
of the tests exercise the RTCD functionality except through the main API.

Change-Id: I12aed91ca37a707e5309aa6cb9c38a649c06bc6a

--- a/test/test_libvpx.cc
+++ b/test/test_libvpx.cc
@@ -12,6 +12,12 @@
 #if ARCH_X86 || ARCH_X86_64
 extern "C" {
 #include "vpx_ports/x86.h"
+#if CONFIG_VP8
+extern void vp8_rtcd();
+#endif
+#if CONFIG_VP9
+extern void vp9_rtcd();
+#endif
 }
 #endif
 #include "third_party/googletest/src/include/gtest/gtest.h"
@@ -39,6 +45,13 @@
     append_gtest_filter(":-SSSE3/*");
   if (!(simd_caps & HAS_SSE4_1))
     append_gtest_filter(":-SSE4_1/*");
+#endif
+
+#if CONFIG_VP8
+  vp8_rtcd();
+#endif
+#if CONFIG_VP9
+  vp9_rtcd();
 #endif
 
   return RUN_ALL_TESTS();