summaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4>2002-07-31 02:13:35 +0000
committerghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4>2002-07-31 02:13:35 +0000
commit0036ad94acab4cc2e5fac58f30d342d9434b5294 (patch)
tree821a7e612a3c24f4cf287e43062df4201dbee245 /gcc/config
parent33b14b1e040512befa61058a464f3028cc1e7a7f (diff)
downloadgcc-0036ad94acab4cc2e5fac58f30d342d9434b5294.tar.gz
* alpha.h, arc.h, arm/aout.h, avr.h, cris.h, d30v.h, dsp16xx.h,
fr30.h, h8300.h, i370.h, i386/sco5.h, i386/unix.h, i960.h, ia64.h, ip2k.h, m32r.h, mcore.h, mips.h, mn10200.h, mn10300.h, ns32k.h, openbsd.h, pa/pa-linux.h, pdp11.h, romp.h, rs6000/sysv4.h, s390/linux.h, sh.h, sparc.h, stormy16.h, v850.h, vax.h, xtensa.h: (ASM_GLOBALIZE_LABEL): Delete. (GLOBAL_ASM_OP): Define. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@55892 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/alpha/alpha.h7
-rw-r--r--gcc/config/arc/arc.h10
-rw-r--r--gcc/config/arm/aout.h13
-rw-r--r--gcc/config/avr/avr.h16
-rw-r--r--gcc/config/cris/cris.h10
-rw-r--r--gcc/config/d30v/d30v.h14
-rw-r--r--gcc/config/dsp16xx/dsp16xx.h7
-rw-r--r--gcc/config/fr30/fr30.h15
-rw-r--r--gcc/config/h8300/h8300.h13
-rw-r--r--gcc/config/i370/i370.h7
-rw-r--r--gcc/config/i386/sco5.h2
-rw-r--r--gcc/config/i386/unix.h7
-rw-r--r--gcc/config/i960/i960.h9
-rw-r--r--gcc/config/ia64/ia64.h12
-rw-r--r--gcc/config/ip2k/ip2k.h14
-rw-r--r--gcc/config/m32r/m32r.h12
-rw-r--r--gcc/config/mcore/mcore.h7
-rw-r--r--gcc/config/mips/mips.h12
-rw-r--r--gcc/config/mn10200/mn10200.h7
-rw-r--r--gcc/config/mn10300/mn10300.h7
-rw-r--r--gcc/config/ns32k/ns32k.h8
-rw-r--r--gcc/config/openbsd.h10
-rw-r--r--gcc/config/pa/pa-linux.h5
-rw-r--r--gcc/config/pdp11/pdp11.h7
-rw-r--r--gcc/config/romp/romp.h7
-rw-r--r--gcc/config/rs6000/sysv4.h8
-rw-r--r--gcc/config/s390/linux.h4
-rw-r--r--gcc/config/sh/sh.h7
-rw-r--r--gcc/config/sparc/sparc.h4
-rw-r--r--gcc/config/stormy16/stormy16.h13
-rw-r--r--gcc/config/v850/v850.h13
-rw-r--r--gcc/config/vax/vax.h4
-rw-r--r--gcc/config/xtensa/xtensa.h10
33 files changed, 66 insertions, 235 deletions
diff --git a/gcc/config/alpha/alpha.h b/gcc/config/alpha/alpha.h
index f0be40c4827..cdba117fabc 100644
--- a/gcc/config/alpha/alpha.h
+++ b/gcc/config/alpha/alpha.h
@@ -1743,11 +1743,8 @@ do { \
fputs (name_, STREAM); \
} while (0)
-/* This is how to output a command to make the user-level label named NAME
- defined for reference from other files. */
-
-#define ASM_GLOBALIZE_LABEL(FILE,NAME) \
- do { fputs ("\t.globl ", FILE); assemble_name (FILE, NAME); fputs ("\n", FILE);} while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.globl "
/* The prefix to add to user-visible assembler symbols. */
diff --git a/gcc/config/arc/arc.h b/gcc/config/arc/arc.h
index 755c6212054..d1cfabc520c 100644
--- a/gcc/config/arc/arc.h
+++ b/gcc/config/arc/arc.h
@@ -1174,14 +1174,8 @@ extern const char *arc_text_section, *arc_data_section, *arc_rodata_section;
no longer contain unusual constructs. */
#define ASM_APP_OFF ""
-/* This is how to output a command to make the user-level label named NAME
- defined for reference from other files. */
-#define ASM_GLOBALIZE_LABEL(FILE, NAME) \
-do { \
- fputs ("\t.global\t", FILE); \
- assemble_name (FILE, NAME); \
- fputs ("\n", FILE); \
-} while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.global\t"
/* A C statement (sans semicolon) to output on FILE an assembler pseudo-op to
declare a library function name external. The name of the library function
diff --git a/gcc/config/arm/aout.h b/gcc/config/arm/aout.h
index 8a44dfb47eb..3f29b395e03 100644
--- a/gcc/config/arm/aout.h
+++ b/gcc/config/arm/aout.h
@@ -144,17 +144,8 @@ Boston, MA 02111-1307, USA. */
while (0)
#endif
-/* Output a globalising directive for a label. */
-#ifndef ASM_GLOBALIZE_LABEL
-#define ASM_GLOBALIZE_LABEL(STREAM, NAME) \
- do \
- { \
- fprintf (STREAM, "\t.global\t"); \
- assemble_name (STREAM, NAME); \
- fputc ('\n',STREAM); \
- } \
- while (0)
-#endif
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.global\t"
/* Make an internal label into a string. */
#ifndef ASM_GENERATE_INTERNAL_LABEL
diff --git a/gcc/config/avr/avr.h b/gcc/config/avr/avr.h
index b2bd7558202..a405cac8c7c 100644
--- a/gcc/config/avr/avr.h
+++ b/gcc/config/avr/avr.h
@@ -2052,20 +2052,8 @@ do { \
If your target assembler doesn't support the .string directive, you
should define this to zero. */
-#define ASM_GLOBALIZE_LABEL(STREAM, NAME) \
-do { \
- fprintf (STREAM, ".global\t"); \
- assemble_name (STREAM, NAME); \
- fprintf (STREAM, "\n"); \
-} \
-while (0)
-
-/* A C statement (sans semicolon) to output to the stdio stream
- STREAM some commands that will make the label NAME global; that
- is, available for reference from other files. Use the expression
- `assemble_name (STREAM, NAME)' to output the name itself; before
- and after that, output the additional assembler syntax for making
- that name global, and a newline. */
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP ".global\t"
#define ASM_WEAKEN_LABEL(FILE, NAME) \
do \
diff --git a/gcc/config/cris/cris.h b/gcc/config/cris/cris.h
index 021f168606b..94cb979e9fc 100644
--- a/gcc/config/cris/cris.h
+++ b/gcc/config/cris/cris.h
@@ -1574,14 +1574,8 @@ call_ ## FUNC (void) \
/* Node: Label Output */
-#define ASM_GLOBALIZE_LABEL(FILE, NAME) \
- do \
- { \
- fputs ("\t.global ", FILE); \
- assemble_name (FILE, NAME); \
- fputs ("\n", FILE); \
- } \
- while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.global "
#define SUPPORTS_WEAK 1
diff --git a/gcc/config/d30v/d30v.h b/gcc/config/d30v/d30v.h
index b8f817d5ddd..84b5e7d28e0 100644
--- a/gcc/config/d30v/d30v.h
+++ b/gcc/config/d30v/d30v.h
@@ -3039,18 +3039,8 @@ extern const char *d30v_branch_cost_string;
Defined in svr4.h. */
/* #define ASM_FINISH_DECLARE_OBJECT(STREAM, DECL, TOPLEVEL, ATEND) */
-/* A C statement (sans semicolon) to output to the stdio stream STREAM some
- commands that will make the label NAME global; that is, available for
- reference from other files. Use the expression `assemble_name (STREAM,
- NAME)' to output the name itself; before and after that, output the
- additional assembler syntax for making that name global, and a newline. */
-
-#define ASM_GLOBALIZE_LABEL(STREAM,NAME) \
-do { \
- fputs ("\t.globl ", STREAM); \
- assemble_name (STREAM, NAME); \
- fputs ("\n", STREAM); \
-} while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.globl "
/* A C statement (sans semicolon) to output to the stdio stream STREAM some
commands that will make the label NAME weak; that is, available for
diff --git a/gcc/config/dsp16xx/dsp16xx.h b/gcc/config/dsp16xx/dsp16xx.h
index a48000559a7..c2fddf2706f 100644
--- a/gcc/config/dsp16xx/dsp16xx.h
+++ b/gcc/config/dsp16xx/dsp16xx.h
@@ -1676,11 +1676,8 @@ extern struct dsp16xx_frame_info current_frame_info;
/* OUTPUT AND GENERATION OF LABELS */
-/* This is how to output a command to make the user-level label named NAME
- defined for reference from other files. */
-
-#define ASM_GLOBALIZE_LABEL(FILE,NAME) \
- do { fputs (".global ", FILE); assemble_name (FILE, NAME); fputs ("\n", FILE);} while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP ".global "
/* A C statement to output to the stdio stream any text necessary
for declaring the name of an external symbol named name which
diff --git a/gcc/config/fr30/fr30.h b/gcc/config/fr30/fr30.h
index f616ee52b2f..c463f5b7aea 100644
--- a/gcc/config/fr30/fr30.h
+++ b/gcc/config/fr30/fr30.h
@@ -1165,19 +1165,8 @@ do \
/*}}}*/
/*{{{ Output and Generation of Labels. */
-/* A C statement (sans semicolon) to output to the stdio stream STREAM some
- commands that will make the label NAME global; that is, available for
- reference from other files. Use the expression `assemble_name (STREAM,
- NAME)' to output the name itself; before and after that, output the
- additional assembler syntax for making that name global, and a newline. */
-#define ASM_GLOBALIZE_LABEL(STREAM,NAME) \
- do \
- { \
- fputs ("\t.globl ", STREAM); \
- assemble_name (STREAM, NAME); \
- fputs ("\n", STREAM); \
- } \
- while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.globl "
/* A C expression to assign to OUTVAR (which is a variable of type `char *') a
newly allocated string made from the string NAME and the number NUMBER, with
diff --git a/gcc/config/h8300/h8300.h b/gcc/config/h8300/h8300.h
index 9cd453dacb9..79e13e725e2 100644
--- a/gcc/config/h8300/h8300.h
+++ b/gcc/config/h8300/h8300.h
@@ -1123,17 +1123,8 @@ struct cum_arg
#define ASM_OUTPUT_EXTERNAL(FILE, DECL, NAME)
-/* This is how to output a command to make the user-level label named NAME
- defined for reference from other files. */
-
-#define ASM_GLOBALIZE_LABEL(FILE, NAME) \
- do \
- { \
- fputs ("\t.global ", FILE); \
- assemble_name (FILE, NAME); \
- fputs ("\n", FILE); \
- } \
- while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.global "
#define ASM_DECLARE_FUNCTION_NAME(FILE, NAME, DECL) \
ASM_OUTPUT_LABEL (FILE, NAME)
diff --git a/gcc/config/i370/i370.h b/gcc/config/i370/i370.h
index ac5713482ec..44de0f39f0e 100644
--- a/gcc/config/i370/i370.h
+++ b/gcc/config/i370/i370.h
@@ -1924,11 +1924,8 @@ abort(); \
#define ASM_OUTPUT_ALIGN(FILE,LOG) \
if ((LOG)!=0) fprintf ((FILE), "\t.balign %d\n", 1<<(LOG))
-/* This is how to output a command to make the user-level label named NAME
- defined for reference from other files. */
-
-#define ASM_GLOBALIZE_LABEL(FILE,NAME) \
- (fputs (".globl ", FILE), assemble_name (FILE, NAME), fputs ("\n", FILE))
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP ".globl "
/* This says how to output an assembler line
to define a global common symbol. */
diff --git a/gcc/config/i386/sco5.h b/gcc/config/i386/sco5.h
index 27db4026ecf..1392c700c65 100644
--- a/gcc/config/i386/sco5.h
+++ b/gcc/config/i386/sco5.h
@@ -351,8 +351,6 @@ do { \
fprintf (FILE, "%s\"%s\"\n", IDENT_ASM_OP, NAME);
#undef ASM_GLOBALIZE_LABEL
-#define ASM_GLOBALIZE_LABEL(FILE,NAME) \
- (fprintf ((FILE), "%s", GLOBAL_ASM_OP), assemble_name (FILE, NAME), fputs ("\n", FILE))
#undef ASM_OUTPUT_EXTERNAL_LIBCALL
#define ASM_OUTPUT_EXTERNAL_LIBCALL(FILE, FUN) \
diff --git a/gcc/config/i386/unix.h b/gcc/config/i386/unix.h
index f7e38b48e9a..9139defe1cf 100644
--- a/gcc/config/i386/unix.h
+++ b/gcc/config/i386/unix.h
@@ -58,11 +58,8 @@ Boston, MA 02111-1307, USA. */
#define BSS_SECTION_ASM_OP "\t.bss"
-/* This is how to output a command to make the user-level label named NAME
- defined for reference from other files. */
-
-#define ASM_GLOBALIZE_LABEL(FILE,NAME) \
- (fputs (".globl ", FILE), assemble_name (FILE, NAME), fputs ("\n", FILE))
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP ".globl "
/* By default, target has a 80387, uses IEEE compatible arithmetic,
and returns float values in the 387. */
diff --git a/gcc/config/i960/i960.h b/gcc/config/i960/i960.h
index b54ff9d47a2..d6015618f67 100644
--- a/gcc/config/i960/i960.h
+++ b/gcc/config/i960/i960.h
@@ -1312,13 +1312,8 @@ extern struct rtx_def *i960_compare_op0, *i960_compare_op1;
fprintf((FILE),"\t.stabd 68,0,%d\n",(LINE)); \
} }
-/* This is how to output a command to make the user-level label named NAME
- defined for reference from other files. */
-
-#define ASM_GLOBALIZE_LABEL(FILE,NAME) \
-{ fputs ("\t.globl ", FILE); \
- assemble_name (FILE, NAME); \
- fputs ("\n", FILE); }
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.globl "
/* The prefix to add to user-visible assembler symbols. */
diff --git a/gcc/config/ia64/ia64.h b/gcc/config/ia64/ia64.h
index 6f6d80edd1e..0a640d0a6e6 100644
--- a/gcc/config/ia64/ia64.h
+++ b/gcc/config/ia64/ia64.h
@@ -1905,16 +1905,8 @@ do { \
ia64_asm_output_label = 0; \
} while (0)
-/* A C statement (sans semicolon) to output to the stdio stream STREAM some
- commands that will make the label NAME global; that is, available for
- reference from other files. */
-
-#define ASM_GLOBALIZE_LABEL(STREAM,NAME) \
-do { \
- fputs ("\t.global ", STREAM); \
- assemble_name (STREAM, NAME); \
- fputs ("\n", STREAM); \
-} while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.global "
/* A C statement (sans semicolon) to output to the stdio stream STREAM any text
necessary for declaring the name of an external symbol named NAME which is
diff --git a/gcc/config/ip2k/ip2k.h b/gcc/config/ip2k/ip2k.h
index 655520b25d3..d8aa1d8d997 100644
--- a/gcc/config/ip2k/ip2k.h
+++ b/gcc/config/ip2k/ip2k.h
@@ -2162,18 +2162,8 @@ do { \
the i386) don't know about that. Also, we don't use \v
since some versions of gas, such as 2.2 did not accept it. */
-#define ASM_GLOBALIZE_LABEL(STREAM, NAME) \
-do { \
- fprintf ((STREAM), ".global\t"); \
- assemble_name ((STREAM), (NAME)); \
- fprintf ((STREAM), "\n"); \
-} while (0)
-/* A C statement (sans semicolon) to output to the stdio stream
- STREAM some commands that will make the label NAME global; that
- is, available for reference from other files. Use the expression
- `assemble_name (STREAM, NAME)' to output the name itself; before
- and after that, output the additional assembler syntax for making
- that name global, and a newline. */
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP ".global\t"
#undef ASM_FORMAT_PRIVATE_NAME
#define ASM_FORMAT_PRIVATE_NAME(OUTPUT, NAME, LABELNO) \
diff --git a/gcc/config/m32r/m32r.h b/gcc/config/m32r/m32r.h
index c9d31735a03..89d147d8566 100644
--- a/gcc/config/m32r/m32r.h
+++ b/gcc/config/m32r/m32r.h
@@ -1660,16 +1660,8 @@ sbss_section () \
no longer contain unusual constructs. */
#define ASM_APP_OFF ""
-/* This is how to output a command to make the user-level label named NAME
- defined for reference from other files. */
-#define ASM_GLOBALIZE_LABEL(FILE, NAME) \
- do \
- { \
- fputs ("\t.global\t", FILE); \
- assemble_name (FILE, NAME); \
- fputs ("\n", FILE); \
- } \
- while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.global\t"
/* This is how to output a reference to a user-level label named NAME.
`assemble_name' uses this. */
diff --git a/gcc/config/mcore/mcore.h b/gcc/config/mcore/mcore.h
index da34d396f4d..685d62013be 100644
--- a/gcc/config/mcore/mcore.h
+++ b/gcc/config/mcore/mcore.h
@@ -1161,11 +1161,8 @@ extern long mcore_current_compilation_timestamp;
} \
while (0)
-/* Output a globalising directive for a label. */
-#define ASM_GLOBALIZE_LABEL(STREAM,NAME) \
- (fprintf (STREAM, "\t.export\t"), \
- assemble_name (STREAM, NAME), \
- fputc ('\n',STREAM)) \
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.export\t"
/* The prefix to add to user-visible assembler symbols. */
#undef USER_LABEL_PREFIX
diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h
index 401528b143a..f492b0d141a 100644
--- a/gcc/config/mips/mips.h
+++ b/gcc/config/mips/mips.h
@@ -4261,16 +4261,8 @@ do \
} \
while (0)
-
-/* This is how to output a command to make the user-level label named NAME
- defined for reference from other files. */
-
-#define ASM_GLOBALIZE_LABEL(STREAM,NAME) \
- do { \
- fputs ("\t.globl\t", STREAM); \
- assemble_name (STREAM, NAME); \
- fputs ("\n", STREAM); \
- } while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.globl\t"
/* This says how to define a global common symbol. */
diff --git a/gcc/config/mn10200/mn10200.h b/gcc/config/mn10200/mn10200.h
index 3b07679d632..ed162f8bdbe 100644
--- a/gcc/config/mn10200/mn10200.h
+++ b/gcc/config/mn10200/mn10200.h
@@ -814,11 +814,8 @@ struct cum_arg { int nbytes; };
#define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \
asm_output_aligned_bss ((FILE), (DECL), (NAME), (SIZE), (ALIGN))
-/* This is how to output a command to make the user-level label named NAME
- defined for reference from other files. */
-
-#define ASM_GLOBALIZE_LABEL(FILE, NAME) \
- do { fputs ("\t.global ", FILE); assemble_name (FILE, NAME); fputs ("\n", FILE);} while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.global "
/* This is how to output a reference to a user-level label named NAME.
`assemble_name' uses this. */
diff --git a/gcc/config/mn10300/mn10300.h b/gcc/config/mn10300/mn10300.h
index 80f68e70499..b0cb575d18a 100644
--- a/gcc/config/mn10300/mn10300.h
+++ b/gcc/config/mn10300/mn10300.h
@@ -895,11 +895,8 @@ struct cum_arg {int nbytes; };
#define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \
asm_output_aligned_bss ((FILE), (DECL), (NAME), (SIZE), (ALIGN))
-/* This is how to output a command to make the user-level label named NAME
- defined for reference from other files. */
-
-#define ASM_GLOBALIZE_LABEL(FILE, NAME) \
- do { fputs ("\t.global ", FILE); assemble_name (FILE, NAME); fputs ("\n", FILE);} while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.global "
/* This is how to output a reference to a user-level label named NAME.
`assemble_name' uses this. */
diff --git a/gcc/config/ns32k/ns32k.h b/gcc/config/ns32k/ns32k.h
index e83dcd52b31..6f4cc5ff00d 100644
--- a/gcc/config/ns32k/ns32k.h
+++ b/gcc/config/ns32k/ns32k.h
@@ -1322,13 +1322,11 @@ __transfer_from_trampoline () \
defined for reference from other files. */
#ifndef COLLECT
-#define ASM_GLOBALIZE_LABEL(FILE,NAME) \
- do { fputs (".globl ", FILE); assemble_name (FILE, NAME); fputs ("\n", FILE);} while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP ".globl "
#else
#define ASM_GLOBALIZE_LABEL(STREAM,NAME) \
-do { \
- fprintf (STREAM, "\t.globl\t%s\n", NAME); \
-} while (0)
+ fprintf ((STREAM), "\t.globl\t%s\n", (NAME));
#endif
/* This is how to output an internal numbered label where
diff --git a/gcc/config/openbsd.h b/gcc/config/openbsd.h
index efe8d420d9e..ee6b52cdec6 100644
--- a/gcc/config/openbsd.h
+++ b/gcc/config/openbsd.h
@@ -175,10 +175,12 @@ Boston, MA 02111-1307, USA. */
#undef TYPE_ASM_OP
#undef SIZE_ASM_OP
#undef SET_ASM_OP
+#undef GLOBAL_ASM_OP
#define TYPE_ASM_OP "\t.type\t"
#define SIZE_ASM_OP "\t.size\t"
#define SET_ASM_OP "\t.set\t"
+#define GLOBAL_ASM_OP "\t.globl\t"
/* The following macro defines the format used to output the second
operand of the .type assembler directive. */
@@ -273,14 +275,6 @@ do { \
do { fputs ("\t.weak\t", FILE); assemble_name (FILE, NAME); \
fputc ('\n', FILE); } while (0)
#endif
-
-/* Tell the assembler that a symbol is global. */
-#ifndef ASM_GLOBALIZE_LABEL
-#define ASM_GLOBALIZE_LABEL(FILE,NAME) \
- do { fputs ("\t.globl\t", FILE); assemble_name (FILE, NAME); \
- fputc ('\n', FILE); } while(0)
-#endif
-
/* Storage layout. */
diff --git a/gcc/config/pa/pa-linux.h b/gcc/config/pa/pa-linux.h
index b08eb438097..d42dc01336a 100644
--- a/gcc/config/pa/pa-linux.h
+++ b/gcc/config/pa/pa-linux.h
@@ -168,9 +168,10 @@ Boston, MA 02111-1307, USA. */
does what we want (i.e. uses colons). It must be compatible with
ASM_GENERATE_INTERNAL_LABEL(), so do not define it here. */
+/* Use the default. */
#undef ASM_GLOBALIZE_LABEL
-#define ASM_GLOBALIZE_LABEL(FILE, NAME) \
- (fputs (".globl ", FILE), assemble_name (FILE, NAME), fputs ("\n", FILE))
+/* Globalizing directive for a label. */
+#definef GLOBAL_ASM_OP ".globl "
/* FIXME: Hacked from the <elfos.h> one so that we avoid multiple
labels in a function declaration (since pa.c seems determined to do
diff --git a/gcc/config/pdp11/pdp11.h b/gcc/config/pdp11/pdp11.h
index e72bb47fed2..12230781d81 100644
--- a/gcc/config/pdp11/pdp11.h
+++ b/gcc/config/pdp11/pdp11.h
@@ -1029,11 +1029,8 @@ fprintf (FILE, "$help$: . = .+8 ; space for tmp moves!\n") \
{"r0", "r1", "r2", "r3", "r4", "r5", "sp", "pc", \
"ac0", "ac1", "ac2", "ac3", "ac4", "ac5" }
-/* This is how to output a command to make the user-level label named NAME
- defined for reference from other files. */
-
-#define ASM_GLOBALIZE_LABEL(FILE,NAME) \
- do { fputs ("\t.globl ", FILE); assemble_name (FILE, NAME); fputs("\n", FILE); } while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.globl "
/* The prefix to add to user-visible assembler symbols. */
diff --git a/gcc/config/romp/romp.h b/gcc/config/romp/romp.h
index 3089ed8f96f..ce506b0e99b 100644
--- a/gcc/config/romp/romp.h
+++ b/gcc/config/romp/romp.h
@@ -1315,11 +1315,8 @@ struct rt_cargs {int gregs, fregs; };
"r10", "r11", "r12", "r13", "r14", "r15", "ap", \
"fr0", "fr1", "fr2", "fr3", "fr4", "fr5", "fr6", "fr7" }
-/* This is how to output a command to make the user-level label named NAME
- defined for reference from other files. */
-
-#define ASM_GLOBALIZE_LABEL(FILE,NAME) \
- do { fputs ("\t.globl ", FILE); assemble_name (FILE, NAME); fputs ("\n", FILE);} while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.globl "
/* The prefix to add to user-visible assembler symbols. */
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
index c412e6a40ca..ae589fd948e 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
@@ -680,12 +680,8 @@ extern int rs6000_pic_labelno;
#define ASM_OUTPUT_INTERNAL_LABEL_PREFIX(FILE,PREFIX) \
asm_fprintf (FILE, "%L%s", PREFIX)
-/* This is how to output a command to make the user-level label named NAME
- defined for reference from other files. */
-
-#define ASM_GLOBALIZE_LABEL(FILE,NAME) \
- do { fputs ("\t.globl ", FILE); \
- assemble_name (FILE, NAME); putc ('\n', FILE);} while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.globl "
/* This says how to output assembler code to declare an
uninitialized internal linkage data object. Under SVR4,
diff --git a/gcc/config/s390/linux.h b/gcc/config/s390/linux.h
index 090e7f51dc7..0907d290c1a 100644
--- a/gcc/config/s390/linux.h
+++ b/gcc/config/s390/linux.h
@@ -207,8 +207,8 @@ Boston, MA 02111-1307, USA. */
/* This is how to output a command to make the user-level label named NAME
defined for reference from other files. */
-#define ASM_GLOBALIZE_LABEL(FILE, NAME) \
- (fputs (".globl ", FILE), assemble_name (FILE, NAME), fputs ("\n", FILE))
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP ".globl "
/* Output code to add DELTA to the first argument, and then jump to FUNCTION.
Used for C++ multiple inheritance. */
diff --git a/gcc/config/sh/sh.h b/gcc/config/sh/sh.h
index 732a630b06a..1ad1306abdc 100644
--- a/gcc/config/sh/sh.h
+++ b/gcc/config/sh/sh.h
@@ -3003,11 +3003,8 @@ while (0)
if ((LOG) != 0) \
fprintf ((FILE), "\t.align %d\n", (LOG))
-/* Output a globalising directive for a label. */
-#define ASM_GLOBALIZE_LABEL(STREAM,NAME) \
- (fprintf ((STREAM), "\t.global\t"), \
- assemble_name ((STREAM), (NAME)), \
- fputc ('\n', (STREAM)))
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.global\t"
/* #define ASM_OUTPUT_CASE_END(STREAM,NUM,TABLE) */
diff --git a/gcc/config/sparc/sparc.h b/gcc/config/sparc/sparc.h
index b759012b263..5c4c9653b13 100644
--- a/gcc/config/sparc/sparc.h
+++ b/gcc/config/sparc/sparc.h
@@ -2729,8 +2729,8 @@ case LABEL_REF: case SYMBOL_REF: case CONST_DOUBLE:
/* This is how to output a command to make the user-level label named NAME
defined for reference from other files. */
-#define ASM_GLOBALIZE_LABEL(FILE,NAME) \
- do { fputs ("\t.global ", FILE); assemble_name (FILE, NAME); fputs ("\n", FILE);} while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.global "
/* The prefix to add to user-visible assembler symbols. */
diff --git a/gcc/config/stormy16/stormy16.h b/gcc/config/stormy16/stormy16.h
index 39745589818..4430e3313a8 100644
--- a/gcc/config/stormy16/stormy16.h
+++ b/gcc/config/stormy16/stormy16.h
@@ -2848,17 +2848,8 @@ do { \
Defined in svr4.h. */
/* #define ASM_FINISH_DECLARE_OBJECT(STREAM, DECL, TOPLEVEL, ATEND) */
-/* A C statement (sans semicolon) to output to the stdio stream STREAM some
- commands that will make the label NAME global; that is, available for
- reference from other files. Use the expression `assemble_name (STREAM,
- NAME)' to output the name itself; before and after that, output the
- additional assembler syntax for making that name global, and a newline. */
-#define ASM_GLOBALIZE_LABEL(STREAM,NAME) \
-do { \
- fputs ("\t.globl ", STREAM); \
- assemble_name (STREAM, NAME); \
- fputs ("\n", STREAM); \
-} while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.globl "
/* A C statement (sans semicolon) to output to the stdio stream STREAM some
commands that will make the label NAME weak; that is, available for
diff --git a/gcc/config/v850/v850.h b/gcc/config/v850/v850.h
index 6cb55e1ce79..39e0be322cf 100644
--- a/gcc/config/v850/v850.h
+++ b/gcc/config/v850/v850.h
@@ -1172,17 +1172,8 @@ zbss_section () \
#define ASM_OUTPUT_ALIGNED_DECL_LOCAL(FILE, DECL, NAME, SIZE, ALIGN) \
v850_output_local (FILE, DECL, NAME, SIZE, ALIGN)
-/* This is how to output a command to make the user-level label named NAME
- defined for reference from other files. */
-
-#define ASM_GLOBALIZE_LABEL(FILE, NAME) \
- do \
- { \
- fputs ("\t.global ", FILE); \
- assemble_name (FILE, NAME); \
- fputs ("\n", FILE); \
- } \
- while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.global "
/* This is how to output a reference to a user-level label named NAME.
`assemble_name' uses this. */
diff --git a/gcc/config/vax/vax.h b/gcc/config/vax/vax.h
index 57e5ea5f9e8..80fbd4770a8 100644
--- a/gcc/config/vax/vax.h
+++ b/gcc/config/vax/vax.h
@@ -1054,8 +1054,8 @@ enum reg_class { NO_REGS, ALL_REGS, LIM_REG_CLASSES };
/* This is how to output a command to make the user-level label named NAME
defined for reference from other files. */
-#define ASM_GLOBALIZE_LABEL(FILE,NAME) \
- do { fputs (".globl ", FILE); assemble_name (FILE, NAME); fputs ("\n", FILE);} while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP ".globl "
/* The prefix to add to user-visible assembler symbols. */
diff --git a/gcc/config/xtensa/xtensa.h b/gcc/config/xtensa/xtensa.h
index 84ef1c9d778..3acf5b0fdf3 100644
--- a/gcc/config/xtensa/xtensa.h
+++ b/gcc/config/xtensa/xtensa.h
@@ -1542,14 +1542,8 @@ typedef struct xtensa_args {
goto FAIL; \
} while (0)
-/* This is how to output a command to make the user-level label named NAME
- defined for reference from other files. */
-#define ASM_GLOBALIZE_LABEL(STREAM, NAME) \
- do { \
- fputs ("\t.global\t", STREAM); \
- assemble_name (STREAM, NAME); \
- fputs ("\n", STREAM); \
- } while (0)
+/* Globalizing directive for a label. */
+#define GLOBAL_ASM_OP "\t.global\t"
/* This says how to define a global common symbol. */
#define ASM_OUTPUT_COMMON(STREAM, NAME, SIZE, ROUNDED) \