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

PATCH: Update i386-*-freebsd-aout to match well-tested configuration


Under private cover, David O'Brien sent me a patch required to
continue support for the archaic aout support of FreeBSD.  Approved
and committed to mainline and 3.3.  For the record, this patch has
been tested against the last snapshot of 3.3 pulled into FreeBSD.  I
personally only eyed it since I don't even have the related aout tools
setup to make this work anymore.  (ELF flag day was years ago on this
platform after all... ;-)

	* config/i386/freebsd-aout.h (NO_PROFILE_COUNTERS): New macro.
	(SET_ASM_OP): New macro.
	(HANDLE_SYSV_PRAGMA): New macro.
	(ASM_WEAKEN_LABEL): New macro.

Index: gcc/config/i386/freebsd-aout.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i386/freebsd-aout.h,v
retrieving revision 1.16
diff -c -r1.16 freebsd-aout.h
*** gcc/config/i386/freebsd-aout.h	26 Jan 2003 14:40:22 -0000	1.16
--- gcc/config/i386/freebsd-aout.h	29 Apr 2003 12:41:19 -0000
***************
*** 94,99 ****
--- 94,102 ----
  
  /* Profiling routines, partially copied from i386/osfrose.h.  */
  
+ /* Tell final.c that we don't need a label passed to mcount.  */
+ #define NO_PROFILE_COUNTERS 1
+ 
  #undef MCOUNT_NAME
  #define MCOUNT_NAME "mcount"
  #undef PROFILE_COUNT_REGISTER
***************
*** 112,117 ****
--- 115,121 ----
  
  #define TYPE_ASM_OP	"\t.type\t"
  #define SIZE_ASM_OP	"\t.size\t"
+ #define SET_ASM_OP	"\t.set\t"
  
  /* The following macro defines the format used to output the second
     operand of the .type assembler directive.  Different svr4 assemblers
***************
*** 120,125 ****
--- 124,135 ----
     specific tm.h file (depending upon the particulars of your assembler).  */
  
  #define TYPE_OPERAND_FMT	"@%s"
+ 
+ #define HANDLE_SYSV_PRAGMA	1
+ 
+ #define ASM_WEAKEN_LABEL(FILE,NAME) \
+ 	do { fputs ("\t.weak\t", FILE); assemble_name (FILE, NAME); \
+ 	fputc ('\n', FILE); } while (0)
  
  /* Write the extra assembler code needed to declare a function's result.
     Most svr4 assemblers don't require any special declaration of the


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