This is the mail archive of the gcc@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]

NO_DOLLAR_IN_LABEL


It seems that there is a serious misconfiguration in gcc with regard to
usage of the dollar sign in assembler names. Many platforms define
NO_DOLLAR_IN_LABEL with a comment

/* Use periods rather than dollar signs in special g++ assembler names.  */

or

/* We define this to prevent the name mangler from putting dollar signs into
   function names.  */

This is not really the semantics of NO_DOLLAR_IN_LABEL - it really
should mean

>> Define this macro if the assembler does not accept the character
>> @samp{$} in label names.
                            [tm.texi]

Now, it is proposed that the dollar sign is used to encode universal
character names and 'national' characters if g++ uses '.', and vice
versa, with a fall-back when either dollars or dots are not available.

This is a good proposal, but for it to work, we have to really
indicate what the assembler supports.

I propose that we add an additional macro to tm.texi,
CXX_NO_DOLLAR_IN_LABEL, which is set in all config files which
currently use NO_DOLLAR_IN_LABEL even if the assemblers do support
dollar signs.

If there are no objections, I'll produce a patch in that direction.

Regards,
Martin


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