123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- /* $Id$ */
- /*
- * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
- * See the copyright notice in the ACK home directory, in the file "Copyright".
- */
- /* I N P U T R O U T I N E S */
- extern FILE *curinp; /* current input file */
- extern block_id lastbid; /* block identifying number */
- extern lab_id lastlabid; /* last label identifier */
- #define getbyte() getc(curinp)
- extern short getshort(); /* ()
- * Read a short from curinp
- */
- extern offset getoff(); /* ()
- * Read an offset from curinp
- */
- extern line_p read_line(); /* ( proc_p *p_out)
- * Read a line of EM code (i.e. one
- * instruction) and its arguments
- * (if any). If the instruction is a
- * 'pro' pseudo, set p_out.
- */
- extern line_p getlines(); /* ( FILE *lf; int n; proc_p *p_out;
- * bool collect_mes)
- * Read n lines of EM text and doubly
- * link them. Also process messages
- * if required.
- */
- extern bblock_p freshblock(); /* ()
- * Allocate a bblock struct and assign
- * it a brand new block_id.
- */
- extern lab_id freshlabel(); /* ()
- * Get a brand new lab_id.
- */
- extern dblock_p getdtable(); /* (char *dname)
- * Read the data block table from
- * the file with the given name.
- */
- extern proc_p getptable(); /* (char *pname)
- * Read the proc table from
- * the file with the given name.
- */
- extern bool getunit(); /* (FILE *gf,*lf; short kind_out;
- * bblock_p g_out; line_p l_out;
- * proc_p *p_out; bool collect_mes)
- * Read the control flow graph
- * (from file gf) and the EM text
- * (from lf). If collect_mes is TRUE,
- * all register messages will be
- * collected and put in the global
- * variable 'mesregs'. The proc read
- * is returned in p_out.
- */
- extern message(); /* (line_p lnp)
- * See if lnp is some useful message.
- * (e.g. a message telling that a
- * certain local variable will never be
- * referenced indirectly, so it may be
- * put in a register.
- * If so, add it to the mesregs set.)
- */
|