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]

Re: Fix dealing with large (>2GB) static data initalizers


> > A couple of comments on your patch:
> > 
> > 1.  You're still not taking full advantage of the possible range.  Why
> >     not use `unsigned HOST_WIDE_INT' and HOST_WIDE_INT_PRINT_UNSIGNED
> >     throughout instead of the signed counterparts?
> OK, I will do the replacement.  It easy.
> >   
> > Careful, you seem to have missed the leading comma.
> > 
> > 3.  What's with the backquotes around the \n in the call to putc
> > below?  You did the same in several more places following this one.
> 
> I will fix these two (and use string concatenation).  Iterestlingly
> enought I was fixing the reversed quotes once before (the patch was made
> on Spanish keyboard that made me go crazy).  Thanks!

Hi,
I am currently testing the attached patch (that already passed
bootstrap+regtest on i386) and will commit it if it suceeds.  It does
unsignetize the sizes and use string concatenation to remove some of the
uglyness.

	* expr.h (assemble_static_space): Update prototype.
	* output.h (assemble_zeros, output_constant): Likewise.
	* elfos.h (ASM_OUTPUT_SKIP, ASM_OUTPUT_COMMON): Make it 64bit clean
	* alpha.h (ASM_OUTPUT_SKIP, ASM_OUTPUT_COMMON, ASK_OUTPUT_LOCAL): Make
	it 64bit clean.
	* elf.h (ASM_OTUPUT_SKIP): Likewise.
	* unicosmk.h (ASM_OUTPUT_SKIP, ASM_OUTPUT_COMM): Likewise.
	* arm.h (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL, ASM_OUTPUT_SKIP):
	Expect HOST_WIDE_INT operand.
	* aout.h (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL, ASM_OUTPUT_SKIP):
	Expect HOST_WIDE_INT operand.
	* unknown-elf.h (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL, ASM_OUTPUT_SKIP):
	Expect HOST_WIDE_INT operand.
	* avr.h (ASM_OUTPUT_COMMON, ASM_OUTPUT_SKIP): Expect
	HOST_WIDE_INT operand.
	* c4x.h (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL, ASM_OUTPUT_SKIP,
	ASM_OUTPUT_BSS): Expect HOST_WIDE_INT operand.
	* aout.h (ASM_OTUPUT_SKIP): Likewise.
	* cris.h (ASM_OTUPUT_SKIP, ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Likewise.
	* darwin.h (ASM_OTUPUT_SKIP, ASM_OUTPUT_COMMON): Likewise.
	* dsp16xx.h (ASM_OTUPUT_SKIP): Likewise.
	* frv.h (ASM_OTUPUT_SKIP): Likewise.
	* h8300.h (ASM_OTUPUT_SKIP, ASM_OUTPUT_LOCAL): Likewise.
	* 370.h (ASM_OTUPUT_SKIP, ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL):
	Make it 64bit
	clean.
	* att.h (ASM_OUTPUT_SKIP): Expect HOST_WIDE_INT operand.
	* bsd.h (ASM_OUTPUT_SKIP, ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL):
	Make it 64bit clean.
	* darwin.h (ASM_OUTPUT_SKIP): Make it 64bit clean..
	* sco5.h (ASM_OUTPUT_SKIP, ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Expect
	HOST_WIDE_INT operand
	* svr3gas.h (ASM_OUTPUT_SKIP, ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL):
	Expect HOST_WIDE_INT operand
	* sysv3.h (ASM_OUTPUT_SKIP): Expect HOST_WIDE_INT operand
	* i960.h (ASM_OUTPUT_SKIP, ASM_OUTPUT_COMMON,
	ASM_OUTPUT_ALIGNED_LOCAL): Expect HOST_WIDE_INT operand
	* ip2k.h (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL, ASM_OUTPUT_SKIP):
	Likewise.
	* m32r.h (ASM_OUTPUT_COMMON): Likewise.
	* 3b1.h (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL, ASM_OUTPUT_SKIP):
	Likewise.
	* amix.h (ASM_OUTPUT_ALIGNED_LOCAL): Likewise.
	* crds.h (ASM_OUTPUT_SKIP, ASM_OUTPUT_ALIGNED_LOCAL): Likewise.
	* hp320.h (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL,
	ASM_OUTPUT_SKIP): Likewise.
	* m68k.h (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL, ASM_OUTPUT_SKIP):
	Likewise.
	* m68kelf.h (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL,
	ASM_OUTPUT_SKIP): Likewise.
	* m68kv4.h (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL,
	ASM_OUTPUT_SKIP): Likewise.
	* mot3300.h (ASM_OUTPUT_LOCAL, ASM_OUTPUT_SKIP): Likewise.
	* netbsd-elf.h (ASM_OUTPUT_LOCAL, ASM_OUTPUT_COMMON,
	ASM_OUTPUT_SKIP): Likewise.
	* sgs.h (ASM_OUTPUT_SKIP): Likewise.
	* tower-as.h (ASM_OUTPUT_LOCAL, ASM_OUTPUT_COMMON,
	ASM_OUTPUT_SKIP): Likewise.
	* m88k.h (ASM_OUTPUT_LOCAL, ASM_OUTPUT_COMMON, ASM_OUTPUT_SKIP):
	Likewise.
	* mcore.h (ASM_OUTPUT_LOCAL, ASM_OUTPUT_BSS, ASM_OUTPUT_SKIP): Likewise.
	* iris.h (ASM_OUTPUT_LOCAL): Likewise.
	* mips.h (ASM_OUTPUT_LOCAL, ASM_OUTPUT_SKIP): Likewise.
	* ns32k.h (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL,
	ASM_OUTPUT_SKIP): Make it 64bit clean.
	* pa-pro-end.h (ASM_OUTPUT_LOCAL, ASM_OUTPUT_ALIGNED_LOCAL):
	Make it 64bit clean.
	* pa.h (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL, ASM_OUTPUT_ALIGNED_LOCAL,
	ASM_OUTPUT_SKIP): Make it 64bit clean.
	* hpux.h (ASM_OUTPUT_LOCAL, ASM_OUTPUT_ALIGNED_LOCAL): Make it
	64bit clean.
	* romp.h (ASM_OUTPUT_SKIP, ASM_OUTPUT_LOCAL, ASM_OUTPUT_COMMON): Expect
	HOST_WIDE_INT argument
	* s390.h (ASM_OUTPUT_SKIP): Expect HOST_WIDE_INT argument.
	* sh.h (ASM_OUTPUT_SKIP, ASM_OUTPUT_LOCAL, ASM_OUTPUT_COMMON): Expect
	HOST_WIDE_INT argument
	* sol2.h (ASM_OUTPUT_SKIP): HOST_WIDE_INT argument
	* sparc.h (ASM_OUTPUT_SKIP, ASM_OUTPUT_COMMON): HOST_WIDE_INT argument
	* svr3.h (ASM_OUTPUT_SKIP): HOST_WIDE_INT argument
	* vax.h (ASM_OUTPUT_SKIP, ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL):
	HOST_WIDE_INT argument
	* vaxv.h (ASM_OUTPUT_LOCAL): HOST_WIDE_INT argument
	* xtensa.h (ASM_OUTPUT_LOCAL): HOST_WIDE_INT argument
	* varasm.c (asm_output_bss, asm_output_aligned_bss,
	asm_emit_uninitialized, assemble_zeros, assemble_static_space):
	HOST_WIDE_INT argument
Index: expr.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/expr.h,v
retrieving revision 1.136
diff -c -3 -p -r1.136 expr.h
*** expr.h	9 May 2003 06:37:18 -0000	1.136
--- expr.h	12 May 2003 09:26:30 -0000
*************** extern bool const_mult_add_overflow_p PA
*** 793,799 ****
  extern rtx expand_mult_add PARAMS ((rtx, rtx, rtx, rtx,enum machine_mode, int));
  extern rtx expand_mult_highpart_adjust PARAMS ((enum machine_mode, rtx, rtx, rtx, rtx, int));
  
! extern rtx assemble_static_space PARAMS ((int));
  extern int safe_from_p PARAMS ((rtx, tree, int));
  
  /* Call this once to initialize the contents of the optabs
--- 793,799 ----
  extern rtx expand_mult_add PARAMS ((rtx, rtx, rtx, rtx,enum machine_mode, int));
  extern rtx expand_mult_highpart_adjust PARAMS ((enum machine_mode, rtx, rtx, rtx, rtx, int));
  
! extern rtx assemble_static_space PARAMS ((unsigned HOST_WIDE_INT));
  extern int safe_from_p PARAMS ((rtx, tree, int));
  
  /* Call this once to initialize the contents of the optabs
Index: output.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/output.h,v
retrieving revision 1.122
diff -c -3 -p -r1.122 output.h
*** output.h	20 Apr 2003 22:43:59 -0000	1.122
--- output.h	12 May 2003 09:26:30 -0000
*************** extern void assemble_variable		PARAMS ((
*** 276,282 ****
  extern void assemble_external		PARAMS ((tree));
  
  /* Assemble code to leave SIZE bytes of zeros.  */
! extern void assemble_zeros		PARAMS ((int));
  
  /* Assemble an alignment pseudo op for an ALIGN-bit boundary.  */
  extern void assemble_align		PARAMS ((int));
--- 276,282 ----
  extern void assemble_external		PARAMS ((tree));
  
  /* Assemble code to leave SIZE bytes of zeros.  */
! extern void assemble_zeros		PARAMS ((unsigned HOST_WIDE_INT));
  
  /* Assemble an alignment pseudo op for an ALIGN-bit boundary.  */
  extern void assemble_align		PARAMS ((int));
*************** extern tree initializer_constant_valid_p
*** 363,369 ****
     with zeros if necessary.  SIZE must always be specified.
  
     ALIGN is the alignment in bits that may be assumed for the data.  */
! extern void output_constant		PARAMS ((tree, HOST_WIDE_INT,
  						 unsigned int));
  
  /* When outputting delayed branch sequences, this rtx holds the
--- 363,369 ----
     with zeros if necessary.  SIZE must always be specified.
  
     ALIGN is the alignment in bits that may be assumed for the data.  */
! extern void output_constant		PARAMS ((tree, unsigned HOST_WIDE_INT,
  						 unsigned int));
  
  /* When outputting delayed branch sequences, this rtx holds the
Index: varasm.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/varasm.c,v
retrieving revision 1.351
diff -c -3 -p -r1.351 varasm.c
*** varasm.c	11 May 2003 15:47:54 -0000	1.351
--- varasm.c	12 May 2003 09:26:31 -0000
*************** static int mark_constant		PARAMS ((rtx *
*** 163,184 ****
  static int output_addressed_constants	PARAMS ((tree));
  static unsigned HOST_WIDE_INT array_size_for_constructor PARAMS ((tree));
  static unsigned min_align		PARAMS ((unsigned, unsigned));
! static void output_constructor		PARAMS ((tree, HOST_WIDE_INT,
  						 unsigned int));
  static void globalize_decl		PARAMS ((tree));
  static void maybe_assemble_visibility	PARAMS ((tree));
  static int in_named_entry_eq		PARAMS ((const PTR, const PTR));
  static hashval_t in_named_entry_hash	PARAMS ((const PTR));
  #ifdef ASM_OUTPUT_BSS
! static void asm_output_bss		PARAMS ((FILE *, tree, const char *, int, int));
  #endif
  #ifdef BSS_SECTION_ASM_OP
  #ifdef ASM_OUTPUT_ALIGNED_BSS
  static void asm_output_aligned_bss
!   PARAMS ((FILE *, tree, const char *, int, int)) ATTRIBUTE_UNUSED;
  #endif
  #endif /* BSS_SECTION_ASM_OP */
! static bool asm_emit_uninitialised	PARAMS ((tree, const char*, int, int));
  static void resolve_unique_section	PARAMS ((tree, int, int));
  static void mark_weak                   PARAMS ((tree));
  
--- 163,189 ----
  static int output_addressed_constants	PARAMS ((tree));
  static unsigned HOST_WIDE_INT array_size_for_constructor PARAMS ((tree));
  static unsigned min_align		PARAMS ((unsigned, unsigned));
! static void output_constructor		PARAMS ((tree, unsigned HOST_WIDE_INT,
  						 unsigned int));
  static void globalize_decl		PARAMS ((tree));
  static void maybe_assemble_visibility	PARAMS ((tree));
  static int in_named_entry_eq		PARAMS ((const PTR, const PTR));
  static hashval_t in_named_entry_hash	PARAMS ((const PTR));
  #ifdef ASM_OUTPUT_BSS
! static void asm_output_bss		PARAMS ((FILE *, tree, const char *,
! 						unsigned HOST_WIDE_INT,
! 						unsigned HOST_WIDE_INT));
  #endif
  #ifdef BSS_SECTION_ASM_OP
  #ifdef ASM_OUTPUT_ALIGNED_BSS
  static void asm_output_aligned_bss
!   PARAMS ((FILE *, tree, const char *,
! 	   unsigned HOST_WIDE_INT, int)) ATTRIBUTE_UNUSED;
  #endif
  #endif /* BSS_SECTION_ASM_OP */
! static bool asm_emit_uninitialised	PARAMS ((tree, const char*,
! 						 unsigned HOST_WIDE_INT,
! 						 unsigned HOST_WIDE_INT));
  static void resolve_unique_section	PARAMS ((tree, int, int));
  static void mark_weak                   PARAMS ((tree));
  
*************** asm_output_bss (file, decl, name, size, 
*** 501,507 ****
       FILE *file;
       tree decl ATTRIBUTE_UNUSED;
       const char *name;
!      int size ATTRIBUTE_UNUSED, rounded;
  {
    (*targetm.asm_out.globalize_label) (file, name);
    bss_section ();
--- 506,512 ----
       FILE *file;
       tree decl ATTRIBUTE_UNUSED;
       const char *name;
!      unsigned HOST_WIDE_INT size ATTRIBUTE_UNUSED, rounded;
  {
    (*targetm.asm_out.globalize_label) (file, name);
    bss_section ();
*************** asm_output_aligned_bss (file, decl, name
*** 529,535 ****
       FILE *file;
       tree decl ATTRIBUTE_UNUSED;
       const char *name;
!      int size, align;
  {
    bss_section ();
    ASM_OUTPUT_ALIGN (file, floor_log2 (align / BITS_PER_UNIT));
--- 534,541 ----
       FILE *file;
       tree decl ATTRIBUTE_UNUSED;
       const char *name;
!      unsigned HOST_WIDE_INT size;
!      int align;
  {
    bss_section ();
    ASM_OUTPUT_ALIGN (file, floor_log2 (align / BITS_PER_UNIT));
*************** assemble_end_function (decl, fnname)
*** 1208,1214 ****
  
  void
  assemble_zeros (size)
!      int size;
  {
    /* Do no output if -fsyntax-only.  */
    if (flag_syntax_only)
--- 1214,1220 ----
  
  void
  assemble_zeros (size)
!      unsigned HOST_WIDE_INT size;
  {
    /* Do no output if -fsyntax-only.  */
    if (flag_syntax_only)
*************** assemble_zeros (size)
*** 1219,1225 ****
       so we must output 0s explicitly in the text section.  */
    if (ASM_NO_SKIP_IN_TEXT && in_text_section ())
      {
!       int i;
        for (i = 0; i < size; i++)
  	assemble_integer (const0_rtx, 1, BITS_PER_UNIT, 1);
      }
--- 1225,1231 ----
       so we must output 0s explicitly in the text section.  */
    if (ASM_NO_SKIP_IN_TEXT && in_text_section ())
      {
!       unsigned HOST_WIDE_INT i;
        for (i = 0; i < size; i++)
  	assemble_integer (const0_rtx, 1, BITS_PER_UNIT, 1);
      }
*************** static bool
*** 1309,1316 ****
  asm_emit_uninitialised (decl, name, size, rounded)
       tree decl;
       const char *name;
!      int size ATTRIBUTE_UNUSED;
!      int rounded ATTRIBUTE_UNUSED;
  {
    enum
    {
--- 1315,1322 ----
  asm_emit_uninitialised (decl, name, size, rounded)
       tree decl;
       const char *name;
!      unsigned HOST_WIDE_INT size ATTRIBUTE_UNUSED;
!      unsigned HOST_WIDE_INT rounded ATTRIBUTE_UNUSED;
  {
    enum
    {
*************** assemble_name (file, name)
*** 1751,1757 ****
  
  rtx
  assemble_static_space (size)
!      int size;
  {
    char name[12];
    const char *namestring;
--- 1757,1763 ----
  
  rtx
  assemble_static_space (size)
!      unsigned HOST_WIDE_INT size;
  {
    char name[12];
    const char *namestring;
*************** assemble_static_space (size)
*** 1780,1786 ****
      /* Round size up to multiple of BIGGEST_ALIGNMENT bits
         so that each uninitialized object starts on such a boundary.  */
      /* Variable `rounded' might or might not be used in ASM_OUTPUT_LOCAL.  */
!     int rounded ATTRIBUTE_UNUSED
        = ((size + (BIGGEST_ALIGNMENT / BITS_PER_UNIT) - 1)
  	 / (BIGGEST_ALIGNMENT / BITS_PER_UNIT)
  	 * (BIGGEST_ALIGNMENT / BITS_PER_UNIT));
--- 1786,1792 ----
      /* Round size up to multiple of BIGGEST_ALIGNMENT bits
         so that each uninitialized object starts on such a boundary.  */
      /* Variable `rounded' might or might not be used in ASM_OUTPUT_LOCAL.  */
!     unsigned HOST_WIDE_INT rounded ATTRIBUTE_UNUSED
        = ((size + (BIGGEST_ALIGNMENT / BITS_PER_UNIT) - 1)
  	 / (BIGGEST_ALIGNMENT / BITS_PER_UNIT)
  	 * (BIGGEST_ALIGNMENT / BITS_PER_UNIT));
*************** initializer_constant_valid_p (value, end
*** 3767,3777 ****
  void
  output_constant (exp, size, align)
       tree exp;
!      HOST_WIDE_INT size;
       unsigned int align;
  {
    enum tree_code code;
!   HOST_WIDE_INT thissize;
  
    /* Some front-ends use constants other than the standard language-independent
       varieties, but which may still be output directly.  Give the front-end a
--- 3773,3783 ----
  void
  output_constant (exp, size, align)
       tree exp;
!      unsigned HOST_WIDE_INT size;
       unsigned int align;
  {
    enum tree_code code;
!   unsigned HOST_WIDE_INT thissize;
  
    /* Some front-ends use constants other than the standard language-independent
       varieties, but which may still be output directly.  Give the front-end a
*************** output_constant (exp, size, align)
*** 3851,3857 ****
  	}
        else if (TREE_CODE (exp) == STRING_CST)
  	{
! 	  thissize = MIN (TREE_STRING_LENGTH (exp), size);
  	  assemble_string (TREE_STRING_POINTER (exp), thissize);
  	}
        else if (TREE_CODE (exp) == VECTOR_CST)
--- 3857,3864 ----
  	}
        else if (TREE_CODE (exp) == STRING_CST)
  	{
! 	  thissize = MIN ((unsigned HOST_WIDE_INT)TREE_STRING_LENGTH (exp),
! 			  size);
  	  assemble_string (TREE_STRING_POINTER (exp), thissize);
  	}
        else if (TREE_CODE (exp) == VECTOR_CST)
*************** array_size_for_constructor (val)
*** 3960,3966 ****
  static void
  output_constructor (exp, size, align)
       tree exp;
!      HOST_WIDE_INT size;
       unsigned int align;
  {
    tree type = TREE_TYPE (exp);
--- 3967,3973 ----
  static void
  output_constructor (exp, size, align)
       tree exp;
!      unsigned HOST_WIDE_INT size;
       unsigned int align;
  {
    tree type = TREE_TYPE (exp);
Index: config/darwin.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/darwin.h,v
retrieving revision 1.50
diff -c -3 -p -r1.50 darwin.h
*** config/darwin.h	20 Apr 2003 18:20:37 -0000	1.50
--- config/darwin.h	12 May 2003 09:26:31 -0000
*************** do { text_section ();							\
*** 346,352 ****
    } while (0)
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.space %d\n", SIZE)
  
  /* Give ObjC methods pretty symbol names.  */
  
--- 346,352 ----
    } while (0)
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.space "HOST_WIDE_INT_PRINT_UNSIGNED"\n", SIZE)
  
  /* Give ObjC methods pretty symbol names.  */
  
*************** do { text_section ();							\
*** 454,460 ****
    do {									\
      fputs (".lcomm ", (FILE));						\
      assemble_name ((FILE), (NAME));					\
!     fprintf ((FILE), ",%u,%u\n", (SIZE),				\
  	     floor_log2 ((ALIGN) / BITS_PER_UNIT));			\
      if ((DECL) && ((TREE_STATIC (DECL)					\
  	 && (!DECL_COMMON (DECL) || !TREE_PUBLIC (DECL)))		\
--- 454,460 ----
    do {									\
      fputs (".lcomm ", (FILE));						\
      assemble_name ((FILE), (NAME));					\
!     fprintf ((FILE), ","HOST_WIDE_INT_PRINT_UNSIGNED",%u\n", (SIZE),	\
  	     floor_log2 ((ALIGN) / BITS_PER_UNIT));			\
      if ((DECL) && ((TREE_STATIC (DECL)					\
  	 && (!DECL_COMMON (DECL) || !TREE_PUBLIC (DECL)))		\
Index: config/elfos.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/elfos.h,v
retrieving revision 1.58
diff -c -3 -p -r1.58 elfos.h
*** config/elfos.h	26 Jan 2003 14:40:22 -0000	1.58
--- config/elfos.h	12 May 2003 09:26:31 -0000
*************** Boston, MA 02111-1307, USA.  */
*** 108,114 ****
  
  #undef  ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE, SIZE) \
!   fprintf (FILE, "%s%u\n", SKIP_ASM_OP, (SIZE))
  
  /* This is how to store into the string LABEL
     the symbol_ref name of an internal numbered label where
--- 108,115 ----
  
  #undef  ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE, SIZE) \
!    fprintf ((FILE), "%s"HOST_WIDE_INT_PRINT_UNSIGNED"\n",\
! 	    SKIP_ASM_OP, (SIZE))
  
  /* This is how to store into the string LABEL
     the symbol_ref name of an internal numbered label where
*************** Boston, MA 02111-1307, USA.  */
*** 171,177 ****
      {									\
        fprintf ((FILE), "%s", COMMON_ASM_OP);				\
        assemble_name ((FILE), (NAME));					\
!       fprintf ((FILE), ",%u,%u\n", (SIZE), (ALIGN) / BITS_PER_UNIT);	\
      }									\
    while (0)
  
--- 172,179 ----
      {									\
        fprintf ((FILE), "%s", COMMON_ASM_OP);				\
        assemble_name ((FILE), (NAME));					\
!       fprintf ((FILE), ","HOST_WIDE_INT_PRINT_UNSIGNED",%u\n",		\
! 	       (SIZE), (ALIGN) / BITS_PER_UNIT);			\
      }									\
    while (0)
  
Index: config/svr3.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/svr3.h,v
retrieving revision 1.17
diff -c -3 -p -r1.17 svr3.h
*** config/svr3.h	16 Dec 2002 18:20:43 -0000	1.17
--- config/svr3.h	12 May 2003 09:26:31 -0000
*************** Boston, MA 02111-1307, USA.
*** 93,99 ****
      data_section ();					\
      ASM_OUTPUT_ALIGN ((FILE), align == -1 ? 2 : align);	\
      ASM_OUTPUT_LABEL ((FILE), (NAME));			\
!     fprintf ((FILE), "\t.set .,.+%u\n", (ROUNDED));	\
    } while (0)
  
  #if 0 /* For now, let's leave these machine-specific.  */
--- 93,99 ----
      data_section ();					\
      ASM_OUTPUT_ALIGN ((FILE), align == -1 ? 2 : align);	\
      ASM_OUTPUT_LABEL ((FILE), (NAME));			\
!     fprintf ((FILE), "\t.set .,.+%u\n", (int)(ROUNDED));	\
    } while (0)
  
  #if 0 /* For now, let's leave these machine-specific.  */
Index: config/alpha/alpha.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/alpha/alpha.h,v
retrieving revision 1.195
diff -c -3 -p -r1.195 alpha.h
*** config/alpha/alpha.h	17 Apr 2003 23:18:53 -0000	1.195
--- config/alpha/alpha.h	12 May 2003 09:26:31 -0000
*************** do {						\
*** 1622,1628 ****
  /* This is how to advance the location counter by SIZE bytes.  */
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.space %d\n", (SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
--- 1622,1628 ----
  /* This is how to advance the location counter by SIZE bytes.  */
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.space "HOST_WIDE_INT_PRINT_UNSIGNED"%d\n", (SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
*************** do {						\
*** 1630,1636 ****
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\t.comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%d\n", (SIZE)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
--- 1630,1636 ----
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\t.comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ","HOST_WIDE_INT_PRINT_UNSIGNED"\n", (SIZE)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
*************** do {						\
*** 1638,1644 ****
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE,ROUNDED)	\
  ( fputs ("\t.lcomm ", (FILE)),				\
    assemble_name ((FILE), (NAME)),			\
!   fprintf ((FILE), ",%d\n", (SIZE)))
  
  
  /* Print operand X (an rtx) in assembler syntax to file FILE.
--- 1638,1644 ----
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE,ROUNDED)	\
  ( fputs ("\t.lcomm ", (FILE)),				\
    assemble_name ((FILE), (NAME)),			\
!   fprintf ((FILE), ","HOST_WIDE_INT_PRINT_UNSIGNED"\n", (SIZE)))
  
  
  /* Print operand X (an rtx) in assembler syntax to file FILE.
Index: config/alpha/elf.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/alpha/elf.h,v
retrieving revision 1.65
diff -c -3 -p -r1.65 elf.h
*** config/alpha/elf.h	28 Mar 2003 08:06:59 -0000	1.65
--- config/alpha/elf.h	12 May 2003 09:26:31 -0000
*************** do {								\
*** 81,87 ****
  
  #undef  ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE, SIZE) \
!   fprintf (FILE, "%s%u\n", SKIP_ASM_OP, (SIZE))
  
  /* Output the label which precedes a jumptable.  Note that for all svr4
     systems where we actually generate jumptables (which is to say every
--- 81,87 ----
  
  #undef  ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE, SIZE) \
!   fprintf (FILE, "%s"HOST_WIDE_INT_PRINT_UNSIGNED"\n", SKIP_ASM_OP, (SIZE))
  
  /* Output the label which precedes a jumptable.  Note that for all svr4
     systems where we actually generate jumptables (which is to say every
Index: config/alpha/unicosmk.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/alpha/unicosmk.h,v
retrieving revision 1.17
diff -c -3 -p -r1.17 unicosmk.h
*** config/alpha/unicosmk.h	16 Dec 2002 18:20:47 -0000	1.17
--- config/alpha/unicosmk.h	12 May 2003 09:26:31 -0000
*************** ssib_section ()			\
*** 453,459 ****
  
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(STREAM,SIZE)			\
!   fprintf ((STREAM), "\t.byte\t0:%d\n", (SIZE));
  
  /* This says how to output an assembler line to define a global common
     symbol. We need the alignment information because it has to be supplied
--- 453,460 ----
  
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(STREAM,SIZE)			\
!   fprintf ((STREAM), "\t.byte\t0:"HOST_WIDE_INT_PRINT_UNSIGNED"\n",\
! 	   (SIZE));
  
  /* This says how to output an assembler line to define a global common
     symbol. We need the alignment information because it has to be supplied
*************** ssib_section ()			\
*** 470,476 ****
    do { data_section ();					\
         fprintf (FILE, "\t.align\t%d\n", floor_log2 ((ALIGN) / BITS_PER_UNIT));\
         ASM_OUTPUT_LABEL ((FILE), (NAME));		\
!        fprintf (FILE, "\t.byte 0:%d\n", SIZE);		\
    } while (0)
  
  /* CAM does not allow us to declare a symbol as external first and then
--- 471,477 ----
    do { data_section ();					\
         fprintf (FILE, "\t.align\t%d\n", floor_log2 ((ALIGN) / BITS_PER_UNIT));\
         ASM_OUTPUT_LABEL ((FILE), (NAME));		\
!        fprintf (FILE, "\t.byte 0:"HOST_WIDE_INT_PRINT_UNSIGNED"\n",(SIZE));\
    } while (0)
  
  /* CAM does not allow us to declare a symbol as external first and then
Index: config/arm/aof.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/arm/aof.h,v
retrieving revision 1.23
diff -c -3 -p -r1.23 aof.h
*** config/arm/aof.h	10 Feb 2003 16:33:08 -0000	1.23
--- config/arm/aof.h	12 May 2003 09:26:31 -0000
*************** do					\
*** 207,220 ****
     fprintf ((STREAM), "\tAREA "),				\
     assemble_name ((STREAM), (NAME)),				\
     fprintf ((STREAM), ", DATA, COMMON\n\t%% %d\t%s size=%d\n",	\
! 	    (ROUNDED), ASM_COMMENT_START, SIZE))
  
  #define ASM_OUTPUT_LOCAL(STREAM,NAME,SIZE,ROUNDED)	\
     (zero_init_section (),				\
      assemble_name ((STREAM), (NAME)),			\
      fprintf ((STREAM), "\n"),				\
      fprintf ((STREAM), "\t%% %d\t%s size=%d\n",		\
! 	     (ROUNDED), ASM_COMMENT_START, SIZE))
  
  /* Output and Generation of Labels */
  
--- 207,220 ----
     fprintf ((STREAM), "\tAREA "),				\
     assemble_name ((STREAM), (NAME)),				\
     fprintf ((STREAM), ", DATA, COMMON\n\t%% %d\t%s size=%d\n",	\
! 	    (ROUNDED), ASM_COMMENT_START, (int)SIZE))
  
  #define ASM_OUTPUT_LOCAL(STREAM,NAME,SIZE,ROUNDED)	\
     (zero_init_section (),				\
      assemble_name ((STREAM), (NAME)),			\
      fprintf ((STREAM), "\n"),				\
      fprintf ((STREAM), "\t%% %d\t%s size=%d\n",		\
! 	     (ROUNDED), ASM_COMMENT_START, (int)SIZE))
  
  /* Output and Generation of Labels */
  
*************** do {					\
*** 332,338 ****
  /* Assembler Commands for Alignment */
  
  #define ASM_OUTPUT_SKIP(STREAM,NBYTES)		\
!  fprintf ((STREAM), "\t%%\t%d\n", (NBYTES))
  
  #define ASM_OUTPUT_ALIGN(STREAM,POWER)			\
  do {							\
--- 332,338 ----
  /* Assembler Commands for Alignment */
  
  #define ASM_OUTPUT_SKIP(STREAM,NBYTES)		\
!  fprintf ((STREAM), "\t%%\t%d\n", (int)(NBYTES))
  
  #define ASM_OUTPUT_ALIGN(STREAM,POWER)			\
  do {							\
Index: config/arm/aout.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/arm/aout.h,v
retrieving revision 1.30
diff -c -3 -p -r1.30 aout.h
*** config/arm/aout.h	10 Feb 2003 16:33:08 -0000	1.30
--- config/arm/aout.h	12 May 2003 09:26:31 -0000
***************
*** 240,246 ****
  /* Output a gap.  In fact we fill it with nulls.  */
  #undef  ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(STREAM, NBYTES) 	\
!   fprintf (STREAM, "\t.space\t%d\n", NBYTES)
  
  /* Align output to a power of two.  Horrible /bin/as.  */
  #ifndef ASM_OUTPUT_ALIGN  
--- 240,246 ----
  /* Output a gap.  In fact we fill it with nulls.  */
  #undef  ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(STREAM, NBYTES) 	\
!   fprintf (STREAM, "\t.space\t%d\n", (int)NBYTES)
  
  /* Align output to a power of two.  Horrible /bin/as.  */
  #ifndef ASM_OUTPUT_ALIGN  
***************
*** 265,271 ****
        fprintf (STREAM, "\t.comm\t");			\
        assemble_name (STREAM, NAME);			\
        asm_fprintf (STREAM, ", %d\t%@ %d\n", 		\
! 	           ROUNDED, SIZE);			\
      }							\
    while (0)
  #endif
--- 265,271 ----
        fprintf (STREAM, "\t.comm\t");			\
        assemble_name (STREAM, NAME);			\
        asm_fprintf (STREAM, ", %d\t%@ %d\n", 		\
! 	           (int)(ROUNDED), (int)(SIZE));	\
      }							\
    while (0)
  #endif
***************
*** 281,287 ****
        bss_section ();							\
        ASM_OUTPUT_ALIGN (STREAM, floor_log2 (ALIGN / BITS_PER_UNIT));	\
        ASM_OUTPUT_LABEL (STREAM, NAME);					\
!       fprintf (STREAM, "\t.space\t%d\n", SIZE);				\
      }									\
    while (0)
  #endif
--- 281,287 ----
        bss_section ();							\
        ASM_OUTPUT_ALIGN (STREAM, floor_log2 (ALIGN / BITS_PER_UNIT));	\
        ASM_OUTPUT_LABEL (STREAM, NAME);					\
!       fprintf (STREAM, "\t.space\t%d\n", (int)(SIZE));			\
      }									\
    while (0)
  #endif
Index: config/arm/unknown-elf.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/arm/unknown-elf.h,v
retrieving revision 1.30
diff -c -3 -p -r1.30 unknown-elf.h
*** config/arm/unknown-elf.h	28 Mar 2003 08:07:02 -0000	1.30
--- config/arm/unknown-elf.h	12 May 2003 09:26:31 -0000
***************
*** 66,72 ****
  									\
        last_assemble_variable_decl = DECL;				\
        ASM_DECLARE_OBJECT_NAME (FILE, NAME, DECL);			\
!       ASM_OUTPUT_SKIP (FILE, SIZE ? SIZE : 1);				\
      } 									\
    while (0)
  
--- 66,72 ----
  									\
        last_assemble_variable_decl = DECL;				\
        ASM_DECLARE_OBJECT_NAME (FILE, NAME, DECL);			\
!       ASM_OUTPUT_SKIP (FILE, SIZE ? (int)(SIZE) : 1);			\
      } 									\
    while (0)
  
***************
*** 81,87 ****
  									\
        ASM_OUTPUT_ALIGN (FILE, floor_log2 (ALIGN / BITS_PER_UNIT));	\
        ASM_OUTPUT_LABEL (FILE, NAME);					\
!       fprintf (FILE, "\t.space\t%d\n", SIZE ? SIZE : 1);		\
      }									\
    while (0)
  
--- 81,87 ----
  									\
        ASM_OUTPUT_ALIGN (FILE, floor_log2 (ALIGN / BITS_PER_UNIT));	\
        ASM_OUTPUT_LABEL (FILE, NAME);					\
!       fprintf (FILE, "\t.space\t%d\n", SIZE ? (int)(SIZE) : 1);		\
      }									\
    while (0)
  
Index: config/avr/avr.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/avr/avr.h,v
retrieving revision 1.77
diff -c -3 -p -r1.77 avr.h
*** config/avr/avr.h	17 Apr 2003 23:18:54 -0000	1.77
--- config/avr/avr.h	12 May 2003 09:26:31 -0000
*************** do {									   \
*** 1803,1809 ****
  do {									\
       fputs ("\t.lcomm ", (STREAM));					\
       assemble_name ((STREAM), (NAME));					\
!      fprintf ((STREAM), ",%d\n", (SIZE));				\
  } while (0)
  /* A C statement (sans semicolon) to output to the stdio stream
     STREAM the assembler definition of a local-common-label named NAME
--- 1803,1809 ----
  do {									\
       fputs ("\t.lcomm ", (STREAM));					\
       assemble_name ((STREAM), (NAME));					\
!      fprintf ((STREAM), ",%d\n", (int)(SIZE));				\
  } while (0)
  /* A C statement (sans semicolon) to output to the stdio stream
     STREAM the assembler definition of a local-common-label named NAME
*************** sprintf (STRING, "*.%s%d", PREFIX, NUM)
*** 2200,2206 ****
     of the jump-table.  */
  
  #define ASM_OUTPUT_SKIP(STREAM, N)		\
! fprintf (STREAM, "\t.skip %d,0\n", N)
  /* A C statement to output to the stdio stream STREAM an assembler
     instruction to advance the location counter by NBYTES bytes.
     Those bytes should be zero when loaded.  NBYTES will be a C
--- 2200,2206 ----
     of the jump-table.  */
  
  #define ASM_OUTPUT_SKIP(STREAM, N)		\
! fprintf (STREAM, "\t.skip %d,0\n", (int)N)
  /* A C statement to output to the stdio stream STREAM an assembler
     instruction to advance the location counter by NBYTES bytes.
     Those bytes should be zero when loaded.  NBYTES will be a C
Index: config/c4x/c4x.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/c4x/c4x.h,v
retrieving revision 1.127
diff -c -3 -p -r1.127 c4x.h
*** config/c4x/c4x.h	29 Apr 2003 14:16:45 -0000	1.127
--- config/c4x/c4x.h	12 May 2003 09:26:31 -0000
*************** do {						\
*** 1670,1676 ****
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\t.bss\t", FILE),			\
    assemble_name (FILE, (NAME)),		\
!   fprintf (FILE, ",%u\n", (ROUNDED)))
  
  /* This says how to output an assembler line to define a global
     uninitialized variable.  */
--- 1670,1676 ----
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\t.bss\t", FILE),			\
    assemble_name (FILE, (NAME)),		\
!   fprintf (FILE, ",%u\n", (int)(ROUNDED)))
  
  /* This says how to output an assembler line to define a global
     uninitialized variable.  */
*************** do {						\
*** 1681,1687 ****
     assemble_name (FILE, (NAME)),	\
     fputs ("\n\t.bss\t", FILE),	\
     assemble_name (FILE, (NAME)),	\
!    fprintf (FILE, ",%u\n", (ROUNDED)))
  
  #undef ASM_OUTPUT_BSS
  #define ASM_OUTPUT_BSS(FILE, DECL, NAME, SIZE, ALIGN)   \
--- 1681,1687 ----
     assemble_name (FILE, (NAME)),	\
     fputs ("\n\t.bss\t", FILE),	\
     assemble_name (FILE, (NAME)),	\
!    fprintf (FILE, ",%u\n", (int)(ROUNDED)))
  
  #undef ASM_OUTPUT_BSS
  #define ASM_OUTPUT_BSS(FILE, DECL, NAME, SIZE, ALIGN)   \
*************** do {						\
*** 1689,1695 ****
     assemble_name (FILE, (NAME)),	\
     fputs ("\n\t.bss\t", FILE),	\
     assemble_name (FILE, (NAME)),	\
!    fprintf (FILE, ",%u\n", (SIZE)))
  
  /* Macros Controlling Initialization Routines.  */
  
--- 1689,1695 ----
     assemble_name (FILE, (NAME)),	\
     fputs ("\n\t.bss\t", FILE),	\
     assemble_name (FILE, (NAME)),	\
!    fprintf (FILE, ",%u\n", (int)(SIZE)))
  
  /* Macros Controlling Initialization Routines.  */
  
Index: config/cris/aout.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/cris/aout.h,v
retrieving revision 1.11
diff -c -3 -p -r1.11 aout.h
*** config/cris/aout.h	17 Apr 2003 23:18:55 -0000	1.11
--- config/cris/aout.h	12 May 2003 09:26:31 -0000
*************** Boston, MA 02111-1307, USA.  */
*** 373,379 ****
  
  #undef  ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE, SIZE) \
!   fprintf (FILE, "%s%u\n", SKIP_ASM_OP, (SIZE))
  
  /* Node: All Debuggers */
  
--- 373,379 ----
  
  #undef  ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE, SIZE) \
!   fprintf (FILE, "%s%u\n", SKIP_ASM_OP, (int)(SIZE))
  
  /* Node: All Debuggers */
  
Index: config/cris/cris.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/cris/cris.h,v
retrieving revision 1.50
diff -c -3 -p -r1.50 cris.h
*** config/cris/cris.h	17 Apr 2003 23:18:55 -0000	1.50
--- config/cris/cris.h	12 May 2003 09:26:32 -0000
*************** call_ ## FUNC (void)						\
*** 1474,1480 ****
  	    }								\
  	  fprintf ((FILE), "%s", COMMON_ASM_OP);			\
  	  assemble_name ((FILE), (NAME));				\
