WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
25996
[Qt] Dead-code stripping for unix
https://bugs.webkit.org/show_bug.cgi?id=25996
Summary
[Qt] Dead-code stripping for unix
Laszlo Gombos
Reported
2009-05-24 13:08:07 PDT
Turn on dead-code stripping for the Qt port - Unix (no Mac) and GCC only. In default configuration, this change reduced the binary size by ~6% (with 1.23 Mb); removed ~3900 dead symbols (statistics based on
r44115
)
Attachments
Turn on GCC dead-code stripping flags for Unix
(1.07 KB, patch)
2009-05-24 13:12 PDT
,
Laszlo Gombos
zecke
: review+
Details
Formatted Diff
Diff
List of dead symbols - Qt port on Linux
(263.13 KB, text/plain)
2009-05-25 11:34 PDT
,
Laszlo Gombos
no flags
Details
Regenerated dead symbol list for r44682
(273.60 KB, text/plain)
2009-06-17 07:13 PDT
,
Laszlo Gombos
no flags
Details
View All
Add attachment
proposed patch, testcase, etc.
Laszlo Gombos
Comment 1
2009-05-24 13:12:37 PDT
Created
attachment 30633
[details]
Turn on GCC dead-code stripping flags for Unix
Laszlo Gombos
Comment 2
2009-05-24 22:01:06 PDT
(In reply to
comment #0
)
> Turn on dead-code stripping for the Qt port - Unix (no Mac) and GCC only. > In default configuration, this change reduced the binary size by ~6% (with 1.23 > Mb); removed ~3900 dead symbols (statistics based on
r44115
)
Cross the dead symbol statistics, it should be less than the number I gave..
Holger Freyther
Comment 3
2009-05-24 22:26:58 PDT
Do you have a list of dead symbols?
Laszlo Gombos
Comment 4
2009-05-25 11:34:25 PDT
Created
attachment 30654
[details]
List of dead symbols - Qt port on Linux ~ 3400 dead symbols; my initial numbers were not far off; Interesting list to scan trough.
Holger Freyther
Comment 5
2009-05-26 21:21:07 PDT
Comment on
attachment 30633
[details]
Turn on GCC dead-code stripping flags for Unix I'm a bit sad. I had the hope that the linker would remove these symbols... the other sad part is linking time will be slighly increased now?
Holger Freyther
Comment 6
2009-05-26 23:36:39 PDT
Landed in
r44179
. Thanks.
Simon Hausmann
Comment 7
2009-06-17 00:42:52 PDT
On the top of the list of the dead symbols is _NPN_IntFromIdentifier, which is used right in PluginPackage.cpp (the address of the symbol is taken, so it can't be inlined). How did you generate the list? Was it generated on a build without netscape plugin support?
Laszlo Gombos
Comment 8
2009-06-17 07:13:35 PDT
Created
attachment 31411
[details]
Regenerated dead symbol list for
r44682
Laszlo Gombos
Comment 9
2009-06-17 07:22:19 PDT
(In reply to
comment #7
)
> On the top of the list of the dead symbols is _NPN_IntFromIdentifier, which is > used right in PluginPackage.cpp (the address of the symbol is taken, so it > can't be inlined). How did you generate the list? Was it generated on a build > without netscape plugin support?
I regenerated the dead symbol list (QtWebKit release build on Linux) and _NPN_IntFromIdentifier no longer shows up as dead symbol (I do not have an explanation how the _NPN_IntFromIdentifier symbol ended up in the previous list). Here is a brief explanation on how I generated the list: - Make two builds; one with dead symbol stripping, one without it - Get all the defined symbols in each .so by running nm --defined-only - Get the delta of from the two symbol list and demangle the symbols with c++filt
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug