Commit 3a1674d1 by Nicolas Capens

Fix symbol visibility for preemption.

Entry functions need to have default visibility instead of protected visibility to allow symbol preemption during linking (i.e. when not using dlsym() to explicitly obtain pointers to entry functions). See: https://bugs.llvm.org//show_bug.cgi?id=30960 Bug swiftshader:64 Change-Id: Ia2d3ae8fb4faec9a75d811c643e3164bfb7d0423 Reviewed-on: https://swiftshader-review.googlesource.com/10028Reviewed-by: 's avatarAlexis Hétu <sugoi@google.com> Reviewed-by: 's avatarNicolas Capens <capn@google.com> Tested-by: 's avatarNicolas Capens <capn@google.com>
parent df0be385
...@@ -35,13 +35,10 @@ config("swiftshader_libEGL_private_config") { ...@@ -35,13 +35,10 @@ config("swiftshader_libEGL_private_config") {
cflags += [ "-Wno-unused-but-set-variable" ] cflags += [ "-Wno-unused-but-set-variable" ]
} }
defines += [ "LOG_TAG=\"swiftshader_libEGL\"" ] defines += [
"LOG_TAG=\"swiftshader_libEGL\"",
if (is_linux) { "EGLAPI=__attribute__((visibility(\"default\")))",
defines += [ "EGLAPI=__attribute__((visibility(\"protected\")))" ] ]
} else {
defines += [ "EGLAPI=__attribute__((visibility(\"default\")))" ]
}
} }
} }
......
...@@ -49,13 +49,8 @@ config("swiftshader_libGLESv2_private_config") { ...@@ -49,13 +49,8 @@ config("swiftshader_libGLESv2_private_config") {
"LOG_TAG=\"swiftshader_libGLESv2\"", "LOG_TAG=\"swiftshader_libGLESv2\"",
"__STDC_CONSTANT_MACROS", "__STDC_CONSTANT_MACROS",
"__STDC_LIMIT_MACROS", "__STDC_LIMIT_MACROS",
"GL_APICALL=__attribute__((visibility(\"default\")))",
] ]
if (is_linux) {
defines += [ "GL_APICALL=__attribute__((visibility(\"protected\")))" ]
} else {
defines += [ "GL_APICALL=__attribute__((visibility(\"default\")))" ]
}
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment