Pristine Ack-5.5
[Ack-5.5.git] / util / ego / ic / ic_aux.h
1 /* $Id: ic_aux.h,v 1.4 1994/06/24 10:24:09 ceriel Exp $ */
2 /*
3  * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
4  * See the copyright notice in the ACK home directory, in the file "Copyright".
5  */
6 /*  I N T E R M E D I A T E   C O D E
7  *
8  *  A U X I L I A R Y   R O U T I N E S
9  */
10
11
12
13 extern offset   opr_size();             /* ( short instr )
14                                          * size of operand of given instruction.
15                                          * The operand is an object , so the
16                                          * instruction can be loe, zre etc..
17                                          */
18 extern          dblockdef();            /* (dblock_p db, int n, line_p lnp)
19                                          * Fill in d_pseudo, d_size and
20                                          * d_values fields of db.
21                                          */
22 extern          combine();              /* (dblock_p db;line_p l1,l2;byte pseu)
23                                          * Combine two successive ROMs or CONs
24                                          * (with no data label in between)
25                                          * into one ROM or CON.
26                                          */
27 extern line_p   arglist();              /* ( int m)
28                                          * Read a list of m arguments. If m
29                                          * is 0, then the list is of
30                                          * undetermined length; it is
31                                          * then terminated by a cend symbol.
32                                          */
33 extern bool     is_datalabel();         /* ( line_p l)
34                                          * TRUE if l is a data label defining
35                                          * occurrence (i.e. its l_instr
36                                          * field is ps_sym).
37                                          */
38 extern dblock_p block_of_lab();         /* (char *ident)
39                                          * Find the datablock with
40                                          * the given name.
41                                          */
42 extern obj_p    object();               /* (char *ident,offset off,short size)
43                                          * Create an object struct.
44                                          */