Annotation of GNUtools/cc/config/i386/seq-gas.h, revision 1.1

1.1     ! root        1: /* Definitions for Sequent Intel 386 using GAS.
        !             2:    Copyright (C) 1992 Free Software Foundation, Inc.
        !             3: 
        !             4: /* Mostly it's like a Sequent 386 without GAS. */
        !             5: 
        !             6: #include "i386/sequent.h"
        !             7: 
        !             8: /* A C statement or statements which output an assembler instruction
        !             9:    opcode to the stdio stream STREAM.  The macro-operand PTR is a
        !            10:    variable of type `char *' which points to the opcode name in its
        !            11:    "internal" form--the form that is written in the machine description.
        !            12: 
        !            13:    GAS version 1.38.1 doesn't understand the `repz' opcode mnemonic.
        !            14:    So use `repe' instead.  */
        !            15: 
        !            16: #undef ASM_OUTPUT_OPCODE
        !            17: #define ASM_OUTPUT_OPCODE(STREAM, PTR) \
        !            18: {                                                                      \
        !            19:   if ((PTR)[0] == 'r'                                                  \
        !            20:       && (PTR)[1] == 'e'                                               \
        !            21:       && (PTR)[2] == 'p')                                              \
        !            22:     {                                                                  \
        !            23:       if ((PTR)[3] == 'z')                                             \
        !            24:        {                                                               \
        !            25:          fprintf (STREAM, "repe");                                     \
        !            26:          (PTR) += 4;                                                   \
        !            27:        }                                                               \
        !            28:       else if ((PTR)[3] == 'n' && (PTR)[4] == 'z')                     \
        !            29:        {                                                               \
        !            30:          fprintf (STREAM, "repne");                                    \
        !            31:          (PTR) += 5;                                                   \
        !            32:        }                                                               \
        !            33:     }                                                                  \
        !            34: }
        !            35: 
        !            36: /* Define macro used to output shift-double opcodes when the shift
        !            37:    count is in %cl.  Some assemblers require %cl as an argument;
        !            38:    some don't.
        !            39: 
        !            40:    GAS requires the %cl argument, so override i386/unix.h. */
        !            41: 
        !            42: #undef AS3_SHIFT_DOUBLE
        !            43: #define AS3_SHIFT_DOUBLE(a,b,c,d) AS3 (a,b,c,d)
        !            44: 
        !            45: /* Print opcodes the way that GAS expects them. */
        !            46: #define GAS_MNEMONICS 1

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.