The \fIe_instr\fR structure consists of the fields
\fIem_type\fR, containing the type of this \fIe_instr\fR,
\fIem_opcode\fR, containing the opcode of an instruction,
-\fIem_arg\fR, containing a possible argument,
-and two other fields for special purposes explained later.
+and \fIem_arg\fR, containing a possible argument.
.PP
The possible values of
\fIem_type\fR, defined in <em_comp.h>, are summarized below:
if (i < sp_filb0+sp_nilb0 && i >= sp_filb0) { /* Instruction label */
p->em_type = EM_DEFILB;
+ p->em_argtype = ilb_ptyp;
p->em_ilb = i - sp_filb0;
return;
}
switch(i) {
case sp_ilb1: /* Instruction label */
p->em_type = EM_DEFILB;
+ p->em_argtype = ilb_ptyp;
p->em_ilb = getbyte();
break;
case sp_ilb2: /* Instruction label */
p->em_type = EM_DEFILB;
+ p->em_argtype = ilb_ptyp;
p->em_ilb = get16();
#ifdef CHECKING
if (p->em_ilb > 32767 && !EM_error) {
case sp_dlb1: /* Numeric data label */
p->em_type = EM_DEFDLB;
+ p->em_argtype = nof_ptyp;
p->em_dlb = getbyte();
break;
case sp_dlb2: /* Numeric data label */
p->em_type = EM_DEFDLB;
+ p->em_argtype = nof_ptyp;
p->em_dlb = get16();
#ifdef CHECKING
if (p->em_dlb > 32767 && !EM_error) {
struct string *s;
p->em_type = EM_DEFDNAM;
+ p->em_argtype = sof_ptyp;
if (!(s = getstring(1))) {
p->em_dnam = "";
}