1987-01-15 18:12:26 +00:00
|
|
|
/* $Header$ */
|
1987-07-07 16:31:16 +00:00
|
|
|
#include <stdio.h>
|
1987-01-15 18:12:26 +00:00
|
|
|
#include <em_spec.h>
|
|
|
|
#include <em_mnem.h>
|
|
|
|
#include <em_pseu.h>
|
|
|
|
#include <em_flag.h>
|
|
|
|
#include <em_ptyp.h>
|
|
|
|
#include <em_mes.h>
|
|
|
|
#include <alloc.h>
|
|
|
|
#include <em.h>
|
|
|
|
#include <em_comp.h>
|
|
|
|
#include <system.h>
|
|
|
|
#include <idf_pkg.spec>
|
1987-07-07 16:31:16 +00:00
|
|
|
#include "emO_code.h"
|
1987-01-15 18:12:26 +00:00
|
|
|
|
1987-07-07 16:31:16 +00:00
|
|
|
#define OTHER 255
|
1987-01-15 18:12:26 +00:00
|
|
|
|
1987-07-07 16:31:16 +00:00
|
|
|
#define FLUSHDFA() if(OO_state) {\
|
|
|
|
*OO_nxtpatt++ = OO_OTHER; OO_dfa(OTHER);\
|
|
|
|
} else if(OO_noutput) OO_flush();
|
1987-01-15 18:12:26 +00:00
|
|
|
|
1987-07-07 16:31:16 +00:00
|
|
|
#define GETINSTR() (OO_nxtifree>OO_freeiqueue)?*(--OO_nxtifree):\
|
|
|
|
((p_instr)Malloc(sizeof(struct e_instr)))
|
1987-01-15 18:12:26 +00:00
|
|
|
|
1987-07-07 16:31:16 +00:00
|
|
|
#define op_lab sp_ilb1
|
1987-01-15 18:12:26 +00:00
|
|
|
|
1987-07-07 16:31:16 +00:00
|
|
|
typedef struct e_instr *p_instr;
|
1987-01-15 18:12:26 +00:00
|
|
|
|
1987-07-07 16:31:16 +00:00
|
|
|
extern p_instr *OO_freeiqueue;
|
|
|
|
extern p_instr *OO_nxtifree;
|
|
|
|
extern p_instr *OO_patternqueue;
|
|
|
|
extern p_instr *OO_nxtpatt;
|
|
|
|
extern p_instr *OO_bkupqueue;
|
|
|
|
extern p_instr *OO_nxtbackup;
|
|
|
|
extern p_instr OO_OTHER;
|
|
|
|
extern int OO_state;
|
|
|
|
extern int OO_noutput; /* number of instructions in output queue */
|
|
|
|
extern int OO_WSIZE; /* wordlength */
|
|
|
|
extern int OO_PSIZE; /* pointer length */
|
1987-01-15 18:12:26 +00:00
|
|
|
#ifdef STATS
|
1987-07-07 16:31:16 +00:00
|
|
|
extern int OO_wrstats; /* statistics output */
|
1987-01-15 18:12:26 +00:00
|
|
|
#endif
|
|
|
|
|
1987-07-07 16:31:16 +00:00
|
|
|
extern char *OO_freestr();
|
|
|
|
|
|
|
|
#define CST(p) (p->em_cst)
|
|
|
|
#define PNAM(p) (p->em_pnam)
|
|
|
|
#define LAB(p) (p->em_ilb)
|
|
|
|
#define DEFILB(p) (p->em_ilb)
|
|
|
|
|