Partial support for integer divisions in access vectors
[suif.git] / html / man_fred_inline.1.html
blobd99c097c711128c2f06b07b70412fed3f78edb37
1 <!-- manual page source format generated by PolyglotMan v3.0.7, -->
2 <!-- available via anonymous ftp from ftp.cs.berkeley.edu:/ucb/people/phelps/tcltk/rman.tar.Z -->
4 <HTML>
5 <HEAD>
6 <TITLE>Man page for fred_inline.1</TITLE>
7 </HEAD>
8 <BODY bgcolor=white>
9 <A HREF="#toc">Table of Contents</A><P>
11 <H2><A NAME="sect0" HREF="#toc0">Name</A></H2>
13 <P>
14 fred_inline - inline procedures marked with Fred annotations
16 <H2><A NAME="sect1" HREF="#toc1"><B>Synopsis</B></A></H2>
18 <P>
19 <B>fred_inline</B> <I>infile</I> <I>outfile</I> { <I>infile</I> <I>outfile</I> } *
21 <H2><A NAME="sect2" HREF="#toc2"><B>Description</B></A></H2>
23 <P>
24 The <I>fred</I><B>_</B><I>inline</I> program inlines the bodies of all procedures
25 with proc_syms marked with \x01Fred\x02 annotations at all
26 callsites that use such marked proc_syms directly as the
27 address of the procedure called. If the procedure body is
28 not in the current file set, no attempt is made to inline
29 that procedure.
30 <P>
31 Note that if a procedure marked \x01Fred\x02 contains a call to
32 another procedure marked \x01Fred", the order of the inlining
33 matters (i.e. whether the procedure body is inlined with
34 or without the recursive inlining). The <I>fred</I><B>_</B><I>inline</I> program
35 goes through the procedure bodies in the order the
36 file sets are listed on the command line, and within a
37 file set in the proc_iter order. It goes sequentially
38 through each procedure body. Note that this guarantees
39 termination and only limited code explosion potential, but
40 it also means that the order of procedures matters. When
41 recursive inlining is desired, the <I>leavesfirst</I> program
42 will order the procedures within a file to make this possible.
43 Note that it may be necessary to run <I>mergesuif</I>
44 before <I>leavesfirst</I> if recursive inlining is desired and
45 the procedures are spread across multiple files. It may
46 also me necessary to move them all into file or all into
47 interfile scope to allow complete freedom to order all
48 procedures relative to one another.
50 <H2><A NAME="sect3" HREF="#toc3"><B>History</B></A></H2>
52 <P>
53 This program was written by Chris Wilson.
54 <P>
56 <HR><P>
57 <A NAME="toc"><B>Table of Contents</B></A><P>
58 <UL>
59 <LI><A NAME="toc0" HREF="#sect0">Name</A></LI>
60 <LI><A NAME="toc1" HREF="#sect1">Synopsis</A></LI>
61 <LI><A NAME="toc2" HREF="#sect2">Description</A></LI>
62 <LI><A NAME="toc3" HREF="#sect3">History</A></LI>
63 </UL>
64 </BODY></HTML>