This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Assembly symbol generation


Daniel Lohmann writes:
 > Andrew Haley wrote:
 > > Katana Steel writes:
 > >  > 
 > >  > under x86 & x64 linux this creates the symbols (output from nm):
 > >  >         U  function1
 > >  >         U  function2
 > >  > and using cygwin & mingw (x86) it creates these symbols (output from nm):
 > >  >         U  _function1
 > >  >         U  _function2
 > >  > 
 > >  > is there a good reason for this? 
 > > 
 > > The ABI says so.  The ABI allows programs generated by different tools
 > > to be linked together: it doesn't really matter what the convention
 > > is, as long as everyone on a particular platform agrees.
 > > 
 > > The "_" prefix is in fact an old UNIX convention that was IIRC dropped
 > > by UNIX System V when it went over to ELF format binaries.
 > 
 > On most platforms there is also a -mno-underscores or 
 > -fno-leading-underscores or similar option available that can be used to 
 > suppress this anachronism.

This doesn't help at all: you won't be able to link with any libraries
if you don't use the local convention.

Andrew.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]