Annotation of coherent/b/bin/c/common/i8086/geno.c, revision 1.1.1.1

1.1       root        1: /*
                      2:  * Output one and two operand opcodes
                      3:  * with their address fields.
                      4:  * Used in cc1 and cc2.
                      5:  */
                      6: #ifdef   vax
                      7: #include "INC$LIB:mch.h"
                      8: #include "INC$LIB:host.h"
                      9: #include "INC$LIB:ops.h"
                     10: #include "INC$LIB:var.h"
                     11: #include "INC$LIB:varmch.h"
                     12: #include "INC$LIB:opcode.h"
                     13: #include "INC$LIB:stream.h"
                     14: #else
                     15: #include "mch.h"
                     16: #include "host.h"
                     17: #include "ops.h"
                     18: #include "var.h"
                     19: #include "varmch.h"
                     20: #include "opcode.h"
                     21: #include "stream.h"
                     22: #endif
                     23: extern int *genaf();
                     24: 
                     25: genone(op)
                     26: {
                     27:        bput(CODE);
                     28:        bput(op);
                     29:        genaf(&op + 1);
                     30: }
                     31: 
                     32: gentwo(op)
                     33: {
                     34:        bput(CODE);
                     35:        bput(op);
                     36:        genaf(genaf(&op + 1));
                     37: }
                     38: 
                     39: int *
                     40: genaf(mp)
                     41: register int *mp;
                     42: {
                     43:        register int mode;
                     44: 
                     45:        iput(mode = *mp++);
                     46:        if ((mode & A_OFFS) != 0)
                     47:                iput(*mp++);
                     48:        if ((mode & A_LID) != 0)
                     49:                iput(*mp++);
                     50:        else if ((mode & A_GID) != 0)
                     51:                sput(*((char **)mp)++);
                     52:        return (mp);
                     53: }

unix.superglobalmegacorp.com

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