c047e293d4809fd45f3e13e6bfd7944dfb790b7b
/* Awrite_quad.c 1.2 90/12/04 */
write_quadword (infop
, qword
, where
)
/* Put the quadword at the given address in memory.
/**************************************************/
if (! (where
->mode
& W
)) exception(infop
, ILL_ADDRMOD
);
switch (where
->mode
& ADDFIELD
) /* Mask out R/W bits */
put_longword (infop
, qword
.high
, where
->address
);
put_longword (infop
, qword
.low
, where
->address
);
if ( where
->reg_number
>= SPOINTER
|| (where
->reg_number
& 1) == 1 )
exception (infop
, ILL_OPRND
);
Replace (infop
, where
->reg_number
, qword
.high
);
Replace (infop
, where
->reg_number
+1, qword
.low
);
exception(infop
, ILL_ADDRMOD
);
printf("Unknown destination in write_quad (alignment code)\n");