! 	  fprintf ((FILE), ",%u,%u\n", (SIZE), align_);			\
  	}								\
        else								\
  	{								\
--- 1474,1480 ----
  	    }								\
  	  fprintf ((FILE), "%s", COMMON_ASM_OP);			\
  	  assemble_name ((FILE), (NAME));				\
! 	  fprintf ((FILE), ",%u,%u\n", (int)(SIZE), align_);		\
  	}								\
        else								\
  	{								\
*************** call_ ## FUNC (void)						\
*** 1485,1491 ****
  	  fputs ("\t.lcomm ", (FILE));					\
  	  assemble_name ((FILE), (NAME));				\
  	  fprintf ((FILE), ",%u\n",					\
! 		   ((SIZE) + (align_ - 1)) & ~(align_ - 1));		\
  	}								\
      }									\
    while (0)
--- 1485,1491 ----
  	  fputs ("\t.lcomm ", (FILE));					\
  	  assemble_name ((FILE), (NAME));				\
  	  fprintf ((FILE), ",%u\n",					\
! 		   ((int)(SIZE) + (align_ - 1)) & ~(align_ - 1));	\
  	}								\
      }									\
    while (0)
Index: config/dsp16xx/dsp16xx.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/dsp16xx/dsp16xx.h,v
retrieving revision 1.57
diff -c -3 -p -r1.57 dsp16xx.h
*** config/dsp16xx/dsp16xx.h	17 Apr 2003 23:18:55 -0000	1.57
--- config/dsp16xx/dsp16xx.h	12 May 2003 09:26:32 -0000
*************** extern struct dsp16xx_frame_info current
*** 1703,1709 ****
  #define ASM_NO_SKIP_IN_TEXT 1
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t%d * int 0\n", (SIZE))
  
  /* CONTROLLING DEBUGGING INFORMATION FORMAT */
  
