-/* Definitions of target machine for GNU compiler. Vax sysV version.
- Copyright (C) 1988 Free Software Foundation, Inc.
+/* Definitions of target machine for GNU compiler. Clipper/Clix version.
+ Copyright (C) 1988, 1993 Free Software Foundation, Inc.
This file is part of GNU CC.
#define HAVE_ATEXIT
#define ASM_OUTPUT_ASCII(FILE,PTR,LEN) \
-{ \
+do { \
unsigned char *s; \
int i; \
for (i = 0, s = (unsigned char *)(PTR); i < (LEN); s++, i++) \
fprintf ((FILE), "%s0x%x", (i%8?",":""), (unsigned)*s); \
} \
fputs ("\n", (FILE)); \
-}
+} while (0)
#undef ASM_OUTPUT_DOUBLE
#define ASM_OUTPUT_DOUBLE(FILE,VALUE) \
/* Definitions of target machine for GNU compiler. Alliant FX version.
- Copyright (C) 1989 Free Software Foundation, Inc.
+ Copyright (C) 1989, 1993 Free Software Foundation, Inc.
Adapted from m68k.h by Paul Petersen (petersen@uicsrd.csrd.uiuc.edu)
and Joe Weening (weening@gang-of-four.stanford.edu).
fprintf (FILE, "\n"))
#define ASM_OUTPUT_ASCII(FILE,PTR,SIZE) \
-{ int i; unsigned char *pp = (unsigned char *) (PTR); \
+do { int i; unsigned char *pp = (unsigned char *) (PTR); \
fprintf((FILE), "\t.byte %d", (unsigned int)*pp++); \
for (i = 1; i < (SIZE); ++i, ++pp) { \
if ((i % 8) == 0) \
fprintf((FILE), "\n\t.byte %d", (unsigned int) *pp); \
else \
fprintf((FILE), ",%d", (unsigned int) *pp); } \
- fprintf ((FILE), "\n"); }
+ fprintf ((FILE), "\n"); } while (0)
/* This is how to output an assembler line for a numeric constant byte. */
#define ASCII_DATA_ASM_OP ".byte"
#define ASM_OUTPUT_ASCII(f, p, size) \
-{ register unsigned i; \
+do { register unsigned i; \
int inside; \
inside = FALSE; \
for (i = 0; i < (size); i++) { \
if (inside) \
putc('"', (f)); \
putc('\n', (f)); \
-}
+} while (0)
/* Definitions of target machine for GNU compiler.
AT&T UNIX PC version (pc7300, 3b1)
+ Written by Alex Crain (alex@umbc3.umd.edu).
- Written by Alex Crain
- bug reports to alex@umbc3.umd.edu
-
- Copyright (C) 1987 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1993 Free Software Foundation, Inc.
This file is part of GNU CC.
/* Yet another null terminated string format. */
#define ASM_OUTPUT_ASCII(FILE,PTR,LEN) \
- { register int sp = 0, lp = 0; \
+ do { register int sp = 0, lp = 0; \
fprintf ((FILE), "\tbyte\t"); \
loop: \
if ((PTR)[sp] > ' ' && ! ((PTR)[sp] & 0x80) && (PTR)[sp] != '\\') \
else \
putc (',', (FILE)); \
goto loop; } \
- putc ('\n', (FILE)); }
+ putc ('\n', (FILE)); } while (0)
/* Note that in the case of the movhi which fetches an element of
an ADDR_DIFF_VEC the offset output is too large by 2.
/* Definitions of target machine for GNU compiler.
Commodore Amiga A3000UX version.
- Copyright (C) 1991 Free Software Foundation, Inc.
+ Copyright (C) 1991, 1993 Free Software Foundation, Inc.
This file is part of GNU CC.
#undef ASM_OUTPUT_ASCII
#define ASM_OUTPUT_ASCII(FILE,PTR,LEN) \
-{ \
+do { \
register int sp = 0, lp = 0, ch; \
- fprintf ((FILE), "\t%s ", BYTE_ASM_OP); \
+ fprintf ((FILE), "\t%s ", BYTE_ASM_OP); \
do { \
ch = (PTR)[sp]; \
if (ch > ' ' && ! (ch & 0x80) && ch != '\\') \
} \
} while (sp < (LEN)); \
putc ('\n', (FILE)); \
-}
+} while (0)
\f
/* The following should be unnecessary as a result of PIC_CASE_VECTOR_ADDRESS.
But rhealey@aggregate.com says they are still needed. */
/* Definitions of target machine for GNU compiler.
Charles River Data Systems UNiverse/32
-
- Written by Gary E. Miller
- bug reports to Gary_Edmunds_Miller@cup.portal.com
-
+ Written by Gary E. Miller (Gary_Edmunds_Miller@cup.portal.com)
Copyright (C) 1987, 1993 Free Software Foundation, Inc.
This file is part of GNU CC.
#undef ASM_OUTPUT_ASCII
#define ASM_OUTPUT_ASCII(FILE, P , SIZE) \
-{ int i; \
+do { int i; \
fprintf ((FILE), "\t.ascii \""); \
for (i = 0; i < (SIZE); i++) \
{ \
continue; \
} \
} \
- /* brain dead asm doesn't understand char escapes */ \
+ /* brain dead asm doesn't understand char escapes */ \
fprintf ((FILE), "\"\n\t.byte\t%d\n\t.ascii \"", c); \
} \
fprintf ((FILE), "\"\n"); \
- }
+ } while (0)
/* Change all JBxx to Bxx. Also change all DBRA to DBF.
/* Definitions of target machine for GNU compiler. HP-UX 68000/68020 version.
- Copyright (C) 1987, 1988 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1988, 1993 Free Software Foundation, Inc.
This file is part of GNU CC.
}}
#define ASM_OUTPUT_ASCII(f, p, size) \
-{ register int i; \
+do { register int i; \
int inside; \
inside = FALSE; \
for (i = 0; i < (size); i++) { \
if (inside) \
putc('"', (f)); \
putc('\n', (f)); \
-}
+} while (0)
/* Translate Motorola opcodes such as `jbeq'
into SGS opcodes such as `beq.w'.
/* Target definitions for GNU compiler for mc680x0 running System V.4
- Copyright (C) 1991 Free Software Foundation, Inc.
+ Copyright (C) 1991, 1993 Free Software Foundation, Inc.
Written by Ron Guilmette (rfg@ncd.com) and Fred Fish (fnf@cygnus.com).
seems to be safer. */
#undef ASM_OUTPUT_ASCII
#define ASM_OUTPUT_ASCII(FILE,PTR,LEN) \
-{ \
+do { \
register int sp = 0, lp = 0, ch; \
fprintf ((FILE), "\t%s ", BYTE_ASM_OP); \
do { \
} \
} while (sp < (LEN)); \
putc ('\n', (FILE)); \
-}
+} while (0)
/* SVR4 m68k assembler is bitching on the syntax `2.b'.
So use the "LLDnnn-LLnnn" format. Define LLDnnn after the table. */
/* Definitions of target machine for GNU compiler.
SysV68 Motorola 3300 Delta Series
-
- Written by Abramo and Roberto Bagnara
- after Alex Crain's 3B1 definitions.
-
- Bug reports to bagnara@dipisa.di.unipi.it
-
- Copyright (C) 1987 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1993 Free Software Foundation, Inc.
+ Written by Abramo and Roberto Bagnara (bagnara@dipisa.di.unipi.it)
+ based on Alex Crain's 3B1 definitions.
This file is part of GNU CC.
#undef ASM_OUTPUT_ASCII
#define ASM_OUTPUT_ASCII(FILE,PTR,LEN) \
- { register int sp = 0, lp = 0; \
+ do { register int sp = 0, lp = 0; \
fprintf ((FILE), "\tbyte\t"); \
loop: \
if ((PTR)[sp] > ' ' && ! ((PTR)[sp] & 0x80) && (PTR)[sp] != '\\') \
else \
putc (',', (FILE)); \
goto loop; } \
- putc ('\n', (FILE)); }
+ putc ('\n', (FILE)); } while (0)
/* 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.
/* Definitions of target machine for GNU compiler for m68k targets using
assemblers derived from AT&T "SGS" releases.
-
Copyright (C) 1991, 1993 Free Software Foundation, Inc.
-
Written by Fred Fish (fnf@cygnus.com)
This file is part of GNU CC.
output the string one byte at a time. */
#define ASM_OUTPUT_ASCII(FILE,PTR,LEN) \
-{ \
+do { \
register int sp = 0, lp = 0, ch; \
fprintf ((FILE), "\t%s ", BYTE_ASM_OP); \
do { \
} \
} while (sp < (LEN)); \
putc ('\n', (FILE)); \
-}
+} while (0)
/* SGS based assemblers don't understand #NO_APP and #APP, so just don't
/* Definitions of target machine for GNU compiler.
+ For NCR Tower 32/4x0 and 32/6x0 running System V Release 3.
Copyright (C) 1990, 1993 Free Software Foundation, Inc.
+ Written by Robert Andersson (ra@intsys.no), International Systems,
+ Oslo, Norway.
- Written by Robert Andersson, International Systems, Oslo, Norway.
- Send bug reports, questions and improvements to ra@intsys.no.
-
- For NCR Tower 32/4x0 and 32/6x0 running System V Release 3.
This file outputs assembler source suitable for the native Tower as
and with sdb debugging symbols. See tower.h for more comments.
- This file was based on m68k.h, hp320.h and 3b1.h
- as of the 1.37.1 version.
-
+ This file was based on m68k.h, hp320.h and 3b1.h as of the 1.37.1 version.
This file is part of GNU CC.
fprintf (FILE, "\tident\t\"%s\" \n", NAME)
#define ASM_OUTPUT_ASCII(FILE,PTR,LEN) \
- { register int sp = 0, lp = 0; \
+ do { register int sp = 0, lp = 0; \
fprintf ((FILE), "\tbyte\t"); \
loop: \
if ((PTR)[sp] > ' ' && ! ((PTR)[sp] & 0x80) && (PTR)[sp] != '\\') \
else \
putc (',', (FILE)); \
goto loop; } \
- putc ('\n', (FILE)); }
+ putc ('\n', (FILE)); } while (0)
/* Translate Motorola opcodes such as `jbeq'
into SGS/Tower opcodes such as `beq.w'.
/* Definitions of target machine for GNU compiler. Iris version 4.
- Copyright (C) 1991 Free Software Foundation, Inc.
+ Copyright (C) 1991, 1993 Free Software Foundation, Inc.
This file is part of GNU CC.
The quickest way to avoid the problem is not to use .ascii. */
#undef ASM_OUTPUT_ASCII
#define ASM_OUTPUT_ASCII(FILE,PTR,LEN) \
-{ \
+do { \
unsigned char *s; \
int i; \
for (i = 0, s = (unsigned char *)(PTR); i < (LEN); s++, i++) \
fprintf ((FILE), "%s0x%x", (i%8?",":""), (unsigned)*s); \
} \
fputs ("\n", (FILE)); \
-}
+} while (0)
/* Definitions of target machine for GNU compiler. ENCORE NS32000 version.
- Copyright (C) 1988 Free Software Foundation, Inc.
+ Copyright (C) 1988, 1993 Free Software Foundation, Inc.
Adapted by Robert Brown (brown@harvard.harvard.edu) from the Sequent
- version by Michael Tiemann (tiemann@mcc.com).
+ version by Michael Tiemann (tiemann@mcc.com).
This file is part of GNU CC.
} \
} \
fprintf ((file), "\"\n"); \
-}
+} while (0)
/* Modify syntax of jsr instructions. */
#define CALL_MEMREF_IMPLICIT
/* Definitions of target machine for GNU compiler. Harris tahoe version.
- Copyright (C) 1989 Free Software Foundation, Inc.
+ Copyright (C) 1989, 1993 Free Software Foundation, Inc.
This file is part of GNU CC.
output_file_directive ((FILE), main_input_filename);
#define ASM_OUTPUT_ASCII(FILE, PTR, SIZE) \
-{ \
+do { \
unsigned char *_p = (PTR); \
int _thissize = (SIZE); \
fprintf ((FILE), "\t.ascii \""); \
} \
} \
fprintf ((FILE), "\"\n"); \
-}
+} while (0)
/* Definitions of target machine for GNU compiler. Tahoe version.
- Copyright (C) 1989 Free Software Foundation, Inc.
+ Copyright (C) 1989, 1993 Free Software Foundation, Inc.
This file is part of GNU CC.
*
* HCX/UX version by Piet van Oostrum (piet@cs.ruu.nl)
*
- * Performance hacking by Michael Tiemann (tiemann@lurch.stanford.edu)
- *
- * Mail bugs reports or fixes to: gcc@cs.buffalo.edu
+ * Performance hacking by Michael Tiemann (tiemann@cygnus.com)
*/
/* define this for the HCX/UX version */
/* This is how to output an assembler line for an ASCII string. */
#define ASM_OUTPUT_ASCII(FILE, p, size) \
-{ register int i; \
+do { register int i; \
fprintf ((FILE), "\t.ascii \""); \
for (i = 0; i < (size); i++) \
{ \
fprintf ((FILE), "\\%03o", c); \
} \
} \
- fprintf ((FILE), "\"\n"); }
+ fprintf ((FILE), "\"\n"); } while (0)
#endif
/* This is how to output an assembler line for a numeric constant byte. */
/* Definitions of target machine for GNU compiler. Vax sysV version.
- Copyright (C) 1988 Free Software Foundation, Inc.
+ Copyright (C) 1988, 1993 Free Software Foundation, Inc.
This file is part of GNU CC.
fprintf ((FILE), ":\n\t.space %u\n", (ROUNDED)))
#define ASM_OUTPUT_ASCII(FILE,PTR,LEN) \
-{ \
- unsigned char *s; \
+do { \
+ unsigned char *s; \
int i; \
for (i = 0, s = (PTR); i < (LEN); s++, i++) \
{ \
fprintf ((FILE), "%s0x%x", (i%8?",":""), (unsigned)*s); \
} \
fputs ("\n", (FILE)); \
-}
+} while (0)
#undef ASM_OUTPUT_DOUBLE
#define ASM_OUTPUT_DOUBLE(FILE,VALUE) \
/* Definitions of target machine for GNU compiler. AT&T we32000 version.
+ Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc.
Contributed by John Wehle (john@feith1.uucp)
- Copyright (C) 1991-1992 Free Software Foundation, Inc.
This file is part of GNU CC.
fprintf (FILE, "\t.byte 0x%x\n", (VALUE))
#define ASM_OUTPUT_ASCII(FILE,PTR,LEN) \
-{ \
+do { \
unsigned char *s; \
int i; \
for (i = 0, s = (unsigned char *)(PTR); i < (LEN); s++, i++) \
fprintf ((FILE), "%s0x%x", (i%8?",":""), (unsigned)*s); \
} \
fputs ("\n", (FILE)); \
-}
+} while (0)
/* This is how to output an insn to push a register on the stack.
It need not be very fast code. */