From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gavin Romig-Koch To: wilson@cygnus.com Cc: egcs@cygnus.com Subject: weak and alias for mips elf Date: Wed, 29 Apr 1998 11:02:00 -0000 Message-id: X-SW-Source: 1998-04/msg01154.html OK to push? * config/mips/elf.h (ASM_OUTPUT_DEF,ASM_WEAKEN_LABEL, ASM_OUTPUT_WEAK_ALIAS): Define. * config/mips/elf64.h: Same. * config/mips/r3900.h (ASM_OUTPUT_DEF,SUPPORTS_WEAK, ASM_WEAKEN_LABEL): Removed. Index: elf.h =================================================================== RCS file: /egcs/carton/cvsfiles/egcs/gcc/config/mips/elf.h,v retrieving revision 1.4 diff -r1.4 elf.h 72a73,104 > > #define ASM_OUTPUT_DEF(FILE,LABEL1,LABEL2) \ > do { fputc ( '\t', FILE); \ > assemble_name (FILE, LABEL1); \ > fputs ( " = ", FILE); \ > assemble_name (FILE, LABEL2); \ > fputc ( '\n', FILE); \ > } while (0) > > /* Note about .weak vs. .weakext > The mips native assemblers support .weakext, but not .weak. > mips-elf gas supports .weak, bug not .weakext. > mips-elf gas has been changed to support both .weak and .weakext, > but untill that support is generally available, the 'if' below > should serve. */ > > #define ASM_WEAKEN_LABEL(FILE,NAME) ASM_OUTPUT_WEAK_ALIAS(FILE,NAME,0) > #define ASM_OUTPUT_WEAK_ALIAS(FILE,NAME,VALUE) \ > do { \ > if (TARGET_GAS) \ > fputs ("\t.weak\t", FILE); \ > else \ > fputs ("\t.weakext\t", FILE); \ > assemble_name (FILE, NAME); \ > if (VALUE) \ > { \ > fputc (' ', FILE); \ > assemble_name (FILE, VALUE); \ > } \ > fputc ('\n', FILE); \ > } while (0) > Index: elf64.h =================================================================== RCS file: /egcs/carton/cvsfiles/egcs/gcc/config/mips/elf64.h,v retrieving revision 1.4 diff -r1.4 elf64.h 97a98,129 > > #define ASM_OUTPUT_DEF(FILE,LABEL1,LABEL2) \ > do { fputc ( '\t', FILE); \ > assemble_name (FILE, LABEL1); \ > fputs ( " = ", FILE); \ > assemble_name (FILE, LABEL2); \ > fputc ( '\n', FILE); \ > } while (0) > > /* Note about .weak vs. .weakext > The mips native assemblers support .weakext, but not .weak. > mips-elf gas supports .weak, bug not .weakext. > mips-elf gas has been changed to support both .weak and .weakext, > but untill that support is generally available, the 'if' below > should serve. */ > > #define ASM_WEAKEN_LABEL(FILE,NAME) ASM_OUTPUT_WEAK_ALIAS(FILE,NAME,0) > #define ASM_OUTPUT_WEAK_ALIAS(FILE,NAME,VALUE) \ > do { \ > if (TARGET_GAS) \ > fputs ("\t.weak\t", FILE); \ > else \ > fputs ("\t.weakext\t", FILE); \ > assemble_name (FILE, NAME); \ > if (VALUE) \ > { \ > fputc (' ', FILE); \ > assemble_name (FILE, VALUE); \ > } \ > fputc ('\n', FILE); \ > } while (0) > Index: r3900.h =================================================================== RCS file: /egcs/carton/cvsfiles/egcs/gcc/config/mips/r3900.h,v retrieving revision 1.3 diff -r1.3 r3900.h 72,89c72 < /* This is how to equate one symbol to another symbol. The syntax used is < `SYM1=SYM2'. Note that this is different from the way equates are done < with most svr4 assemblers, where the syntax is `.set SYM1,SYM2'. */ < < #define ASM_OUTPUT_DEF(FILE,LABEL1,LABEL2) \ < do { fprintf ((FILE), "\t"); \ < assemble_name (FILE, LABEL1); \ < fprintf (FILE, " = "); \ < assemble_name (FILE, LABEL2); \ < fprintf (FILE, "\n"); \ < } while (0) < < #define SUPPORTS_WEAK 1 < #define ASM_WEAKEN_LABEL(FILE,NAME) \ < do { fprintf ((FILE), "\t.weak\t"); \ < assemble_name (FILE, NAME); \ < fprintf (FILE, "\n"); \ < } while (0) --- > /* eof */