]> granicus.if.org Git - libvpx/commitdiff
Revert "Add visibility="protected" attribute for global variables referenced in asm...
authorJohann Koenig <johannkoenig@google.com>
Tue, 16 May 2017 22:52:15 +0000 (22:52 +0000)
committerJohann <johannkoenig@google.com>
Tue, 16 May 2017 22:54:33 +0000 (15:54 -0700)
This reverts commit 0d88e15454b632d92404dd6a7181c58d9985e2a2.

Reason for revert: chromium builds are failing to locate vpx_rv during dlopen()

dlopen failed: cannot locate symbol "vpx_rv" referenced by "libstandalonelibwebviewchromium.so"

Original change's description:
> Add visibility="protected" attribute for global variables referenced in asm files.
>
> During aosp builds with binutils-2.27, we're seeing linker error
> messages of this form:
> libvpx.a(subpixel_mmx.o): relocation R_386_GOTOFF against preemptible
> symbol vp8_bilinear_filters_x86_8 cannot be used when making a shared
> object
>
> subpixel_mmx.o is assembled from "vp8/common/x86/subpixel_mmx.asm".
> Other messages refer to symbol references from deblock_sse2.o and
> subpixel_sse2.o, also assembled from asm files.
>
> This change marks such symbols as having "protected" visibility. This
> satisfies the linker as the symbols are not preemptible from outside
> the shared library now, which I think is the original intent anyway.
>
> Change-Id: I2817f7a5f43041533d65ebf41aefd63f8581a452
>

TBR=jzern@google.com,johannkoenig@google.com,rahulchaudhry@chromium.org,builds@webmproject.org

Change-Id: I0c2ea375aa7ef5fda15b9d9e23e654bb315c941b

vp8/common/x86/filter_x86.c
vpx_dsp/deblock.c
vpx_ports/mem.h

index 73435a7dde069cd6d8901a89ed4b10b05a827b6b..2405342f02a3448a0f50bac86f39b836aafcc3fe 100644 (file)
@@ -17,8 +17,7 @@ DECLARE_ALIGNED(16, const short, vp8_bilinear_filters_x86_4[8][8]) = {
   { 32, 32, 32, 32, 96, 96, 96, 96 }, { 16, 16, 16, 16, 112, 112, 112, 112 }
 };
 
-DECLARE_PROTECTED(DECLARE_ALIGNED(16, const short,
-                                  vp8_bilinear_filters_x86_8[8][16])) = {
+DECLARE_ALIGNED(16, const short, vp8_bilinear_filters_x86_8[8][16]) = {
   { 128, 128, 128, 128, 128, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0 },
   { 112, 112, 112, 112, 112, 112, 112, 112, 16, 16, 16, 16, 16, 16, 16, 16 },
   { 96, 96, 96, 96, 96, 96, 96, 96, 32, 32, 32, 32, 32, 32, 32, 32 },
index 3734ac251bd50bbaadab84eea17ad21193e50259..a0db1e40c98e87ecdfd3fb8d6d33485051bca995 100644 (file)
@@ -9,9 +9,9 @@
  */
 #include <assert.h>
 #include <stdlib.h>
-#include "vpx_ports/mem.h"
+#include "vpx/vpx_integer.h"
 
-DECLARE_PROTECTED(const int16_t vpx_rv[]) = {
+const int16_t vpx_rv[] = {
   8,  5,  2,  2,  8,  12, 4,  9,  8,  3,  0,  3,  9,  0,  0,  0,  8,  3,  14,
   4,  10, 1,  11, 14, 1,  14, 9,  6,  12, 11, 8,  6,  10, 0,  0,  8,  9,  0,
   3,  14, 8,  11, 13, 4,  2,  9,  0,  3,  9,  6,  1,  2,  3,  14, 13, 1,  8,
index 9c21532b1173d08a0e204fc136b0fa36d3f58aec..bfef783b133219d1f2ab401b63f20dcb75100d7e 100644 (file)
 #define DECLARE_ALIGNED(n, typ, val) typ val
 #endif
 
-#if defined(__GNUC__) && __GNUC__ >= 4 && !defined(_WIN32) && !defined(__MACH__)
-#define DECLARE_PROTECTED(decl) decl __attribute__((visibility("protected")))
-#else
-#define DECLARE_PROTECTED(decl) decl
-#endif
-
 #if HAVE_NEON && defined(_MSC_VER)
 #define __builtin_prefetch(x)
 #endif