OSDN Git Service

* config/alpha/xm-vms.h (_POSIX_EXIT): Define.
[pf3gnuchains/gcc-fork.git] / gcc / config / m68k / sgs.h
index fa00d8e..0c5eb59 100644 (file)
@@ -30,7 +30,7 @@ Boston, MA 02111-1307, USA.  */
 
 #include "m68k/m68k.h"
 
-/* SGS specific assembler pseudo ops. */
+/* SGS specific assembler pseudo ops.  */
 
 #define        BYTE_ASM_OP             "\t.byte "
 #define WORD_ASM_OP            "\t.short "
@@ -60,12 +60,12 @@ Boston, MA 02111-1307, USA.  */
 #define REGISTER_PREFIX "%"
 
 /* The prefix for local (compiler generated) labels.
-   These labels will not appear in the symbol table. */
+   These labels will not appear in the symbol table.  */
 
 #undef LOCAL_LABEL_PREFIX
 #define LOCAL_LABEL_PREFIX "."
 
-/* The prefix to add to user-visible assembler symbols. */
+/* The prefix to add to user-visible assembler symbols.  */
 
 #undef USER_LABEL_PREFIX
 #define USER_LABEL_PREFIX ""
@@ -102,19 +102,12 @@ Boston, MA 02111-1307, USA.  */
 
 #endif /* defined SUPPORT_SUN_FPA */
 
-/* When using an SGS assembler, modify the name of the artificial label which
-   identifies this file as having been compiled with gcc, and the macro that
-   emits such a label in the assembly output, to use '%' rather than '.' */
-
-#define ASM_IDENTIFY_GCC(FILE)                         \
- { fprintf ((FILE), "%s:\n", "gcc2_compiled%"); }
-
 /* This is how to output an assembler line defining an `int' constant.  */
-/* The SGS assembler doesn't understand ".word". */
+/* The SGS assembler doesn't understand ".word".  */
 
 #undef ASM_OUTPUT_SHORT
 #define ASM_OUTPUT_SHORT(FILE,VALUE)                   \