--- 1703,1709 ----
  #define ASM_NO_SKIP_IN_TEXT 1
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t%d * int 0\n", (int)(SIZE))
  
  /* CONTROLLING DEBUGGING INFORMATION FORMAT */
  
Index: config/frv/frv.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/frv/frv.h,v
retrieving revision 1.21
diff -c -3 -p -r1.21 frv.h
*** config/frv/frv.h	17 Apr 2003 23:18:55 -0000	1.21
--- config/frv/frv.h	12 May 2003 09:26:32 -0000
*************** do {                                    
*** 3077,3083 ****
     Defined in svr4.h.  */
  #undef  ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(STREAM, NBYTES) \
!   fprintf (STREAM, "\t.zero\t%u\n", (NBYTES))
  
  /* A C statement to output to the stdio stream STREAM an assembler command to
     advance the location counter to a multiple of 2 to the POWER bytes.  POWER
--- 3077,3083 ----
     Defined in svr4.h.  */
  #undef  ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(STREAM, NBYTES) \
!   fprintf (STREAM, "\t.zero\t%u\n", (int)(NBYTES))
  
  /* A C statement to output to the stdio stream STREAM an assembler command to
     advance the location counter to a multiple of 2 to the POWER bytes.  POWER
Index: config/h8300/h8300.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/h8300/h8300.h,v
retrieving revision 1.139
diff -c -3 -p -r1.139 h8300.h
*** config/h8300/h8300.h	17 Apr 2003 07:16:15 -0000	1.139
--- config/h8300/h8300.h	12 May 2003 09:26:32 -0000
*************** struct cum_arg
*** 1179,1185 ****
    fprintf (FILE, "%s\"%s\"\n", IDENT_ASM_OP, NAME)
  
  #define ASM_OUTPUT_SKIP(FILE, SIZE) \
!   fprintf (FILE, "\t.space %d\n", (SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
--- 1179,1185 ----
    fprintf (FILE, "%s\"%s\"\n", IDENT_ASM_OP, NAME)
  
  #define ASM_OUTPUT_SKIP(FILE, SIZE) \
!   fprintf (FILE, "\t.space %d\n", (int)(SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
*************** struct cum_arg
*** 1202,1208 ****
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)	\
  ( fputs ("\t.lcomm ", (FILE)),				\
    assemble_name ((FILE), (NAME)),			\
!   fprintf ((FILE), ",%d\n", (SIZE)))
  
  #define ASM_PN_FORMAT "%s___%lu"
  
--- 1202,1208 ----
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)	\
  ( fputs ("\t.lcomm ", (FILE)),				\
    assemble_name ((FILE), (NAME)),			\
!   fprintf ((FILE), ",%d\n", (int)(SIZE)))
  
  #define ASM_PN_FORMAT "%s___%lu"
  
Index: config/i370/i370.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i370/i370.h,v
retrieving revision 1.57
diff -c -3 -p -r1.57 i370.h
*** config/i370/i370.h	17 Apr 2003 07:34:34 -0000	1.57
--- config/i370/i370.h	12 May 2003 09:26:32 -0000
*************** enum reg_class
*** 1181,1187 ****
  
  #define ASM_OUTPUT_SKIP(FILE, SIZE)  					\
  {									\
!   int s, k;								\
    for (s = (SIZE); s > 0; s -= MAX_CHUNK)				\
      {									\
        if (s > MAX_CHUNK)						\
--- 1181,1188 ----
  
  #define ASM_OUTPUT_SKIP(FILE, SIZE)  					\
  {									\
!   unsigned HOST_WIDE_INT s;						\
!   int  k;								\
    for (s = (SIZE); s > 0; s -= MAX_CHUNK)				\
      {									\
        if (s > MAX_CHUNK)						\
*************** abort(); \
*** 1864,1870 ****
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".comm ", (FILE)),                     \
    assemble_name ((FILE), (NAME)),               \
!   fprintf ((FILE), ",%u\n", (ROUNDED)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
--- 1865,1871 ----
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".comm ", (FILE)),                     \
    assemble_name ((FILE), (NAME)),               \
!   fprintf ((FILE), ","HOST_WIDE_INT_PRINT_UNSIGNED"\n", (ROUNDED)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
*************** abort(); \
*** 1872,1878 ****
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".lcomm ", (FILE)),                    \
    assemble_name ((FILE), (NAME)),               \
!   fprintf ((FILE), ",%u\n", (ROUNDED)))
  
  #endif /* TARGET_ELF_ABI */
  #endif /* ! GCC_I370_H */
--- 1873,1879 ----
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".lcomm ", (FILE)),                    \
    assemble_name ((FILE), (NAME)),               \
!   fprintf ((FILE), ","HOST_WIDE_INT_PRINT_UNSIGNED"\n", (ROUNDED)))
  
  #endif /* TARGET_ELF_ABI */
  #endif /* ! GCC_I370_H */
Index: config/i386/att.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i386/att.h,v
retrieving revision 1.16
diff -c -3 -p -r1.16 att.h
*** config/i386/att.h	16 Dec 2002 18:21:17 -0000	1.16
--- config/i386/att.h	12 May 2003 09:26:32 -0000
*************** do								\
*** 69,75 ****
     that says to advance the location counter by SIZE bytes.  */
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf ((FILE), "\t.set .,.+%u\n", (SIZE))
  
  /* Can't use ASM_OUTPUT_SKIP in text section; it doesn't leave 0s.  */
  
--- 69,75 ----
     that says to advance the location counter by SIZE bytes.  */
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf ((FILE), "\t.set .,.+%u\n", (int)(SIZE))
  
  /* Can't use ASM_OUTPUT_SKIP in text section; it doesn't leave 0s.  */
  
Index: config/i386/bsd.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i386/bsd.h,v
retrieving revision 1.11
diff -c -3 -p -r1.11 bsd.h
*** config/i386/bsd.h	16 Dec 2002 18:21:17 -0000	1.11
--- config/i386/bsd.h	12 May 2003 09:26:32 -0000
*************** Boston, MA 02111-1307, USA.  */
*** 53,59 ****
     that says to advance the location counter by SIZE bytes.  */
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.space %u\n", (SIZE))
  
  /* Define the syntax of labels and symbol definitions/declarations.  */
  
--- 53,59 ----
     that says to advance the location counter by SIZE bytes.  */
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.space "HOST_WIDE_INT_PRINT_UNSIGNED"\n", (SIZE))
  
  /* Define the syntax of labels and symbol definitions/declarations.  */
  
*************** Boston, MA 02111-1307, USA.  */
*** 63,69 ****
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (ROUNDED)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
--- 63,69 ----
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (int)(ROUNDED)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
*************** Boston, MA 02111-1307, USA.  */
*** 71,77 ****
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".lcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (ROUNDED)))
  
  /* This is how to output an assembler line
     that says to advance the location counter
--- 71,77 ----
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".lcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (int)(ROUNDED)))
  
  /* This is how to output an assembler line
     that says to advance the location counter
Index: config/i386/darwin.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i386/darwin.h,v
retrieving revision 1.4
diff -c -3 -p -r1.4 darwin.h
*** config/i386/darwin.h	11 Mar 2003 01:41:08 -0000	1.4
--- config/i386/darwin.h	12 May 2003 09:26:32 -0000
*************** Boston, MA 02111-1307, USA.  */
*** 109,115 ****
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".lcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (ROUNDED)))
  
  /* Darwin profiling -- call mcount.  */
  #undef FUNCTION_PROFILER
--- 109,115 ----
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".lcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ","HOST_WIDE_INT_PRINT_UNSIGNED"\n", (ROUNDED)))
  
  /* Darwin profiling -- call mcount.  */
  #undef FUNCTION_PROFILER
