/* elfos.h -- operating system specific defines to be used when
targeting GCC for some generic ELF system
- Copyright (C) 1991, 1994, 1995, 1999, 2000, 2001, 2002
+ Copyright (C) 1991, 1994, 1995, 1999, 2000, 2001, 2002, 2003
Free Software Foundation, Inc.
Based on svr4.h contributed by Ron Guilmette (rfg@netcom.com).
#endif
#define MAKE_DECL_ONE_ONLY(DECL) (DECL_WEAK (DECL) = 1)
-
+
/* Switch into a generic section. */
#define TARGET_ASM_NAMED_SECTION default_elf_asm_named_section
/* This is how we tell the assembler that a symbol is weak. */
-#define ASM_WEAKEN_LABEL(FILE, NAME) \
+#define ASM_WEAKEN_LABEL(FILE, NAME) \
do \
{ \
fputs ("\t.weak\t", (FILE)); \
- assemble_name ((FILE), (NAME)); \
+ assemble_name ((FILE), (NAME)); \
fputc ('\n', (FILE)); \
} \
while (0)
size_directive_output was set
by ASM_DECLARE_OBJECT_NAME when it was run for the same decl. */
+#undef ASM_FINISH_DECLARE_OBJECT
#define ASM_FINISH_DECLARE_OBJECT(FILE, DECL, TOP_LEVEL, AT_END)\
do \
{ \
const char *name = XSTR (XEXP (DECL_RTL (DECL), 0), 0); \
HOST_WIDE_INT size; \
- \
+ \
if (!flag_inhibit_size_directive \
&& DECL_SIZE (DECL) \
&& ! AT_END && TOP_LEVEL \
register const unsigned char *_limited_str = \
(const unsigned char *) (STR); \
register unsigned ch; \
- \
+ \
fprintf ((FILE), "%s\"", STRING_ASM_OP); \
- \
+ \
for (; (ch = *_limited_str); _limited_str++) \
{ \
register int escape; \
- \
+ \
switch (escape = ESCAPES[ch]) \
{ \
case 0: \
break; \
} \
} \
- \
+ \
fprintf ((FILE), "\"\n"); \
} \
while (0)
for (; _ascii_bytes < limit; _ascii_bytes++) \
{ \
register const unsigned char *p; \
- \
+ \
if (bytes_in_chunk >= 60) \
{ \
fprintf ((FILE), "\"\n"); \
bytes_in_chunk = 0; \
} \
- \
+ \
for (p = _ascii_bytes; p < limit && *p != '\0'; p++) \
continue; \
- \
+ \
if (p < limit && (p - _ascii_bytes) <= (long)STRING_LIMIT) \
{ \
if (bytes_in_chunk > 0) \
fprintf ((FILE), "\"\n"); \
bytes_in_chunk = 0; \
} \
- \
+ \
ASM_OUTPUT_LIMITED_STRING ((FILE), _ascii_bytes); \
_ascii_bytes = p; \
} \
{ \
register int escape; \
register unsigned ch; \
- \
+ \
if (bytes_in_chunk == 0) \
fprintf ((FILE), "%s\"", ASCII_DATA_ASM_OP); \
- \
+ \
switch (escape = ESCAPES[ch = *_ascii_bytes]) \
{ \
case 0: \
} \
} \
} \
- \
+ \
if (bytes_in_chunk > 0) \
fprintf ((FILE), "\"\n"); \
} \