[Webkit-unassigned] [Bug 88421] New: [GTK] Fix symbol visibility in WTF and JSC

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Jun 6 08:40:23 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=88421

           Summary: [GTK] Fix symbol visibility in WTF and JSC
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Unspecified
        OS/Version: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: WebKit Gtk
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: wingo at igalia.com
                CC: gns at gnome.org, mrobinson at webkit.org,
                    cgarcia at igalia.com


We are compiling WebKit with -fvisibility=hidden (background: http://gcc.gnu.org/wiki/Visibility), and that's great.  Hidden symbols can be resolved statically at link-time, causing no dynamic-linker overhead at runtime.  On the other hand, symbols that are exported (those with default visibility) are subject to ELF symbol interposition rules, and so all accesses to them have to go through an indirection.

Public visibility is of course the right thing to do for symbols that are actually public.  Public visibility for private symbols creates maintenance problems, if clients use private symbols but it still happens to work.  Public visibility for private symbols also has a runtime cost: the cost when dynamically linking the library, and the indirection for further accesses.

Unfortunately, since we started to compile WTF and JSC as separate libraries (the first as a libtool helper lib only present at build-time, the second as a shared library), we have not been compiling them with -fvisibility=hidden.  That means we've been experiencing the aforementioned problems for all symbols defined by WTF and JSC.

This needs to be fixed.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list