Index: config/i386/svr3gas.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i386/svr3gas.h,v
retrieving revision 1.13
diff -c -3 -p -r1.13 svr3gas.h
*** config/i386/svr3gas.h	18 May 2002 23:47:13 -0000	1.13
--- config/i386/svr3gas.h	12 May 2003 09:26:32 -0000
*************** Boston, MA 02111-1307, USA.  */
*** 52,64 ****
  	data_section ();				\
  	ASM_OUTPUT_ALIGN ((FILE), align == -1 ? 2 : align); \
  	ASM_OUTPUT_LABEL ((FILE), (NAME));		\
! 	fprintf ((FILE), "\t.set .,.+%u\n", (ROUNDED));	\
        }							\
      else						\
        {							\
  	fputs (".lcomm ", (FILE));			\
  	assemble_name ((FILE), (NAME));			\
! 	fprintf ((FILE), ",%u\n", (ROUNDED));		\
        }							\
    } while (0)
  
--- 52,64 ----
  	data_section ();				\
  	ASM_OUTPUT_ALIGN ((FILE), align == -1 ? 2 : align); \
  	ASM_OUTPUT_LABEL ((FILE), (NAME));		\
! 	fprintf ((FILE), "\t.set .,.+%u\n", (int)(ROUNDED));	\
        }							\
      else						\
        {							\
  	fputs (".lcomm ", (FILE));			\
  	assemble_name ((FILE), (NAME));			\
! 	fprintf ((FILE), ",%u\n", (int)(ROUNDED));	\
        }							\
    } while (0)
  
Index: config/i386/sysv3.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i386/sysv3.h,v
retrieving revision 1.12
diff -c -3 -p -r1.12 sysv3.h
*** config/i386/sysv3.h	24 Sep 2002 12:48:55 -0000	1.12
--- config/i386/sysv3.h	12 May 2003 09:26:32 -0000
*************** Boston, MA 02111-1307, USA.  */
*** 89,95 ****
        bss_section ();					\
      ASM_OUTPUT_ALIGN ((FILE), align == -1 ? 2 : align);	\
      ASM_OUTPUT_LABEL ((FILE), (NAME));			\
!     fprintf ((FILE), "\t.set .,.+%u\n", (ROUNDED));	\
    } while (0)
  
  /* Define a few machine-specific details of the implementation of
--- 89,95 ----
        bss_section ();					\
      ASM_OUTPUT_ALIGN ((FILE), align == -1 ? 2 : align);	\
      ASM_OUTPUT_LABEL ((FILE), (NAME));			\
!     fprintf ((FILE), "\t.set .,.+%u\n", (int)(ROUNDED));\
    } while (0)
  
  /* Define a few machine-specific details of the implementation of
Index: config/i960/i960.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i960/i960.h,v
retrieving revision 1.74
diff -c -3 -p -r1.74 i960.h
*** config/i960/i960.h	28 Mar 2003 08:07:02 -0000	1.74
--- config/i960/i960.h	12 May 2003 09:26:32 -0000
*************** extern struct rtx_def *i960_compare_op0,
*** 1251,1257 ****
    fprintf (FILE, "\t.align %d\n", (LOG))
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.space %d\n", (SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
--- 1251,1257 ----
    fprintf (FILE, "\t.align %d\n", (LOG))
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.space %d\n", (int)(SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
*************** extern struct rtx_def *i960_compare_op0,
*** 1268,1274 ****
        assemble_name ((FILE), (NAME)),			\
        fputs ("\n.comm ", (FILE)),			\
        assemble_name ((FILE), (NAME)),			\
!       fprintf ((FILE), ",%d\n", (SIZE));		\
      }							\
  }
  
--- 1268,1274 ----
        assemble_name ((FILE), (NAME)),			\
        fputs ("\n.comm ", (FILE)),			\
        assemble_name ((FILE), (NAME)),			\
!       fprintf ((FILE), ",%d\n", (int)(SIZE));		\
      }							\
  }
  
*************** extern struct rtx_def *i960_compare_op0,
*** 1279,1285 ****
  #define ASM_OUTPUT_ALIGNED_LOCAL(FILE, NAME, SIZE, ALIGN)  \
  ( fputs (".bss\t", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%d,%d\n", (SIZE),		\
  	   (floor_log2 ((ALIGN) / BITS_PER_UNIT))))
  
  /* A C statement (sans semicolon) to output to the stdio stream
--- 1279,1285 ----
  #define ASM_OUTPUT_ALIGNED_LOCAL(FILE, NAME, SIZE, ALIGN)  \
  ( fputs (".bss\t", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%d,%d\n", (int)(SIZE),	\
  	   (floor_log2 ((ALIGN) / BITS_PER_UNIT))))
  
  /* A C statement (sans semicolon) to output to the stdio stream
Index: config/ip2k/ip2k.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/ip2k/ip2k.h,v
retrieving revision 1.20
diff -c -3 -p -r1.20 ip2k.h
*** config/ip2k/ip2k.h	9 Mar 2003 22:01:14 -0000	1.20
--- config/ip2k/ip2k.h	12 May 2003 09:26:33 -0000
*************** do {									\
*** 1961,1967 ****
  do {							\
       fputs ("\t.comm ", (STREAM));			\
       assemble_name ((STREAM), (NAME));			\
!      fprintf ((STREAM), ",%d\n", (SIZE));		\
  } while (0)
  /* A C statement (sans semicolon) to output to the stdio stream
     STREAM the assembler definition of a common-label named NAME whose
--- 1961,1967 ----
  do {							\
       fputs ("\t.comm ", (STREAM));			\
       assemble_name ((STREAM), (NAME));			\
!      fprintf ((STREAM), ",%d\n", (int)(SIZE));		\
  } while (0)
  /* A C statement (sans semicolon) to output to the stdio stream
     STREAM the assembler definition of a common-label named NAME whose
*************** do {							\
*** 1979,1985 ****
  do {							\
       fputs ("\t.lcomm ", (STREAM));			\
       assemble_name ((STREAM), (NAME));			\
!      fprintf ((STREAM), ",%d\n", (SIZE));		\
  } while (0)
  /* A C statement (sans semicolon) to output to the stdio stream
     STREAM the assembler definition of a local-common-label named NAME
--- 1979,1985 ----
  do {							\
       fputs ("\t.lcomm ", (STREAM));			\
       assemble_name ((STREAM), (NAME));			\
!      fprintf ((STREAM), ",%d\n", (int)(SIZE));		\
  } while (0)
  /* A C statement (sans semicolon) to output to the stdio stream
     STREAM the assembler definition of a local-common-label named NAME
Index: config/m32r/m32r.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m32r/m32r.h,v
retrieving revision 1.81
diff -c -3 -p -r1.81 m32r.h
*** config/m32r/m32r.h	17 Apr 2003 23:18:56 -0000	1.81
--- config/m32r/m32r.h	12 May 2003 09:26:33 -0000
*************** extern char m32r_punct_chars[256];
*** 1696,1702 ****
        else								\
  	fprintf ((FILE), "%s", COMMON_ASM_OP);				\
        assemble_name ((FILE), (NAME));					\
!       fprintf ((FILE), ",%u,%u\n", (SIZE), (ALIGN) / BITS_PER_UNIT);	\
      }									\
    while (0)
  
--- 1696,1702 ----
        else								\
  	fprintf ((FILE), "%s", COMMON_ASM_OP);				\
        assemble_name ((FILE), (NAME));					\
!       fprintf ((FILE), ",%u,%u\n", (int)(SIZE), (ALIGN) / BITS_PER_UNIT);\
      }									\
    while (0)
  
Index: config/m68k/3b1.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/3b1.h,v
retrieving revision 1.17
diff -c -3 -p -r1.17 3b1.h
*** config/m68k/3b1.h	16 Dec 2002 18:21:30 -0000	1.17
--- config/m68k/3b1.h	12 May 2003 09:26:33 -0000
*************** do {					\
*** 126,132 ****
  
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\tspace %d\n", (SIZE))
  
  /* Can't use ASM_OUTPUT_SKIP in text section; it doesn't leave 0s.  */
  
--- 126,132 ----
  
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\tspace %d\n", (int)(SIZE))
  
  /* Can't use ASM_OUTPUT_SKIP in text section; it doesn't leave 0s.  */
  
*************** int switch_table_difference_label_flag;
*** 392,398 ****
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\tlcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (ROUNDED)))
  
  #define USER_LABEL_PREFIX ""
  
--- 392,398 ----
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\tlcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (int)(ROUNDED)))
  
  #define USER_LABEL_PREFIX ""
  
Index: config/m68k/amix.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/amix.h,v
retrieving revision 1.12
diff -c -3 -p -r1.12 amix.h
*** config/m68k/amix.h	16 Dec 2002 18:21:30 -0000	1.12
--- config/m68k/amix.h	12 May 2003 09:26:33 -0000
*************** do {									\
*** 89,95 ****
  #define ASM_OUTPUT_ALIGNED_LOCAL(FILE, NAME, SIZE, ALIGN)		\
  do {									\
    fprintf ((FILE), "%s%s,%u,%u\n",					\
! 	   BSS_ASM_OP, (NAME), (SIZE), MAX ((ALIGN) / BITS_PER_UNIT, 4)); \
  } while (0)
  
  /* This definition of ASM_OUTPUT_ASCII is the same as the one in m68k/sgs.h,
--- 89,95 ----
  #define ASM_OUTPUT_ALIGNED_LOCAL(FILE, NAME, SIZE, ALIGN)		\
  do {									\
    fprintf ((FILE), "%s%s,%u,%u\n",					\
! 	   BSS_ASM_OP, (NAME), (int)(SIZE), MAX ((ALIGN) / BITS_PER_UNIT, 4)); \
  } while (0)
  
  /* This definition of ASM_OUTPUT_ASCII is the same as the one in m68k/sgs.h,
Index: config/m68k/crds.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/crds.h,v
retrieving revision 1.14
diff -c -3 -p -r1.14 crds.h
*** config/m68k/crds.h	17 Jul 2002 21:31:38 -0000	1.14
--- config/m68k/crds.h	12 May 2003 09:26:33 -0000
*************** Boston, MA 02111-1307, USA.  */
*** 154,160 ****
  /*unos has no .skip :-( */
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)	 	\
!     fprintf (FILE, "\t. = . + %u\n", (SIZE));	
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
--- 154,160 ----
  /*unos has no .skip :-( */
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)	 	\
!     fprintf (FILE, "\t. = . + %u\n", (int)(SIZE));	
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
*************** Boston, MA 02111-1307, USA.  */
*** 165,171 ****
  { data_section ();				\
    if ((SIZE) > 1) fprintf (FILE, "\t.even\n");	\
    assemble_name ((FILE), (NAME));		\
!   fprintf ((FILE), ":\t. = . + %u\n", (ROUNDED));}
  
  /* This is how to output an insn to push a register on the stack.
     It need not be very fast code.  */
--- 165,171 ----
  { data_section ();				\
    if ((SIZE) > 1) fprintf (FILE, "\t.even\n");	\
    assemble_name ((FILE), (NAME));		\
!   fprintf ((FILE), ":\t. = . + %u\n", (int)(ROUNDED));}
  
  /* This is how to output an insn to push a register on the stack.
     It need not be very fast code.  */
Index: config/m68k/hp320.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/hp320.h,v
retrieving revision 1.21
diff -c -3 -p -r1.21 hp320.h
*** config/m68k/hp320.h	16 Dec 2002 18:21:30 -0000	1.21
--- config/m68k/hp320.h	12 May 2003 09:26:33 -0000
*************** Boston, MA 02111-1307, USA.  */
*** 237,243 ****
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\tcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (ROUNDED)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
--- 237,243 ----
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\tcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (int)(ROUNDED)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
*************** Boston, MA 02111-1307, USA.  */
*** 245,251 ****
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\tlcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u,2\n", (ROUNDED)))
  
  #define ASM_PN_FORMAT "%s___%lu"
  
--- 245,251 ----
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\tlcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u,2\n", (int)(ROUNDED)))
  
  #define ASM_PN_FORMAT "%s___%lu"
  
*************** do {					\
*** 264,270 ****
  } while (0)
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\tspace %u\n", (SIZE))
  
  #define ASM_OUTPUT_SOURCE_FILENAME(FILE, FILENAME)
  #define ASM_OUTPUT_SOURCE_LINE(FILE, LINENO)
--- 264,270 ----
  } while (0)
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\tspace %u\n", (int)(SIZE))
  
  #define ASM_OUTPUT_SOURCE_FILENAME(FILE, FILENAME)
  #define ASM_OUTPUT_SOURCE_LINE(FILE, LINENO)
