libvpx_test: ensure rtcd init functions are called
authorJohn Koleszar <jkoleszar@google.com>
Thu, 6 Dec 2012 21:56:25 +0000 (13:56 -0800)
committerJohn Koleszar <jkoleszar@google.com>
Thu, 6 Dec 2012 22:02:36 +0000 (14:02 -0800)
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

test/test_libvpx.cc

index 2b9b0c2..52a4fb9 100644 (file)
 #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"
@@ -41,5 +47,12 @@ int main(int argc, char **argv) {
     append_gtest_filter(":-SSE4_1/*");
 #endif
 
+#if CONFIG_VP8
+  vp8_rtcd();
+#endif
+#if CONFIG_VP9
+  vp9_rtcd();
+#endif
+
   return RUN_ALL_TESTS();
 }