This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [RFC] PowerPC select_section / unique_section
- From: David Edelsohn <dje at watson dot ibm dot com>
- To: Alan Modra <amodra at bigpond dot net dot au>
- Cc: Richard Henderson <rth at redhat dot com>, Franz Sirl <Franz dot Sirl-kernel at lauterbach dot com>, Geoff Keating <geoffk at redhat dot com>, gcc-patches at gcc dot gnu dot org
- Date: Fri, 30 Aug 2002 11:27:25 -0400
- Subject: Re: [RFC] PowerPC select_section / unique_section
>>>>> Alan Modra writes:
Alan> Uh, oh. If I understand binds_local_p and mark_constant_function
Alan> correctly, setting flag_pic is actually a bug-fix when compiling
Alan> powerpc64-linux shared libs. We have the standard ELF binding of
Alan> global syms. That is, global functions may be overridden by functions
Alan> in another shared library or by the main application.
Alan> So powerpc64-linux-gcc should allow -fpic/PIC to twiddle flag_pic for
Alan> binds_local_p, and users should set -fPIC when compiling shared libs
Alan> as is common on other ELF targets. We could use another flag, because
Alan> like that annoying rs6000.c warning says "all code is position
Alan> independent" on ppc64, but that would make powerpc64-linux just that
Alan> more odd. Lots of packages set -fPIC to mean "compile me code for a
Alan> shared library".
This is what the patch that I applied to both gcc-3.2 and the
trunk already does, without utilizing the generic infrastructure. The
PowerPC port currently does not use the targetm.binds_local_p. We can
discuss evolving to the generic infrastructure for GCC 3.4.
David