Index: config/m68k/m68k.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/m68k.h,v
retrieving revision 1.84
diff -c -3 -p -r1.84 m68k.h
*** config/m68k/m68k.h	17 Apr 2003 23:18:56 -0000	1.84
--- config/m68k/m68k.h	12 May 2003 09:26:33 -0000
*************** __transfer_from_trampoline ()					\
*** 1709,1715 ****
      fprintf (FILE, "\t.even\n");
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.skip %u\n", (SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
--- 1709,1715 ----
      fprintf (FILE, "\t.even\n");
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.skip %u\n", (int)(SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
*************** __transfer_from_trampoline ()					\
*** 1717,1723 ****
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (ROUNDED)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
--- 1717,1723 ----
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (int)(ROUNDED)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
*************** __transfer_from_trampoline ()					\
*** 1725,1731 ****
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".lcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (ROUNDED)))
  
  /* Output a float value (represented as a C double) as an immediate operand.
     This macro is a 68k-specific macro.  */
--- 1725,1731 ----
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".lcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (int)(ROUNDED)))
  
  /* Output a float value (represented as a C double) as an immediate operand.
     This macro is a 68k-specific macro.  */
Index: config/m68k/m68kelf.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/m68kelf.h,v
retrieving revision 1.17
diff -c -3 -p -r1.17 m68kelf.h
*** config/m68k/m68kelf.h	28 Jan 2003 22:17:21 -0000	1.17
--- config/m68k/m68kelf.h	12 May 2003 09:26:33 -0000
*************** do {								\
*** 167,173 ****
  
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "%s%u\n", SPACE_ASM_OP, (SIZE))
  
  #if 0
  /* SVR4 m68k assembler is bitching on the `comm i,1,1' which askes for 
--- 167,173 ----
  
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "%s%u\n", SPACE_ASM_OP, (int)(SIZE))
  
  #if 0
  /* SVR4 m68k assembler is bitching on the `comm i,1,1' which askes for 
*************** extern int switch_table_difference_label
*** 229,240 ****
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (SIZE)))
  
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".lcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (SIZE)))
  
  /* Currently, JUMP_TABLES_IN_TEXT_SECTION must be defined in order to
     keep switch tables in the text section.  */
--- 229,240 ----
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (int)(SIZE)))
  
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".lcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (int)(SIZE)))
  
  /* Currently, JUMP_TABLES_IN_TEXT_SECTION must be defined in order to
     keep switch tables in the text section.  */
Index: config/m68k/m68kv4.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/m68kv4.h,v
retrieving revision 1.20
diff -c -3 -p -r1.20 m68kv4.h
*** config/m68k/m68kv4.h	4 Oct 2002 02:19:40 -0000	1.20
--- config/m68k/m68kv4.h	12 May 2003 09:26:33 -0000
*************** Boston, MA 02111-1307, USA.  */
*** 124,130 ****
  
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "%s%u\n", SPACE_ASM_OP, (SIZE))
  
  /* 1 if N is a possible register number for a function value.
     For m68k/SVR4 allow d0, a0, or fp0 as return registers, for integral,
--- 124,130 ----
  
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "%s%u\n", SPACE_ASM_OP, (int)(SIZE))
  
  /* 1 if N is a possible register number for a function value.
     For m68k/SVR4 allow d0, a0, or fp0 as return registers, for integral,
*************** int switch_table_difference_label_flag;
*** 258,269 ****
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (SIZE)))
  
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".lcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (SIZE)))
  
  /* Override the definition in svr4.h. In m68k svr4, using swbeg is the 
     standard way to do switch table.  */
--- 258,269 ----
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (int)(SIZE)))
  
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".lcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (int)(SIZE)))
  
  /* Override the definition in svr4.h. In m68k svr4, using swbeg is the 
     standard way to do switch table.  */
Index: config/m68k/mot3300.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/mot3300.h,v
retrieving revision 1.28
diff -c -3 -p -r1.28 mot3300.h
*** config/m68k/mot3300.h	28 Jan 2003 22:17:21 -0000	1.28
--- config/m68k/mot3300.h	12 May 2003 09:26:33 -0000
*************** Boston, MA 02111-1307, USA.  */
*** 308,314 ****
  
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "%s%u\n", SKIP_ASM_OP, (SIZE))
  
  /* Can't use ASM_OUTPUT_SKIP in text section.  */
  
--- 308,314 ----
  
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "%s%u\n", SKIP_ASM_OP, (int)(SIZE))
  
  /* Can't use ASM_OUTPUT_SKIP in text section.  */
  
*************** Boston, MA 02111-1307, USA.  */
*** 532,543 ****
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\tlcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (SIZE)))
  #else /* USE_GAS */
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\t.lcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (SIZE)))
  #endif /* USE_GAS */
  
  #ifndef USE_GAS
--- 532,543 ----
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\tlcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (int)(SIZE)))
  #else /* USE_GAS */
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\t.lcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (int)(SIZE)))
  #endif /* USE_GAS */
  
  #ifndef USE_GAS
Index: config/m68k/netbsd-elf.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/netbsd-elf.h,v
retrieving revision 1.11
diff -c -3 -p -r1.11 netbsd-elf.h
*** config/m68k/netbsd-elf.h	28 Jan 2003 22:17:21 -0000	1.11
--- config/m68k/netbsd-elf.h	12 May 2003 09:26:33 -0000
*************** while (0)
*** 269,281 ****
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)			\
  ( fputs (".comm ", (FILE)),						\
    assemble_name ((FILE), (NAME)),					\
!   fprintf ((FILE), ",%u\n", (SIZE)))
  
  #undef ASM_OUTPUT_LOCAL
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)			\
  ( fputs (".lcomm ", (FILE)),						\
    assemble_name ((FILE), (NAME)),					\
!   fprintf ((FILE), ",%u\n", (SIZE)))
  
  
  /* XXX
--- 269,281 ----
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)			\
  ( fputs (".comm ", (FILE)),						\
    assemble_name ((FILE), (NAME)),					\
!   fprintf ((FILE), ",%u\n", (int)(SIZE)))
  
  #undef ASM_OUTPUT_LOCAL
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)			\
  ( fputs (".lcomm ", (FILE)),						\
    assemble_name ((FILE), (NAME)),					\
!   fprintf ((FILE), ",%u\n", (int)(SIZE)))
  
  
  /* XXX
Index: config/m68k/sgs.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/sgs.h,v
retrieving revision 1.14
diff -c -3 -p -r1.14 sgs.h
*** config/m68k/sgs.h	16 Dec 2002 18:21:33 -0000	1.14
--- config/m68k/sgs.h	12 May 2003 09:26:33 -0000
*************** do {								\
*** 194,200 ****
  
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "%s%u\n", SPACE_ASM_OP, (SIZE))
  
  /* Translate Motorola opcodes such as `jbeq' into SGS opcodes such
     as `beq.w'.
--- 194,200 ----
  
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "%s%u\n", SPACE_ASM_OP, (int)(SIZE))
  
  /* Translate Motorola opcodes such as `jbeq' into SGS opcodes such
     as `beq.w'.
Index: config/m68k/tower-as.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/tower-as.h,v
retrieving revision 1.18
diff -c -3 -p -r1.18 tower-as.h
*** config/m68k/tower-as.h	16 Dec 2002 18:21:33 -0000	1.18
--- config/m68k/tower-as.h	12 May 2003 09:26:33 -0000
*************** Boston, MA 02111-1307, USA.  */
*** 199,205 ****
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\tcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%d\n", ((SIZE) == 0) ? (ROUNDED) : (SIZE)))
  
  /* This says how to output an assembler line to define a local common symbol.
     We use SIZE rather than ROUNDED, as this is what the native cc does.  */
--- 199,205 ----
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\tcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%d\n", ((SIZE) == 0) ? (int)(ROUNDED) : (int)(SIZE)))
  
  /* This says how to output an assembler line to define a local common symbol.
     We use SIZE rather than ROUNDED, as this is what the native cc does.  */
*************** Boston, MA 02111-1307, USA.  */
*** 208,214 ****
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\tlcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%d\n", ((SIZE) == 0) ? (ROUNDED) : (SIZE)))
  
  #define ASM_PN_FORMAT "%s%%%%%lu"
   
--- 208,214 ----
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\tlcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%d\n", ((SIZE) == 0) ? (int)(ROUNDED) : (int)(SIZE)))
  
  #define ASM_PN_FORMAT "%s%%%%%lu"
   
*************** do {					\
*** 246,252 ****
  
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\tspace %d\n", (SIZE))
  
  /* Output a float value (represented as a C double) as an immediate operand.
     This macro is a 68k-specific macro.  */
--- 246,252 ----
  
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\tspace %d\n", (int)(SIZE))
  
  /* Output a float value (represented as a C double) as an immediate operand.
     This macro is a 68k-specific macro.  */
Index: config/m88k/m88k.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m88k/m88k.h,v
retrieving revision 1.77
diff -c -3 -p -r1.77 m88k.h
*** config/m88k/m88k.h	17 Apr 2003 23:18:56 -0000	1.77
--- config/m88k/m88k.h	12 May 2003 09:26:33 -0000
*************** do {									 \
*** 1888,1894 ****
  /* Override svr[34].h.  */
  #undef	ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "%s%u\n", SKIP_ASM_OP, (SIZE))
  
  /* Override svr4.h.  */
  #undef	ASM_OUTPUT_EXTERNAL_LIBCALL
--- 1888,1894 ----
  /* Override svr[34].h.  */
  #undef	ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "%s%u\n", SKIP_ASM_OP, (int)(SIZE))
  
  /* Override svr4.h.  */
  #undef	ASM_OUTPUT_EXTERNAL_LIBCALL
*************** do {									 \
*** 1900,1908 ****
  #undef	ASM_OUTPUT_ALIGNED_COMMON
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)	\
  ( fprintf ((FILE), "%s",				\
! 	   ((SIZE) ? (SIZE) : 1) <= m88k_gp_threshold ? SCOMM_ASM_OP : COMMON_ASM_OP), \
    assemble_name ((FILE), (NAME)),			\
!   fprintf ((FILE), ",%u\n", (SIZE) ? (SIZE) : 1))
  
  /* This says how to output an assembler line to define a local common
     symbol.  Override svr[34].h.  */
--- 1900,1908 ----
  #undef	ASM_OUTPUT_ALIGNED_COMMON
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)	\
  ( fprintf ((FILE), "%s",				\
! 	   ((SIZE) ? (int)(SIZE) : 1) <= m88k_gp_threshold ? SCOMM_ASM_OP : COMMON_ASM_OP), \
    assemble_name ((FILE), (NAME)),			\
!   fprintf ((FILE), ",%u\n", (SIZE) ? (int)(SIZE) : 1))
  
  /* This says how to output an assembler line to define a local common
     symbol.  Override svr[34].h.  */
*************** do {									 \
*** 1910,1918 ****
  #undef	ASM_OUTPUT_ALIGNED_LOCAL
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)	\
  ( fprintf ((FILE), "%s",				\
! 	   ((SIZE) ? (SIZE) : 1) <= m88k_gp_threshold ? SBSS_ASM_OP : BSS_ASM_OP), \
    assemble_name ((FILE), (NAME)),			\
!   fprintf ((FILE), ",%u,%d\n", (SIZE) ? (SIZE) : 1, (SIZE) <= 4 ? 4 : 8))
  
  /* This is how to output an insn to push a register on the stack.
     It need not be very fast code.  */
--- 1910,1918 ----
  #undef	ASM_OUTPUT_ALIGNED_LOCAL
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)	\
  ( fprintf ((FILE), "%s",				\
! 	   ((SIZE) ? (int)(SIZE) : 1) <= m88k_gp_threshold ? SBSS_ASM_OP : BSS_ASM_OP), \
    assemble_name ((FILE), (NAME)),			\
!   fprintf ((FILE), ",%u,%d\n", (SIZE) ? (int)(SIZE) : 1, (SIZE) <= 4 ? 4 : 8))
  
  /* This is how to output an insn to push a register on the stack.
     It need not be very fast code.  */
Index: config/mcore/mcore.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/mcore/mcore.h,v
retrieving revision 1.48
diff -c -3 -p -r1.48 mcore.h
*** config/mcore/mcore.h	29 Apr 2003 14:16:45 -0000	1.48
--- config/mcore/mcore.h	12 May 2003 09:26:33 -0000
*************** extern long mcore_current_compilation_ti
*** 1163,1169 ****
     that says to advance the location counter by SIZE bytes.  */
  #undef  ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.fill %d, 1\n", (SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol, with alignment information.  */
--- 1163,1169 ----
     that says to advance the location counter by SIZE bytes.  */
  #undef  ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.fill %d, 1\n", (int)(SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol, with alignment information.  */
