3 <!-- This HTML file has been created by texi2html 1.54
4 from suif1.texi on 28 April 1999 -->
6 <TITLE>The SUIF Version
1 Library - File Representation
</TITLE>
7 <link href=
"suif1_8.html" rel=Next
>
8 <link href=
"suif1_6.html" rel=Previous
>
9 <link href=
"suif1_toc.html" rel=ToC
>
13 <p>Go to the
<A HREF=
"suif1_1.html">first
</A>,
<A HREF=
"suif1_6.html">previous
</A>,
<A HREF=
"suif1_8.html">next
</A>,
<A HREF=
"suif1_113.html">last
</A> section,
<A HREF=
"suif1_toc.html">table of contents
</A>.
17 <H1><A NAME=
"SEC7" HREF=
"suif1_toc.html#TOC7">Representation of Source Files
</A></H1>
20 Each SUIF program has a single internal data structure, called a
21 <STRONG>file set
</STRONG>, which contains the global symbol table and a list of the
22 files being compiled. Many passes work on a single file at a time, in
23 which case the file set contains only one file and is not very useful.
24 Interprocedural passes, on the other hand, typically need to work on all
25 of the files at once. By using the file set, these interprocedural
26 passes need not resort to combining all of the code into one big source
31 A source file within a file set is represented by a
<STRONG>file set
32 entry
</STRONG>, which contains the symbol table for the file scope and the input
33 and output streams. File sets provide the mechanism to allow multiple
34 files to be read and written by a SUIF pass.
38 The symbol tables in the file set and file set entries basically form a
39 table of contents for the entire program. They contain entries for
40 every symbol and type that is declared outside of procedures. The
41 procedures and everything within them can be accessed via the procedure
42 symbols in the global symbol tables.
46 The
<TT>`fileset.h'
</TT> and
<TT>`fileset.cc'
</TT> files contain the source code
47 for the file set and file set entries.
52 <LI><A HREF=
"suif1_8.html#SEC8">File Set
</A>: The top-level of the SUIF hierarchy.
53 <LI><A HREF=
"suif1_9.html#SEC9">File Set Entries
</A>: Operations on individual source files.
57 <p>Go to the
<A HREF=
"suif1_1.html">first
</A>,
<A HREF=
"suif1_6.html">previous
</A>,
<A HREF=
"suif1_8.html">next
</A>,
<A HREF=
"suif1_113.html">last
</A> section,
<A HREF=
"suif1_toc.html">table of contents
</A>.