ack/util/ego/ic/ic_aux.h

48 lines
1.3 KiB
C
Raw Permalink Normal View History

1994-06-24 11:31:16 +00:00
/* $Id$ */
1987-03-09 19:15:41 +00:00
/*
* (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
* See the copyright notice in the ACK home directory, in the file "Copyright".
*/
1984-11-26 13:43:22 +00:00
/* I N T E R M E D I A T E C O D E
*
* A U X I L I A R Y R O U T I N E S
*/
offset opr_size(short instr); /*
1984-11-26 13:43:22 +00:00
* size of operand of given instruction.
* The operand is an object , so the
* instruction can be loe, zre etc..
*/
void dblockdef(dblock_p db, int n, line_p lnp);
/*
1984-11-26 13:43:22 +00:00
* Fill in d_pseudo, d_size and
* d_values fields of db.
*/
void combine(dblock_p db, line_p l1, line_p l2, byte pseu);
/*
1984-11-26 13:43:22 +00:00
* Combine two successive ROMs or CONs
* (with no data label in between)
* into one ROM or CON.
*/
line_p arglist(int m); /*
1984-11-26 13:43:22 +00:00
* Read a list of m arguments. If m
* is 0, then the list is of
* undetermined length; it is
* then terminated by a cend symbol.
*/
bool is_datalabel(line_p l); /*
1984-11-26 13:43:22 +00:00
* TRUE if l is a data label defining
* occurrence (i.e. its l_instr
* field is ps_sym).
*/
dblock_p block_of_lab(char *ident); /*
1984-11-26 13:43:22 +00:00
* Find the datablock with
* the given name.
*/
obj_p object(char *ident, offset off, offset size);
/*
1984-11-26 13:43:22 +00:00
* Create an object struct.
*/