*************** extern long mcore_current_compilation_ti
*** 1220,1226 ****
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)	\
    (fputs ("\t.lcomm\t", FILE),				\
    assemble_name (FILE, NAME),				\
!   fprintf (FILE, ",%d\n", SIZE))
  
  /* ... and how to define a local common symbol whose alignment
     we wish to specify.  ALIGN comes in as bits, we have to turn
--- 1220,1226 ----
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)	\
    (fputs ("\t.lcomm\t", FILE),				\
    assemble_name (FILE, NAME),				\
!   fprintf (FILE, ",%d\n", (int)SIZE))
  
  /* ... and how to define a local common symbol whose alignment
     we wish to specify.  ALIGN comes in as bits, we have to turn
*************** extern long mcore_current_compilation_ti
*** 1231,1237 ****
      {									\
        fputs ("\t.bss\t", (FILE));					\
        assemble_name ((FILE), (NAME));					\
!       fprintf ((FILE), ",%d,%d\n", (SIZE), (ALIGN) / BITS_PER_UNIT);	\
      }									\
    while (0)
  
--- 1231,1237 ----
      {									\
        fputs ("\t.bss\t", (FILE));					\
        assemble_name ((FILE), (NAME));					\
!       fprintf ((FILE), ",%d,%d\n", (int)(SIZE), (ALIGN) / BITS_PER_UNIT);\
      }									\
    while (0)
  
Index: config/mips/iris6.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/mips/iris6.h,v
retrieving revision 1.59
diff -c -3 -p -r1.59 iris6.h
*** config/mips/iris6.h	1 Apr 2003 21:45:28 -0000	1.59
--- config/mips/iris6.h	12 May 2003 09:26:33 -0000
*************** do									   \
*** 390,396 ****
  	ASM_OUTPUT_SKIP (STREAM, SIZE);					   \
        }									   \
      else								   \
!       mips_declare_object (STREAM, NAME, "\n\t.lcomm\t", ",%u\n", (SIZE)); \
    }									   \
  while (0)
  
--- 390,396 ----
  	ASM_OUTPUT_SKIP (STREAM, SIZE);					   \
        }									   \
      else								   \
!       mips_declare_object (STREAM, NAME, "\n\t.lcomm\t", ",%u\n", (int)(SIZE)); \
    }									   \
  while (0)
  
Index: config/mips/mips.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/mips/mips.h,v
retrieving revision 1.247
diff -c -3 -p -r1.247 mips.h
*** config/mips/mips.h	6 May 2003 11:23:42 -0000	1.247
--- config/mips/mips.h	12 May 2003 09:26:34 -0000
*************** while (0)
*** 3921,3927 ****
     linker).  */
  
  #define ASM_OUTPUT_LOCAL(STREAM, NAME, SIZE, ROUNDED)			\
!   mips_declare_object (STREAM, NAME, "\n\t.lcomm\t", ",%u\n", (SIZE))
  
  
  /* This says how to output an external.  It would be possible not to
--- 3921,3927 ----
     linker).  */
  
  #define ASM_OUTPUT_LOCAL(STREAM, NAME, SIZE, ROUNDED)			\
!   mips_declare_object (STREAM, NAME, "\n\t.lcomm\t", ",%u\n", (int)(SIZE))
  
  
  /* This says how to output an external.  It would be possible not to
*************** do {									\
*** 4025,4031 ****
  
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(STREAM,SIZE)					\
!   fprintf (STREAM, "\t.space\t%u\n", (SIZE))
  
  /* This is how to output a string.  */
  #undef ASM_OUTPUT_ASCII
--- 4025,4031 ----
  
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(STREAM,SIZE)					\
!   fprintf (STREAM, "\t.space\t"HOST_WIDE_INT_PRINT_UNSIGNED"%u\n", (SIZE))
  
  /* This is how to output a string.  */
  #undef ASM_OUTPUT_ASCII
Index: config/ns32k/ns32k.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/ns32k/ns32k.h,v
retrieving revision 1.54
diff -c -3 -p -r1.54 ns32k.h
*** config/ns32k/ns32k.h	17 Apr 2003 09:25:19 -0000	1.54
--- config/ns32k/ns32k.h	12 May 2003 09:26:34 -0000
*************** __transfer_from_trampoline ()		\
*** 1333,1339 ****
    fprintf (FILE, "\t.align %d\n", (LOG))
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.space %u\n", (SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
--- 1333,1339 ----
    fprintf (FILE, "\t.align %d\n", (LOG))
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.space %u\n", (int)(SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
*************** __transfer_from_trampoline ()		\
*** 1341,1347 ****
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (ROUNDED)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
--- 1341,1347 ----
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (int)(ROUNDED)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
*************** __transfer_from_trampoline ()		\
*** 1349,1355 ****
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".lcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (ROUNDED)))
  
  /* Print an instruction operand X on file FILE.
     CODE is the code from the %-spec that requested printing this operand;
--- 1349,1355 ----
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".lcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (int)(ROUNDED)))
  
  /* Print an instruction operand X on file FILE.
     CODE is the code from the %-spec that requested printing this operand;
Index: config/pa/pa-pro-end.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/pa/pa-pro-end.h,v
retrieving revision 1.8
diff -c -3 -p -r1.8 pa-pro-end.h
*** config/pa/pa-pro-end.h	22 Sep 2002 19:23:19 -0000	1.8
--- config/pa/pa-pro-end.h	12 May 2003 09:26:34 -0000
*************** Boston, MA 02111-1307, USA.  */
*** 63,70 ****
  #define ASM_OUTPUT_ALIGNED_COMMON(FILE, NAME, SIZE, ALIGNED)		\
  { bss_section ();							\
    assemble_name ((FILE), (NAME));					\
!   fputs ("\t.comm ", (FILE));						\
!   fprintf ((FILE), "%d\n", MAX ((SIZE), ((ALIGNED) / BITS_PER_UNIT)));}
  
  /* This says how to output an assembler line to define a local common symbol
     with size SIZE (in bytes) and alignment ALIGN (in bits).  */
--- 63,70 ----
  #define ASM_OUTPUT_ALIGNED_COMMON(FILE, NAME, SIZE, ALIGNED)		\
  { bss_section ();							\
    assemble_name ((FILE), (NAME));					\
!   fprintf ((FILE), "\t.comm "HOST_WIDE_INT_PRINT_UNSIGNED"\n",		\
! 	   MAX ((SIZE), ((ALIGNED) / BITS_PER_UNIT)));}
  
  /* This says how to output an assembler line to define a local common symbol
     with size SIZE (in bytes) and alignment ALIGN (in bits).  */
