ia64/xen-unstable

changeset 11466:29bc328cd8d3

Better PIC code production: Using #pragma GCC visibility, *all*
data references benefit, not just the ones to objects defined in the
same translation unit. However, as this now is a header file change,
detection logic cannot be used as nicely, so I guess we want to keep the
previous change and add this one on top.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
author kaf24@firebug.cl.cam.ac.uk
date Wed Sep 13 14:24:42 2006 +0100 (2006-09-13)
parents 21dc71840bc0
children 7474bb5e2923
files xen/include/xen/compiler.h
line diff
     1.1 --- a/xen/include/xen/compiler.h	Wed Sep 13 14:12:28 2006 +0100
     1.2 +++ b/xen/include/xen/compiler.h	Wed Sep 13 14:24:42 2006 +0100
     1.3 @@ -35,6 +35,11 @@
     1.4  #define offsetof(a,b) ((unsigned long)&(((a *)0)->b))
     1.5  #endif
     1.6  
     1.7 +#if defined(__x86_64__) && (__GNUC__ > 3)
     1.8 +/* Results in more efficient PIC code (no indirections through GOT or PLT). */
     1.9 +#pragma GCC visibility push(hidden)
    1.10 +#endif
    1.11 +
    1.12  /* This macro obfuscates arithmetic on a variable address so that gcc
    1.13     shouldn't recognize the original var, and make assumptions about it */
    1.14  /*