[PATCH libICE] Enable visibility annotations

Adam Jackson ajax at nwnk.net
Fri Apr 15 16:40:15 UTC 2016


On Thu, 2016-04-14 at 09:50 +0300, Yury Gribov wrote:
> Hi all,
> 
> This patch adds visibility annotations to public functions in libICE and
> also enables -fvisibility=hidden on platforms where it's available.
> 
> This results in 10% size decrease (101K -> 92K) and 50% export symbols
> reduction (141 -> 67) on x86_64.

I'm not sure how you're getting those numbers? 'nm -D --defined' is
giving me 138 exported before and 100 after, and:

   text	   data	    bss	    dec	    hex	filename
  90853	   3000	  14560	 108413	  1a77d	libICE.so.before
  87507	   2712	  14560	 104779	  1994b	libICE.so.after

More like 4k (3.3%) size decrease.

I'm a little cautious about patches like this. The X libraries have had
an effectively static ABI for ages, so even functions that aren't
exposed in the installed headers might find themselves in use. I'd like
to at least know that, say, no app or lib in the Debian archive is
importing any of the newly hidden symbols. Have you checked?

- ajax


More information about the xorg-devel mailing list