*************** Boston, MA 02111-1307, USA.  */
*** 74,77 ****
  { bss_section ();							\
    fprintf ((FILE), "\t.align %d\n", ((ALIGNED) / BITS_PER_UNIT));	\
    assemble_name ((FILE), (NAME));					\
!   fprintf ((FILE), "\n\t.block %d\n", (SIZE));}
--- 74,77 ----
  { bss_section ();							\
    fprintf ((FILE), "\t.align %d\n", ((ALIGNED) / BITS_PER_UNIT));	\
    assemble_name ((FILE), (NAME));					\
!   fprintf ((FILE), "\n\t.block "HOST_WIDE_INT_PRINT_UNSIGNED"\n", (SIZE));}
Index: config/pa/pa.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/pa/pa.h,v
retrieving revision 1.189
diff -c -3 -p -r1.189 pa.h
*** config/pa/pa.h	17 Apr 2003 23:18:57 -0000	1.189
--- config/pa/pa.h	12 May 2003 09:26:34 -0000
*************** do { 									\
*** 1752,1758 ****
      fprintf (FILE, "\t.align %d\n", (1<<(LOG)))
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.blockz %d\n", (SIZE))
  
  /* This says how to output an assembler line to define a global common symbol
     with size SIZE (in bytes) and alignment ALIGN (in bits).  */
--- 1752,1758 ----
      fprintf (FILE, "\t.align %d\n", (1<<(LOG)))
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.blockz "HOST_WIDE_INT_PRINT_UNSIGNED"\n", (SIZE))
  
  /* This says how to output an assembler line to define a global common symbol
     with size SIZE (in bytes) and alignment ALIGN (in bits).  */
*************** do { 									\
*** 1760,1767 ****
  #define ASM_OUTPUT_ALIGNED_COMMON(FILE, NAME, SIZE, ALIGNED)  		\
  { bss_section ();							\
    assemble_name ((FILE), (NAME));					\
!   fputs ("\t.comm ", (FILE));						\
!   fprintf ((FILE), "%d\n", MAX ((SIZE), ((ALIGNED) / BITS_PER_UNIT)));}
  
  /* This says how to output an assembler line to define a local common symbol
     with size SIZE (in bytes) and alignment ALIGN (in bits).  */
--- 1760,1767 ----
  #define ASM_OUTPUT_ALIGNED_COMMON(FILE, NAME, SIZE, ALIGNED)  		\
  { bss_section ();							\
    assemble_name ((FILE), (NAME));					\
!   fprintf ((FILE), "\t.comm "HOST_WIDE_INT_PRINT_UNSIGNED"\n",		\
! 	   MAX ((SIZE), ((ALIGNED) / BITS_PER_UNIT)));}
  
  /* This says how to output an assembler line to define a local common symbol
     with size SIZE (in bytes) and alignment ALIGN (in bits).  */
*************** do { 									\
*** 1769,1776 ****
  #define ASM_OUTPUT_ALIGNED_LOCAL(FILE, NAME, SIZE, ALIGNED)		\
  { bss_section ();							\
    fprintf ((FILE), "\t.align %d\n", ((ALIGNED) / BITS_PER_UNIT));	\
!   assemble_name ((FILE), (NAME));				\
!   fprintf ((FILE), "\n\t.block %d\n", (SIZE));}
    
  #define ASM_PN_FORMAT "%s___%lu"
  
--- 1769,1777 ----
  #define ASM_OUTPUT_ALIGNED_LOCAL(FILE, NAME, SIZE, ALIGNED)		\
  { bss_section ();							\
    fprintf ((FILE), "\t.align %d\n", ((ALIGNED) / BITS_PER_UNIT));	\
!   assemble_name ((FILE), (NAME));					\
!   fprintf ((FILE), "\n\t.block "HOST_WIDE_INT_PRINT_UNSIGNED"\n",	\
! 	   (SIZE));}
    
  #define ASM_PN_FORMAT "%s___%lu"
  
Index: config/pa/pa64-hpux.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/pa/pa64-hpux.h,v
retrieving revision 1.23
diff -c -3 -p -r1.23 pa64-hpux.h
*** config/pa/pa64-hpux.h	11 Apr 2003 18:30:50 -0000	1.23
--- config/pa/pa64-hpux.h	12 May 2003 09:26:34 -0000
*************** do {									\
*** 127,133 ****
    bss_section ();							\
    assemble_name ((FILE), (NAME));					\
    fputs ("\t.comm ", (FILE));						\
!   fprintf ((FILE), "%d\n", MAX ((SIZE), ((ALIGN) / BITS_PER_UNIT)));	\
  } while (0)
  
  #undef ASM_OUTPUT_ALIGNED_LOCAL
--- 127,134 ----
    bss_section ();							\
    assemble_name ((FILE), (NAME));					\
    fputs ("\t.comm ", (FILE));						\
!   fprintf ((FILE), "\t.comm "HOST_WIDE_INT_PRINT_UNSIGNED"\n",		\
! 	   MAX ((SIZE), ((ALIGN) / BITS_PER_UNIT)));			\
  } while (0)
  
  #undef ASM_OUTPUT_ALIGNED_LOCAL
*************** do {									\
*** 136,142 ****
    bss_section ();							\
    fprintf ((FILE), "\t.align %d\n", ((ALIGN) / BITS_PER_UNIT));		\
    assemble_name ((FILE), (NAME));					\
!   fprintf ((FILE), "\n\t.block %d\n", (SIZE));				\
  } while (0)
  
  /* The define in pa.h doesn't work with the alias attribute.  The
--- 137,143 ----
    bss_section ();							\
    fprintf ((FILE), "\t.align %d\n", ((ALIGN) / BITS_PER_UNIT));		\
    assemble_name ((FILE), (NAME));					\
!   fprintf ((FILE), "\n\t.block "HOST_WIDE_INT_PRINT_UNSIGNED"\n", (SIZE));\
  } while (0)
  
  /* The define in pa.h doesn't work with the alias attribute.  The
Index: config/romp/romp.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/romp/romp.h,v
retrieving revision 1.39
diff -c -3 -p -r1.39 romp.h
*** config/romp/romp.h	9 May 2003 06:37:24 -0000	1.39
--- config/romp/romp.h	12 May 2003 09:26:34 -0000
*************** struct rt_cargs {int gregs, fregs; };
*** 1295,1301 ****
      fprintf (FILE, "\t.align %d\n", (LOG))
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.space %d\n", (SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
--- 1295,1301 ----
      fprintf (FILE, "\t.align %d\n", (LOG))
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.space %d\n", (int)(SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
*************** struct rt_cargs {int gregs, fregs; };
*** 1303,1309 ****
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%d\n", (SIZE)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
--- 1303,1309 ----
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%d\n", (int)(SIZE)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
*************** struct rt_cargs {int gregs, fregs; };
*** 1311,1317 ****
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE,ROUNDED)	\
  ( fputs (".lcomm ", (FILE)),				\
    assemble_name ((FILE), (NAME)),			\
!   fprintf ((FILE), ",%d\n", (SIZE)))
  
  /* Print operand X (an rtx) in assembler syntax to file FILE.
     CODE is a letter or dot (`z' in `%z0') or 0 if no letter was specified.
--- 1311,1317 ----
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE,ROUNDED)	\
  ( fputs (".lcomm ", (FILE)),				\
    assemble_name ((FILE), (NAME)),			\
!   fprintf ((FILE), ",%d\n", (int)(SIZE)))
  
  /* Print operand X (an rtx) in assembler syntax to file FILE.
     CODE is a letter or dot (`z' in `%z0') or 0 if no letter was specified.
Index: config/rs6000/xcoff.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/rs6000/xcoff.h,v
retrieving revision 1.44
diff -c -3 -p -r1.44 xcoff.h
*** config/rs6000/xcoff.h	30 Apr 2003 16:51:23 -0000	1.44
--- config/rs6000/xcoff.h	12 May 2003 09:26:34 -0000
*************** toc_section ()						\
*** 343,349 ****
  #define SKIP_ASM_OP "\t.space "
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "%s%u\n", SKIP_ASM_OP, (SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
--- 343,349 ----
  #define SKIP_ASM_OP "\t.space "
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "%s%u\n", SKIP_ASM_OP, (int)(SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
*************** toc_section ()						\
*** 354,365 ****
    do { fputs (COMMON_ASM_OP, (FILE));			\
         RS6000_OUTPUT_BASENAME ((FILE), (NAME));		\
         if ((ALIGN) > 32)				\
! 	 fprintf ((FILE), ",%u,%u\n", (SIZE),		\
  		  exact_log2 ((ALIGN) / BITS_PER_UNIT)); \
         else if ((SIZE) > 4)				\
!          fprintf ((FILE), ",%u,3\n", (SIZE));		\
         else						\
! 	 fprintf ((FILE), ",%u\n", (SIZE));		\
    } while (0)
  
  /* This says how to output an assembler line
--- 354,365 ----
    do { fputs (COMMON_ASM_OP, (FILE));			\
         RS6000_OUTPUT_BASENAME ((FILE), (NAME));		\
         if ((ALIGN) > 32)				\
! 	 fprintf ((FILE), ",%u,%u\n", (int)(SIZE),		\
  		  exact_log2 ((ALIGN) / BITS_PER_UNIT)); \
         else if ((SIZE) > 4)				\
!          fprintf ((FILE), ",%u,3\n", (int)(SIZE));		\
         else						\
! 	 fprintf ((FILE), ",%u\n", (int)(SIZE));		\
    } while (0)
  
  /* This says how to output an assembler line
*************** toc_section ()						\
*** 373,379 ****
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)	\
    do { fputs (LOCAL_COMMON_ASM_OP, (FILE));		\
         RS6000_OUTPUT_BASENAME ((FILE), (NAME));		\
!        fprintf ((FILE), ",%u,%s\n", (TARGET_32BIT ? (SIZE) : (ROUNDED)), \
  		xcoff_bss_section_name);		\
       } while (0)
  
--- 373,379 ----
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)	\
    do { fputs (LOCAL_COMMON_ASM_OP, (FILE));		\
         RS6000_OUTPUT_BASENAME ((FILE), (NAME));		\
!        fprintf ((FILE), ",%u,%s\n", (TARGET_32BIT ? (int)(SIZE) : (int)(ROUNDED)), \
  		xcoff_bss_section_name);		\
       } while (0)
  
Index: config/s390/s390.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/s390/s390.h,v
retrieving revision 1.71
diff -c -3 -p -r1.71 s390.h
*** config/s390/s390.h	10 May 2003 22:59:02 -0000	1.71
--- config/s390/s390.h	12 May 2003 09:26:34 -0000
*************** extern int flag_pic; 
*** 914,920 ****
  
  /* Advance the location counter by SIZE bytes.  */
  #define ASM_OUTPUT_SKIP(FILE, SIZE) \
!   fprintf ((FILE), "\t.set\t.,.+%u\n", (SIZE))
  
  /* The LOCAL_LABEL_PREFIX variable is used by dbxelf.h.  */
  #define LOCAL_LABEL_PREFIX "."
--- 914,920 ----
  
  /* Advance the location counter by SIZE bytes.  */
  #define ASM_OUTPUT_SKIP(FILE, SIZE) \
!   fprintf ((FILE), "\t.set\t.,.+"HOST_WIDE_INT_PRINT_UNSIGNED"\n", (SIZE))
  
  /* The LOCAL_LABEL_PREFIX variable is used by dbxelf.h.  */
  #define LOCAL_LABEL_PREFIX "."
Index: config/sh/coff.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sh/coff.h,v
retrieving revision 1.4
diff -c -3 -p -r1.4 coff.h
*** config/sh/coff.h	16 Dec 2002 18:21:53 -0000	1.4
--- config/sh/coff.h	12 May 2003 09:26:34 -0000
*************** Boston, MA 02111-1307, USA.  */
*** 54,60 ****
     that says to advance the location counter by SIZE bytes.  */
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE) \
!   fprintf ((FILE), "\t.space %d\n", (SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
--- 54,60 ----
     that says to advance the location counter by SIZE bytes.  */
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE) \
!   fprintf ((FILE), "\t.space %d\n", (int)(SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
*************** Boston, MA 02111-1307, USA.  */
*** 62,68 ****
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)	\
  ( fputs ("\t.comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%d\n", (SIZE)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
--- 62,68 ----
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)	\
  ( fputs ("\t.comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%d\n", (int)(SIZE)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
*************** Boston, MA 02111-1307, USA.  */
*** 70,76 ****
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)	\
  ( fputs ("\t.lcomm ", (FILE)),				\
    assemble_name ((FILE), (NAME)),			\
!   fprintf ((FILE), ",%d\n", (SIZE)))
  
  #define TARGET_OBJFMT_CPP_BUILTINS()
  
--- 70,76 ----
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)	\
  ( fputs ("\t.lcomm ", (FILE)),				\
    assemble_name ((FILE), (NAME)),			\
!   fprintf ((FILE), ",%d\n", (int)(SIZE)))
  
  #define TARGET_OBJFMT_CPP_BUILTINS()
  
Index: config/sparc/sol2.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/sol2.h,v
retrieving revision 1.50
diff -c -3 -p -r1.50 sol2.h
*** config/sparc/sol2.h	16 Dec 2002 18:21:58 -0000	1.50
--- config/sparc/sol2.h	12 May 2003 09:26:34 -0000
*************** Boston, MA 02111-1307, USA.  */
*** 63,69 ****
  /* The Solaris 2 assembler uses .skip, not .zero, so put this back.  */
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.skip %u\n", (SIZE))
  
  #undef  LOCAL_LABEL_PREFIX
  #define LOCAL_LABEL_PREFIX  "."
--- 63,69 ----
  /* The Solaris 2 assembler uses .skip, not .zero, so put this back.  */
  #undef ASM_OUTPUT_SKIP
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.skip %u\n", (int)(SIZE))
  
  #undef  LOCAL_LABEL_PREFIX
  #define LOCAL_LABEL_PREFIX  "."
Index: config/sparc/sparc.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/sparc.h,v
retrieving revision 1.222
diff -c -3 -p -r1.222 sparc.h
*** config/sparc/sparc.h	17 Apr 2003 23:18:58 -0000	1.222
--- config/sparc/sparc.h	12 May 2003 09:26:34 -0000
*************** do {									\
*** 2792,2798 ****
      fprintf (FILE, "\t.align %d,0x1000000\n", (1<<(LOG)))
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.skip %u\n", (SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
--- 2792,2798 ----
      fprintf (FILE, "\t.align %d,0x1000000\n", (1<<(LOG)))
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.skip "HOST_WIDE_INT_PRINT_UNSIGNED"\n", (SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
*************** do {									\
*** 2800,2806 ****
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\t.common ", (FILE)),		\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u,\"bss\"\n", (SIZE)))
  
  /* This says how to output an assembler line to define a local common
     symbol.  */
--- 2800,2806 ----
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs ("\t.common ", (FILE)),		\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ","HOST_WIDE_INT_PRINT_UNSIGNED",\"bss\"\n", (SIZE)))
  
  /* This says how to output an assembler line to define a local common
     symbol.  */
*************** do {									\
*** 2808,2814 ****
  #define ASM_OUTPUT_ALIGNED_LOCAL(FILE, NAME, SIZE, ALIGNED)		\
  ( fputs ("\t.reserve ", (FILE)),					\
    assemble_name ((FILE), (NAME)),					\
!   fprintf ((FILE), ",%u,\"bss\",%u\n",					\
  	   (SIZE), ((ALIGNED) / BITS_PER_UNIT)))
  
  /* A C statement (sans semicolon) to output to the stdio stream
--- 2808,2814 ----
  #define ASM_OUTPUT_ALIGNED_LOCAL(FILE, NAME, SIZE, ALIGNED)		\
  ( fputs ("\t.reserve ", (FILE)),					\
    assemble_name ((FILE), (NAME)),					\
!   fprintf ((FILE), ","HOST_WIDE_INT_PRINT_UNSIGNED",\"bss\",%u\n",	\
  	   (SIZE), ((ALIGNED) / BITS_PER_UNIT)))
  
  /* A C statement (sans semicolon) to output to the stdio stream
Index: config/vax/vax.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/vax/vax.h,v
retrieving revision 1.59
diff -c -3 -p -r1.59 vax.h
*** config/vax/vax.h	13 Mar 2003 03:23:55 -0000	1.59
--- config/vax/vax.h	12 May 2003 09:26:34 -0000
*************** enum reg_class { NO_REGS, ALL_REGS, LIM_
*** 1076,1082 ****
     that says to advance the location counter by SIZE bytes.  */
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.space %u\n", (SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
--- 1076,1082 ----
     that says to advance the location counter by SIZE bytes.  */
  
  #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
!   fprintf (FILE, "\t.space %u\n", (int)(SIZE))
  
  /* This says how to output an assembler line
     to define a global common symbol.  */
*************** enum reg_class { NO_REGS, ALL_REGS, LIM_
*** 1084,1090 ****
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (ROUNDED)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
--- 1084,1090 ----
  #define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".comm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (int)(ROUNDED)))
  
  /* This says how to output an assembler line
     to define a local common symbol.  */
*************** enum reg_class { NO_REGS, ALL_REGS, LIM_
*** 1092,1098 ****
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".lcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (ROUNDED)))
  
  /* Store in OUTPUT a string (made with alloca) containing
     an assembler-name for a local static variable named NAME.
--- 1092,1098 ----
  #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
  ( fputs (".lcomm ", (FILE)),			\
    assemble_name ((FILE), (NAME)),		\
!   fprintf ((FILE), ",%u\n", (int)(ROUNDED)))
  
  /* Store in OUTPUT a string (made with alloca) containing
     an assembler-name for a local static variable named NAME.
Index: config/vax/vaxv.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/vax/vaxv.h,v
retrieving revision 1.11
diff -c -3 -p -r1.11 vaxv.h
*** config/vax/vaxv.h	13 Mar 2003 03:23:55 -0000	1.11
--- config/vax/vaxv.h	12 May 2003 09:26:34 -0000
*************** output_file_directive ((FILE), main_inpu
*** 52,58 ****
  #define ASM_OUTPUT_LOCAL(FILE,NAME,SIZE,ROUNDED)	\
  ( data_section (),					\
    assemble_name ((FILE), (NAME)),			\
!   fprintf ((FILE), ":\n\t.space %u\n", (ROUNDED)))
  
  #define ASM_OUTPUT_ASCII(FILE,PTR,LEN)			\
  do {							\
--- 52,58 ----
  #define ASM_OUTPUT_LOCAL(FILE,NAME,SIZE,ROUNDED)	\
  ( data_section (),					\
    assemble_name ((FILE), (NAME)),			\
!   fprintf ((FILE), ":\n\t.space %u\n", (int)(ROUNDED)))
  
  #define ASM_OUTPUT_ASCII(FILE,PTR,LEN)			\
  do {							\


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