12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- /* $Id$ */
- /*
- * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
- * See the copyright notice in the ACK home directory, in the file "Copyright".
- */
- /* O U T P U T R O U T I N E S */
- extern FILE *curoutp; /* current output file */
- #define outbyte(b) putc(b,curoutp)
- void outshort(short i);
- /* Write a short to curoutp
- */
- void outoff(offset off);
- /* Write an offset to curoutp
- */
- void outproc(proc_p p);
- /* Write a procid to curoutp
- */
- void putdtable(dblock_p head, FILE *df);
- /* Write the data block table to file df,
- * preceded by its length.
- */
- void putptable(proc_p head, FILE *pf, bool all);
- /* Write the proc table to file pf,
- * preceded by its length. If all=false,
- * the fields computed by CF will not be
- * written (used by the IC phase).
- */
- void putunit(short kind, proc_p p, line_p l, FILE *gf, FILE *lf);
- /* If kind = LTEXT, then write
- * the control flow graph to file gf,
- * preceded by its length (#basic blocks);
- * write the EM code of every basic block
- * in the graph to file lf, preceded by
- * the number of instructions in the block.
- * Else, (kind = LDATA) just write the
- * list of instructions (data declarations)
- * to lf.
- */
- short putlines(line_p l, FILE *lf);
- /* Output the list of em instructions
- * headed by l. Return the number of
- * instructions written.
- */
|