-( fprintf ((FILE), "\t%s ", WORD_ASM_OP),              \
+( fprintf ((FILE), "%s", WORD_ASM_OP),                 \
   output_addr_const ((FILE), (VALUE)),                 \
   fprintf ((FILE), "\n"))
 
@@ -122,7 +115,7 @@ Boston, MA 02111-1307, USA.  */
 #define ASM_OUTPUT_LONG_DOUBLE(FILE,VALUE)                     \
 do { long l[3];                                                        \
      REAL_VALUE_TO_TARGET_LONG_DOUBLE (VALUE, l);              \
-     fprintf ((FILE), "\t%s 0x%x,0x%x,0x%x\n", LONG_ASM_OP,    \
+     fprintf ((FILE), "%s0x%lx,0x%lx,0x%lx\n", LONG_ASM_OP,    \
             l[0], l[1], l[2]);                                 \
    } while (0)
 
@@ -132,7 +125,7 @@ do { long l[3];                                                     \
 #define ASM_OUTPUT_DOUBLE(FILE,VALUE)                  \
 do { long l[2];                                                \
      REAL_VALUE_TO_TARGET_DOUBLE (VALUE, l);           \
-     fprintf ((FILE), "\t%s 0x%x,0x%x\n", LONG_ASM_OP, \
+     fprintf ((FILE), "%s0x%lx,0x%lx\n", LONG_ASM_OP,  \
              l[0], l[1]);                              \
    } while (0)
 
@@ -142,7 +135,7 @@ do { long l[2];                                             \
 #define ASM_OUTPUT_FLOAT(FILE,VALUE)                   \
 do { long l;                                           \
      REAL_VALUE_TO_TARGET_SINGLE (VALUE, l);           \
-     fprintf ((FILE), "\t%s 0x%x\n", LONG_ASM_OP, l);  \
+     fprintf ((FILE), "%s0x%lx\n", LONG_ASM_OP, l);    \
    } while (0)
 
 /* This is how to output an assembler line that says to advance the
@@ -151,7 +144,7 @@ do { long l;                                                \
 #undef ASM_OUTPUT_ALIGN
 #define ASM_OUTPUT_ALIGN(FILE,LOG)                             \
   if ((LOG) > 0)                                               \
-    fprintf ((FILE), "\t%s \t%u\n", ALIGN_ASM_OP, 1 << (LOG)); \
+    fprintf ((FILE), "%s%u\n", ALIGN_ASM_OP, 1 << (LOG));      \
   else if ((LOG) > 31)                                         \
     abort ();
 
@@ -160,12 +153,12 @@ do { long l;                                              \
    1023 bytes.  There is no "partial string op" which works like ".string"
    but doesn't append a null byte, so we can't chop the input string up
    into small pieces and use that.  Our only remaining alternative is to
-   output the string one byte at a time. */
+   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);                      \
+  register int sp = 0, ch;                                     \
+  fprintf ((FILE), "%s", BYTE_ASM_OP);                         \
   do {                                                         \
     ch = (PTR)[sp];                                            \
     if (ch > ' ' && ! (ch & 0x80) && ch != '\\')               \
@@ -180,7 +173,7 @@ do {                                                                \
       {                                                                \
        if ((sp % 10) == 0)                                     \
          {                                                     \
-           fprintf ((FILE), "\n\t%s ", BYTE_ASM_OP);           \
+           fprintf ((FILE), "\n%s", BYTE_ASM_OP);              \
          }                                                     \
        else                                                    \
          {                                                     \
@@ -193,7 +186,7 @@ do {                                                                \
 
 
 /* SGS based assemblers don't understand #NO_APP and #APP, so just don't
-   bother emitting them. */
+   bother emitting them.  */
 
 #undef ASM_APP_ON
 #define ASM_APP_ON ""
@@ -220,25 +213,25 @@ do {                                                              \
 #define ASM_OUTPUT_FLOAT_OPERAND(CODE,FILE,VALUE)      \
   do { long l;                                         \
        REAL_VALUE_TO_TARGET_SINGLE (VALUE, l);         \
-       asm_fprintf ((FILE), "%I0x%x", l);              \
+       asm_fprintf ((FILE), "%I0x%lx", l);             \
      } while (0)
   
 #undef ASM_OUTPUT_DOUBLE_OPERAND
 #define ASM_OUTPUT_DOUBLE_OPERAND(FILE,VALUE)          \
   do { long l[2];                                      \
        REAL_VALUE_TO_TARGET_DOUBLE (VALUE, l);         \
-       asm_fprintf ((FILE), "%I0x%x%08x", l[0], l[1]); \
+       asm_fprintf ((FILE), "%I0x%lx%08lx", l[0], l[1]);\
      } while (0)
 
 /* How to output a block of SIZE zero bytes.  Note that the `space' pseudo,
    when used in the text segment, causes SGS assemblers to output nop insns
-   rather than 0s, so we set ASM_NO_SKIP_IN_TEXT to prevent this. */
+   rather than 0s, so we set ASM_NO_SKIP_IN_TEXT to prevent this.  */
 
 #define ASM_NO_SKIP_IN_TEXT 1
 
 #undef ASM_OUTPUT_SKIP
 #define ASM_OUTPUT_SKIP(FILE,SIZE)  \
-  fprintf (FILE, "\t%s %u\n", SPACE_ASM_OP, (SIZE))
+  fprintf (FILE, "%s%u\n", SPACE_ASM_OP, (SIZE))
 \f
 /* Translate Motorola opcodes such as `jbeq' into SGS opcodes such
    as `beq.w'.
@@ -396,10 +389,10 @@ do {                                                              \
 /* This macro outputs the label at the start of a switch table.  The
    ".swbeg <N>" is an assembler directive that causes the switch table
    size to be inserted into the object code so that disassemblers, for
-   example, can identify that it is the start of a switch table. */
+   example, can identify that it is the start of a switch table.  */
 
 #define ASM_OUTPUT_BEFORE_CASE_LABEL(FILE,PREFIX,NUM,TABLE)            \
-  fprintf ((FILE), "\t%s &%d\n", SWBEG_ASM_OP, XVECLEN (PATTERN (TABLE), 1));
+  fprintf ((FILE), "%s&%d\n", SWBEG_ASM_OP, XVECLEN (PATTERN (TABLE), 1));
 
 #define ASM_OUTPUT_CASE_LABEL(FILE,PREFIX,NUM,TABLE)                   \
   do {                                                                 \
@@ -413,12 +406,12 @@ do {                                                              \
    we want.  This difference can be accommodated by making the assembler
    define such "LDnnn" to be either "Lnnn-LInnn-2.b", "Lnnn", or any other
    string, as necessary.  This is accomplished via the ASM_OUTPUT_CASE_END
-   macro. */
+   macro.  */
 
 #undef ASM_OUTPUT_CASE_END
 #define ASM_OUTPUT_CASE_END(FILE,NUM,TABLE)            \
 { if (switch_table_difference_label_flag)              \
-    asm_fprintf (FILE, "\t%s %LLD%d,%LL%d-%LLI%d-2.b\n",\
+    asm_fprintf (FILE, "%s%LLD%d,%LL%d-%LLI%d-2.b\n",\
                 SET_ASM_OP, (NUM), (NUM), (NUM));      \
   switch_table_difference_label_flag = 0; }
 
@@ -428,10 +421,10 @@ extern int switch_table_difference_label_flag;
 
 #undef ASM_OUTPUT_ADDR_DIFF_ELT
 #define ASM_OUTPUT_ADDR_DIFF_ELT(FILE, BODY, VALUE, REL)       \
-  asm_fprintf (FILE, "\t%s %LL%d-%LL%d\n", WORD_ASM_OP, VALUE, REL)
+  asm_fprintf (FILE, "%s%LL%d-%LL%d\n", WORD_ASM_OP, VALUE, REL)
 
 /* Currently, JUMP_TABLES_IN_TEXT_SECTION must be defined in order to
-   keep switch tables in the text section. */
+   keep switch tables in the text section.  */
    
 #define JUMP_TABLES_IN_TEXT_SECTION 1