[llvm-commits] [llvm] r130040 - in /llvm/trunk/docs: ./ CommandGuide/ tutorial/

NAKAMURA Takumi geek4civic at gmail.com
Fri Apr 22 17:30:23 PDT 2011


Author: chapuni
Date: Fri Apr 22 19:30:22 2011
New Revision: 130040

URL: http://llvm.org/viewvc/llvm-project?rev=130040&view=rev
Log:
docs: Introduce cascading style <div> and <p> continued on <h[2-5]>.

<h2>Section Example</h2>
<div> <!-- h2+div is applied -->
<p>Section preamble.</p>

<h3>Subsection Example</h3>
<p> <!-- h3+p is applied -->
Subsection body
</p>

<!-- End of section body -->
</div>

FIXME: Care H5 better.

Modified:
    llvm/trunk/docs/BitCodeFormat.html
    llvm/trunk/docs/Bugpoint.html
    llvm/trunk/docs/CMake.html
    llvm/trunk/docs/CodeGenerator.html
    llvm/trunk/docs/CodingStandards.html
    llvm/trunk/docs/CommandGuide/index.html
    llvm/trunk/docs/CommandLine.html
    llvm/trunk/docs/CompilerWriterInfo.html
    llvm/trunk/docs/DebuggingJITedCode.html
    llvm/trunk/docs/DeveloperPolicy.html
    llvm/trunk/docs/ExceptionHandling.html
    llvm/trunk/docs/ExtendingLLVM.html
    llvm/trunk/docs/GCCFEBuildInstrs.html
    llvm/trunk/docs/GarbageCollection.html
    llvm/trunk/docs/GetElementPtr.html
    llvm/trunk/docs/GettingStarted.html
    llvm/trunk/docs/GettingStartedVS.html
    llvm/trunk/docs/GoldPlugin.html
    llvm/trunk/docs/HowToReleaseLLVM.html
    llvm/trunk/docs/HowToSubmitABug.html
    llvm/trunk/docs/LangRef.html
    llvm/trunk/docs/Lexicon.html
    llvm/trunk/docs/LinkTimeOptimization.html
    llvm/trunk/docs/MakefileGuide.html
    llvm/trunk/docs/Packaging.html
    llvm/trunk/docs/Passes.html
    llvm/trunk/docs/ProgrammersManual.html
    llvm/trunk/docs/Projects.html
    llvm/trunk/docs/SourceLevelDebugging.html
    llvm/trunk/docs/SystemLibrary.html
    llvm/trunk/docs/TableGenFundamentals.html
    llvm/trunk/docs/TestingGuide.html
    llvm/trunk/docs/UsingLibraries.html
    llvm/trunk/docs/WritingAnLLVMBackend.html
    llvm/trunk/docs/WritingAnLLVMPass.html
    llvm/trunk/docs/index.html
    llvm/trunk/docs/tutorial/LangImpl1.html
    llvm/trunk/docs/tutorial/LangImpl2.html
    llvm/trunk/docs/tutorial/LangImpl3.html
    llvm/trunk/docs/tutorial/LangImpl4.html
    llvm/trunk/docs/tutorial/LangImpl5.html
    llvm/trunk/docs/tutorial/LangImpl6.html
    llvm/trunk/docs/tutorial/LangImpl7.html
    llvm/trunk/docs/tutorial/LangImpl8.html
    llvm/trunk/docs/tutorial/OCamlLangImpl1.html
    llvm/trunk/docs/tutorial/OCamlLangImpl2.html
    llvm/trunk/docs/tutorial/OCamlLangImpl3.html
    llvm/trunk/docs/tutorial/OCamlLangImpl4.html
    llvm/trunk/docs/tutorial/OCamlLangImpl5.html
    llvm/trunk/docs/tutorial/OCamlLangImpl6.html
    llvm/trunk/docs/tutorial/OCamlLangImpl7.html
    llvm/trunk/docs/tutorial/OCamlLangImpl8.html

Modified: llvm/trunk/docs/BitCodeFormat.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/BitCodeFormat.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/BitCodeFormat.html (original)
+++ llvm/trunk/docs/BitCodeFormat.html Fri Apr 22 19:30:22 2011
@@ -50,7 +50,7 @@
 <h2><a name="abstract">Abstract</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This document describes the LLVM bitstream file format and the encoding of
 the LLVM IR into it.</p>
@@ -61,7 +61,7 @@
 <h2><a name="overview">Overview</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 What is commonly known as the LLVM bitcode file format (also, sometimes
@@ -91,7 +91,7 @@
 <h2><a name="bitstream">Bitstream Format</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 The bitstream format is literally a stream of bits, with a very simple
@@ -114,14 +114,12 @@
 used to dump and inspect arbitrary bitstreams, which is very useful for
 understanding the encoding.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="magic">Magic Numbers</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The first two bytes of a bitcode file are 'BC' (0x42, 0x43).
 The second two bytes are an application-specific magic number.  Generic
@@ -135,7 +133,7 @@
   <a name="primitives">Primitives</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 A bitstream literally consists of a stream of bits, which are read in order
@@ -146,14 +144,12 @@
 Integers</a>.
 </p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="fixedwidth">Fixed Width Integers</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Fixed-width integer values have their low bits emitted directly to the file.
    For example, a 3-bit integer value encodes 1 as 001.  Fixed width integers
@@ -168,7 +164,7 @@
   <a name="variablewidth">Variable Width Integers</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Variable-width integer (VBR) values encode values of arbitrary size,
 optimizing for the case where the values are small.  Given a 4-bit VBR field,
@@ -188,7 +184,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="char6">6-bit characters</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>6-bit characters encode common characters into a fixed 6-bit field.  They
 represent the following characters with the following 6-bit values:</p>
@@ -212,7 +208,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="wordalign">Word Alignment</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>Occasionally, it is useful to emit zero bits until the bitstream is a
 multiple of 32 bits.  This ensures that the bit position in the stream can be
@@ -220,13 +216,14 @@
 
 </div>
 
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="abbrevid">Abbreviation IDs</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 A bitstream is a sequential series of <a href="#blocks">Blocks</a> and
@@ -262,7 +259,7 @@
   <a name="blocks">Blocks</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 Blocks in a bitstream denote nested regions of the stream, and are identified by
@@ -303,12 +300,10 @@
 popped, the saved values are restored.
 </p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4><a name="ENTER_SUBBLOCK">ENTER_SUBBLOCK Encoding</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[ENTER_SUBBLOCK, blockid<sub>vbr8</sub>, newabbrevlen<sub>vbr4</sub>,
      <align32bits>, blocklen<sub>32</sub>]</tt></p>
@@ -329,7 +324,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="END_BLOCK">END_BLOCK Encoding</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[END_BLOCK, <align32bits>]</tt></p>
 
@@ -341,14 +336,14 @@
 
 </div>
 
-
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="datarecord">Data Records</a>
 </h3>
 
-<div class="doc_text">
+<div>
 <p>
 Data records consist of a record code and a number of (up to) 64-bit
 integer values.  The interpretation of the code and values is
@@ -360,12 +355,10 @@
 ASCII codes for the characters in the string.
 </p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4><a name="UNABBREV_RECORD">UNABBREV_RECORD Encoding</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[UNABBREV_RECORD, code<sub>vbr6</sub>, numops<sub>vbr6</sub>,
        op0<sub>vbr6</sub>, op1<sub>vbr6</sub>, ...]</tt></p>
@@ -391,7 +384,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="abbrev_records">Abbreviated Record Encoding</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[<abbrevid>, fields...]</tt></p>
 
@@ -412,12 +405,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="abbreviations">Abbreviations</a>
 </h3>
 
-<div class="doc_text">
+<div>
 <p>
 Abbreviations are an important form of compression for bitstreams.  The idea is
 to specify a dense encoding for a class of records once, then use that encoding
@@ -435,12 +430,11 @@
 for binary operators.  If a specific LLVM module contained no or few binary
 operators, the abbreviation does not need to be emitted.
 </p>
-</div>
 
 <!-- _______________________________________________________________________ -->
 <h4><a name="DEFINE_ABBREV">DEFINE_ABBREV  Encoding</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[DEFINE_ABBREV, numabbrevops<sub>vbr5</sub>, abbrevop0, abbrevop1,
  ...]</tt></p>
@@ -555,12 +549,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="stdblocks">Standard Blocks</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 In addition to the basic block structure and record encodings, the bitstream
@@ -569,12 +565,10 @@
 may be added.  Block IDs 0-7 are reserved for standard blocks.
 </p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4><a name="BLOCKINFO">#0 - BLOCKINFO Block</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 The <tt>BLOCKINFO</tt> block allows the description of metadata for other
@@ -623,11 +617,15 @@
 
 </div>
 
+</div>
+
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="wrapper">Bitcode Wrapper Format</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 Bitcode files for LLVM IR may optionally be wrapped in a simple wrapper
@@ -658,7 +656,7 @@
 <h2><a name="llvmir">LLVM IR Encoding</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 LLVM IR is encoded into a bitstream by defining blocks and records.  It uses
@@ -669,17 +667,17 @@
 reader is not allowed to build in any knowledge of this.
 </p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="basics">Basics</a>
 </h3>
 
+<div>
+
 <!-- _______________________________________________________________________ -->
 <h4><a name="ir_magic">LLVM IR Magic Number</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 The magic number for LLVM IR files is:
@@ -701,7 +699,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="ir_signed_vbr">Signed VBRs</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 <a href="#variablewidth">Variable Width Integer</a> encoding is an efficient way to
@@ -734,7 +732,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="ir_blocks">LLVM IR Blocks</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 LLVM IR is defined with the following blocks:
@@ -762,12 +760,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="MODULE_BLOCK">MODULE_BLOCK Contents</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>MODULE_BLOCK</tt> block (id 8) is the top-level block for LLVM
 bitcode files, and each bitcode file must contain exactly one. In
@@ -787,12 +787,10 @@
 <li><a href="#METADATA_BLOCK"><tt>METADATA_BLOCK</tt></a></li>
 </ul>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4><a name="MODULE_CODE_VERSION">MODULE_CODE_VERSION Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[VERSION, version#]</tt></p>
 
@@ -804,7 +802,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="MODULE_CODE_TRIPLE">MODULE_CODE_TRIPLE Record</a></h4>
 
-<div class="doc_text">
+<div>
 <p><tt>[TRIPLE, ...string...]</tt></p>
 
 <p>The <tt>TRIPLE</tt> record (code 2) contains a variable number of
@@ -815,7 +813,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="MODULE_CODE_DATALAYOUT">MODULE_CODE_DATALAYOUT Record</a></h4>
 
-<div class="doc_text">
+<div>
 <p><tt>[DATALAYOUT, ...string...]</tt></p>
 
 <p>The <tt>DATALAYOUT</tt> record (code 3) contains a variable number of
@@ -826,7 +824,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="MODULE_CODE_ASM">MODULE_CODE_ASM Record</a></h4>
 
-<div class="doc_text">
+<div>
 <p><tt>[ASM, ...string...]</tt></p>
 
 <p>The <tt>ASM</tt> record (code 4) contains a variable number of
@@ -837,7 +835,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="MODULE_CODE_SECTIONNAME">MODULE_CODE_SECTIONNAME Record</a></h4>
 
-<div class="doc_text">
+<div>
 <p><tt>[SECTIONNAME, ...string...]</tt></p>
 
 <p>The <tt>SECTIONNAME</tt> record (code 5) contains a variable number
@@ -852,7 +850,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="MODULE_CODE_DEPLIB">MODULE_CODE_DEPLIB Record</a></h4>
 
-<div class="doc_text">
+<div>
 <p><tt>[DEPLIB, ...string...]</tt></p>
 
 <p>The <tt>DEPLIB</tt> record (code 6) contains a variable number of
@@ -865,7 +863,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="MODULE_CODE_GLOBALVAR">MODULE_CODE_GLOBALVAR Record</a></h4>
 
-<div class="doc_text">
+<div>
 <p><tt>[GLOBALVAR, pointer type, isconst, initid, linkage, alignment, section, visibility, threadlocal]</tt></p>
 
 <p>The <tt>GLOBALVAR</tt> record (code 7) marks the declaration or
@@ -929,7 +927,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="MODULE_CODE_FUNCTION">MODULE_CODE_FUNCTION Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[FUNCTION, type, callingconv, isproto, linkage, paramattr, alignment, section, visibility, gc]</tt></p>
 
@@ -985,7 +983,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="MODULE_CODE_ALIAS">MODULE_CODE_ALIAS Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[ALIAS, alias type, aliasee val#, linkage, visibility]</tt></p>
 
@@ -1009,7 +1007,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="MODULE_CODE_PURGEVALS">MODULE_CODE_PURGEVALS Record</a></h4>
 
-<div class="doc_text">
+<div>
 <p><tt>[PURGEVALS, numvals]</tt></p>
 
 <p>The <tt>PURGEVALS</tt> record (code 10) resets the module-level
@@ -1022,7 +1020,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="MODULE_CODE_GCNAME">MODULE_CODE_GCNAME Record</a></h4>
 
-<div class="doc_text">
+<div>
 <p><tt>[GCNAME, ...string...]</tt></p>
 
 <p>The <tt>GCNAME</tt> record (code 11) contains a variable number of
@@ -1033,12 +1031,14 @@
 fields of <tt>FUNCTION</tt> records.</p>
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="PARAMATTR_BLOCK">PARAMATTR_BLOCK Contents</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>PARAMATTR_BLOCK</tt> block (id 9) contains a table of
 entries describing the attributes of function parameters. These
@@ -1052,13 +1052,10 @@
 that each is unique (i.e., no two indicies represent equivalent
 attribute lists). </p>
 
-</div>
-
-
 <!-- _______________________________________________________________________ -->
 <h4><a name="PARAMATTR_CODE_ENTRY">PARAMATTR_CODE_ENTRY Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[ENTRY, paramidx0, attr0, paramidx1, attr1...]</tt></p>
 
@@ -1099,12 +1096,14 @@
 </ul>
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="TYPE_BLOCK">TYPE_BLOCK Contents</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>TYPE_BLOCK</tt> block (id 10) contains records which
 constitute a table of type operator entries used to represent types
@@ -1119,12 +1118,10 @@
 each entry is unique (i.e., no two indicies represent structurally
 equivalent types). </p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4><a name="TYPE_CODE_NUMENTRY">TYPE_CODE_NUMENTRY Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[NUMENTRY, numentries]</tt></p>
 
@@ -1138,7 +1135,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="TYPE_CODE_VOID">TYPE_CODE_VOID Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[VOID]</tt></p>
 
@@ -1150,7 +1147,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="TYPE_CODE_FLOAT">TYPE_CODE_FLOAT Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[FLOAT]</tt></p>
 
@@ -1162,7 +1159,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="TYPE_CODE_DOUBLE">TYPE_CODE_DOUBLE Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[DOUBLE]</tt></p>
 
@@ -1174,7 +1171,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="TYPE_CODE_LABEL">TYPE_CODE_LABEL Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[LABEL]</tt></p>
 
@@ -1186,7 +1183,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="TYPE_CODE_OPAQUE">TYPE_CODE_OPAQUE Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[OPAQUE]</tt></p>
 
@@ -1199,7 +1196,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="TYPE_CODE_INTEGER">TYPE_CODE_INTEGER  Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[INTEGER, width]</tt></p>
 
@@ -1212,7 +1209,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="TYPE_CODE_POINTER">TYPE_CODE_POINTER Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[POINTER, pointee type, address space]</tt></p>
 
@@ -1232,7 +1229,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="TYPE_CODE_FUNCTION">TYPE_CODE_FUNCTION Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[FUNCTION, vararg, ignored, retty, ...paramty... ]</tt></p>
 
@@ -1256,7 +1253,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="TYPE_CODE_STRUCT">TYPE_CODE_STRUCT Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[STRUCT, ispacked, ...eltty...]</tt></p>
 
@@ -1274,7 +1271,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="TYPE_CODE_ARRAY">TYPE_CODE_ARRAY Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[ARRAY, numelts, eltty]</tt></p>
 
@@ -1291,7 +1288,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="TYPE_CODE_VECTOR">TYPE_CODE_VECTOR Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[VECTOR, numelts, eltty]</tt></p>
 
@@ -1308,7 +1305,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="TYPE_CODE_X86_FP80">TYPE_CODE_X86_FP80 Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[X86_FP80]</tt></p>
 
@@ -1320,7 +1317,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="TYPE_CODE_FP128">TYPE_CODE_FP128 Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[FP128]</tt></p>
 
@@ -1332,7 +1329,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="TYPE_CODE_PPC_FP128">TYPE_CODE_PPC_FP128 Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[PPC_FP128]</tt></p>
 
@@ -1344,7 +1341,7 @@
 <!-- _______________________________________________________________________ -->
 <h4><a name="TYPE_CODE_METADATA">TYPE_CODE_METADATA Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[METADATA]</tt></p>
 
@@ -1353,12 +1350,14 @@
 </p>
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="CONSTANTS_BLOCK">CONSTANTS_BLOCK Contents</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>CONSTANTS_BLOCK</tt> block (id 11) ...
 </p>
@@ -1371,7 +1370,7 @@
   <a name="FUNCTION_BLOCK">FUNCTION_BLOCK Contents</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>FUNCTION_BLOCK</tt> block (id 12) ...
 </p>
@@ -1394,19 +1393,17 @@
   <a name="TYPE_SYMTAB_BLOCK">TYPE_SYMTAB_BLOCK Contents</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>TYPE_SYMTAB_BLOCK</tt> block (id 13) contains entries which
 map between module-level named types and their corresponding type
 indices.
 </p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4><a name="TST_CODE_ENTRY">TST_CODE_ENTRY Record</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>[ENTRY, typeid, ...string...]</tt></p>
 
@@ -1417,13 +1414,14 @@
 </p>
 </div>
 
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="VALUE_SYMTAB_BLOCK">VALUE_SYMTAB_BLOCK Contents</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>VALUE_SYMTAB_BLOCK</tt> block (id 14) ... 
 </p>
@@ -1436,7 +1434,7 @@
   <a name="METADATA_BLOCK">METADATA_BLOCK Contents</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>METADATA_BLOCK</tt> block (id 15) ...
 </p>
@@ -1449,13 +1447,14 @@
   <a name="METADATA_ATTACHMENT">METADATA_ATTACHMENT Contents</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>METADATA_ATTACHMENT</tt> block (id 16) ...
 </p>
 
 </div>
 
+</div>
 
 <!-- *********************************************************************** -->
 <hr>

Modified: llvm/trunk/docs/Bugpoint.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/Bugpoint.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/Bugpoint.html (original)
+++ llvm/trunk/docs/Bugpoint.html Fri Apr 22 19:30:22 2011
@@ -32,7 +32,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p><tt>bugpoint</tt> narrows down the source of problems in LLVM tools and
 passes.  It can be used to debug three types of failures: optimizer crashes,
@@ -55,7 +55,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p><tt>bugpoint</tt> is designed to be a useful tool without requiring any
 hooks into the LLVM infrastructure at all.  It works with any and all LLVM
@@ -68,14 +68,12 @@
 debugging a miscompilation where each test of the program (which requires 
 executing it) takes a long time.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="autoselect">Automatic Debugger Selection</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p><tt>bugpoint</tt> reads each <tt>.bc</tt> or <tt>.ll</tt> file specified on
 the command line and links them together into a single module, called the test
@@ -108,7 +106,7 @@
   <a name="crashdebug">Crash debugger</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>If an optimizer or code generator crashes, <tt>bugpoint</tt> will try as hard
 as it can to reduce the list of passes (for optimizer crashes) and the size of
@@ -133,7 +131,7 @@
   <a name="codegendebug">Code generator debugger</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The code generator debugger attempts to narrow down the amount of code that
 is being miscompiled by the selected code generator.  To do this, it takes the
@@ -154,7 +152,7 @@
   <a name="miscompilationdebug">Miscompilation debugger</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The miscompilation debugger works similarly to the code generator debugger.
 It works by splitting the test program into two pieces, running the
@@ -166,13 +164,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="advice">Advice for using bugpoint</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <tt>bugpoint</tt> can be a remarkably useful tool, but it sometimes works in
 non-obvious ways.  Here are some hints and tips:<p>

Modified: llvm/trunk/docs/CMake.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/CMake.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/CMake.html (original)
+++ llvm/trunk/docs/CMake.html Fri Apr 22 19:30:22 2011
@@ -41,7 +41,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
   <p><a href="http://www.cmake.org/">CMake</a> is a cross-platform
     build-generator tool. CMake does not build the project, it generates
@@ -64,7 +64,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p> We use here the command-line, non-interactive CMake interface </p>
 
@@ -117,7 +117,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
   <p>This section explains basic aspects of CMake, mostly for
     explaining those options which you may need on your day-to-day
@@ -165,7 +165,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
   <p>Variables customize how the build will be generated. Options are
     boolean variables, with possible values ON/OFF. Options and
@@ -194,14 +194,12 @@
     <p><tt>cmake -DVARIABLE:TYPE=value path/to/llvm/source</tt></p>
   </div>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="freccmake">Frequently-used CMake variables</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Here are listed some of the CMake variables that are used often,
   along with a brief explanation and LLVM-specific notes. For full
@@ -244,7 +242,7 @@
   <a name="llvmvars">LLVM-specific variables</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <dl>
   <dt><b>LLVM_TARGETS_TO_BUILD</b>:STRING</dt>
@@ -357,13 +355,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="testing">Executing the test suite</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Testing is performed when the <i>check</i> target is built. For
   instance, if you are using makefiles, execute this command while on
@@ -383,7 +383,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>See <a href="http://www.vtk.org/Wiki/CMake_Cross_Compiling">this
     wiki page</a> for generic instructions on how to cross-compile
@@ -404,7 +404,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
   <p>The most difficult part of adding LLVM to the build of a project
     is to determine the set of LLVM libraries corresponding to the set
@@ -459,14 +459,12 @@
     </pre>
   </div>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="passdev">Developing LLVM pass out of source</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
   <p>It is possible to develop LLVM passes against installed LLVM.
      An example of project layout provided below:</p>
@@ -518,23 +516,23 @@
 </div>
 <!-- *********************************************************************** -->
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="specifics">Compiler/Platform specific topics</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Notes for specific compilers and/or platforms.</p>
 
-</div>
-
 <h3>
   <a name="msvc">Microsoft Visual C++</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <dl>
   <dt><b>LLVM_COMPILER_JOBS</b>:STRING</dt>
@@ -546,6 +544,8 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 
 <hr>

Modified: llvm/trunk/docs/CodeGenerator.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/CodeGenerator.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/CodeGenerator.html (original)
+++ llvm/trunk/docs/CodeGenerator.html Fri Apr 22 19:30:22 2011
@@ -132,7 +132,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The LLVM target-independent code generator is a framework that provides a
    suite of reusable components for translating the LLVM internal representation
@@ -188,14 +188,12 @@
    depend on the target-description and machine code representation classes,
    ensuring that it is portable.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
  <a name="required">Required components in the code generator</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The two pieces of the LLVM code generator are the high-level interface to the
    code generator and the set of reusable components that can be used to build
@@ -227,7 +225,7 @@
  <a name="high-level-design">The high-level design of the code generator</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The LLVM target-independent code generator is designed to support efficient
    and quality code generation for standard register-based microprocessors.
@@ -301,7 +299,7 @@
  <a name="tablegen">Using TableGen for target description</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The target description classes require a detailed description of the target
    architecture.  These target descriptions often have a large amount of common
@@ -324,13 +322,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="targetdesc">Target description classes</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The LLVM target description classes (located in the
    <tt>include/llvm/Target</tt> directory) provide an abstract description of
@@ -346,14 +346,12 @@
    <tt><a href="#targetmachine">TargetMachine</a></tt> class provides accessors
    that should be implemented by the target.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="targetmachine">The <tt>TargetMachine</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>TargetMachine</tt> class provides virtual methods that are used to
    access the target-specific implementations of the various target description
@@ -373,7 +371,7 @@
   <a name="targetdata">The <tt>TargetData</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>TargetData</tt> class is the only required target description class,
    and it is the only class that is not extensible (you cannot derived a new
@@ -389,7 +387,7 @@
   <a name="targetlowering">The <tt>TargetLowering</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>TargetLowering</tt> class is used by SelectionDAG based instruction
    selectors primarily to describe how LLVM code should be lowered to
@@ -415,7 +413,7 @@
   <a name="targetregisterinfo">The <tt>TargetRegisterInfo</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>TargetRegisterInfo</tt> class is used to describe the register file
    of the target and any interactions between the registers.</p>
@@ -449,7 +447,7 @@
   <a name="targetinstrinfo">The <tt>TargetInstrInfo</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>TargetInstrInfo</tt> class is used to describe the machine
    instructions supported by the target. It is essentially an array of
@@ -467,7 +465,7 @@
   <a name="targetframeinfo">The <tt>TargetFrameInfo</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>TargetFrameInfo</tt> class is used to provide information about the
    stack frame layout of the target. It holds the direction of stack growth, the
@@ -483,7 +481,7 @@
   <a name="targetsubtarget">The <tt>TargetSubtarget</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>TargetSubtarget</tt> class is used to provide information about the
    specific chip set being targeted.  A sub-target informs code generation of
@@ -499,7 +497,7 @@
   <a name="targetjitinfo">The <tt>TargetJITInfo</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>TargetJITInfo</tt> class exposes an abstract interface used by the
    Just-In-Time code generator to perform target-specific activities, such as
@@ -509,13 +507,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="codegendesc">Machine code description classes</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>At the high-level, LLVM code is translated to a machine specific
    representation formed out of
@@ -528,14 +528,12 @@
    SSA representation for machine code, as well as a register allocated, non-SSA
    form.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="machineinstr">The <tt>MachineInstr</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Target machine instructions are represented as instances of the
    <tt>MachineInstr</tt> class.  This class is an extremely abstract way of
@@ -576,14 +574,12 @@
 <p>Also if the first operand is a def, it is easier to <a href="#buildmi">create
    instructions</a> whose only def is the first operand.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="buildmi">Using the <tt>MachineInstrBuilder.h</tt> functions</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Machine instructions are created by using the <tt>BuildMI</tt> functions,
    located in the <tt>include/llvm/CodeGen/MachineInstrBuilder.h</tt> file.  The
@@ -634,7 +630,7 @@
   <a name="fixedregs">Fixed (preassigned) registers</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>One important issue that the code generator needs to be aware of is the
    presence of fixed registers.  In particular, there are often places in the
@@ -706,7 +702,7 @@
   <a name="ssa">Machine code in SSA form</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>MachineInstr</tt>'s are initially selected in SSA-form, and are
    maintained in SSA-form until register allocation happens.  For the most part,
@@ -719,12 +715,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="machinebasicblock">The <tt>MachineBasicBlock</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>MachineBasicBlock</tt> class contains a list of machine instructions
    (<tt><a href="#machineinstr">MachineInstr</a></tt> instances).  It roughly
@@ -741,7 +739,7 @@
   <a name="machinefunction">The <tt>MachineFunction</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>MachineFunction</tt> class contains a list of machine basic blocks
    (<tt><a href="#machinebasicblock">MachineBasicBlock</a></tt> instances).  It
@@ -754,6 +752,7 @@
 
 </div>
 
+</div>
 
 <!-- *********************************************************************** -->
 <h2>
@@ -761,7 +760,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 The MC Layer is used to represent and process code at the raw machine code
@@ -779,15 +778,12 @@
 in this manual.
 </p>
 
-</div>
-
-
 <!-- ======================================================================= -->
 <h3>
   <a name="mcstreamer">The <tt>MCStreamer</tt> API</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 MCStreamer is best thought of as an assembler API.  It is an abstract API which
@@ -821,7 +817,7 @@
   <a name="mccontext">The <tt>MCContext</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 The MCContext class is the owner of a variety of uniqued data structures at the
@@ -836,7 +832,7 @@
   <a name="mcsymbol">The <tt>MCSymbol</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 The MCSymbol class represents a symbol (aka label) in the assembly file.  There
@@ -868,7 +864,7 @@
   <a name="mcsection">The <tt>MCSection</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 The MCSection class represents an object-file specific section. It is subclassed
@@ -886,7 +882,7 @@
   <a name="mcinst">The <tt>MCInst</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 The MCInst class is a target-independent representation of an instruction.  It
@@ -904,6 +900,7 @@
 
 </div>
 
+</div>
 
 <!-- *********************************************************************** -->
 <h2>
@@ -911,20 +908,18 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This section documents the phases described in the
    <a href="#high-level-design">high-level design of the code generator</a>.
    It explains how they work and some of the rationale behind their design.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="instselect">Instruction Selection</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Instruction Selection is the process of translating LLVM code presented to
    the code generator into target-specific machine instructions.  There are
@@ -936,14 +931,12 @@
    selector to be generated from these <tt>.td</tt> files, though currently
    there are still things that require custom C++ code.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="selectiondag_intro">Introduction to SelectionDAGs</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The SelectionDAG provides an abstraction for code representation in a way
    that is amenable to instruction selection using automatic techniques
@@ -1005,7 +998,7 @@
   <a name="selectiondag_process">SelectionDAG Instruction Selection Process</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>SelectionDAG-based instruction selection consists of the following steps:</p>
 
@@ -1086,7 +1079,7 @@
   <a name="selectiondag_build">Initial SelectionDAG Construction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The initial SelectionDAG is naïvely peephole expanded from the LLVM
    input by the <tt>SelectionDAGLowering</tt> class in the
@@ -1106,7 +1099,7 @@
   <a name="selectiondag_legalize_types">SelectionDAG LegalizeTypes Phase</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The Legalize phase is in charge of converting a DAG to only use the types
    that are natively supported by the target.</p>
@@ -1139,7 +1132,7 @@
   <a name="selectiondag_legalize">SelectionDAG Legalize Phase</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The Legalize phase is in charge of converting a DAG to only use the
    operations that are natively supported by the target.</p>
@@ -1173,7 +1166,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The SelectionDAG optimization phase is run multiple times for code
    generation, immediately after the DAG is built and once after each
@@ -1207,7 +1200,7 @@
   <a name="selectiondag_select">SelectionDAG Select Phase</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The Select phase is the bulk of the target-specific code for instruction
    selection.  This phase takes a legal SelectionDAG as input, pattern matches
@@ -1368,7 +1361,7 @@
   <a name="selectiondag_sched">SelectionDAG Scheduling and Formation Phase</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The scheduling phase takes the DAG of target instructions from the selection
    phase and assigns an order.  The scheduler can pick an order depending on
@@ -1389,7 +1382,7 @@
   <a name="selectiondag_future">Future directions for the SelectionDAG</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <ol>
   <li>Optional function-at-a-time selection.</li>
@@ -1399,18 +1392,20 @@
 
 </div>
  
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="ssamco">SSA-based Machine Code Optimizations</a>
 </h3>
-<div class="doc_text"><p>To Be Written</p></div>
+<div><p>To Be Written</p></div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="liveintervals">Live Intervals</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Live Intervals are the ranges (intervals) where a variable is <i>live</i>.
    They are used by some <a href="#regalloc">register allocator</a> passes to
@@ -1418,14 +1413,12 @@
    register are live at the same point in the program (i.e., they conflict).
    When this situation occurs, one virtual register must be <i>spilled</i>.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="livevariable_analysis">Live Variable Analysis</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The first step in determining the live intervals of variables is to calculate
    the set of registers that are immediately dead after the instruction (i.e.,
@@ -1471,7 +1464,7 @@
   <a name="liveintervals_analysis">Live Intervals Analysis</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>We now have the information available to perform the live intervals analysis
    and build the live intervals themselves.  We start off by numbering the basic
@@ -1486,12 +1479,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="regalloc">Register Allocation</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <i>Register Allocation problem</i> consists in mapping a program
    <i>P<sub>v</sub></i>, that can use an unbounded number of virtual registers,
@@ -1501,15 +1496,13 @@
    accommodate all the virtual registers, some of them will have to be mapped
    into memory. These virtuals are called <i>spilled virtuals</i>.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 
 <h4>
   <a name="regAlloc_represent">How registers are represented in LLVM</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>In LLVM, physical registers are denoted by integer numbers that normally
    range from 1 to 1023. To see how this numbering is defined for a particular
@@ -1622,7 +1615,7 @@
   <a name="regAlloc_howTo">Mapping virtual registers to physical registers</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>There are two ways to map virtual registers to physical registers (or to
    memory slots). The first way, that we will call <i>direct mapping</i>, is
@@ -1672,7 +1665,7 @@
   <a name="regAlloc_twoAddr">Handling two address instructions</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>With very rare exceptions (e.g., function calls), the LLVM machine code
    instructions are three address instructions. That is, each instruction is
@@ -1708,7 +1701,7 @@
   <a name="regAlloc_ssaDecon">The SSA deconstruction phase</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>An important transformation that happens during register allocation is called
    the <i>SSA Deconstruction Phase</i>. The SSA form simplifies many analyses
@@ -1732,7 +1725,7 @@
   <a name="regAlloc_fold">Instruction folding</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p><i>Instruction folding</i> is an optimization performed during register
    allocation that removes unnecessary copy instructions. For instance, a
@@ -1769,7 +1762,7 @@
   <a name="regAlloc_builtIn">Built in register allocators</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The LLVM infrastructure provides the application developer with three
    different register allocators:</p>
@@ -1806,23 +1799,25 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="proepicode">Prolog/Epilog Code Insertion</a>
 </h3>
-<div class="doc_text"><p>To Be Written</p></div>
+<div><p>To Be Written</p></div>
 <!-- ======================================================================= -->
 <h3>
   <a name="latemco">Late Machine Code Optimizations</a>
 </h3>
-<div class="doc_text"><p>To Be Written</p></div>
+<div><p>To Be Written</p></div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="codeemit">Code Emission</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The code emission step of code generation is responsible for lowering from
 the code generator abstractions (like <a 
@@ -1881,6 +1876,7 @@
 
 </div>
 
+</div>
 
 <!-- *********************************************************************** -->
 <h2>
@@ -1888,7 +1884,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Though you're probably reading this because you want to write or maintain a
 compiler backend, LLVM also fully supports building a native assemblers too.
@@ -1897,12 +1893,10 @@
 part of the manual and repetitive data entry can be factored and shared with the
 compiler.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3 id="na_instparsing">Instruction Parsing</h3>
 
-<div class="doc_text"><p>To Be Written</p></div>
+<div><p>To Be Written</p></div>
 
 
 <!-- ======================================================================= -->
@@ -1910,7 +1904,7 @@
   Instruction Alias Processing
 </h3>
 
-<div class="doc_text">
+<div>
 <p>Once the instruction is parsed, it enters the MatchInstructionImpl function.
 The MatchInstructionImpl function performs alias processing and then does
 actual matching.</p>
@@ -1923,12 +1917,10 @@
 meets the needs of your instruction, because it will allow a more concise
 description.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>Mnemonic Aliases</h4>
 
-<div class="doc_text">
+<div>
 
 <p>The first phase of alias processing is simple instruction mnemonic
 remapping for classes of instructions which are allowed with two different
@@ -1968,7 +1960,7 @@
 <!-- _______________________________________________________________________ -->
 <h4>Instruction Aliases</h4>
 
-<div class="doc_text">
+<div>
 
 <p>The most general phase of alias processing occurs while matching is
 happening: it provides new forms for the matcher to match along with a specific
@@ -2029,15 +2021,14 @@
 
 </div>
 
-
+</div>
 
 <!-- ======================================================================= -->
 <h3 id="na_matching">Instruction Matching</h3>
 
-<div class="doc_text"><p>To Be Written</p></div>
-
-
+<div><p>To Be Written</p></div>
 
+</div>
 
 <!-- *********************************************************************** -->
 <h2>
@@ -2045,20 +2036,18 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This section of the document explains features or design decisions that are
    specific to the code generator for a particular target.  First we start
    with a table that summarizes what features are supported by each target.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="targetfeatures">Target Feature Matrix</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Note that this table does not include the C backend or Cpp backends, since
 they do not use the target independent code generator infrastructure.  It also
@@ -2229,12 +2218,10 @@
 
 </table>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4 id="feat_reliable">Is Generally Reliable</h4>
 
-<div class="doc_text">
+<div>
 <p>This box indicates whether the target is considered to be production quality.
 This indicates that the target has been used as a static compiler to
 compile large amounts of code by a variety of different people and is in
@@ -2244,7 +2231,7 @@
 <!-- _______________________________________________________________________ -->
 <h4 id="feat_asmparser">Assembly Parser</h4>
 
-<div class="doc_text">
+<div>
 <p>This box indicates whether the target supports parsing target specific .s
 files by implementing the MCAsmParser interface.  This is required for llvm-mc
 to be able to act as a native assembler and is required for inline assembly
@@ -2256,7 +2243,7 @@
 <!-- _______________________________________________________________________ -->
 <h4 id="feat_disassembler">Disassembler</h4>
 
-<div class="doc_text">
+<div>
 <p>This box indicates whether the target supports the MCDisassembler API for
 disassembling machine opcode bytes into MCInst's.</p>
 
@@ -2265,7 +2252,7 @@
 <!-- _______________________________________________________________________ -->
 <h4 id="feat_inlineasm">Inline Asm</h4>
 
-<div class="doc_text">
+<div>
 <p>This box indicates whether the target supports most popular inline assembly
 constraints and modifiers.</p>
 
@@ -2277,7 +2264,7 @@
 <!-- _______________________________________________________________________ -->
 <h4 id="feat_jit">JIT Support</h4>
 
-<div class="doc_text">
+<div>
 <p>This box indicates whether the target supports the JIT compiler through
 the ExecutionEngine interface.</p>
 
@@ -2289,7 +2276,7 @@
 <!-- _______________________________________________________________________ -->
 <h4 id="feat_objectwrite">.o File Writing</h4>
 
-<div class="doc_text">
+<div>
 
 <p>This box indicates whether the target supports writing .o files (e.g. MachO,
 ELF, and/or COFF) files directly from the target.  Note that the target also
@@ -2305,7 +2292,7 @@
 <!-- _______________________________________________________________________ -->
 <h4 id="feat_tailcall">Tail Calls</h4>
 
-<div class="doc_text">
+<div>
 
 <p>This box indicates whether the target supports guaranteed tail calls.  These
 are calls marked "<a href="LangRef.html#i_call">tail</a>" and use the fastcc
@@ -2314,15 +2301,14 @@
 
 </div>
 
-
-
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="tailcallopt">Tail call optimization</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Tail call optimization, callee reusing the stack of the caller, is currently
    supported on x86/x86-64 and PowerPC. It is performed if:</p>
@@ -2388,7 +2374,7 @@
   <a name="sibcallopt">Sibling call optimization</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Sibling call optimization is a restricted form of tail call optimization.
    Unlike tail call optimization described in the previous section, it can be
@@ -2432,20 +2418,18 @@
   <a name="x86">The X86 backend</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The X86 code generator lives in the <tt>lib/Target/X86</tt> directory.  This
    code generator is capable of targeting a variety of x86-32 and x86-64
    processors, and includes support for ISA extensions such as MMX and SSE.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="x86_tt">X86 Target Triples supported</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The following are the known target triples that are supported by the X86
    backend.  This is not an exhaustive list, and it would be useful to add those
@@ -2475,7 +2459,7 @@
 </h4>
 
 
-<div class="doc_text">
+<div>
 
 <p>The following target-specific calling conventions are known to backend:</p>
 
@@ -2494,7 +2478,7 @@
   <a name="x86_memory">Representing X86 addressing modes in MachineInstrs</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The x86 has a very flexible way of accessing memory.  It is capable of
    forming memory addresses of the following expression directly in integer
@@ -2531,7 +2515,7 @@
   <a name="x86_memory">X86 address spaces supported</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>x86 has a feature which provides
    the ability to perform loads and stores to different address spaces
@@ -2576,7 +2560,7 @@
   <a name="x86_names">Instruction naming</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>An instruction name consists of the base name, a default operand size, and a
    a character per operand with an optional special size. For example:</p>
@@ -2592,25 +2576,25 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="ppc">The PowerPC backend</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The PowerPC code generator lives in the lib/Target/PowerPC directory.  The
    code generation is retargetable to several variations or <i>subtargets</i> of
    the PowerPC ISA; including ppc32, ppc64 and altivec.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="ppc_abi">LLVM PowerPC ABI</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM follows the AIX PowerPC ABI, with two deviations. LLVM uses a PC
    relative (PIC) or static addressing for accessing global values, so no TOC
@@ -2630,7 +2614,7 @@
   <a name="ppc_frame">Frame Layout</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The size of a PowerPC frame is usually fixed for the duration of a
    function's invocation.  Since the frame is fixed size, all references
@@ -2777,7 +2761,7 @@
   <a name="ppc_prolog">Prolog/Epilog</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The llvm prolog and epilog are the same as described in the PowerPC ABI, with
    the following exceptions.  Callee saved registers are spilled after the frame
@@ -2794,12 +2778,15 @@
   <a name="ppc_dynamic">Dynamic Allocation</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p><i>TODO - More to come.</i></p>
 
 </div>
 
+</div>
+
+</div>
 
 <!-- *********************************************************************** -->
 <hr>

Modified: llvm/trunk/docs/CodingStandards.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/CodingStandards.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/CodingStandards.html (original)
+++ llvm/trunk/docs/CodingStandards.html Fri Apr 22 19:30:22 2011
@@ -88,7 +88,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This document attempts to describe a few coding standards that are being used
 in the LLVM source tree.  Although no coding standards should be regarded as
@@ -122,17 +122,21 @@
 </h2>
 <!-- *********************************************************************** -->
 
+<div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="sourceformating">Source Code Formatting</a>
 </h3>
 
+<div>
+
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="scf_commenting">Commenting</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Comments are one critical part of readability and maintainability.  Everyone
 knows they should comment, so should you.  When writing comments, write them as
@@ -141,7 +145,9 @@
 comment our code more than we do, there are a few very critical places that
 documentation is very useful:</p>
 
-<b>File Headers</b>
+<h5>File Headers</h5>
+
+<div>
 
 <p>Every source file should have a header on it that describes the basic 
 purpose of the file.  If a file does not have a header, it should not be 
@@ -184,7 +190,9 @@
 tricky is going on, a reference to the paper where it is published should be
 included, as well as any notes or "gotchas" in the code to watch out for.</p>
 
-<b>Class overviews</b>
+</div>
+
+<h5>Class overviews</h5>
 
 <p>Classes are one fundamental part of a good object oriented design.  As such,
 a class definition should have a comment block that explains what the class is
@@ -193,7 +201,9 @@
 something sane goes a long ways towards avoiding writing documentation.</p>
 
 
-<b>Method information</b>
+<h5>Method information</h5>
+
+<div>
 
 <p>Methods defined in a class (as well as any global functions) should also be
 documented properly.  A quick note about what it does and a description of the
@@ -207,12 +217,14 @@
 
 </div>
 
+</div>
+
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="scf_commentformat">Comment Formatting</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>In general, prefer C++ style (<tt>//</tt>) comments.  They take less space,
 require less typing, don't have nesting problems, etc.  There are a few cases
@@ -237,7 +249,7 @@
   <a name="scf_includes"><tt>#include</tt> Style</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Immediately after the <a href="#scf_commenting">header file comment</a> (and
 include guards if working on a header file), the <a
@@ -277,7 +289,7 @@
   <a name="scf_codewidth">Source Code Width</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Write your code to fit within 80 columns of text.  This helps those of us who
 like to print out code and look at your code in an xterm without resizing
@@ -302,7 +314,7 @@
   <a name="scf_spacestabs">Use Spaces Instead of Tabs</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>In all cases, prefer spaces to tabs in source files.  People have different
 preferred indentation levels, and different styles of indentation that they
@@ -323,7 +335,7 @@
   <a name="scf_indentation">Indent Code Consistently</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Okay, in your first year of programming you were told that indentation is
 important.  If you didn't believe and internalize this then, now is the time.
@@ -331,19 +343,21 @@
 
 </div>
 
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="compilerissues">Compiler Issues</a>
 </h3>
 
+<div>
 
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="ci_warningerrors">Treat Compiler Warnings Like Errors</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>If your code has compiler warnings in it, something is wrong — you
 aren't casting values correctly, your have "questionable" constructs in your
@@ -397,7 +411,7 @@
   <a name="ci_portable_code">Write Portable Code</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>In almost all cases, it is possible and within reason to write completely
 portable code.  If there are cases where it isn't possible to write portable
@@ -415,7 +429,7 @@
 <h4>
 <a name="ci_rtti_exceptions">Do not use RTTI or Exceptions</a>
 </h4>
-<div class="doc_text">
+<div>
 
 <p>In an effort to reduce code and executable size, LLVM does not use RTTI
 (e.g. <tt>dynamic_cast<></tt>) or exceptions.  These two language features
@@ -436,7 +450,7 @@
 <h4>
 <a name="ci_class_struct">Use of <tt>class</tt> and <tt>struct</tt> Keywords</a>
 </h4>
-<div class="doc_text">
+<div>
 
 <p>In C++, the <tt>class</tt> and <tt>struct</tt> keywords can be used almost
 interchangeably. The only difference is when they are used to declare a class:
@@ -454,12 +468,17 @@
 
 </div>
 
+</div>
+
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="styleissues">Style Issues</a>
 </h2>
 <!-- *********************************************************************** -->
 
+<div>
 
 <!-- ======================================================================= -->
 <h3>
@@ -467,13 +486,14 @@
 </h3>
 <!-- ======================================================================= -->
 
+<div>
 
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="hl_module">A Public Header File <b>is</b> a Module</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>C++ doesn't do too well in the modularity department.  There is no real
 encapsulation or data hiding (unless you use expensive protocol classes), but it
@@ -503,7 +523,7 @@
   <a name="hl_dontinclude"><tt>#include</tt> as Little as Possible</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>#include</tt> hurts compile time performance.  Don't do it unless you
 have to, especially in header files.</p>
@@ -532,7 +552,7 @@
   <a name="hl_privateheaders">Keep "Internal" Headers Private</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Many modules have a complex implementation that causes them to use more than
 one implementation (<tt>.cpp</tt>) file.  It is often tempting to put the
@@ -553,7 +573,7 @@
   <a name="hl_earlyexit">Use Early Exits and <tt>continue</tt> to Simplify Code</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>When reading code, keep in mind how much state and how many previous
 decisions have to be remembered by the reader to understand a block of code.
@@ -662,7 +682,7 @@
   <a name="hl_else_after_return">Don't use <tt>else</tt> after a <tt>return</tt></a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>For similar reasons above (reduction of indentation and easier reading),
 please do not use '<tt>else</tt>' or '<tt>else if</tt>' after something that
@@ -745,7 +765,7 @@
   <a name="hl_predicateloops">Turn Predicate Loops into Predicate Functions</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>It is very common to write small loops that just compute a boolean value.
 There are a number of ways that people commonly write these, but an example of
@@ -802,6 +822,7 @@
 
 </div>
 
+</div>
 
 <!-- ======================================================================= -->
 <h3>
@@ -809,6 +830,7 @@
 </h3>
 <!-- ======================================================================= -->
 
+<div>
 
 <!-- _______________________________________________________________________ -->
 <h4>
@@ -817,7 +839,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Poorly-chosen names can mislead the reader and cause bugs. We cannot stress
 enough how important it is to use <em>descriptive</em> names.  Pick names that
@@ -900,7 +922,7 @@
   <a name="ll_assert">Assert Liberally</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Use the "<tt>assert</tt>" macro to its fullest.  Check all of your
 preconditions and assumptions, you never know when a bug (not necessarily even
@@ -1003,7 +1025,7 @@
   <a name="ll_ns_std">Do Not Use '<tt>using namespace std</tt>'</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>In LLVM, we prefer to explicitly prefix all identifiers from the standard
 namespace with an "<tt>std::</tt>" prefix, rather than rely on
@@ -1043,7 +1065,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>If a class is defined in a header file and has a v-table (either it has 
 virtual methods or it derives from classes with virtual methods), it must 
@@ -1059,7 +1081,7 @@
   <a name="ll_end">Don't evaluate <tt>end()</tt> every time through a loop</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Because C++ doesn't have a standard "<tt>foreach</tt>" loop (though it can be
 emulated with macros and may be coming in C++'0x) we end up writing a lot of
@@ -1121,7 +1143,7 @@
   <a name="ll_iostream"><tt>#include <iostream></tt> is Forbidden</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The use of <tt>#include <iostream></tt> in library files is
 hereby <b><em>forbidden</em></b>. The primary reason for doing this is to
@@ -1156,7 +1178,7 @@
   <a name="ll_raw_ostream">Use <tt>raw_ostream</tt></a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM includes a lightweight, simple, and efficient stream implementation
 in <tt>llvm/Support/raw_ostream.h</tt>, which provides all of the common
@@ -1176,7 +1198,7 @@
   <a name="ll_avoidendl">Avoid <tt>std::endl</tt></a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>std::endl</tt> modifier, when used with <tt>iostreams</tt> outputs a
 newline to the output stream specified.  In addition to doing this, however, it
@@ -1194,6 +1216,7 @@
 
 </div>
 
+</div>
 
 <!-- ======================================================================= -->
 <h3>
@@ -1201,6 +1224,8 @@
 </h3>
 <!-- ======================================================================= -->
 
+<div>
+
 <p>This section describes preferred low-level formatting guidelines along with
 reasoning on why we prefer them.</p>
 
@@ -1209,7 +1234,7 @@
   <a name="micro_spaceparen">Spaces Before Parentheses</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>We prefer to put a space before an open parenthesis only in control flow
 statements, but not in normal function call expressions and function-like
@@ -1267,7 +1292,7 @@
   <a name="micro_preincrement">Prefer Preincrement</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Hard fast rule: Preincrement (<tt>++X</tt>) may be no slower than
 postincrement (<tt>X++</tt>) and could very well be a lot faster than it.  Use
@@ -1287,7 +1312,7 @@
   <a name="micro_namespaceindent">Namespace Indentation</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 In general, we strive to reduce indentation wherever possible.  This is useful
@@ -1375,7 +1400,7 @@
   <a name="micro_anonns">Anonymous Namespaces</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>After talking about namespaces in general, you may be wondering about
 anonymous namespaces in particular.
@@ -1455,7 +1480,9 @@
 
 </div>
 
+</div>
 
+</div>
 
 <!-- *********************************************************************** -->
 <h2>
@@ -1463,7 +1490,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>A lot of these comments and recommendations have been culled for other
 sources.  Two particularly important books for our work are:</p>

Modified: llvm/trunk/docs/CommandGuide/index.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/CommandGuide/index.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/CommandGuide/index.html (original)
+++ llvm/trunk/docs/CommandGuide/index.html Fri Apr 22 19:30:22 2011
@@ -11,7 +11,7 @@
   LLVM Command Guide
 </h1>
 
-<div class="doc_text">
+<div>
 
 <p>These documents are HTML versions of the <a href="man/man1/">man pages</a>
 for all of the LLVM tools.  These pages describe how to use the LLVM commands
@@ -28,7 +28,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <ul>
 
@@ -85,7 +85,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 <ul>
 
 <li><a href="/cmds/llvmgcc.html"><b>llvm-gcc</b></a> -
@@ -105,7 +105,7 @@
 <!-- *********************************************************************** -->
 
 
-<div class="doc_text">
+<div>
 
 <ul>
 
@@ -128,7 +128,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 <ul>
 
 <li><a href="/cmds/FileCheck.html"><b>FileCheck</b></a> -

Modified: llvm/trunk/docs/CommandLine.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/CommandLine.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/CommandLine.html (original)
+++ llvm/trunk/docs/CommandLine.html Fri Apr 22 19:30:22 2011
@@ -105,7 +105,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This document describes the CommandLine argument processing library.  It will
 show you how to use it, and what it can do.  The CommandLine library uses a
@@ -189,7 +189,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This section of the manual runs through a simple CommandLine'ification of a
 basic compiler tool.  This is intended to show you how to jump into using the
@@ -321,14 +321,12 @@
 
 <p>... indicating that an input filename is expected.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="bool">Boolean Arguments</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>In addition to input and output filenames, we would like the compiler example
 to support three boolean flags: "<tt>-f</tt>" to force writing binary output to
@@ -410,7 +408,7 @@
   <a name="alias">Argument Aliases</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>So far, the example works well, except for the fact that we need to check the
 quiet condition like this now:</p>
@@ -461,7 +459,7 @@
   possibilities</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>So far we have seen how the CommandLine library handles builtin types like
 <tt>std::string</tt>, <tt>bool</tt> and <tt>int</tt>, but how does it handle
@@ -571,7 +569,7 @@
   <a name="namedalternatives">Named Alternatives</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Another useful argument form is a named alternative style.  We shall use this
 style in our compiler to specify different debug levels that can be used.
@@ -633,7 +631,7 @@
   <a name="list">Parsing a list of options</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Now that we have the standard run-of-the-mill argument types out of the way,
 lets get a little wild and crazy.  Lets say that we want our optimizer to accept
@@ -703,7 +701,7 @@
   <a name="bits">Collecting options as a set of flags</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Instead of collecting sets of options in a list, it is also possible to
 gather information for enum values in a <b>bit vector</b>.  The representation used by
@@ -762,7 +760,7 @@
   <a name="description">Adding freeform text to help output</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>As our program grows and becomes more mature, we may decide to put summary
 information about what it does into the help output.  The help output is styled
@@ -800,6 +798,7 @@
 
 </div>
 
+</div>
 
 <!-- *********************************************************************** -->
 <h2>
@@ -807,21 +806,19 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Now that you know the basics of how to use the CommandLine library, this
 section will give you the detailed information you need to tune how command line
 options work, as well as information on more "advanced" command line option
 processing capabilities.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="positional">Positional Arguments</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Positional arguments are those arguments that are not named, and are not
 specified with a hyphen.  Positional arguments should be used when an option is
@@ -854,15 +851,12 @@
 are defined in multiple .cpp files.  The fix for this problem is simply to
 define all of your positional arguments in one .cpp file.</p>
 
-</div>
-
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="--">Specifying positional options with hyphens</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Sometimes you may want to specify a value to your positional argument that
 starts with a hyphen (for example, searching for '<tt>-foo</tt>' in a file).  At
@@ -898,7 +892,7 @@
 <h4>
   <a name="getPosition">Determining absolute position with getPosition()</a>
 </h4>
-<div class="doc_text">
+<div>
   <p>Sometimes an option can affect or modify the meaning of another option. For
   example, consider <tt>gcc</tt>'s <tt>-x LANG</tt> option. This tells
   <tt>gcc</tt> to ignore the suffix of subsequent positional arguments and force
@@ -958,7 +952,7 @@
   <a name="cl::ConsumeAfter">The <tt>cl::ConsumeAfter</tt> modifier</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>cl::ConsumeAfter</tt> <a href="#formatting">formatting option</a> is
 used to construct programs that use "interpreter style" option processing.  With
@@ -1006,12 +1000,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="storage">Internal vs External Storage</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>By default, all command line options automatically hold the value that they
 parse from the command line.  This is very convenient in the common case,
@@ -1080,7 +1076,7 @@
   <a name="attributes">Option Attributes</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>This section describes the basic attributes that you can specify on
 options.</p>
@@ -1170,7 +1166,7 @@
   <a name="modifiers">Option Modifiers</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Option modifiers are the flags and expressions that you pass into the
 constructors for <tt><a href="#cl::opt">cl::opt</a></tt> and <tt><a
@@ -1196,14 +1192,12 @@
 that are the most useful in practice and the most common, which mean that you
 usually shouldn't have to worry about these.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="hiding">Hiding an option from <tt>-help</tt> output</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>cl::NotHidden</tt>, <tt>cl::Hidden</tt>, and
 <tt>cl::ReallyHidden</tt> modifiers are used to control whether or not an option
@@ -1235,7 +1229,7 @@
   allowed</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>This group of options is used to control how many time an option is allowed
 (or required) to be specified on the command line of your program.  Specifying a
@@ -1283,7 +1277,7 @@
   <a name="valrequired">Controlling whether or not a value must be specified</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>This group of options is used to control whether or not the option allows a
 value to be present.  In the case of the CommandLine library, a value is either
@@ -1332,7 +1326,7 @@
   <a name="formatting">Controlling other formatting options</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The formatting option group is used to specify that the command line option
 has special abilities and is otherwise different from other command line
@@ -1413,7 +1407,7 @@
   <a name="misc">Miscellaneous option modifiers</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The miscellaneous option modifiers are the only flags where you can specify
 more than one flag from the set: they are not mutually exclusive.  These flags
@@ -1457,7 +1451,7 @@
   <a name="response">Response files</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Some systems, such as certain variants of Microsoft Windows and
 some older Unices have a relatively low limit on command-line
@@ -1474,13 +1468,14 @@
 
 </div>
 
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="toplevel">Top-Level Classes and Functions</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Despite all of the built-in flexibility, the CommandLine option library
 really only consists of one function (<a
@@ -1490,15 +1485,13 @@
 href="#cl::alias"><tt>cl::alias</tt></a>.  This section describes these three
 classes in detail.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="cl::ParseCommandLineOptions">The <tt>cl::ParseCommandLineOptions</tt>
   function</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>cl::ParseCommandLineOptions</tt> function is designed to be called
 directly from <tt>main</tt>, and is used to fill in the values of all of the
@@ -1519,7 +1512,7 @@
   function</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>cl::ParseEnvironmentOptions</tt> function has mostly the same effects
 as <a
@@ -1556,7 +1549,7 @@
   function</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>cl::SetVersionPrinter</tt> function is designed to be called
 directly from <tt>main</tt> and <i>before</i>
@@ -1576,7 +1569,7 @@
   <a name="cl::opt">The <tt>cl::opt</tt> class</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>cl::opt</tt> class is the class used to represent scalar command line
 options, and is the one used most of the time.  It is a templated class which
@@ -1611,7 +1604,7 @@
   <a name="cl::list">The <tt>cl::list</tt> class</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>cl::list</tt> class is the class used to represent a list of command
 line options.  It too is a templated class which can take up to three
@@ -1638,7 +1631,7 @@
   <a name="cl::bits">The <tt>cl::bits</tt> class</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>cl::bits</tt> class is the class used to represent a list of command
 line options in the form of a bit vector.  It is also a templated class which
@@ -1663,7 +1656,7 @@
   <a name="cl::alias">The <tt>cl::alias</tt> class</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>cl::alias</tt> class is a nontemplated class that is used to form
 aliases for other arguments.</p>
@@ -1686,7 +1679,7 @@
   <a name="cl::extrahelp">The <tt>cl::extrahelp</tt> class</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>cl::extrahelp</tt> class is a nontemplated class that allows extra
 help text to be printed out for the <tt>-help</tt> option.</p>
@@ -1709,12 +1702,14 @@
 </pre></div>
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="builtinparsers">Builtin parsers</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Parsers control how the string value taken from the command line is
 translated into a typed value, suitable for use in a C++ program.  By default,
@@ -1773,27 +1768,27 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="extensionguide">Extension Guide</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Although the CommandLine library has a lot of functionality built into it
 already (as discussed previously), one of its true strengths lie in its
 extensibility.  This section discusses how the CommandLine library works under
 the covers and illustrates how to do some simple, common, extensions.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="customparser">Writing a custom parser</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>One of the simplest and most common extensions is the use of a custom parser.
 As <a href="#builtinparsers">discussed previously</a>, parsers are the portion
@@ -1936,7 +1931,7 @@
   <a name="explotingexternal">Exploiting external storage</a>
 </h3>
 
-<div class="doc_text">
+<div>
   <p>Several of the LLVM libraries define static <tt>cl::opt</tt> instances that
   will automatically be included in any program that links with that library.
   This is a feature. However, sometimes it is necessary to know the value of the
@@ -1955,12 +1950,14 @@
   <a name="dynamicopts">Dynamically adding command line options</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>TODO: fill in this section</p>
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 
 <hr>

Modified: llvm/trunk/docs/CompilerWriterInfo.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/CompilerWriterInfo.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/CompilerWriterInfo.html (original)
+++ llvm/trunk/docs/CompilerWriterInfo.html Fri Apr 22 19:30:22 2011
@@ -46,10 +46,12 @@
 <h2><a name="hw">Hardware</a></h2>
 <!-- *********************************************************************** -->
 
+<div>
+
 <!-- ======================================================================= -->
 <h3><a name="alpha">Alpha</a></h3>
 
-<div class="doc_text">
+<div>
 <ul>
 <li><a
 href="http://ftp.digital.com/pub/Digital/info/semiconductor/literature/dsc-library.html">Alpha manuals</a> 
@@ -60,7 +62,7 @@
 <!-- ======================================================================= -->
 <h3><a name="arm">ARM</a></h3>
 
-<div class="doc_text">
+<div>
 <ul>
 <li><a href="http://www.arm.com/documentation/">ARM documentation</a> 
 (<a href="http://www.arm.com/documentation/ARMProcessor_Cores/">Processor
@@ -72,7 +74,7 @@
 <!-- ======================================================================= -->
 <h3><a name="ia64">Itanium (ia64)</a></h3>
 
-<div class="doc_text">
+<div>
 <ul>
 <li><a
 href="http://developer.intel.com/design/itanium2/documentation.htm">Itanium documentation</a> 
@@ -83,7 +85,7 @@
 <!-- ======================================================================= -->
 <h3><a name="mips">MIPS</a></h3>
 
-<div class="doc_text">
+<div>
 <ul>
 <li><a
 href="http://mips.com/content/Documentation/MIPSDocumentation/ProcessorArchitecture/doclibrary">MIPS
@@ -94,10 +96,12 @@
 <!-- ======================================================================= -->
 <h3><a name="ppc">PowerPC</a></h3>
 
+<div>
+
 <!-- _______________________________________________________________________ -->
 <h4>IBM - Official manuals and docs</h4>
 
-<div class="doc_text">
+<div>
 
 <ul>
 <li><a
@@ -131,7 +135,7 @@
 <!-- _______________________________________________________________________ -->
 <h4>Other documents, collections, notes</h4>
 
-<div class="doc_text">
+<div>
 
 <ul>
 <li><a href="http://penguinppc.org/dev/#library">PowerPC ABI documents</a></li>
@@ -143,10 +147,12 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3><a name="sparc">SPARC</a></h3>
 
-<div class="doc_text">
+<div>
 
 <ul>
 <li><a href="http://www.sparc.org/resource.htm">SPARC resources</a></li>
@@ -158,10 +164,12 @@
 <!-- ======================================================================= -->
 <h3><a name="x86">X86</a></h3>
 
+<div>
+
 <!-- _______________________________________________________________________ -->
 <h4>AMD - Official manuals and docs</h4>
 
-<div class="doc_text">
+<div>
 <ul>
 <li><a
 href="http://www.amd.com/us-en/Processors/TechnicalResources/0,,30_182_739,00.html">AMD processor manuals</a></li>
@@ -172,7 +180,7 @@
 <!-- _______________________________________________________________________ -->
 <h4>Intel - Official manuals and docs</h4>
 
-<div class="doc_text">
+<div>
 <ul>
 <li><a
 href="http://developer.intel.com/design/pentium4/manuals/index_new.htm">IA-32
@@ -186,17 +194,19 @@
 <!-- _______________________________________________________________________ -->
 <h4>Other x86-specific information</h4>
 
-<div class="doc_text">
+<div>
 <ul>
 <li><a href="http://www.agner.org/assem/calling_conventions.pdf">Calling
 conventions for different C++ compilers and operating systems</a></li>
 </ul>
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3><a name="other">Other relevant lists</a></h3>
 
-<div class="doc_text">
+<div>
 
 <ul>
 <li><a href="http://gcc.gnu.org/readings.html">GCC reading list</a></li>
@@ -204,14 +214,18 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="abi">ABI</a></h2>
 <!-- *********************************************************************** -->
 
+<div>
+
 <!-- ======================================================================= -->
 <h3><a name="linux">Linux</a></h3>
 
-<div class="doc_text">
+<div>
 <ol>
 <li><a href="http://www.linuxbase.org/spec/ELF/ppc64/">PowerPC 64-bit ELF ABI
 Supplement</a></li>
@@ -221,7 +235,7 @@
 <!-- ======================================================================= -->
 <h3><a name="osx">OS X</a></h3>
 
-<div class="doc_text">
+<div>
 <ol>
 <li><a
 href="http://developer.apple.com/documentation/Darwin/RuntimeArchitecture-date.html">Mach-O
@@ -232,6 +246,8 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="misc">Miscellaneous resources</a></h2>
 <!-- *********************************************************************** -->

Modified: llvm/trunk/docs/DebuggingJITedCode.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/DebuggingJITedCode.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/DebuggingJITedCode.html (original)
+++ llvm/trunk/docs/DebuggingJITedCode.html Fri Apr 22 19:30:22 2011
@@ -17,7 +17,7 @@
 <!--=========================================================================-->
 <h2><a name="example">Example usage</a></h2>
 <!--=========================================================================-->
-<div class="doc_text">
+<div>
 
 <p>In order to debug code JITed by LLVM, you need GDB 7.0 or newer, which is
 available on most modern distributions of Linux.  The version of GDB that Apple
@@ -98,7 +98,7 @@
 <!--=========================================================================-->
 <h2><a name="background">Background</a></h2>
 <!--=========================================================================-->
-<div class="doc_text">
+<div>
 
 <p>Without special runtime support, debugging dynamically generated code with
 GDB (as well as most debuggers) can be quite painful.  Debuggers generally read

Modified: llvm/trunk/docs/DeveloperPolicy.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/DeveloperPolicy.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/DeveloperPolicy.html (original)
+++ llvm/trunk/docs/DeveloperPolicy.html Fri Apr 22 19:30:22 2011
@@ -36,7 +36,7 @@
 <!--=========================================================================-->
 <h2><a name="introduction">Introduction</a></h2>
 <!--=========================================================================-->
-<div class="doc_text">
+<div>
 <p>This document contains the LLVM Developer Policy which defines the project's
    policy towards developers and their contributions. The intent of this policy
    is to eliminate miscommunication, rework, and confusion that might arise from
@@ -65,18 +65,17 @@
 <!--=========================================================================-->
 <h2><a name="policies">Developer Policies</a></h2>
 <!--=========================================================================-->
-<div class="doc_text">
+<div>
 <p>This section contains policies that pertain to frequent LLVM developers.  We
    always welcome <a href="#patches">one-off patches</a> from people who do not
    routinely contribute to LLVM, but we expect more from frequent contributors
    to keep the system as efficient as possible for everyone.  Frequent LLVM
    contributors are expected to meet the following requirements in order for
    LLVM to maintain a high standard of quality.<p>
-</div>
 
 <!-- _______________________________________________________________________ -->
 <h3><a name="informed">Stay Informed</a></h3>
-<div class="doc_text">
+<div>
 <p>Developers should stay informed by reading at least the "dev" mailing list
    for the projects you are interested in, such as 
    <a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev">llvmdev</a> for
@@ -104,7 +103,7 @@
 <!-- _______________________________________________________________________ -->
 <h3><a name="patches">Making a Patch</a></h3>
 
-<div class="doc_text">
+<div>
 <p>When making a patch for review, the goal is to make it as easy for the
    reviewer to read it as possible.  As such, we recommend that you:</p>
 
@@ -143,7 +142,7 @@
 
 <!-- _______________________________________________________________________ -->
 <h3><a name="reviews">Code Reviews</a></h3>
-<div class="doc_text">
+<div>
 <p>LLVM has a code review policy. Code review is one way to increase the quality
    of software. We generally follow these policies:</p>
 
@@ -175,7 +174,7 @@
 
 <!-- _______________________________________________________________________ -->
 <h3><a name="owners">Code Owners</a></h3>
-<div class="doc_text">
+<div>
 
 <p>The LLVM Project relies on two features of its process to maintain rapid
    development in addition to the high quality of its source base: the
@@ -226,7 +225,7 @@
 
 <!-- _______________________________________________________________________ -->
 <h3><a name="testcases">Test Cases</a></h3>
-<div class="doc_text">
+<div>
 <p>Developers are required to create test cases for any bugs fixed and any new
    features added.  Some tips for getting your testcase approved:</p>
 
@@ -259,7 +258,7 @@
 
 <!-- _______________________________________________________________________ -->
 <h3><a name="quality">Quality</a></h3>
-<div class="doc_text">
+<div>
 <p>The minimum quality standards that any change must satisfy before being
    committed to the main development branch are:</p>
 
@@ -319,7 +318,7 @@
 
 <!-- _______________________________________________________________________ -->
 <h3><a name="commitaccess">Obtaining Commit Access</a></h3>
-<div class="doc_text">
+<div>
 
 <p>We grant commit access to contributors with a track record of submitting high
    quality patches.  If you would like commit access, please send an email to
@@ -381,7 +380,7 @@
 
 <!-- _______________________________________________________________________ -->
 <h3><a name="newwork">Making a Major Change</a></h3>
-<div class="doc_text">
+<div>
 <p>When a developer begins a major new project with the aim of contributing it
    back to LLVM, s/he should inform the community with an email to
    the <a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev">llvmdev</a>
@@ -410,7 +409,7 @@
 
 <!-- _______________________________________________________________________ -->
 <h3><a name="incremental">Incremental Development</a></h3>
-<div class="doc_text">
+<div>
 <p>In the LLVM project, we do all significant changes as a series of incremental
    patches.  We have a strong dislike for huge changes or long-term development
    branches.  Long-term development branches have a number of drawbacks:</p>
@@ -471,7 +470,7 @@
 
 <!-- _______________________________________________________________________ -->
 <h3><a name="attribution">Attribution of Changes</a></h3>
-<div class="doc_text">
+<div>
 <p>We believe in correct attribution of contributions to their contributors.
    However, we do not want the source code to be littered with random
    attributions "this code written by J. Random Hacker" (this is noisy and
@@ -483,13 +482,15 @@
 <p>Overall, please do not add contributor names to the source code.</p>
 </div>
 
+</div>
+
 <!--=========================================================================-->
 <h2>
   <a name="clp">Copyright, License, and Patents</a>
 </h2>
 <!--=========================================================================-->
 
-<div class="doc_text">
+<div>
 <p>This section addresses the issues of copyright, license and patents for the
    LLVM project.  Currently, the University of Illinois is the LLVM copyright
    holder and the terms of its license to LLVM users and developers is the
@@ -501,11 +502,10 @@
    legal matters but does not provide legal advice.  We are not lawyers, please
    seek legal counsel from an attorney.</p>
 </div>
-</div>
 
 <!-- _______________________________________________________________________ -->
 <h3><a name="copyright">Copyright</a></h3>
-<div class="doc_text">
+<div>
 
 <p>The LLVM project does not require copyright assignments, which means that the
    copyright for the code in the project is held by its respective contributors
@@ -528,7 +528,7 @@
 
 <!-- _______________________________________________________________________ -->
 <h3><a name="license">License</a></h3>
-<div class="doc_text">
+<div>
 <p>We intend to keep LLVM perpetually open source and to use a liberal open
    source license. All of the code in LLVM is available under the
    <a href="http://www.opensource.org/licenses/UoI-NCSA.php">University of
@@ -583,7 +583,7 @@
 
 <!-- _______________________________________________________________________ -->
 <h3><a name="patents">Patents</a></h3>
-<div class="doc_text">
+<div>
 <p>To the best of our knowledge, LLVM does not infringe on any patents (we have
    actually removed code from LLVM in the past that was found to infringe).
    Having code in LLVM that infringes on patents would violate an important goal
@@ -599,6 +599,8 @@
    details.</p>
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <hr>
 <address>

Modified: llvm/trunk/docs/ExceptionHandling.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/ExceptionHandling.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/ExceptionHandling.html (original)
+++ llvm/trunk/docs/ExceptionHandling.html Fri Apr 22 19:30:22 2011
@@ -61,7 +61,7 @@
 <h2><a name="introduction">Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This document is the central repository for all information pertaining to
    exception handling in LLVM.  It describes the format that LLVM exception
@@ -70,14 +70,12 @@
    provides specific examples of what exception handling information is used for
    in C/C++.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="itanium">Itanium ABI Zero-cost Exception Handling</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Exception handling for most programming languages is designed to recover from
    conditions that rarely occur during general use of an application.  To that
@@ -110,7 +108,7 @@
   <a name="sjlj">Setjmp/Longjmp Exception Handling</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Setjmp/Longjmp (SJLJ) based exception handling uses LLVM intrinsics
    <a href="#llvm_eh_sjlj_setjmp"><tt>llvm.eh.sjlj.setjmp</tt></a> and
@@ -142,7 +140,7 @@
   <a name="overview">Overview</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>When an exception is thrown in LLVM code, the runtime does its best to find a
    handler suited to processing the circumstance.</p>
@@ -185,12 +183,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h2>
   <a name="codegen">LLVM Code Generation</a>
 </h2>
 
-<div class="doc_text">
+<div>
 
 <p>At the time of this writing, only C++ exception handling support is available
    in LLVM.  So the remainder of this document will be somewhat C++-centric.</p>
@@ -200,14 +200,12 @@
    we will describe the implementation of LLVM exception handling in terms of
    C++ examples.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="throw">Throw</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Languages that support exception handling typically provide a <tt>throw</tt>
    operation to initiate the exception process.  Internally, a throw operation
@@ -229,7 +227,7 @@
   <a name="try_catch">Try/Catch</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>A call within the scope of a <i>try</i> statement can potentially raise an
    exception.  In those circumstances, the LLVM C++ front-end replaces the call
@@ -317,7 +315,7 @@
   <a name="cleanups">Cleanups</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>To handle destructors and cleanups in <tt>try</tt> code, control may not run
    directly from a landing pad to the first catch.  Control may actually flow
@@ -336,7 +334,7 @@
   <a name="throw_filters">Throw Filters</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>C++ allows the specification of which exception types can be thrown from a
    function.  To represent this a top level landing pad may exist to filter out
@@ -363,7 +361,7 @@
   <a name="restrictions">Restrictions</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The semantics of the invoke instruction require that any exception that
    unwinds through an invoke call should result in a branch to the invoke's
@@ -384,25 +382,25 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h2>
   <a name="format_common_intrinsics">Exception Handling Intrinsics</a>
 </h2>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM uses several intrinsic functions (name prefixed with "llvm.eh") to
    provide exception handling information at various points in generated
    code.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h4>
   <a name="llvm_eh_exception">llvm.eh.exception</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <pre>
   i8* %<a href="#llvm_eh_exception">llvm.eh.exception</a>()
@@ -417,7 +415,7 @@
   <a name="llvm_eh_selector">llvm.eh.selector</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <pre>
   i32 %<a href="#llvm_eh_selector">llvm.eh.selector</a>(i8*, i8*, ...)
@@ -449,7 +447,7 @@
   <a name="llvm_eh_typeid_for">llvm.eh.typeid.for</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <pre>
   i32 %<a href="#llvm_eh_typeid_for">llvm.eh.typeid.for</a>(i8*)
@@ -467,7 +465,7 @@
   <a name="llvm_eh_sjlj_setjmp">llvm.eh.sjlj.setjmp</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <pre>
   i32 %<a href="#llvm_eh_sjlj_setjmp">llvm.eh.sjlj.setjmp</a>(i8*)
@@ -496,7 +494,7 @@
   <a name="llvm_eh_sjlj_longjmp">llvm.eh.sjlj.longjmp</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <pre>
   void %<a href="#llvm_eh_sjlj_longjmp">llvm.eh.sjlj.setjmp</a>(i8*)
@@ -516,7 +514,7 @@
   <a name="llvm_eh_sjlj_lsda">llvm.eh.sjlj.lsda</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <pre>
   i8* %<a href="#llvm_eh_sjlj_lsda">llvm.eh.sjlj.lsda</a>()
@@ -535,7 +533,7 @@
   <a name="llvm_eh_sjlj_callsite">llvm.eh.sjlj.callsite</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <pre>
   void %<a href="#llvm_eh_sjlj_callsite">llvm.eh.sjlj.callsite</a>(i32)
@@ -553,7 +551,7 @@
   <a name="llvm_eh_sjlj_dispatchsetup">llvm.eh.sjlj.dispatchsetup</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <pre>
   void %<a href="#llvm_eh_sjlj_dispatchsetup">llvm.eh.sjlj.dispatchsetup</a>(i32)
@@ -565,24 +563,24 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h2>
   <a name="asm">Asm Table Formats</a>
 </h2>
 
-<div class="doc_text">
+<div>
 
 <p>There are two tables that are used by the exception handling runtime to
    determine which actions should take place when an exception is thrown.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="unwind_tables">Exception Handling Frame</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>An exception handling frame <tt>eh_frame</tt> is very similar to the unwind
    frame used by dwarf debug info.  The frame contains all the information
@@ -600,7 +598,7 @@
   <a name="exception_tables">Exception Tables</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>An exception table contains information about what actions to take when an
    exception is thrown in a particular part of a function's code.  There is one
@@ -611,12 +609,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h2>
   <a name="todo">ToDo</a>
 </h2>
 
-<div class="doc_text">
+<div>
 
 <ol>
 

Modified: llvm/trunk/docs/ExtendingLLVM.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/ExtendingLLVM.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/ExtendingLLVM.html (original)
+++ llvm/trunk/docs/ExtendingLLVM.html Fri Apr 22 19:30:22 2011
@@ -36,7 +36,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>During the course of using LLVM, you may wish to customize it for your
 research project or for experimentation. At this point, you may realize that
@@ -73,7 +73,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Adding a new intrinsic function to LLVM is much easier than adding a new
 instruction.  Almost all extensions to LLVM should start as an intrinsic
@@ -135,7 +135,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>As with intrinsics, adding a new SelectionDAG node to LLVM is much easier
 than adding a new instruction.  New nodes are often added to help represent
@@ -225,7 +225,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p><span class="doc_warning">WARNING: adding instructions changes the bitcode
 format, and it will take some effort to maintain compatibility with
@@ -282,20 +282,18 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p><span class="doc_warning">WARNING: adding new types changes the bitcode
 format, and will break compatibility with currently-existing LLVM
 installations.</span> Only add new types if it is absolutely necessary.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="fund_type">Adding a fundamental type</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <ol>
 
@@ -321,7 +319,7 @@
   <a name="derived_type">Adding a derived type</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <ol>
 <li><tt>llvm/include/llvm/Type.h</tt>:
@@ -373,6 +371,8 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 
 <hr>

Modified: llvm/trunk/docs/GCCFEBuildInstrs.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/GCCFEBuildInstrs.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/GCCFEBuildInstrs.html (original)
+++ llvm/trunk/docs/GCCFEBuildInstrs.html Fri Apr 22 19:30:22 2011
@@ -27,7 +27,7 @@
 <h2><a name="instructions">Building llvm-gcc from Source</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This section describes how to acquire and build llvm-gcc 4.2, which is based
 on the GCC 4.2.1 front-end.  Supported languages are Ada, C, C++, Fortran,
@@ -70,7 +70,7 @@
 <h2><a name="ada">Building the Ada front-end</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 <p>Building with support for Ada amounts to following the directions in the
 top-level <tt>README.LLVM</tt> file, adding ",ada" to EXTRALANGS, for example:
 <tt>EXTRALANGS=,ada</tt></p>
@@ -236,7 +236,7 @@
 <h2><a name="fortran">Building the Fortran front-end</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 <p>To build with support for Fortran, follow the directions in the top-level
 <tt>README.LLVM</tt> file, adding ",fortran" to EXTRALANGS, for example:</p>
 
@@ -250,7 +250,7 @@
 <h2><a name="license">License Information</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 <p>
 The LLVM GCC frontend is licensed to you under the GNU General Public License
 and the GNU Lesser General Public License.  Please see the files COPYING and

Modified: llvm/trunk/docs/GarbageCollection.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/GarbageCollection.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/GarbageCollection.html (original)
+++ llvm/trunk/docs/GarbageCollection.html Fri Apr 22 19:30:22 2011
@@ -84,7 +84,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Garbage collection is a widely used technique that frees the programmer from
 having to know the lifetimes of heap objects, making software easier to produce
@@ -124,14 +124,12 @@
 <p>This document describes the mechanisms and interfaces provided by LLVM to
 support accurate garbage collection.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="feature">Goals and non-goals</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM's intermediate representation provides <a href="#intrinsics">garbage
 collection intrinsics</a> that offer support for a broad class of
@@ -198,13 +196,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="quickstart">Getting started</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Using a GC with LLVM implies many things, for example:</p>
 
@@ -246,14 +246,12 @@
 includes a highly portable, built-in ShadowStack code generator. It is compiled
 into <tt>llc</tt> and works even with the interpreter and C backends.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="quickstart-compiler">In your compiler</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>To turn the shadow stack on for your functions, first call:</p>
 
@@ -280,7 +278,7 @@
   <a name="quickstart-runtime">In your runtime</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The shadow stack doesn't imply a memory allocation algorithm. A semispace
 collector or building atop <tt>malloc</tt> are great places to start, and can
@@ -347,7 +345,7 @@
   <a name="shadow-stack">About the shadow stack</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Unlike many GC algorithms which rely on a cooperative code generator to
 compile stack maps, this algorithm carefully maintains a linked list of stack
@@ -372,13 +370,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="core">IR features</a><a name="intrinsics"></a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This section describes the garbage collection facilities provided by the
 <a href="LangRef.html">LLVM intermediate representation</a>. The exact behavior
@@ -390,8 +390,6 @@
 need to interface with the GC library using the facilities provided by that
 program.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="gcattr">Specifying GC code generation: <tt>gc "..."</tt></a>
@@ -401,7 +399,7 @@
   define <i>ty</i> @<i>name</i>(...) <span style="text-decoration: underline">gc "<i>name</i>"</span> { ...
 </tt></div>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>gc</tt> function attribute is used to specify the desired GC style
 to the compiler. Its programmatic equivalent is the <tt>setGC</tt> method of
@@ -426,7 +424,7 @@
   void @llvm.gcroot(i8** %ptrloc, i8* %metadata)
 </tt></div>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>llvm.gcroot</tt> intrinsic is used to inform LLVM that a stack
 variable references an object on the heap and is to be tracked for garbage
@@ -498,7 +496,7 @@
   <a name="barriers">Reading and writing references in the heap</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Some collectors need to be informed when the mutator (the program that needs
 garbage collection) either reads a pointer from or writes a pointer to a field
@@ -534,8 +532,6 @@
 calls with the corresponding <tt>load</tt> or <tt>store</tt> instruction if they
 are used.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h4>
   <a name="gcwrite">Write barrier: <tt>llvm.gcwrite</tt></a>
@@ -545,7 +541,7 @@
 void @llvm.gcwrite(i8* %value, i8* %object, i8** %derived)
 </tt></div>
 
-<div class="doc_text">
+<div>
 
 <p>For write barriers, LLVM provides the <tt>llvm.gcwrite</tt> intrinsic
 function. It has exactly the same semantics as a non-volatile <tt>store</tt> to
@@ -567,7 +563,7 @@
 i8* @llvm.gcread(i8* %object, i8** %derived)<br>
 </tt></div>
 
-<div class="doc_text">
+<div>
 
 <p>For read barriers, LLVM provides the <tt>llvm.gcread</tt> intrinsic function.
 It has exactly the same semantics as a non-volatile <tt>load</tt> from the
@@ -580,13 +576,17 @@
 
 </div>
 
+</div>
+
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="plugin">Implementing a collector plugin</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>User code specifies which GC code generation to use with the <tt>gc</tt>
 function attribute or, equivalently, with the <tt>setGC</tt> method of
@@ -666,14 +666,12 @@
 <p>It is also possible to statically link the collector plugin into tools, such
 as a language-specific compiler front-end.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="collector-algos">Overview of available features</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p><tt>GCStrategy</tt> provides a range of features through which a plugin
 may do useful work. Some of these are callbacks, some are algorithms that can
@@ -962,7 +960,7 @@
   <a name="stack-map">Computing stack maps</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM automatically computes a stack map. One of the most important features
 of a <tt>GCStrategy</tt> is to compile this information into the executable in
@@ -1018,7 +1016,7 @@
   <a name="init-roots">Initializing roots to null: <tt>InitRoots</tt></a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <blockquote><pre
 >MyGC::MyGC() {
@@ -1044,7 +1042,7 @@
     <tt>CustomReadBarriers</tt>, and <tt>CustomWriteBarriers</tt></a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>For GCs which use barriers or unusual treatment of stack roots, these
 flags allow the collector to perform arbitrary transformations of the LLVM
@@ -1133,7 +1131,7 @@
   <a name="safe-points">Generating safe points: <tt>NeededSafePoints</tt></a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM can compute four kinds of safe points:</p>
 
@@ -1197,7 +1195,7 @@
   <a name="assembly">Emitting assembly code: <tt>GCMetadataPrinter</tt></a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM allows a plugin to print arbitrary assembly code before and after the
 rest of a module's assembly code. At the end of the module, the GC can compile
@@ -1341,6 +1339,7 @@
 
 </div>
 
+</div>
 
 <!-- *********************************************************************** -->
 <h2>
@@ -1348,7 +1347,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p><a name="appel89">[Appel89]</a> Runtime Tags Aren't Necessary. Andrew
 W. Appel. Lisp and Symbolic Computation 19(7):703-705, July 1989.</p>

Modified: llvm/trunk/docs/GetElementPtr.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/GetElementPtr.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/GetElementPtr.html (original)
+++ llvm/trunk/docs/GetElementPtr.html Fri Apr 22 19:30:22 2011
@@ -61,7 +61,7 @@
 <h2><a name="intro">Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text"> 
+<div>
   <p>This document seeks to dispel the mystery and confusion surrounding LLVM's
   <a href="LangRef.html#i_getelementptr">GetElementPtr</a> (GEP) instruction.
   Questions about the wily GEP instruction are
@@ -74,19 +74,18 @@
 <!-- *********************************************************************** -->
 <h2><a name="addresses">Address Computation</a></h2>
 <!-- *********************************************************************** -->
-<div class="doc_text">
+<div>
   <p>When people are first confronted with the GEP instruction, they tend to
   relate it to known concepts from other programming paradigms, most notably C
   array indexing and field selection. GEP closely resembles C array indexing
   and field selection, however it's is a little different and this leads to
   the following questions.</p>
-</div>
 
 <!-- *********************************************************************** -->
 <h3>
   <a name="firstptr">What is the first index of the GEP instruction?</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Quick answer: The index stepping through the first operand.</p> 
   <p>The confusion with the first index usually arises from thinking about 
   the GetElementPtr instruction as if it was a C index operator. They aren't the
@@ -209,7 +208,7 @@
   <a name="extra_index">Why is the extra 0 index required?</a>
 </h3>
 <!-- *********************************************************************** -->
-<div class="doc_text">
+<div>
   <p>Quick answer: there are no superfluous indices.</p>
   <p>This question arises most often when the GEP instruction is applied to a
   global variable which is always a pointer type. For example, consider
@@ -250,7 +249,7 @@
 <h3>
   <a name="deref">What is dereferenced by GEP?</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Quick answer: nothing.</p> 
   <p>The GetElementPtr instruction dereferences nothing. That is, it doesn't
   access memory in any way. That's what the Load and Store instructions are for.
@@ -305,7 +304,7 @@
 <h3>
   <a name="lead0">Why don't GEP x,0,0,1 and GEP x,1 alias?</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Quick Answer: They compute different address locations.</p>
   <p>If you look at the first indices in these GEP
   instructions you find that they are different (0 and 1), therefore the address
@@ -334,7 +333,7 @@
 <h3>
   <a name="trail0">Why do GEP x,1,0,0 and GEP x,1 alias?</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Quick Answer: They compute the same address location.</p>
   <p>These two GEP instructions will compute the same address because indexing
   through the 0th element does not change the address. However, it does change
@@ -358,7 +357,7 @@
 <h3>
   <a name="vectors">Can GEP index into vector elements?</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>This hasn't always been forcefully disallowed, though it's not recommended.
      It leads to awkward special cases in the optimizers, and fundamental
      inconsistency in the IR. In the future, it will probably be outright
@@ -371,7 +370,7 @@
 <h3>
   <a name="addrspace">What effect do address spaces have on GEPs?</a>
 </h3>
-<div class="doc_text">
+<div>
    <p>None, except that the address space qualifier on the first operand pointer
       type always matches the address space qualifier on the result type.</p>
 
@@ -384,7 +383,7 @@
     How is GEP different from ptrtoint, arithmetic, and inttoptr?
   </a>
 </h3>
-<div class="doc_text">
+<div>
   <p>It's very similar; there are only subtle differences.</p>
 
   <p>With ptrtoint, you have to pick an integer type. One approach is to pick i64;
@@ -416,7 +415,7 @@
     How do I do this?
   </a>
 </h3>
-<div class="doc_text">
+<div>
   <p>You don't. The integer computation implied by a GEP is target-independent.
      Typically what you'll need to do is make your backend pattern-match
      expressions trees involving ADD, MUL, etc., which are what GEP is lowered
@@ -437,7 +436,7 @@
 <h3>
   <a name="vla">How does VLA addressing work with GEPs?</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>GEPs don't natively support VLAs. LLVM's type system is entirely static,
      and GEP address computations are guided by an LLVM type.</p>
 
@@ -453,16 +452,18 @@
      VLA and non-VLA indexing in the same manner.</p>
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="rules">Rules</a></h2>
 <!-- *********************************************************************** -->
-
+<div>
 <!-- *********************************************************************** -->
 
 <h3>
   <a name="bounds">What happens if an array index is out of bounds?</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>There are two senses in which an array index can be out of bounds.</p>
 
   <p>First, there's the array type which comes from the (static) type of
@@ -504,7 +505,7 @@
 <h3>
   <a name="negative">Can array indices be negative?</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Yes. This is basically a special case of array indices being out
      of bounds.</p>
 
@@ -514,7 +515,7 @@
 <h3>
   <a name="compare">Can I compare two values computed with GEPs?</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Yes. If both addresses are within the same allocated object, or 
      one-past-the-end, you'll get the comparison result you expect. If either
      is outside of it, integer arithmetic wrapping may occur, so the
@@ -529,7 +530,7 @@
     the underlying object?
   </a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Yes. There are no restrictions on bitcasting a pointer value to an arbitrary
      pointer type. The types in a GEP serve only to define the parameters for the
      underlying integer computation. They need not correspond with the actual
@@ -548,7 +549,7 @@
     Can I cast an object's address to integer and add it to null?
   </a>
 </h3>
-<div class="doc_text">
+<div>
   <p>You can compute an address that way, but if you use GEP to do the add,
      you can't use that pointer to actually access the object, unless the
      object is managed outside of LLVM.</p>
@@ -574,7 +575,7 @@
     that value to one address to compute the other address?
   </a>
 </h3>
-<div class="doc_text">
+<div>
   <p>As with arithmetic on null, You can use GEP to compute an address that
      way, but you can't use that pointer to actually access the object if you
      do, unless the object is managed outside of LLVM.</p>
@@ -588,7 +589,7 @@
 <h3>
   <a name="tbaa">Can I do type-based alias analysis on LLVM IR?</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>You can't do type-based alias analysis using LLVM's built-in type system,
      because LLVM has no restrictions on mixing types in addressing, loads or
      stores.</p>
@@ -605,7 +606,7 @@
 <h3>
   <a name="overflow">What happens if a GEP computation overflows?</a>
 </h3>
-<div class="doc_text">
+<div>
    <p>If the GEP lacks the <tt>inbounds</tt> keyword, the value is the result
       from evaluating the implied two's complement integer computation. However,
       since there's no guarantee of where an object will be allocated in the
@@ -637,7 +638,7 @@
     How can I tell if my front-end is following the rules?
   </a>
 </h3>
-<div class="doc_text">
+<div>
    <p>There is currently no checker for the getelementptr rules. Currently,
       the only way to do this is to manually check each place in your front-end
       where GetElementPtr operators are created.</p>
@@ -650,16 +651,18 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="rationale">Rationale</a></h2>
 <!-- *********************************************************************** -->
-
+<div>
 <!-- *********************************************************************** -->
 
 <h3>
   <a name="goals">Why is GEP designed this way?</a>
 </h3>
-<div class="doc_text">
+<div>
    <p>The design of GEP has the following goals, in rough unofficial
       order of priority:</p>
    <ul>
@@ -681,7 +684,7 @@
 <h3>
   <a name="i32">Why do struct member indices always use i32?</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>The specific type i32 is probably just a historical artifact, however it's
      wide enough for all practical purposes, so there's been no need to change it.
      It doesn't necessarily imply i32 address arithmetic; it's just an identifier
@@ -696,7 +699,7 @@
 <h3>
   <a name="uglygep">What's an uglygep?</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Some LLVM optimizers operate on GEPs by internally lowering them into
      more primitive integer expressions, which allows them to be combined
      with other integer expressions and/or split into multiple separate
@@ -713,11 +716,13 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="summary">Summary</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
   <p>In summary, here's some things to always remember about the GetElementPtr
   instruction:</p>
   <ol>

Modified: llvm/trunk/docs/GettingStarted.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/GettingStarted.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/GettingStarted.html (original)
+++ llvm/trunk/docs/GettingStarted.html Fri Apr 22 19:30:22 2011
@@ -75,7 +75,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Welcome to LLVM! In order to get started, you first need to know some
 basic information.</p>
@@ -107,7 +107,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Here's the short story for getting up and running quickly with LLVM:</p>
 
@@ -196,20 +196,18 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Before you begin to use the LLVM system, review the requirements given below.
 This may save you some trouble by knowing ahead of time what hardware and
 software you will need.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="hardware">Hardware</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM is known to work on the following platforms:</p>
 
@@ -373,7 +371,7 @@
 <h3>
   <a name="software">Software</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Compiling LLVM requires that you have several software packages 
   installed. The table below lists those required packages. The Package column
   is the usual name for the software package that LLVM depends on. The Version
@@ -514,7 +512,7 @@
   <a name="brokengcc">Broken versions of GCC and other tools</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM is very demanding of the host C++ compiler, and as such tends to expose
 bugs in the compiler.  In particular, several versions of GCC crash when trying
@@ -607,7 +605,7 @@
 
 </div>
 
-
+</div>
 
 <!-- *********************************************************************** -->
 <h2>
@@ -615,7 +613,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The remainder of this guide is meant to get you up and running with
 LLVM and to give you some basic information about the LLVM environment.</p>
@@ -625,14 +623,13 @@
 href="#tutorial">simple example</a> using the LLVM tool chain, and <a
 href="#links">links</a> to find more information about LLVM or to get
 help via e-mail.</p>
-</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="terminology">Terminology and Notation</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Throughout this manual, the following names are used to denote paths
 specific to the local system and working environment.  <i>These are not
@@ -669,7 +666,7 @@
   <a name="environment">Setting Up Your Environment</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 In order to compile and use LLVM, you may need to set some environment
@@ -692,7 +689,7 @@
   <a name="unpack">Unpacking the LLVM Archives</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 If you have the LLVM distribution, you will need to unpack it before you
@@ -726,7 +723,7 @@
   <a name="checkout">Checkout LLVM from Subversion</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>If you have access to our Subversion repository, you can get a fresh copy of
 the entire source code.  All you need to do is check it out from Subversion as
@@ -797,7 +794,7 @@
   <a name="git_mirror">GIT mirror</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>GIT mirrors are available for a number of LLVM subprojects. These mirrors
   sync automatically with each Subversion commit and contain all necessary
@@ -816,7 +813,7 @@
   <a name="installcf">Install the GCC Front End</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Before configuring and compiling the LLVM suite (or if you want to use just the LLVM
 GCC front end) you can optionally extract the front end from the binary distribution.
@@ -886,7 +883,7 @@
   <a name="config">Local LLVM Configuration</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
   <p>Once checked out from the Subversion repository, the LLVM suite source 
   code must be
@@ -1008,7 +1005,7 @@
   <a name="compile">Compiling the LLVM Suite Source Code</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Once you have configured LLVM, you can build it.  There are three types of
 builds:</p>
@@ -1142,7 +1139,7 @@
   <a name="cross-compile">Cross-Compiling LLVM</a>
 </h3>
 
-<div class="doc_text">
+<div>
   <p>It is possible to cross-compile LLVM itself. That is, you can create LLVM
   executables and libraries to be hosted on a platform different from the
   platform where they are build (a Canadian Cross build). To configure a
@@ -1160,7 +1157,7 @@
   <a name="objfiles">The Location of LLVM Object Files</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The LLVM build system is capable of sharing a single LLVM source tree among
 several LLVM builds.  Hence, it is possible to build LLVM for several different
@@ -1220,7 +1217,7 @@
   <a name="optionalconfig">Optional Configuration Items</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 If you're running on a Linux system that supports the "<a
@@ -1251,27 +1248,27 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="layout">Program Layout</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>One useful source of information about the LLVM source base is the LLVM <a
 href="http://www.doxygen.org/">doxygen</a> documentation available at <tt><a
 href="http://llvm.org/doxygen/">http://llvm.org/doxygen/</a></tt>.
 The following is a brief introduction to code layout:</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="examples"><tt>llvm/examples</tt></a>
 </h3>
 
-<div class="doc_text">
+<div>
   <p>This directory contains some simple examples of how to use the LLVM IR and
   JIT.</p>
 </div>
@@ -1281,7 +1278,7 @@
   <a name="include"><tt>llvm/include</tt></a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>This directory contains public header files exported from the LLVM
 library. The three main subdirectories of this directory are:</p>
@@ -1312,7 +1309,7 @@
   <a name="lib"><tt>llvm/lib</tt></a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>This directory contains most of the source files of the LLVM system. In LLVM,
 almost all code exists in libraries, making it very easy to share code among the
@@ -1381,7 +1378,7 @@
   <a name="projects"><tt>llvm/projects</tt></a>
 </h3>
 
-<div class="doc_text">
+<div>
   <p>This directory contains projects that are not strictly part of LLVM but are
   shipped with LLVM. This is also the directory where you should create your own
   LLVM-based projects. See <tt>llvm/projects/sample</tt> for an example of how
@@ -1393,7 +1390,7 @@
   <a name="runtime"><tt>llvm/runtime</tt></a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>This directory contains libraries which are compiled into LLVM bitcode and
 used when linking programs with the GCC front end.  Most of these libraries are
@@ -1410,7 +1407,7 @@
   <a name="test"><tt>llvm/test</tt></a>
 </h3>
 
-<div class="doc_text">
+<div>
   <p>This directory contains feature and regression tests and other basic sanity
   checks on the LLVM infrastructure. These are intended to run quickly and cover
   a lot of territory without being exhaustive.</p>
@@ -1421,7 +1418,7 @@
   <a name="test-suite"><tt>test-suite</tt></a>
 </h3>
 
-<div class="doc_text">
+<div>
   <p>This is not a directory in the normal llvm module; it is a separate
   Subversion
   module that must be checked out (usually to <tt>projects/test-suite</tt>). 
@@ -1440,7 +1437,7 @@
   <a name="tools"><tt>llvm/tools</tt></a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <b>tools</b> directory contains the executables built out of the
 libraries above, which form the main part of the user interface.  You can
@@ -1528,7 +1525,7 @@
   <a name="utils"><tt>llvm/utils</tt></a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>This directory contains utilities for working with LLVM source code, and some
 of the utilities are actually required as part of the build process because they
@@ -1589,13 +1586,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="tutorial">An Example Using the LLVM Tool Chain</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 <p>This section gives an example of using LLVM.  llvm-gcc3 is now obsolete,
 so we only include instructions for llvm-gcc4.
 </p>
@@ -1606,14 +1605,13 @@
 the '--emit-llvm' flag is needed to produce LLVM bitcode output. For <i>makefiles</i> and
 <i>configure</i> scripts, the CFLAGS variable needs '--emit-llvm' to produce bitcode
 output.</p>
-</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="tutorial4">Example with llvm-gcc4</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <ol>
   <li><p>First, create a simple C file, name it 'hello.c':</p>
@@ -1694,6 +1692,7 @@
 
 </div>
 
+</div>
 
 <!-- *********************************************************************** -->
 <h2>
@@ -1701,7 +1700,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>If you are having problems building or using LLVM, or if you have any other
 general questions about LLVM, please consult the <a href="FAQ.html">Frequently
@@ -1715,7 +1714,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This document is just an <b>introduction</b> on how to use LLVM to do
 some simple things... there are many more interesting and complicated things

Modified: llvm/trunk/docs/GettingStartedVS.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/GettingStartedVS.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/GettingStartedVS.html (original)
+++ llvm/trunk/docs/GettingStartedVS.html Fri Apr 22 19:30:22 2011
@@ -36,7 +36,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
   <p>Welcome to LLVM on Windows! This document only covers LLVM on Windows using
   Visual Studio, not mingw or cygwin. In order to get started, you first need to
@@ -75,20 +75,18 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
   <p>Before you begin to use the LLVM system, review the requirements given
   below.  This may save you some trouble by knowing ahead of time what hardware
   and software you will need.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="hardware"><b>Hardware</b></a>
 </h3>
 
-<div class="doc_text">
+<div>
 
   <p>Any system that can adequately run Visual Studio .NET 2005 SP1 is fine.
   The LLVM source tree and object files, libraries and executables will consume
@@ -98,7 +96,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="software"><b>Software</b></a></h3>
-<div class="doc_text">
+<div>
 
   <p>You will need Visual Studio .NET 2005 SP1 or higher.  The VS2005 SP1
   beta and the normal VS2005 still have bugs that are not completely
@@ -118,13 +116,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="quickstart"><b>Getting Started</b></a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Here's the short story for getting up and running quickly with LLVM:</p>
 
@@ -234,7 +234,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <ol>
   <li><p>First, create a simple C file, name it 'hello.c':</p>
@@ -324,7 +324,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>If you are having problems building or using LLVM, or if you have any other
 general questions about LLVM, please consult the <a href="FAQ.html">Frequently
@@ -338,7 +338,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This document is just an <b>introduction</b> to how to use LLVM to do
 some simple things... there are many more interesting and complicated things

Modified: llvm/trunk/docs/GoldPlugin.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/GoldPlugin.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/GoldPlugin.html (original)
+++ llvm/trunk/docs/GoldPlugin.html Fri Apr 22 19:30:22 2011
@@ -23,7 +23,7 @@
 <!--=========================================================================-->
 <h2><a name="introduction">Introduction</a></h2>
 <!--=========================================================================-->
-<div class="doc_text">
+<div>
   <p>Building with link time optimization requires cooperation from the
 system linker. LTO support on Linux systems requires that you use
 the <a href="http://sourceware.org/binutils">gold linker</a> which supports
@@ -40,7 +40,7 @@
 <!--=========================================================================-->
 <h2><a name="build">How to build it</a></h2>
 <!--=========================================================================-->
-<div class="doc_text">
+<div>
   <p>You need to have gold with plugin support and build the LLVMgold
 plugin. Check whether you have gold running <tt>/usr/bin/ld -v</tt>. It will
 report “GNU gold” or else &#8220GNU ld” if not. If you have
@@ -74,7 +74,7 @@
 <!--=========================================================================-->
 <h2><a name="usage">Usage</a></h2>
 <!--=========================================================================-->
-<div class="doc_text">
+<div>
   <p>The linker takes a <tt>-plugin</tt> option that points to the path of
   the plugin <tt>.so</tt> file. To find out what link command <tt>gcc</tt>
   would run in a given situation, run <tt>gcc -v <em>[...]</em></tt> and look
@@ -95,14 +95,13 @@
   own gold, be sure to install the <tt>ar</tt> and <tt>nm-new</tt> you built to
   <tt>/usr/bin</tt>.
   <p>
-</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="example1">Example of link time optimization</a>
 </h3>
 
-<div class="doc_text">
+<div>
   <p>The following example shows a worked example of the gold plugin mixing
   LLVM bitcode and native code.
 <pre class="doc_code">
@@ -149,6 +148,8 @@
   example</a> gold does not currently eliminate foo4.</p>
 </div>
 
+</div>
+
 <!--=========================================================================-->
 <h2>
   <a name="lto_autotools">
@@ -156,7 +157,7 @@
   </a>
 </h2>
 <!--=========================================================================-->
-<div class="doc_text">
+<div>
   <p>Once your system <tt>ld</tt>, <tt>ar</tt> and <tt>nm</tt> all support LLVM
   bitcode, everything is in place for an easy to use LTO build of autotooled
   projects:</p>
@@ -195,7 +196,7 @@
 <!--=========================================================================-->
 <h2><a name="licensing">Licensing</a></h2>
 <!--=========================================================================-->
-<div class="doc_text">
+<div>
   <p>Gold is licensed under the GPLv3. LLVMgold uses the interface file
 <tt>plugin-api.h</tt> from gold which means that the resulting LLVMgold.so
 binary is also GPLv3. This can still be used to link non-GPLv3 programs just

Modified: llvm/trunk/docs/HowToReleaseLLVM.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/HowToReleaseLLVM.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/HowToReleaseLLVM.html (original)
+++ llvm/trunk/docs/HowToReleaseLLVM.html Fri Apr 22 19:30:22 2011
@@ -26,7 +26,7 @@
 <h2><a name="introduction">Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This document contains information about successfully releasing LLVM —
    including subprojects: e.g., <tt>llvm-gcc</tt> and <tt>clang</tt> — to
@@ -38,7 +38,7 @@
 <!-- *********************************************************************** -->
 <h2><a name="process">Release Timeline</a></h2>
 <!-- *********************************************************************** -->
-<div class="doc_text">
+<div>
 
 <p>LLVM is released on a time based schedule — roughly every 6 months. We
    do not normally have dot releases because of the nature of LLVM's incremental
@@ -79,7 +79,7 @@
 <h2><a name="process">Release Process</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <ol>
   <li><a href="#release-admin">Release Administrative Tasks</a>
@@ -119,12 +119,10 @@
   </li>
 </ol>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3><a name="release-admin">Release Administrative Tasks</a></h3>
 
-<div class="doc_text">
+<div>
 
 <p>This section describes a few administrative tasks that need to be done for
    the release process to begin. Specifically, it involves:</p>
@@ -135,12 +133,10 @@
   <li>Tagging release candidates for the release team to begin testing</li>
 </ul>
 
-</div>
-
 <!-- ======================================================================= -->
 <h4><a name="branch">Create Release Branch</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>Branch the Subversion trunk using the following procedure:</p>
 
@@ -200,7 +196,7 @@
 <!-- ======================================================================= -->
 <h4><a name="verchanges">Update LLVM Version</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>After creating the LLVM release branch, update the release branches'
    <tt>autoconf</tt> and <tt>configure.ac</tt> versions from '<tt>X.Ysvn</tt>'
@@ -216,7 +212,7 @@
 <!-- ======================================================================= -->
 <h4><a name="dist">Build the LLVM Release Candidates</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>Create release candidates for <tt>llvm</tt>, <tt>llvm-gcc</tt>,
    <tt>clang</tt>, and the LLVM <tt>test-suite</tt> by tagging the branch with
@@ -268,10 +264,12 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3><a name="release-build">Building the Release</a></h3>
 
-<div class="doc_text">
+<div>
 
 <p>The builds of <tt>llvm</tt>, <tt>llvm-gcc</tt>, and <tt>clang</tt>
    <em>must</em> be free of errors and warnings in Debug, Release+Asserts, and
@@ -287,12 +285,10 @@
   <tr align="left"><td>Release</td><td><tt>ENABLE_OPTIMIZED=1 DISABLE_ASSERTIONS=1</tt></td></tr>
 </table>
 
-</div>
-
 <!-- ======================================================================= -->
 <h4><a name="build">Build LLVM</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>Build <tt>Debug</tt>, <tt>Release+Asserts</tt>, and <tt>Release</tt> versions
    of <tt>llvm</tt> on all supported platforms. Directions to build
@@ -304,7 +300,7 @@
 <!-- ======================================================================= -->
 <h4><a name="llvmgccbin">Build the LLVM GCC Binary Distribution</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>Creating the <tt>llvm-gcc</tt> binary distribution (Release/Optimized)
    requires performing the following steps for each supported platform:</p>
@@ -331,7 +327,7 @@
 <!-- ======================================================================= -->
 <h4><a name="clangbin">Build Clang Binary Distribution</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>Creating the <tt>clang</tt> binary distribution
    (Debug/Release+Asserts/Release) requires performing the following steps for
@@ -352,7 +348,7 @@
 <!-- ======================================================================= -->
 <h4><a name="target-build">Target Specific Build Details</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>The table below specifies which compilers are used for each Arch/OS
    combination when qualifying the build of <tt>llvm</tt>, <tt>llvm-gcc</tt>,
@@ -371,10 +367,12 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3><a name="release-qualify">Building the Release</a></h3>
 
-<div class="doc_text">
+<div>
 
 <p>A release is qualified when it has no regressions from the previous release
    (or baseline). Regressions are related to correctness first and performance
@@ -390,12 +388,10 @@
    criteria, but these are the criteria which we found to be most important and
    which must be satisfied before a release can go out</b></p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h4><a name="llvm-qualify">Qualify LLVM</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM is qualified when it has a clean test run without a front-end. And it
    has no regressions when using either <tt>llvm-gcc</tt> or <tt>clang</tt> with
@@ -406,7 +402,7 @@
 <!-- ======================================================================= -->
 <h4><a name="llvmgcc-qualify">Qualify LLVM-GCC</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>LLVM-GCC</tt> is qualified when front-end specific tests in the
    <tt>llvm</tt> regression test suite all pass and there are no regressions in
@@ -419,7 +415,7 @@
 <!-- ======================================================================= -->
 <h4><a name="clang-qualify">Qualify Clang</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>Clang</tt> is qualified when front-end specific tests in the 
    <tt>llvm</tt> dejagnu test suite all pass, clang's own test suite passes
@@ -430,7 +426,7 @@
 <!-- ======================================================================= -->
 <h4><a name="targets">Specific Target Qualification Details</a></h4>
 
-<div class="doc_text">
+<div>
 
 <table>
   <tr><th>Architecture</th><th>OS</th><th>llvm-gcc baseline</th><th>clang baseline</th><th>tests</th></tr>
@@ -444,9 +440,11 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3><a name="commTest">Community Testing</a></h3>
-<div class="doc_text">
+<div>
 
 <p>Once all testing has been completed and appropriate bugs filed, the release
    candidate tarballs are put on the website and the LLVM community is
@@ -484,7 +482,7 @@
 <!-- ======================================================================= -->
 <h3><a name="release-patch">Release Patch Rules</a></h3>
 
-<div class="doc_text">
+<div>
 
 <p>Below are the rules regarding patching the release branch:</p>
 
@@ -508,19 +506,16 @@
 <!-- ======================================================================= -->
 <h3><a name="release-final">Release Final Tasks</a></h3>
 
-<div class="doc_text">
+<div>
 
 <p>The final stages of the release process involves tagging the "final" release
    branch, updating documentation that refers to the release, and updating the
    demo page.</p>
 
-</div>
-
-
 <!-- ======================================================================= -->
 <h4><a name="updocs">Update Documentation</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>Review the documentation and ensure that it is up to date. The "Release
    Notes" must be updated to reflect new features, bug fixes, new known issues,
@@ -534,7 +529,7 @@
 <!-- ======================================================================= -->
 <h4><a name="tag">Tag the LLVM Final Release</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>Tag the final release sources using the following procedure:</p>
 
@@ -556,20 +551,20 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3><a name="updemo">Update the LLVM Demo Page</a></h3>
 
-<div class="doc_text">
+<div>
 
 <p>The LLVM demo page must be updated to use the new release. This consists of
    using the new <tt>llvm-gcc</tt> binary and building LLVM.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h4><a name="webupdates">Update the LLVM Website</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>The website must be updated before the release announcement is sent out. Here
    is what to do:</p>
@@ -605,12 +600,16 @@
 <!-- ======================================================================= -->
 <h4><a name="announce">Announce the Release</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>Have Chris send out the release announcement when everything is finished.</p>
 
 </div>
 
+</div>
+
+</div>
+
 <!-- *********************************************************************** -->
 <hr>
 <address>

Modified: llvm/trunk/docs/HowToSubmitABug.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/HowToSubmitABug.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/HowToSubmitABug.html (original)
+++ llvm/trunk/docs/HowToSubmitABug.html Fri Apr 22 19:30:22 2011
@@ -42,7 +42,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>If you're working with LLVM and run into a bug, we definitely want to know
 about it.  This document describes what you can do to increase the odds of
@@ -81,7 +81,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>More often than not, bugs in the compiler cause it to crash—often due
 to an assertion failure of some sort. The most important
@@ -109,14 +109,12 @@
 
 </ul>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="front-end">Front-end bugs</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>If the problem is in the front-end, you should re-run the same
 <tt>llvm-gcc</tt> command that resulted in the crash, but add the
@@ -141,7 +139,7 @@
   <a name="ct_optimizer">Compile-time optimization bugs</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>If you find that a bug crashes in the optimizer, compile your test-case to a
 <tt>.bc</tt> file by passing "<tt><b>-emit-llvm -O0 -c -o foo.bc</b></tt>".
@@ -175,7 +173,7 @@
   <a name="ct_codegen">Code generator bugs</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>If you find a bug that crashes llvm-gcc in the code generator, compile your
 source file to a .bc file by passing "<tt><b>-emit-llvm -c -o foo.bc</b></tt>"
@@ -207,13 +205,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="miscompilations">Miscompilations</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>If llvm-gcc successfully produces an executable, but that executable doesn't
 run right, this is either a bug in the code or a bug in the
@@ -246,7 +246,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Similarly to debugging incorrect compilation by mis-behaving passes, you can
 debug incorrect code generation by either LLC or the JIT, using

Modified: llvm/trunk/docs/LangRef.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/LangRef.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/LangRef.html (original)
+++ llvm/trunk/docs/LangRef.html Fri Apr 22 19:30:22 2011
@@ -324,7 +324,7 @@
 <h2><a name="abstract">Abstract</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This document is a reference manual for the LLVM assembly language. LLVM is
    a Static Single Assignment (SSA) based representation that provides type
@@ -338,7 +338,7 @@
 <h2><a name="introduction">Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The LLVM code representation is designed to be used in three different forms:
    as an in-memory compiler IR, as an on-disk bitcode representation (suitable
@@ -359,14 +359,12 @@
    variable is never accessed outside of the current function, allowing it to
    be promoted to a simple SSA value instead of a memory location.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="wellformed">Well-Formedness</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>It is important to note that this document describes 'well formed' LLVM
    assembly language.  There is a difference between what the parser accepts and
@@ -386,13 +384,15 @@
 
 </div>
 
+</div>
+
 <!-- Describe the typesetting conventions here. -->
 
 <!-- *********************************************************************** -->
 <h2><a name="identifiers">Identifiers</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>LLVM identifiers come in two basic types: global and local. Global
    identifiers (functions, global variables) begin with the <tt>'@'</tt>
@@ -479,13 +479,13 @@
 <!-- *********************************************************************** -->
 <h2><a name="highlevel">High Level Structure</a></h2>
 <!-- *********************************************************************** -->
-
+<div>
 <!-- ======================================================================= -->
 <h3>
   <a name="modulestructure">Module Structure</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM programs are composed of "Module"s, each of which is a translation unit
    of the input programs.  Each module consists of functions, global variables,
@@ -535,7 +535,7 @@
   <a name="linkage">Linkage Types</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>All Global Variables and Functions have one of the following types of
    linkage:</p>
@@ -684,7 +684,7 @@
   <a name="callingconv">Calling Conventions</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM <a href="#functionstructure">functions</a>, <a href="#i_call">calls</a>
    and <a href="#i_invoke">invokes</a> can all have an optional calling
@@ -757,7 +757,7 @@
   <a name="visibility">Visibility Styles</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>All Global Variables and Functions have one of the following visibility
    styles:</p>
@@ -791,7 +791,7 @@
   <a name="namedtypes">Named Types</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM IR allows you to specify name aliases for certain types.  This can make
    it easier to read the IR and make the IR more condensed (particularly when
@@ -822,7 +822,7 @@
   <a name="globalvars">Global Variables</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Global variables define regions of memory allocated at compilation time
    instead of run-time.  Global variables may optionally be initialized, may
@@ -890,7 +890,7 @@
   <a name="functionstructure">Functions</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM function definitions consist of the "<tt>define</tt>" keyword, an
    optional <a href="#linkage">linkage type</a>, an optional
@@ -953,7 +953,7 @@
   <a name="aliasstructure">Aliases</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Aliases act as "second name" for the aliasee value (which can be either
    function, global variable, another alias or bitcast of global value). Aliases
@@ -972,7 +972,7 @@
   <a name="namedmetadatastructure">Named Metadata</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Named metadata is a collection of metadata. <a href="#metadata">Metadata
    nodes</a> (but not metadata strings) are the only valid operands for
@@ -995,7 +995,7 @@
   <a name="paramattrs">Parameter Attributes</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The return type and each parameter of a function type may have a set of
    <i>parameter attributes</i> associated with them. Parameter attributes are
@@ -1106,7 +1106,7 @@
   <a name="gc">Garbage Collector Names</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Each function may specify a garbage collector name, which is simply a
    string:</p>
@@ -1126,7 +1126,7 @@
   <a name="fnattrs">Function Attributes</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Function attributes are set to communicate additional information about a
    function. Function attributes are considered to be part of the function, not
@@ -1249,7 +1249,7 @@
   <a name="moduleasm">Module-Level Inline Assembly</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Modules may contain "module-level inline asm" blocks, which corresponds to
    the GCC "file scope inline asm" blocks.  These blocks are internally
@@ -1275,7 +1275,7 @@
   <a name="datalayout">Data Layout</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>A module may specify a target specific data layout string that specifies how
    data is to be laid out in memory. The syntax for the data layout is
@@ -1387,7 +1387,7 @@
   <a name="pointeraliasing">Pointer Aliasing Rules</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Any memory access must be done through a pointer value associated
 with an address range of the memory access, otherwise the behavior
@@ -1451,7 +1451,7 @@
   <a name="volatile">Volatile Memory Accesses</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Certain memory accesses, such as <a href="#i_load"><tt>load</tt></a>s, <a
 href="#i_store"><tt>store</tt></a>s, and <a
@@ -1464,11 +1464,13 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="typesystem">Type System</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The LLVM type system is one of the most important features of the
    intermediate representation.  Being typed enables a number of optimizations
@@ -1478,14 +1480,12 @@
    and transformations that are not feasible to perform on normal three address
    code representations.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="t_classifications">Type Classifications</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The types fall into a few useful classifications:</p>
 
@@ -1546,19 +1546,17 @@
   <a name="t_primitive">Primitive Types</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The primitive types are the fundamental building blocks of the LLVM
    system.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="t_integer">Integer Type</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Overview:</h5>
 <p>The integer type is a very simple type that simply specifies an arbitrary
@@ -1596,7 +1594,7 @@
   <a name="t_floating">Floating Point Types</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <table>
   <tbody>
@@ -1616,7 +1614,7 @@
   <a name="t_x86mmx">X86mmx Type</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Overview:</h5>
 <p>The x86mmx type represents a value held in an MMX register on an x86 machine.  The operations allowed on it are quite limited:  parameters and return values, load and store, and bitcast.  User-specified MMX instructions are represented as intrinsic or asm calls with arguments and/or results of this type.  There are no arrays, vectors or constants of this type.</p>
@@ -1633,7 +1631,7 @@
   <a name="t_void">Void Type</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Overview:</h5>
 <p>The void type does not represent any value and has no size.</p>
@@ -1650,7 +1648,7 @@
   <a name="t_label">Label Type</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Overview:</h5>
 <p>The label type represents code labels.</p>
@@ -1667,7 +1665,7 @@
   <a name="t_metadata">Metadata Type</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Overview:</h5>
 <p>The metadata type represents embedded metadata. No derived types may be
@@ -1681,13 +1679,14 @@
 
 </div>
 
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="t_derived">Derived Types</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The real power in LLVM comes from the derived types in the system.  This is
    what allows a programmer to represent arrays, functions, pointers, and other
@@ -1697,14 +1696,12 @@
    of another array.</p>
 
    
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="t_aggregate">Aggregate Types</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Aggregate Types are a subset of derived types that can contain multiple
   member types. <a href="#t_array">Arrays</a>,
@@ -1718,7 +1715,7 @@
   <a name="t_array">Array Type</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Overview:</h5>
 <p>The array type is a very simple derived type that arranges elements
@@ -1778,7 +1775,7 @@
   <a name="t_function">Function Type</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Overview:</h5>
 <p>The function type can be thought of as a function signature.  It consists of
@@ -1833,7 +1830,7 @@
   <a name="t_struct">Structure Type</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Overview:</h5>
 <p>The structure type is used to represent a collection of data members together
@@ -1873,7 +1870,7 @@
   <a name="t_pstruct">Packed Structure Type</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Overview:</h5>
 <p>The packed structure type is used to represent a collection of data members
@@ -1912,7 +1909,7 @@
   <a name="t_pointer">Pointer Type</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Overview:</h5>
 <p>The pointer type is used to specify memory locations.
@@ -1958,7 +1955,7 @@
   <a name="t_vector">Vector Type</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Overview:</h5>
 <p>A vector type is a simple derived type that represents a vector of elements.
@@ -1999,7 +1996,7 @@
   <a name="t_opaque">Opaque Type</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Overview:</h5>
 <p>Opaque types are used to represent unknown types in the system.  This
@@ -2022,12 +2019,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="t_uprefs">Type Up-references</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <h5>Overview:</h5>
 <p>An "up reference" allows you to refer to a lexically enclosing type without
@@ -2070,23 +2069,23 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="constants">Constants</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>LLVM has several different basic types of constants.  This section describes
    them all and their syntax.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="simpleconstants">Simple Constants</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <dl>
   <dt><b>Boolean constants</b></dt>
@@ -2144,7 +2143,7 @@
 <a name="complexconstants">Complex Constants</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Complex constants are a (potentially recursive) combination of simple
    constants and smaller complex constants.</p>
@@ -2198,7 +2197,7 @@
   <a name="globalconstants">Global Variable and Function Addresses</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The addresses of <a href="#globalvars">global variables</a>
    and <a href="#functionstructure">functions</a> are always implicitly valid
@@ -2220,7 +2219,7 @@
   <a name="undefvalues">Undefined Values</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The string '<tt>undef</tt>' can be used anywhere a constant is expected, and
    indicates that the user of the value may receive an unspecified bit-pattern.
@@ -2363,7 +2362,7 @@
   <a name="trapvalues">Trap Values</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Trap values are similar to <a href="#undefvalues">undef values</a>, however
    instead of representing an unspecified bit pattern, they represent the
@@ -2491,7 +2490,7 @@
   <a name="blockaddress">Addresses of Basic Blocks</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p><b><tt>blockaddress(@function, %block)</tt></b></p>
 
@@ -2520,7 +2519,7 @@
   <a name="constantexprs">Constant Expressions</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Constant expressions are used to allow expressions involving other constants
    to be used as constants.  Constant expressions may be of
@@ -2646,16 +2645,18 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="othervalues">Other Values</a></h2>
 <!-- *********************************************************************** -->
-
+<div>
 <!-- ======================================================================= -->
 <h3>
 <a name="inlineasm">Inline Assembler Expressions</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM supports inline assembler expressions (as opposed
    to <a href="#moduleasm"> Module-Level Inline Assembly</a>) through the use of
@@ -2704,13 +2705,12 @@
    documented here.  Constraints on what can be done (e.g. duplication, moving,
    etc need to be documented).  This is probably best done by reference to
    another document that covers inline asm from a holistic perspective.</p>
-</div>
 
 <h4>
 <a name="inlineasm_md">Inline Asm Metadata</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The call instructions that wrap inline asm nodes may have a "!srcloc" MDNode
    attached to it that contains a list of constant integers.  If present, the
@@ -2731,12 +2731,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="metadata">Metadata Nodes and Metadata Strings</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM IR allows metadata to be attached to instructions in the program that
    can convey extra information about the code to the optimizers and code
@@ -2778,13 +2780,14 @@
 
 </div>
 
+</div>
 
 <!-- *********************************************************************** -->
 <h2>
   <a name="intrinsic_globals">Intrinsic Global Variables</a>
 </h2>
 <!-- *********************************************************************** -->
-
+<div>
 <p>LLVM has a number of "magic" global variables that contain data that affect
 code generation or other IR semantics.  These are documented here.  All globals
 of this sort should have a section specified as "<tt>llvm.metadata</tt>".  This
@@ -2796,7 +2799,7 @@
 <a name="intg_used">The '<tt>llvm.used</tt>' Global Variable</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>@llvm.used</tt> global is an array with i8* element type which has <a
 href="#linkage_appending">appending linkage</a>.  This array contains a list of
@@ -2833,7 +2836,7 @@
   </a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>@llvm.compiler.used</tt> directive is the same as the
 <tt>@llvm.used</tt> directive, except that it only prevents the compiler from
@@ -2851,7 +2854,7 @@
 <a name="intg_global_ctors">The '<tt>llvm.global_ctors</tt>' Global Variable</a>
 </h3>
 
-<div class="doc_text">
+<div>
 <pre>
 %0 = type { i32, void ()* }
 @llvm.global_ctors = appending global [1 x %0] [%0 { i32 65535, void ()* @ctor }]
@@ -2866,7 +2869,7 @@
 <a name="intg_global_dtors">The '<tt>llvm.global_dtors</tt>' Global Variable</a>
 </h3>
 
-<div class="doc_text">
+<div>
 <pre>
 %0 = type { i32, void ()* }
 @llvm.global_dtors = appending global [1 x %0] [%0 { i32 65535, void ()* @dtor }]
@@ -2877,12 +2880,13 @@
 
 </div>
 
+</div>
 
 <!-- *********************************************************************** -->
 <h2><a name="instref">Instruction Reference</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The LLVM instruction set consists of several different classifications of
    instructions: <a href="#terminators">terminator
@@ -2891,14 +2895,12 @@
    <a href="#memoryops">memory instructions</a>, and
    <a href="#otherops">other instructions</a>.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="terminators">Terminator Instructions</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>As mentioned <a href="#functionstructure">previously</a>, every basic block
    in a program ends with a "Terminator" instruction, which indicates which
@@ -2916,14 +2918,12 @@
    '<a href="#i_unwind"><tt>unwind</tt></a>' instruction, and the
    '<a href="#i_unreachable"><tt>unreachable</tt></a>' instruction.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="i_ret">'<tt>ret</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -2973,7 +2973,7 @@
   <a name="i_br">'<tt>br</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3016,7 +3016,7 @@
    <a name="i_switch">'<tt>switch</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3071,7 +3071,7 @@
    <a name="i_indirectbr">'<tt>indirectbr</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3119,7 +3119,7 @@
   <a name="i_invoke">'<tt>invoke</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3209,7 +3209,7 @@
   <a name="i_unwind">'<tt>unwind</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3241,7 +3241,7 @@
   <a name="i_unreachable">'<tt>unreachable</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3259,12 +3259,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="binaryops">Binary Operations</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Binary operators are used to do most of the computation in a program.  They
    require two operands of the same type, execute an operation on them, and
@@ -3274,14 +3276,12 @@
 
 <p>There are several different binary operators:</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="i_add">'<tt>add</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3326,7 +3326,7 @@
   <a name="i_fadd">'<tt>fadd</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3356,7 +3356,7 @@
    <a name="i_sub">'<tt>sub</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3408,7 +3408,7 @@
    <a name="i_fsub">'<tt>fsub</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3444,7 +3444,7 @@
   <a name="i_mul">'<tt>mul</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3494,7 +3494,7 @@
   <a name="i_fmul">'<tt>fmul</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3524,7 +3524,7 @@
   <a name="i_udiv">'<tt>udiv</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3565,7 +3565,7 @@
   <a name="i_sdiv">'<tt>sdiv</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3608,7 +3608,7 @@
   <a name="i_fdiv">'<tt>fdiv</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3638,7 +3638,7 @@
   <a name="i_urem">'<tt>urem</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3676,7 +3676,7 @@
   <a name="i_srem">'<tt>srem</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3727,7 +3727,7 @@
   <a name="i_frem">'<tt>frem</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3754,12 +3754,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="bitwiseops">Bitwise Binary Operations</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Bitwise binary operators are used to do various forms of bit-twiddling in a
    program.  They are generally very efficient instructions and can commonly be
@@ -3767,14 +3769,12 @@
    same type, execute an operation on them, and produce a single value.  The
    resulting value is the same type as its operands.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="i_shl">'<tt>shl</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3825,7 +3825,7 @@
   <a name="i_lshr">'<tt>lshr</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3872,7 +3872,7 @@
   <a name="i_ashr">'<tt>ashr</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3919,7 +3919,7 @@
   <a name="i_and">'<tt>and</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -3980,7 +3980,7 @@
   <a name="i_or">'<tt>or</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4043,7 +4043,7 @@
   <a name="i_xor">'<tt>xor</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4103,12 +4103,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="vectorops">Vector Operations</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM supports several instructions to represent vector operations in a
    target-independent manner.  These instructions cover the element-access and
@@ -4117,14 +4119,12 @@
    will want to use target-specific intrinsics to take full advantage of a
    specific target.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
    <a name="i_extractelement">'<tt>extractelement</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4160,7 +4160,7 @@
    <a name="i_insertelement">'<tt>insertelement</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4196,7 +4196,7 @@
    <a name="i_shufflevector">'<tt>shufflevector</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4239,24 +4239,24 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="aggregateops">Aggregate Operations</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM supports several instructions for working with
   <a href="#t_aggregate">aggregate</a> values.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
    <a name="i_extractvalue">'<tt>extractvalue</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4298,7 +4298,7 @@
    <a name="i_insertvalue">'<tt>insertvalue</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4332,27 +4332,26 @@
 
 </div>
 
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="memoryops">Memory Access and Addressing Operations</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>A key design point of an SSA-based representation is how it represents
    memory.  In LLVM, no memory locations are in SSA form, which makes things
    very simple.  This section describes how to read, write, and allocate
    memory in LLVM.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="i_alloca">'<tt>alloca</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4403,7 +4402,7 @@
   <a name="i_load">'<tt>load</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4462,7 +4461,7 @@
   <a name="i_store">'<tt>store</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4524,7 +4523,7 @@
    <a name="i_getelementptr">'<tt>getelementptr</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4650,25 +4649,25 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="convertops">Conversion Operations</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The instructions in this category are the conversion instructions (casting)
    which all take a single operand and a type. They perform various bit
    conversions on the operand.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
    <a name="i_trunc">'<tt>trunc .. to</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4708,7 +4707,7 @@
    <a name="i_zext">'<tt>zext .. to</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4748,7 +4747,7 @@
    <a name="i_sext">'<tt>sext .. to</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4787,7 +4786,7 @@
    <a name="i_fptrunc">'<tt>fptrunc .. to</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4825,7 +4824,7 @@
    <a name="i_fpext">'<tt>fpext .. to</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4862,7 +4861,7 @@
    <a name="i_fptoui">'<tt>fptoui .. to</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4900,7 +4899,7 @@
    <a name="i_fptosi">'<tt>fptosi .. to</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4939,7 +4938,7 @@
    <a name="i_uitofp">'<tt>uitofp .. to</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -4976,7 +4975,7 @@
    <a name="i_sitofp">'<tt>sitofp .. to</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -5012,7 +5011,7 @@
    <a name="i_ptrtoint">'<tt>ptrtoint .. to</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -5050,7 +5049,7 @@
    <a name="i_inttoptr">'<tt>inttoptr .. to</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -5088,7 +5087,7 @@
    <a name="i_bitcast">'<tt>bitcast .. to</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -5127,24 +5126,24 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="otherops">Other Operations</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The instructions in this category are the "miscellaneous" instructions, which
    defy better classification.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="i_icmp">'<tt>icmp</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -5247,7 +5246,7 @@
   <a name="i_fcmp">'<tt>fcmp</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -5368,7 +5367,7 @@
   <a name="i_phi">'<tt>phi</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -5416,7 +5415,7 @@
    <a name="i_select">'<tt>select</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -5459,7 +5458,7 @@
   <a name="i_call">'<tt>call</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -5568,7 +5567,7 @@
   <a name="i_va_arg">'<tt>va_arg</tt>' Instruction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -5609,11 +5608,15 @@
 
 </div>
 
+</div>
+
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="intrinsics">Intrinsic Functions</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>LLVM supports the notion of an "intrinsic function".  These functions have
    well known names and semantics and are required to follow certain
@@ -5656,14 +5659,12 @@
 <p>To learn how to add an intrinsic function, please see the
    <a href="ExtendingLLVM.html">Extending LLVM Guide</a>.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="int_varargs">Variable Argument Handling Intrinsics</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Variable argument support is defined in LLVM with
    the <a href="#i_va_arg"><tt>va_arg</tt></a> instruction and these three
@@ -5705,15 +5706,13 @@
 declare void @llvm.va_end(i8*)
 </pre>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="int_va_start">'<tt>llvm.va_start</tt>' Intrinsic</a>
 </h4>
 
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -5743,7 +5742,7 @@
  <a name="int_va_end">'<tt>llvm.va_end</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -5774,7 +5773,7 @@
   <a name="int_va_copy">'<tt>llvm.va_copy</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -5800,12 +5799,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="int_gc">Accurate Garbage Collection Intrinsics</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM support for <a href="GarbageCollection.html">Accurate Garbage
 Collection</a> (GC) requires the implementation and generation of these
@@ -5820,14 +5821,12 @@
 <p>The garbage collection intrinsics only operate on objects in the generic
    address space (address space zero).</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="int_gcroot">'<tt>llvm.gcroot</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -5858,7 +5857,7 @@
   <a name="int_gcread">'<tt>llvm.gcread</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -5890,7 +5889,7 @@
   <a name="int_gcwrite">'<tt>llvm.gcwrite</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -5917,24 +5916,24 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="int_codegen">Code Generator Intrinsics</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>These intrinsics are provided by LLVM to expose special features that may
    only be implemented with code generator support.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="int_returnaddress">'<tt>llvm.returnaddress</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -5969,7 +5968,7 @@
   <a name="int_frameaddress">'<tt>llvm.frameaddress</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -6003,7 +6002,7 @@
   <a name="int_stacksave">'<tt>llvm.stacksave</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -6033,7 +6032,7 @@
   <a name="int_stackrestore">'<tt>llvm.stackrestore</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -6058,7 +6057,7 @@
   <a name="int_prefetch">'<tt>llvm.prefetch</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -6091,7 +6090,7 @@
   <a name="int_pcmarker">'<tt>llvm.pcmarker</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -6122,7 +6121,7 @@
   <a name="int_readcyclecounter">'<tt>llvm.readcyclecounter</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -6144,26 +6143,26 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="int_libc">Standard C Library Intrinsics</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM provides intrinsics for a few important standard C library functions.
    These intrinsics allow source-language front-ends to pass information about
    the alignment of the pointer arguments to the code generator, providing
    opportunity for more efficient code generation.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="int_memcpy">'<tt>llvm.memcpy</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use <tt>llvm.memcpy</tt> on any
@@ -6217,7 +6216,7 @@
   <a name="int_memmove">'<tt>llvm.memmove</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use llvm.memmove on any integer bit
@@ -6273,7 +6272,7 @@
   <a name="int_memset">'<tt>llvm.memset.*</tt>' Intrinsics</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use llvm.memset on any integer bit
@@ -6323,7 +6322,7 @@
   <a name="int_sqrt">'<tt>llvm.sqrt.*</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use <tt>llvm.sqrt</tt> on any
@@ -6361,7 +6360,7 @@
   <a name="int_powi">'<tt>llvm.powi.*</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use <tt>llvm.powi</tt> on any
@@ -6397,7 +6396,7 @@
   <a name="int_sin">'<tt>llvm.sin.*</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use <tt>llvm.sin</tt> on any
@@ -6431,7 +6430,7 @@
   <a name="int_cos">'<tt>llvm.cos.*</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use <tt>llvm.cos</tt> on any
@@ -6465,7 +6464,7 @@
   <a name="int_pow">'<tt>llvm.pow.*</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use <tt>llvm.pow</tt> on any
@@ -6495,24 +6494,24 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="int_manip">Bit Manipulation Intrinsics</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM provides intrinsics for a few important bit manipulation operations.
    These allow efficient code generation for some algorithms.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="int_bswap">'<tt>llvm.bswap.*</tt>' Intrinsics</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic function. You can use bswap on any integer
@@ -6547,7 +6546,7 @@
   <a name="int_ctpop">'<tt>llvm.ctpop.*</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use llvm.ctpop on any integer bit
@@ -6579,7 +6578,7 @@
   <a name="int_ctlz">'<tt>llvm.ctlz.*</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use <tt>llvm.ctlz</tt> on any
@@ -6613,7 +6612,7 @@
   <a name="int_cttz">'<tt>llvm.cttz.*</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use <tt>llvm.cttz</tt> on any
@@ -6642,17 +6641,17 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="int_overflow">Arithmetic with Overflow Intrinsics</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM provides intrinsics for some arithmetic with overflow operations.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="int_sadd_overflow">
@@ -6660,7 +6659,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use <tt>llvm.sadd.with.overflow</tt>
@@ -6708,7 +6707,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use <tt>llvm.uadd.with.overflow</tt>
@@ -6755,7 +6754,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use <tt>llvm.ssub.with.overflow</tt>
@@ -6803,7 +6802,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use <tt>llvm.usub.with.overflow</tt>
@@ -6851,7 +6850,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use <tt>llvm.smul.with.overflow</tt>
@@ -6900,7 +6899,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use <tt>llvm.umul.with.overflow</tt>
@@ -6941,12 +6940,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="int_fp16">Half Precision Floating Point Intrinsics</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Half precision floating point is a storage-only format. This means that it is
    a dense encoding (in memory) but does not support computation in the
@@ -6960,7 +6961,6 @@
    float if needed, then converted to i16 with
    <a href="#int_convert_to_fp16"><tt>llvm.convert.to.fp16</tt></a>, then
    storing as an i16 value.</p>
-</div>
 
 <!-- _______________________________________________________________________ -->
 <h4>
@@ -6969,7 +6969,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -7006,7 +7006,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -7036,12 +7036,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="int_debugger">Debugger Intrinsics</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The LLVM debugger intrinsics (which all start with <tt>llvm.dbg.</tt>
    prefix), are described in
@@ -7055,7 +7057,7 @@
   <a name="int_eh">Exception Handling Intrinsics</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The LLVM exception handling intrinsics (which all start with
    <tt>llvm.eh.</tt> prefix), are described in
@@ -7069,7 +7071,7 @@
   <a name="int_trampoline">Trampoline Intrinsic</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>This intrinsic makes it possible to excise one parameter, marked with
    the <a href="#nest"><tt>nest</tt></a> attribute, from a function.
@@ -7095,8 +7097,6 @@
 <p>The call <tt>%val = call i32 %fp(i32 %x, i32 %y)</tt> is then equivalent
    to <tt>%val = call i32 %f(i8* %nval, i32 %x, i32 %y)</tt>.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="int_it">
@@ -7104,7 +7104,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -7141,12 +7141,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="int_atomics">Atomic Operations and Synchronization Intrinsics</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>These intrinsic functions expand the "universal IR" of LLVM to represent
    hardware constructs for atomic operations and memory synchronization.  This
@@ -7166,14 +7168,12 @@
    No one model or paradigm should be selected above others unless the hardware
    itself ubiquitously does so.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="int_memory_barrier">'<tt>llvm.memory.barrier</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <h5>Syntax:</h5>
 <pre>
   declare void @llvm.memory.barrier(i1 <ll>, i1 <ls>, i1 <sl>, i1 <ss>, i1 <device>)
@@ -7245,7 +7245,7 @@
   <a name="int_atomic_cmp_swap">'<tt>llvm.atomic.cmp.swap.*</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use <tt>llvm.atomic.cmp.swap</tt> on
@@ -7305,7 +7305,7 @@
   <a name="int_atomic_swap">'<tt>llvm.atomic.swap.*</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <h5>Syntax:</h5>
 
 <p>This is an overloaded intrinsic. You can use <tt>llvm.atomic.swap</tt> on any
@@ -7362,7 +7362,7 @@
   <a name="int_atomic_load_add">'<tt>llvm.atomic.load.add.*</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use <tt>llvm.atomic.load.add</tt> on
@@ -7411,7 +7411,7 @@
   <a name="int_atomic_load_sub">'<tt>llvm.atomic.load.sub.*</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use <tt>llvm.atomic.load.sub</tt> on
@@ -7476,7 +7476,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>These are overloaded intrinsics. You can
@@ -7567,7 +7567,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>These are overloaded intrinsics. You can use <tt>llvm.atomic.load_max</tt>,
@@ -7638,25 +7638,24 @@
 
 </div>
 
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="int_memorymarkers">Memory Use Markers</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>This class of intrinsics exists to information about the lifetime of memory
    objects and ranges where variables are immutable.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="int_lifetime_start">'<tt>llvm.lifetime.start</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -7686,7 +7685,7 @@
   <a name="int_lifetime_end">'<tt>llvm.lifetime.end</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -7715,7 +7714,7 @@
   <a name="int_invariant_start">'<tt>llvm.invariant.start</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -7743,7 +7742,7 @@
   <a name="int_invariant_end">'<tt>llvm.invariant.end</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -7765,24 +7764,24 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="int_general">General Intrinsics</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>This class of intrinsics is designed to be generic and has no specific
    purpose.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="int_var_annotation">'<tt>llvm.var.annotation</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -7810,7 +7809,7 @@
   <a name="int_annotation">'<tt>llvm.annotation.*</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <p>This is an overloaded intrinsic. You can use '<tt>llvm.annotation</tt>' on
@@ -7846,7 +7845,7 @@
   <a name="int_trap">'<tt>llvm.trap</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -7871,7 +7870,7 @@
   <a name="int_stackprotector">'<tt>llvm.stackprotector</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -7905,7 +7904,7 @@
   <a name="int_objectsize">'<tt>llvm.objectsize</tt>' Intrinsic</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <h5>Syntax:</h5>
 <pre>
@@ -7935,6 +7934,10 @@
 
 </div>
 
+</div>
+
+</div>
+
 <!-- *********************************************************************** -->
 <hr>
 <address>

Modified: llvm/trunk/docs/Lexicon.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/Lexicon.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/Lexicon.html (original)
+++ llvm/trunk/docs/Lexicon.html Fri Apr 22 19:30:22 2011
@@ -14,7 +14,7 @@
 <!-- *********************************************************************** -->
 <h2>Table Of Contents</h2>
 <!-- *********************************************************************** -->
-<div class="doc_text">
+<div>
   <table>
     <tr><th colspan="8"><b>- <a href="#A">A</a> -</b></th></tr>
     <tr>
@@ -85,9 +85,10 @@
 <!-- *********************************************************************** -->
 <h2>Definitions</h2>
 <!-- *********************************************************************** -->
+<div>
 <!-- _______________________________________________________________________ -->
 <h3><a name="A">- A -</a></h3>
-<div class="doc_text">
+<div>
   <dl>
     <dt><a name="ADCE"><b>ADCE</b></a></dt>
     <dd>Aggressive Dead Code Elimination</dd>
@@ -95,7 +96,7 @@
 </div>
 <!-- _______________________________________________________________________ -->
 <h3><a name="B">- B -</a></h3>
-<div class="doc_text">
+<div>
   <dl>
     <dt><a name="BURS"><b>BURS</b></a></dt>
     <dd>Bottom Up Rewriting System—A method of instruction selection for
@@ -105,7 +106,7 @@
 </div>
 <!-- _______________________________________________________________________ -->
 <h3><a name="C">- C -</a></h3>
-<div class="doc_text">
+<div>
   <dl>
     <dt><a name="CSE"><b>CSE</b></a></dt>
     <dd>Common Subexpression Elimination. An optimization that removes common
@@ -117,7 +118,7 @@
 </div>
 <!-- _______________________________________________________________________ -->
 <h3><a name="D">- D -</a></h3>
-<div class="doc_text">
+<div>
   <dl>
     <dt><a name="DAG"><b>DAG</b></a></dt>
     <dd>Directed Acyclic Graph</dd>
@@ -137,7 +138,7 @@
 </div>
 <!-- _______________________________________________________________________ -->
 <h3><a name="G">- G -</a></h3>
-<div class="doc_text">
+<div>
   <dl>
     <dt><a name="GC"><b>GC</b></a></dt>
     <dd>Garbage Collection. The practice of using reachability analysis instead
@@ -146,7 +147,7 @@
 </div>
 <!-- _______________________________________________________________________ -->
 <h3><a name="H">- H -</a></h3>
-<div class="doc_text">
+<div>
   <dl>
     <dt><a name="Heap"><b>Heap</b></a></dt>
     <dd>In garbage collection, the region of memory which is managed using
@@ -155,7 +156,7 @@
 </div>
 <!-- _______________________________________________________________________ -->
 <h3><a name="I">- I -</a></h3>
-<div class="doc_text">
+<div>
   <dl>
     <dt><a name="IPA"><b>IPA</b></a></dt>
     <dd>Inter-Procedural Analysis. Refers to any variety of code analysis that
@@ -170,7 +171,7 @@
 </div>
 <!-- _______________________________________________________________________ -->
 <h3><a name="L">- L -</a></h3>
-<div class="doc_text">
+<div>
   <dl>
     <dt><a name="LCSSA"><b>LCSSA</b></a></dt>
     <dd>Loop-Closed Static Single Assignment Form</dd>
@@ -184,7 +185,7 @@
 </div>
 <!-- _______________________________________________________________________ -->
 <h3><a name="M">- M -</a></h3>
-<div class="doc_text">
+<div>
   <dl>
     <dt><a name="MC"><b>MC</b></a></dt>
     <dd>Machine Code</dd>
@@ -192,7 +193,7 @@
 </div>
 <!-- _______________________________________________________________________ -->
 <h3><a name="O">- O -</a></h3>
-<div class="doc_text">
+<div>
   <dl>
     <dt><a name="Object_Pointer"><b>Object Pointer</b></a></dt>
     <dd>A pointer to an object such that the garbage collector is able to trace
@@ -203,7 +204,7 @@
 
 <!-- _______________________________________________________________________ -->
 <h3><a name="P">- P -</a></h3>
-<div class="doc_text">
+<div>
   <dl>
     <dt><a name="PRE"><b>PRE</b></a></dt>
     <dd>Partial Redundancy Elimination</dd>
@@ -212,7 +213,7 @@
 
 <!-- _______________________________________________________________________ -->
 <h3><a name="R">- R -</a></h3>
-<div class="doc_text">
+<div>
   <dl>
   	<dt><a name="RAUW"><b>RAUW</b></a></dt> <dd>An abbreviation for Replace
   	All Uses With. The functions User::replaceUsesOfWith(), 
@@ -235,7 +236,7 @@
 
 <!-- _______________________________________________________________________ -->
 <h3><a name="S">- S -</a></h3>
-<div class="doc_text">
+<div>
   <dl>
     <dt><a name="Safe_Point"><b>Safe Point</b></a></dt>
     <dd>In garbage collection, it is necessary to identify <a href="#Root">stack
@@ -261,6 +262,8 @@
     function.</dd>
   </dl>
 </div>
+
+</div>
 <!-- *********************************************************************** -->
 <hr>
 <address> <a href="http://jigsaw.w3.org/css-validator/check/referer"><img

Modified: llvm/trunk/docs/LinkTimeOptimization.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/LinkTimeOptimization.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/LinkTimeOptimization.html (original)
+++ llvm/trunk/docs/LinkTimeOptimization.html Fri Apr 22 19:30:22 2011
@@ -41,7 +41,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 <p>
 LLVM features powerful intermodular optimizations which can be used at link 
 time.  Link Time Optimization (LTO) is another name for intermodular optimization 
@@ -55,7 +55,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 <p>
 The LLVM Link Time Optimizer provides complete transparency, while doing 
 intermodular optimization, in the compiler tool chain. Its main goal is to let 
@@ -69,14 +69,13 @@
 in other models. The linker input allows the optimizer to avoid relying on 
 conservative escape analysis.
 </p>
-</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="example1">Example of link time optimization</a>
 </h3>
 
-<div class="doc_text">
+<div>
   <p>The following example illustrates the advantages of LTO's integrated
   approach and clean interface. This example requires a system linker which
   supports LTO through the interface described in this document.  Here,
@@ -149,7 +148,7 @@
   <a name="alternative_approaches">Alternative Approaches</a>
 </h3>
 
-<div class="doc_text">
+<div>
   <dl>
     <dt><b>Compiler driver invokes link time optimizer separately.</b></dt>
     <dd>In this model the link time optimizer is not able to take advantage of 
@@ -175,12 +174,14 @@
   </dl>
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="multiphase">Multi-phase communication between libLTO and linker</a>
 </h2>
 
-<div class="doc_text">
+<div>
   <p>The linker collects information about symbol defininitions and uses in 
   various link objects which is more accurate than any information collected 
   by other tools during typical build cycles.  The linker collects this 
@@ -192,14 +193,13 @@
   Our goal is to take advantage of tight integration between the linker and 
   the optimizer by sharing this information during various linking phases.
 </p>
-</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="phase1">Phase 1 : Read LLVM Bitcode Files</a>
 </h3>
 
-<div class="doc_text">
+<div>
   <p>The linker first reads all object files in natural order and collects 
   symbol information. This includes native object files as well as LLVM bitcode 
   files.  To minimize the cost to the linker in the case that all .o files
@@ -223,7 +223,7 @@
   <a name="phase2">Phase 2 : Symbol Resolution</a>
 </h3>
 
-<div class="doc_text">
+<div>
   <p>In this stage, the linker resolves symbols using global symbol table. 
   It may report undefined symbol errors, read archive members, replace 
   weak symbols, etc.  The linker is able to do this seamlessly even though it 
@@ -236,7 +236,7 @@
 <h3>
   <a name="phase3">Phase 3 : Optimize Bitcode Files</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>After symbol resolution, the linker tells the LTO shared object which
   symbols are needed by native object files.  In the example above, the linker 
   reports that only <tt>foo1()</tt> is used by native object files using 
@@ -252,7 +252,7 @@
   <a name="phase4">Phase 4 : Symbol Resolution after optimization</a>
 </h3>
 
-<div class="doc_text">
+<div>
   <p>In this phase, the linker reads optimized a native object file and 
   updates the internal global symbol table to reflect any changes. The linker 
   also collects information about any changes in use of external symbols by 
@@ -264,12 +264,14 @@
   bitcode files.</p>
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
 <a name="lto">libLTO</a>
 </h2>
 
-<div class="doc_text">
+<div>
   <p><tt>libLTO</tt> is a shared object that is part of the LLVM tools, and 
   is intended for use by a linker. <tt>libLTO</tt> provides an abstract C 
   interface to use the LLVM interprocedural optimizer without exposing details 
@@ -278,14 +280,13 @@
   be possible for a completely different compilation technology to provide
   a different libLTO that works with their object files and the standard
   linker tool.</p>
-</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="lto_module_t">lto_module_t</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>A non-native object file is handled via an <tt>lto_module_t</tt>.  
 The following functions allow the linker to check if a file (on disk
@@ -329,7 +330,7 @@
   <a name="lto_code_gen_t">lto_code_gen_t</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Once the linker has loaded each non-native object files into an
 <tt>lto_module_t</tt>, it can request libLTO to process them all and
@@ -371,6 +372,8 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 
 <hr>

Modified: llvm/trunk/docs/MakefileGuide.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/MakefileGuide.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/MakefileGuide.html (original)
+++ llvm/trunk/docs/MakefileGuide.html Fri Apr 22 19:30:22 2011
@@ -80,7 +80,7 @@
 <h2><a name="introduction">Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
   <p>This document provides <em>usage</em> information about the LLVM makefile 
   system. While loosely patterned after the BSD makefile system, LLVM has taken 
   a departure from BSD in order to implement additional features needed by LLVM.
@@ -102,17 +102,16 @@
 <h2><a name="general">General Concepts</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
   <p>The LLVM Makefile System is the component of LLVM that is responsible for
   building the software, testing it,  generating distributions, checking those
   distributions, installing and uninstalling, etc. It consists of a several
   files throughout the source tree. These files and other general concepts are
   described in this section.</p>
-</div>
 
 <!-- ======================================================================= -->
 <h3><a name="projects">Projects</a></h3>
-<div class="doc_text">
+<div>
   <p>The LLVM Makefile System is quite generous. It not only builds its own
   software, but it can build yours too. Built into the system is knowledge of
   the <tt>llvm/projects</tt> directory. Any directory under <tt>projects</tt>
@@ -130,7 +129,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="varvalues">Variable Values</a></h3>
-<div class="doc_text">
+<div>
   <p>To use the makefile system, you simply create a file named 
   <tt>Makefile</tt> in your directory and declare values for certain variables. 
   The variables and values that you select determine what the makefile system
@@ -140,15 +139,14 @@
 
 <!-- ======================================================================= -->
 <h3><a name="including">Including Makefiles</a></h3>
-<div class="doc_text">
+<div>
   <p>Setting variables alone is not enough. You must include into your Makefile
   additional files that provide the rules of the LLVM Makefile system. The 
   various files involved are described in the sections that follow.</p>
-</div>
 
 <!-- ======================================================================= -->
 <h4><a name="Makefile">Makefile</a></h4>
-<div class="doc_text">
+<div>
   <p>Each directory to participate in the build needs to have a file named
   <tt>Makefile</tt>. This is the file first read by <tt>make</tt>. It has three
   sections:</p>
@@ -164,7 +162,7 @@
 
 <!-- ======================================================================= -->
 <h4><a name="Makefile.common">Makefile.common</a></h4>
-<div class="doc_text">
+<div>
   <p>Every project must have a <tt>Makefile.common</tt> file at its top source 
   directory. This file serves three purposes:</p>
   <ol>
@@ -182,7 +180,7 @@
 
 <!-- ======================================================================= -->
 <h4><a name="Makefile.config">Makefile.config</a></h4>
-<div class="doc_text">
+<div>
   <p>Every project must have a <tt>Makefile.config</tt> at the top of its
   <em>build</em> directory. This file is <b>generated</b> by the
   <tt>configure</tt> script from the pattern provided by the
@@ -195,7 +193,7 @@
 
 <!-- ======================================================================= -->
 <h4><a name="Makefile.rules">Makefile.rules</a></h4>
-<div class="doc_text">
+<div>
   <p>This file, located at <tt>$(LLVM_SRC_ROOT)/Makefile.rules</tt> is the heart
   of the LLVM Makefile System. It provides all the logic, dependencies, and
   rules for building the targets supported by the system. What it does largely
@@ -203,9 +201,11 @@
   have been set <em>before</em> <tt>Makefile.rules</tt> is included.
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3><a name="Comments">Comments</a></h3>
-<div class="doc_text">
+<div>
   <p>User Makefiles need not have comments in them unless the construction is
   unusual or it does not strictly follow the rules and patterns of the LLVM
   makefile system. Makefile comments are invoked with the pound (#) character.
@@ -213,19 +213,20 @@
   by <tt>make</tt>.</p>
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="tutorial">Tutorial</a></h2>
 <!-- *********************************************************************** -->
-<div class="doc_text">
+<div>
   <p>This section provides some examples of the different kinds of modules you
   can build with the LLVM makefile system. In general, each directory you 
   provide will build a single object although that object may be composed of
   additionally compiled components.</p>
-</div>
 
 <!-- ======================================================================= -->
 <h3><a name="libraries">Libraries</a></h3>
-<div class="doc_text">
+<div>
   <p>Only a few variable definitions are needed to build a regular library.
   Normally, the makefile system will build all the software into a single
   <tt>libname.o</tt> (pre-linked) object. This means the library is not
@@ -254,11 +255,10 @@
   <tt>-load</tt> option. See the 
   <a href="WritingAnLLVMPass.html#makefile">WritingAnLLVMPass.html</a> document
   for an example of why you might want to do this.
-</div>
 
 <!-- ======================================================================= -->
 <h4><a name="BCModules">Bitcode Modules</a></h4>
-<div class="doc_text">
+<div>
   <p>In some situations, it is desirable to build a single bitcode module from
   a variety of sources, instead of an archive, shared library, or bitcode 
   library. Bitcode modules can be specified in addition to any of the other
@@ -281,7 +281,7 @@
 <h4>
   <a name="LoadableModules">Loadable Modules</a>
 </h4>
-<div class="doc_text">
+<div>
   <p>In some situations, you need to create a loadable module. Loadable modules
   can be loaded into programs like <tt>opt</tt> or <tt>llc</tt> to specify
   additional passes to run or targets to support.  Loadable modules are also
@@ -309,9 +309,11 @@
   library which is part of <tt>lib/System</tt> implementation.</p>
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3><a name="tools">Tools</a></h3>
-<div class="doc_text">
+<div>
   <p>For building executable programs (tools), you must provide the name of the
   tool and the names of the libraries you wish to link with the tool. For
   example:</p>
@@ -342,11 +344,10 @@
   syntax is used. Note that in order to use the <tt>.a</tt> suffix, the library
   in question must have been built with the <tt>ARCHIVE_LIBRARY</tt> option set.
   </p>
-</div>
 
 <!-- ======================================================================= -->
 <h4><a name="JIT">JIT Tools</a></h4>
-<div class="doc_text">
+<div>
   <p>Many tools will want to use the JIT features of LLVM.  To do this, you
      simply specify that you want an execution 'engine', and the makefiles will
      automatically link in the appropriate JIT for the host or an interpreter
@@ -365,11 +366,15 @@
   </tt></pre>
 </div>
 
+</div>
+
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="targets">Targets Supported</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
   <p>This section describes each of the targets that can be built using the LLVM
   Makefile system. Any target can be invoked from any directory but not all are
   applicable to a given directory (e.g. "check", "dist" and "install" will
@@ -424,11 +429,10 @@
       <td>Remove built objects from installation directory.
     </td></tr>
   </table>
-</div>
 
 <!-- ======================================================================= -->
 <h3><a name="all">all (default)</a></h3>
-<div class="doc_text">
+<div>
   <p>When you invoke <tt>make</tt> with no arguments, you are implicitly
   instructing it to seek the "all" target (goal). This target is used for
   building the software recursively and will do different things in different 
@@ -439,14 +443,14 @@
 
 <!-- ======================================================================= -->
 <h3><a name="all-local">all-local</a></h3>
-<div class="doc_text">
+<div>
   <p>This target is the same as <a href="#all">all</a> but it operates only on
   the current directory instead of recursively.</p>
 </div>
 
 <!-- ======================================================================= -->
 <h3><a name="check">check</a></h3>
-<div class="doc_text">
+<div>
   <p>This target can be invoked from anywhere within a project's directories
   but always invokes the <a href="#check-local"><tt>check-local</tt></a> target 
   in the project's <tt>test</tt> directory, if it exists and has a 
@@ -463,7 +467,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="check-local">check-local</a></h3>
-<div class="doc_text">
+<div>
   <p>This target should be implemented by the <tt>Makefile</tt> in the project's
   <tt>test</tt> directory. It is invoked by the <tt>check</tt> target elsewhere.
   Each project is free to define the actions of <tt>check-local</tt> as 
@@ -474,7 +478,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="clean">clean</a></h3>
-<div class="doc_text">
+<div>
   <p>This target cleans the build directory, recursively removing all things
   that the Makefile builds. The cleaning rules have been made guarded so they 
   shouldn't go awry (via <tt>rm -f $(UNSET_VARIABLE)/*</tt> which will attempt
@@ -483,14 +487,14 @@
 
 <!-- ======================================================================= -->
 <h3><a name="clean-local">clean-local</a></h3>
-<div class="doc_text">
+<div>
   <p>This target does the same thing as <tt>clean</tt> but only for the current
   (local) directory.</p>
 </div>
 
 <!-- ======================================================================= -->
 <h3><a name="dist">dist</a></h3>
-<div class="doc_text">
+<div>
   <p>This target builds a distribution tarball. It first builds the entire
   project using the <tt>all</tt> target and then tars up the necessary files and
   compresses it. The generated tarball is sufficient for a casual source 
@@ -499,7 +503,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="dist-check">dist-check</a></h3>
-<div class="doc_text">
+<div>
   <p>This target does the same thing as the <tt>dist</tt> target but also checks
   the distribution tarball. The check is made by unpacking the tarball to a new
   directory, configuring it, building it, installing it, and then verifying that
@@ -511,7 +515,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="dist-clean">dist-clean</a></h3>
-<div class="doc_text">
+<div>
   <p>This is a special form of the <tt>clean</tt> clean target. It performs a
   normal <tt>clean</tt> but also removes things pertaining to building the
   distribution.</p>
@@ -519,7 +523,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="install">install</a></h3>
-<div class="doc_text">
+<div>
   <p>This target finalizes shared objects and executables and copies all
   libraries, headers, executables and documentation to the directory given 
   with the <tt>--prefix</tt> option to <tt>configure</tt>.  When completed, 
@@ -537,7 +541,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="preconditions">preconditions</a></h3>
-<div class="doc_text">
+<div>
   <p>This utility target checks to see if the <tt>Makefile</tt> in the object
   directory is older than the <tt>Makefile</tt> in the source directory and
   copies it if so. It also reruns the <tt>configure</tt> script if that needs to
@@ -548,14 +552,14 @@
 
 <!-- ======================================================================= -->
 <h3><a name="printvars">printvars</a></h3>
-<div class="doc_text">
+<div>
   <p>This utility target just causes the LLVM makefiles to print out some of 
   the makefile variables so that you can double check how things are set. </p>
 </div>
 
 <!-- ======================================================================= -->
 <h3><a name="reconfigure">reconfigure</a></h3>
-<div class="doc_text">
+<div>
   <p>This utility target will force a reconfigure of LLVM or your project. It 
   simply runs <tt>$(PROJ_OBJ_ROOT)/config.status --recheck</tt> to rerun the
   configuration tests and rebuild the configured files. This isn't generally
@@ -565,7 +569,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="spotless">spotless</a></h3>
-<div class="doc_text">
+<div>
   <p>This utility target, only available when <tt>$(PROJ_OBJ_ROOT)</tt> is not 
   the same as <tt>$(PROJ_SRC_ROOT)</tt>, will completely clean the
   <tt>$(PROJ_OBJ_ROOT)</tt> directory by removing its content entirely and 
@@ -577,7 +581,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="tags">tags</a></h3>
-<div class="doc_text">
+<div>
   <p>This target will generate a <tt>TAGS</tt> file in the top-level source
   directory. It is meant for use with emacs, XEmacs, or ViM. The TAGS file
   provides an index of symbol definitions so that the editor can jump you to the
@@ -586,17 +590,19 @@
 
 <!-- ======================================================================= -->
 <h3><a name="uninstall">uninstall</a></h3>
-<div class="doc_text">
+<div>
   <p>This target is the opposite of the <tt>install</tt> target. It removes the
   header, library and executable files from the installation directories. Note
   that the directories themselves are not removed because it is not guaranteed
   that LLVM is the only thing installing there (e.g. --prefix=/usr).</p>
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="variables">Variables</a></h2>
 <!-- *********************************************************************** -->
-<div class="doc_text">
+<div>
   <p>Variables are used to tell the LLVM Makefile System what to do and to
   obtain information from it. Variables are also used internally by the LLVM
   Makefile System. Variable names that contain only the upper case alphabetic
@@ -604,11 +610,10 @@
   variables are internal to the LLVM Makefile System and should not be relied
   upon nor modified. The sections below describe how to use the LLVM Makefile 
   variables.</p>
-</div>
 
 <!-- ======================================================================= -->
 <h3><a name="setvars">Control Variables</a></h3>
-<div class="doc_text">
+<div>
   <p>Variables listed in the table below should be set <em>before</em> the 
   inclusion of <a href="#Makefile.common"><tt>$(LEVEL)/Makefile.common</tt></a>.
   These variables provide input to the LLVM make system that tell it what to do 
@@ -761,7 +766,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="overvars">Override Variables</a></h3>
-<div class="doc_text">
+<div>
   <p>Override variables can be used to override the default
   values provided by the LLVM makefile system. These variables can be set in 
   several ways:</p>
@@ -867,7 +872,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="getvars">Readable Variables</a></h3>
-<div class="doc_text">
+<div>
   <p>Variables listed in the table below can be used by the user's Makefile but
   should not be changed. Changing the value will generally cause the build to go
   wrong, so don't do it.</p>
@@ -938,7 +943,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="intvars">Internal Variables</a></h3>
-<div class="doc_text">
+<div>
   <p>Variables listed below are used by the LLVM Makefile System 
   and considered internal. You should not use these variables under any
   circumstances.</p>
@@ -1016,6 +1021,8 @@
   </tt></p>
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <hr>
 <address>

Modified: llvm/trunk/docs/Packaging.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/Packaging.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/Packaging.html (original)
+++ llvm/trunk/docs/Packaging.html Fri Apr 22 19:30:22 2011
@@ -19,7 +19,7 @@
 <!--=========================================================================-->
 <h2><a name="overview">Overview</a></h2>
 <!--=========================================================================-->
-<div class="doc_text">
+<div>
 
 <p>LLVM sets certain default configure options to make sure our developers don't
 break things for constrained platforms.  These settings are not optimal for most
@@ -36,7 +36,7 @@
 <!--=========================================================================-->
 <h2><a name="compilation">Compile Flags</a></h2>
 <!--=========================================================================-->
-<div class="doc_text">
+<div>
 
 <p>LLVM runs much more quickly when it's optimized and assertions are removed.
 However, such a build is currently incompatible with users who build without
@@ -67,7 +67,7 @@
 <!--=========================================================================-->
 <h2><a name="cxx-features">C++ Features</a></h2>
 <!--=========================================================================-->
-<div class="doc_text">
+<div>
 
 <dl>
   <dt>RTTI</dt><dd>LLVM disables RTTI by default.  Add <tt>REQUIRES_RTTI=1</tt>
@@ -80,7 +80,7 @@
 <!--=========================================================================-->
 <h2><a name="shared-library">Shared Library</a></h2>
 <!--=========================================================================-->
-<div class="doc_text">
+<div>
 
 <p>Configure with <tt>--enable-shared</tt> to build
 <tt>libLLVM-<var>major</var>.<var>minor</var>.(so|dylib)</tt> and link the tools
@@ -91,7 +91,7 @@
 <!--=========================================================================-->
 <h2><a name="deps">Dependencies</a></h2>
 <!--=========================================================================-->
-<div class="doc_text">
+<div>
 
 <dl>
 <dt><tt>--enable-libffi</tt></dt><dd>Depend on <a

Modified: llvm/trunk/docs/Passes.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/Passes.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/Passes.html (original)
+++ llvm/trunk/docs/Passes.html Fri Apr 22 19:30:22 2011
@@ -56,7 +56,7 @@
 
 <!-- ======================================================================= -->
 <h2><a name="intro">Introduction</a></h2>
-<div class="doc_text">
+<div>
   <p>This document serves as a high level summary of the optimization features 
   that LLVM provides. Optimizations are implemented as Passes that traverse some
   portion of a program to either collect information or transform the program.
@@ -69,8 +69,7 @@
   bitcode are neither analysis nor transform passes.
   <p>The table below provides a quick summary of each pass and links to the more
   complete pass description later in the document.</p>
-</div>
-<div class="doc_text" >
+
 <table>
 <tr><th colspan="2"><b>ANALYSIS PASSES</b></th></tr>
 <tr><th>Option</th><th>Name</th></tr>
@@ -201,19 +200,19 @@
 <tr><td><a href="#view-postdom">-view-postdom</a></td><td>View postdominance tree of function</td></tr>
 <tr><td><a href="#view-postdom-only">-view-postdom-only</a></td><td>View postdominance tree of function (with no function bodies)</td></tr>
 </table>
+
 </div>
 
 <!-- ======================================================================= -->
 <h2><a name="analyses">Analysis Passes</a></h2>
-<div class="doc_text">
+<div>
   <p>This section describes the LLVM Analysis Passes.</p>
-</div>
 
 <!-------------------------------------------------------------------------- -->
 <h3>
   <a name="aa-eval">-aa-eval: Exhaustive Alias Analysis Precision Evaluator</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>This is a simple N^2 alias analysis accuracy evaluator.
   Basically, for each function in the program, it simply queries to see how the
   alias analysis implementation answers alias queries between each pair of
@@ -227,7 +226,7 @@
 <h3>
   <a name="basicaa">-basicaa: Basic Alias Analysis (stateless AA impl)</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This is the default implementation of the Alias Analysis interface
   that simply implements a few identities (two different globals cannot alias,
@@ -239,7 +238,7 @@
 <h3>
   <a name="basiccg">-basiccg: Basic CallGraph Construction</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Yet to be written.</p>
 </div>
 
@@ -247,7 +246,7 @@
 <h3>
   <a name="count-aa">-count-aa: Count Alias Analysis Query Responses</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   A pass which can be used to count how many alias queries
   are being made and how the alias analysis implementation being used responds.
@@ -258,7 +257,7 @@
 <h3>
   <a name="debug-aa">-debug-aa: AA use debugger</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This simple pass checks alias analysis users to ensure that if they
   create a new value, they do not query AA without informing it of the value.
@@ -275,7 +274,7 @@
 <h3>
   <a name="domfrontier">-domfrontier: Dominance Frontier Construction</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass is a simple dominator construction algorithm for finding forward
   dominator frontiers.
@@ -286,7 +285,7 @@
 <h3>
   <a name="domtree">-domtree: Dominator Tree Construction</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass is a simple dominator construction algorithm for finding forward
   dominators.
@@ -297,7 +296,7 @@
 <h3>
   <a name="dot-callgraph">-dot-callgraph: Print Call Graph to 'dot' file</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass, only available in <code>opt</code>, prints the call graph into a
   <code>.dot</code> graph.  This graph can then be processed with the "dot" tool
@@ -309,7 +308,7 @@
 <h3>
   <a name="dot-cfg">-dot-cfg: Print CFG of function to 'dot' file</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass, only available in <code>opt</code>, prints the control flow graph
   into a <code>.dot</code> graph.  This graph can then be processed with the
@@ -321,7 +320,7 @@
 <h3>
   <a name="dot-cfg-only">-dot-cfg-only: Print CFG of function to 'dot' file (with no function bodies)</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass, only available in <code>opt</code>, prints the control flow graph
   into a <code>.dot</code> graph, omitting the function bodies.  This graph can
@@ -334,7 +333,7 @@
 <h3>
   <a name="dot-dom">-dot-dom: Print dominance tree of function to 'dot' file</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass, only available in <code>opt</code>, prints the dominator tree
   into a <code>.dot</code> graph.  This graph can then be processed with the
@@ -346,7 +345,7 @@
 <h3>
   <a name="dot-dom-only">-dot-dom-only: Print dominance tree of function to 'dot' file (with no function bodies)</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass, only available in <code>opt</code>, prints the dominator tree
   into a <code>.dot</code> graph, omitting the function bodies.  This graph can
@@ -359,7 +358,7 @@
 <h3>
   <a name="dot-postdom">-dot-postdom: Print postdominance tree of function to 'dot' file</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass, only available in <code>opt</code>, prints the post dominator tree
   into a <code>.dot</code> graph.  This graph can then be processed with the
@@ -371,7 +370,7 @@
 <h3>
   <a name="dot-postdom-only">-dot-postdom-only: Print postdominance tree of function to 'dot' file (with no function bodies)</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass, only available in <code>opt</code>, prints the post dominator tree
   into a <code>.dot</code> graph, omitting the function bodies.  This graph can
@@ -384,7 +383,7 @@
 <h3>
   <a name="globalsmodref-aa">-globalsmodref-aa: Simple mod/ref analysis for globals</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This simple pass provides alias and mod/ref information for global values
   that do not have their address taken, and keeps track of whether functions
@@ -397,7 +396,7 @@
 <h3>
   <a name="instcount">-instcount: Counts the various types of Instructions</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass collects the count of all instructions and reports them
   </p>
@@ -407,7 +406,7 @@
 <h3>
   <a name="intervals">-intervals: Interval Partition Construction</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This analysis calculates and represents the interval partition of a function,
   or a preexisting interval partition.
@@ -423,7 +422,7 @@
 <h3>
   <a name="iv-users">-iv-users: Induction Variable Users</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Bookkeeping for "interesting" users of expressions computed from 
   induction variables.</p>
 </div>
@@ -432,7 +431,7 @@
 <h3>
   <a name="lazy-value-info">-lazy-value-info: Lazy Value Information Analysis</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Interface for lazy computation of value constraint information.</p>
 </div>
 
@@ -440,7 +439,7 @@
 <h3>
   <a name="lda">-lda: Loop Dependence Analysis</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Loop dependence analysis framework, which is used to detect dependences in
   memory accesses in loops.</p>
 </div>
@@ -449,7 +448,7 @@
 <h3>
   <a name="libcall-aa">-libcall-aa: LibCall Alias Analysis</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>LibCall Alias Analysis.</p>
 </div>
 
@@ -457,7 +456,7 @@
 <h3>
   <a name="lint">-lint: Statically lint-checks LLVM IR</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>This pass statically checks for common and easily-identified constructs
   which produce undefined or likely unintended behavior in LLVM IR.</p>
  
@@ -488,7 +487,7 @@
 <h3>
   <a name="loops">-loops: Natural Loop Information</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This analysis is used to identify natural loops and determine the loop depth
   of various nodes of the CFG.  Note that the loops identified may actually be
@@ -501,7 +500,7 @@
 <h3>
   <a name="memdep">-memdep: Memory Dependence Analysis</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   An analysis that determines, for a given memory operation, what preceding 
   memory operations it depends on.  It builds on alias analysis information, and 
@@ -514,7 +513,7 @@
 <h3>
   <a name="module-debuginfo">-module-debuginfo: Decodes module-level debug info</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>This pass decodes the debug info metadata in a module and prints in a
  (sufficiently-prepared-) human-readable form.
 
@@ -527,7 +526,7 @@
 <h3>
   <a name="no-aa">-no-aa: No Alias Analysis (always returns 'may' alias)</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Always returns "I don't know" for alias queries.  NoAA is unlike other alias
   analysis implementations, in that it does not chain to a previous analysis. As
@@ -539,7 +538,7 @@
 <h3>
   <a name="no-profile">-no-profile: No Profile Information</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   The default "no profile" implementation of the abstract
   <code>ProfileInfo</code> interface.
@@ -550,7 +549,7 @@
 <h3>
   <a name="postdomfrontier">-postdomfrontier: Post-Dominance Frontier Construction</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass is a simple post-dominator construction algorithm for finding
   post-dominator frontiers.
@@ -561,7 +560,7 @@
 <h3>
   <a name="postdomtree">-postdomtree: Post-Dominator Tree Construction</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass is a simple post-dominator construction algorithm for finding
   post-dominators.
@@ -572,7 +571,7 @@
 <h3>
   <a name="print-alias-sets">-print-alias-sets: Alias Set Printer</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Yet to be written.</p>
 </div>
 
@@ -580,7 +579,7 @@
 <h3>
   <a name="print-callgraph">-print-callgraph: Print a call graph</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass, only available in <code>opt</code>, prints the call graph to
   standard error in a human-readable form.
@@ -591,7 +590,7 @@
 <h3>
   <a name="print-callgraph-sccs">-print-callgraph-sccs: Print SCCs of the Call Graph</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass, only available in <code>opt</code>, prints the SCCs of the call
   graph to standard error in a human-readable form.
@@ -602,7 +601,7 @@
 <h3>
   <a name="print-cfg-sccs">-print-cfg-sccs: Print SCCs of each function CFG</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass, only available in <code>opt</code>, prints the SCCs of each
   function CFG to standard error in a human-readable form.
@@ -613,7 +612,7 @@
 <h3>
   <a name="print-dbginfo">-print-dbginfo: Print debug info in human readable form</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Pass that prints instructions, and associated debug info:</p>
   <ul>
   
@@ -627,7 +626,7 @@
 <h3>
   <a name="print-dom-info">-print-dom-info: Dominator Info Printer</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Dominator Info Printer.</p>
 </div>
 
@@ -635,7 +634,7 @@
 <h3>
   <a name="print-externalfnconstants">-print-externalfnconstants: Print external fn callsites passed constants</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass, only available in <code>opt</code>, prints out call sites to
   external functions that are called with constant arguments.  This can be
@@ -648,7 +647,7 @@
 <h3>
   <a name="print-function">-print-function: Print function to stderr</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   The <code>PrintFunctionPass</code> class is designed to be pipelined with
   other <code>FunctionPass</code>es, and prints out the functions of the module
@@ -660,7 +659,7 @@
 <h3>
   <a name="print-module">-print-module: Print module to stderr</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass simply prints out the entire module when it is executed.
   </p>
@@ -670,7 +669,7 @@
 <h3>
   <a name="print-used-types">-print-used-types: Find Used Types</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass is used to seek out all of the types in use by the program.  Note
   that this analysis explicitly does not include types only used by the symbol
@@ -681,7 +680,7 @@
 <h3>
   <a name="profile-estimator">-profile-estimator: Estimate profiling information</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Profiling information that estimates the profiling information 
   in a very crude and unimaginative way.
   </p>
@@ -691,7 +690,7 @@
 <h3>
   <a name="profile-loader">-profile-loader: Load profile information from llvmprof.out</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   A concrete implementation of profiling information that loads the information
   from a profile dump file.
@@ -702,13 +701,13 @@
 <h3>
   <a name="profile-verifier">-profile-verifier: Verify profiling information</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Pass that checks profiling information for plausibility.</p>
 </div>
 <h3>
   <a name="regions">-regions: Detect single entry single exit regions</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   The <code>RegionInfo</code> pass detects single entry single exit regions in a
   function, where a region is defined as any subgraph that is connected to the
@@ -721,7 +720,7 @@
 <h3>
   <a name="scalar-evolution">-scalar-evolution: Scalar Evolution Analysis</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   The <code>ScalarEvolution</code> analysis can be used to analyze and
   catagorize scalar expressions in loops.  It specializes in recognizing general
@@ -740,7 +739,7 @@
 <h3>
   <a name="scev-aa">-scev-aa: ScalarEvolution-based Alias Analysis</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Simple alias analysis implemented in terms of ScalarEvolution queries.
  
   This differs from traditional loop dependence analysis in that it tests
@@ -756,22 +755,23 @@
 <h3>
   <a name="targetdata">-targetdata: Target Data Layout</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>Provides other passes access to information on how the size and alignment
   required by the the target ABI for various data types.</p>
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h2><a name="transforms">Transform Passes</a></h2>
-<div class="doc_text">
+<div>
   <p>This section describes the LLVM Transform Passes.</p>
-</div>
 
 <!-------------------------------------------------------------------------- -->
 <h3>
   <a name="adce">-adce: Aggressive Dead Code Elimination</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>ADCE aggressively tries to eliminate code. This pass is similar to
   <a href="#dce">DCE</a> but it assumes that values are dead until proven 
   otherwise. This is similar to <a href="#sccp">SCCP</a>, except applied to 
@@ -782,7 +782,7 @@
 <h3>
   <a name="always-inline">-always-inline: Inliner for always_inline functions</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>A custom inliner that handles only functions that are marked as 
   "always inline".</p>
 </div>
@@ -791,7 +791,7 @@
 <h3>
   <a name="argpromotion">-argpromotion: Promote 'by reference' arguments to scalars</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass promotes "by reference" arguments to be "by value" arguments.  In
   practice, this means looking for internal functions that have pointer
@@ -822,7 +822,7 @@
 <h3>
   <a name="block-placement">-block-placement: Profile Guided Basic Block Placement</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>This pass is a very simple profile guided basic block placement algorithm.
   The idea is to put frequently executed blocks together at the start of the
   function and hopefully increase the number of fall-through conditional
@@ -834,7 +834,7 @@
 <h3>
   <a name="break-crit-edges">-break-crit-edges: Break critical edges in CFG</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Break all of the critical edges in the CFG by inserting a dummy basic block.
   It may be "required" by passes that cannot deal with critical edges. This
@@ -847,7 +847,7 @@
 <h3>
   <a name="codegenprepare">-codegenprepare: Optimize for code generation</a>
 </h3>
-<div class="doc_text">
+<div>
   This pass munges the code in the input function to better prepare it for
   SelectionDAG-based code generation. This works around limitations in it's
   basic-block-at-a-time approach. It should eventually be removed.
@@ -857,7 +857,7 @@
 <h3>
   <a name="constmerge">-constmerge: Merge Duplicate Global Constants</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Merges duplicate global constants together into a single constant that is
   shared.  This is useful because some passes (ie TraceValues) insert a lot of
@@ -870,7 +870,7 @@
 <h3>
   <a name="constprop">-constprop: Simple constant propagation</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>This file implements constant propagation and merging. It looks for
   instructions involving only constant operands and replaces them with a
   constant value instead of an instruction. For example:</p>
@@ -886,7 +886,7 @@
 <h3>
   <a name="dce">-dce: Dead Code Elimination</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Dead code elimination is similar to <a href="#die">dead instruction
   elimination</a>, but it rechecks instructions that were used by removed
@@ -898,7 +898,7 @@
 <h3>
   <a name="deadargelim">-deadargelim: Dead Argument Elimination</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass deletes dead arguments from internal functions.  Dead argument
   elimination removes arguments which are directly dead, as well as arguments
@@ -916,7 +916,7 @@
 <h3>
   <a name="deadtypeelim">-deadtypeelim: Dead Type Elimination</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass is used to cleanup the output of GCC.  It eliminate names for types
   that are unused in the entire translation unit, using the <a
@@ -928,7 +928,7 @@
 <h3>
   <a name="die">-die: Dead Instruction Elimination</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Dead instruction elimination performs a single pass over the function,
   removing instructions that are obviously dead.
@@ -939,7 +939,7 @@
 <h3>
   <a name="dse">-dse: Dead Store Elimination</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   A trivial dead store elimination that only considers basic-block local
   redundant stores.
@@ -950,7 +950,7 @@
 <h3>
   <a name="functionattrs">-functionattrs: Deduce function attributes</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>A simple interprocedural pass which walks the call-graph, looking for 
   functions which do not access or only read non-local memory, and marking them 
   readnone/readonly.  In addition, it marks function arguments (of pointer type) 
@@ -965,7 +965,7 @@
 <h3>
   <a name="globaldce">-globaldce: Dead Global Elimination</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This transform is designed to eliminate unreachable internal globals from the
   program.  It uses an aggressive algorithm, searching out globals that are
@@ -979,7 +979,7 @@
 <h3>
   <a name="globalopt">-globalopt: Global Variable Optimizer</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass transforms simple global variables that never have their address
   taken.  If obviously true, it marks read/write globals as constant, deletes
@@ -991,7 +991,7 @@
 <h3>
   <a name="gvn">-gvn: Global Value Numbering</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass performs global value numbering to eliminate fully and partially
   redundant instructions.  It also performs redundant load elimination.
@@ -1002,7 +1002,7 @@
 <h3>
   <a name="indvars">-indvars: Canonicalize Induction Variables</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This transformation analyzes and transforms the induction variables (and
   computations derived from them) into simpler forms suitable for subsequent
@@ -1053,7 +1053,7 @@
 <h3>
   <a name="inline">-inline: Function Integration/Inlining</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Bottom-up inlining of functions into callees.
   </p>
@@ -1063,7 +1063,7 @@
 <h3>
   <a name="insert-edge-profiling">-insert-edge-profiling: Insert instrumentation for edge profiling</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass instruments the specified program with counters for edge profiling.
   Edge profiling can give a reasonable approximation of the hot paths through a
@@ -1081,7 +1081,7 @@
 <h3>
   <a name="insert-optimal-edge-profiling">-insert-optimal-edge-profiling: Insert optimal instrumentation for edge profiling</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>This pass instruments the specified program with counters for edge profiling.
   Edge profiling can give a reasonable approximation of the hot paths through a
   program, and is used for a wide variety of program transformations.
@@ -1092,7 +1092,7 @@
 <h3>
   <a name="instcombine">-instcombine: Combine redundant instructions</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Combine instructions to form fewer, simple
   instructions.  This pass does not modify the CFG This pass is where algebraic
@@ -1146,7 +1146,7 @@
 <h3>
   <a name="internalize">-internalize: Internalize Global Symbols</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass loops over all of the functions in the input module, looking for a
   main function.  If a main function is found, all other functions and all
@@ -1158,7 +1158,7 @@
 <h3>
   <a name="ipconstprop">-ipconstprop: Interprocedural constant propagation</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass implements an <em>extremely</em> simple interprocedural constant
   propagation pass.  It could certainly be improved in many different ways,
@@ -1172,7 +1172,7 @@
 <h3>
   <a name="ipsccp">-ipsccp: Interprocedural Sparse Conditional Constant Propagation</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   An interprocedural variant of <a href="#sccp">Sparse Conditional Constant 
   Propagation</a>.
@@ -1183,7 +1183,7 @@
 <h3>
   <a name="jump-threading">-jump-threading: Jump Threading</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Jump threading tries to find distinct threads of control flow running through
   a basic block. This pass looks at blocks that have multiple predecessors and
@@ -1212,7 +1212,7 @@
 <h3>
   <a name="lcssa">-lcssa: Loop-Closed SSA Form Pass</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass transforms loops by placing phi nodes at the end of the loops for
   all values that are live across the loop boundary.  For example, it turns
@@ -1241,7 +1241,7 @@
 <h3>
   <a name="licm">-licm: Loop Invariant Code Motion</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass performs loop invariant code motion, attempting to remove as much
   code from the body of a loop as possible.  It does this by either hoisting
@@ -1278,7 +1278,7 @@
 <h3>
   <a name="loop-deletion">-loop-deletion: Delete dead loops</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This file implements the Dead Loop Deletion Pass.  This pass is responsible
   for eliminating loops with non-infinite computable trip counts that have no
@@ -1291,7 +1291,7 @@
 <h3>
   <a name="loop-extract">-loop-extract: Extract loops into new functions</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   A pass wrapper around the <code>ExtractLoop()</code> scalar transformation to 
   extract each top-level loop into its own new function. If the loop is the
@@ -1304,7 +1304,7 @@
 <h3>
   <a name="loop-extract-single">-loop-extract-single: Extract at most one loop into a new function</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Similar to <a href="#loop-extract">Extract loops into new functions</a>,
   this pass extracts one natural loop from the program into a function if it
@@ -1316,7 +1316,7 @@
 <h3>
   <a name="loop-reduce">-loop-reduce: Loop Strength Reduction</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass performs a strength reduction on array references inside loops that
   have as one or more of their components the loop induction variable.  This is
@@ -1330,7 +1330,7 @@
 <h3>
   <a name="loop-rotate">-loop-rotate: Rotate Loops</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>A simple loop rotation transformation.</p>
 </div>
 
@@ -1338,7 +1338,7 @@
 <h3>
   <a name="loop-simplify">-loop-simplify: Canonicalize natural loops</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass performs several transformations to transform natural loops into a
   simpler form, which makes subsequent analyses and transformations simpler and
@@ -1379,7 +1379,7 @@
 <h3>
   <a name="loop-unroll">-loop-unroll: Unroll loops</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass implements a simple loop unroller.  It works best when loops have
   been canonicalized by the <a href="#indvars"><tt>-indvars</tt></a> pass,
@@ -1391,7 +1391,7 @@
 <h3>
   <a name="loop-unswitch">-loop-unswitch: Unswitch loops</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass transforms loops that contain branches on loop-invariant conditions
   to have multiple loops.  For example, it turns the left into the right code:
@@ -1421,7 +1421,7 @@
 <h3>
   <a name="loweratomic">-loweratomic: Lower atomic intrinsics to non-atomic form</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass lowers atomic intrinsics to non-atomic form for use in a known
   non-preemptible environment.
@@ -1439,7 +1439,7 @@
 <h3>
   <a name="lowerinvoke">-lowerinvoke: Lower invoke and unwind, for unwindless code generators</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This transformation is designed for use by code generators which do not yet
   support stack unwinding.  This pass supports two models of exception handling
@@ -1480,7 +1480,7 @@
 <h3>
   <a name="lowersetjmp">-lowersetjmp: Lower Set Jump</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
    Lowers <tt>setjmp</tt> and <tt>longjmp</tt> to use the LLVM invoke and unwind
    instructions as necessary.
@@ -1509,7 +1509,7 @@
 <h3>
   <a name="lowerswitch">-lowerswitch: Lower SwitchInst's to branches</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Rewrites <tt>switch</tt> instructions with a sequence of branches, which
   allows targets to get away with not implementing the switch instruction until
@@ -1521,7 +1521,7 @@
 <h3>
   <a name="mem2reg">-mem2reg: Promote Memory to Register</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This file promotes memory references to be register references.  It promotes
   <tt>alloca</tt> instructions which only have <tt>load</tt>s and
@@ -1537,7 +1537,7 @@
 <h3>
   <a name="memcpyopt">-memcpyopt: MemCpy Optimization</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass performs various transformations related to eliminating memcpy
   calls, or transforming sets of stores into memset's.
@@ -1548,7 +1548,7 @@
 <h3>
   <a name="mergefunc">-mergefunc: Merge Functions</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>This pass looks for equivalent functions that are mergable and folds them.
  
   A hash is computed from the function, based on its type and number of
@@ -1569,7 +1569,7 @@
 <h3>
   <a name="mergereturn">-mergereturn: Unify function exit nodes</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Ensure that functions have at most one <tt>ret</tt> instruction in them.
   Additionally, it keeps track of which node is the new exit node of the CFG.
@@ -1580,7 +1580,7 @@
 <h3>
   <a name="partial-inliner">-partial-inliner: Partial Inliner</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>This pass performs partial inlining, typically by inlining an if 
   statement that surrounds the body of the function.
   </p>
@@ -1590,7 +1590,7 @@
 <h3>
   <a name="prune-eh">-prune-eh: Remove unused exception handling info</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This file implements a simple interprocedural pass which walks the call-graph,
   turning <tt>invoke</tt> instructions into <tt>call</tt> instructions if and
@@ -1603,7 +1603,7 @@
 <h3>
   <a name="reassociate">-reassociate: Reassociate expressions</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass reassociates commutative expressions in an order that is designed
   to promote better constant propagation, GCSE, LICM, PRE, etc.
@@ -1626,7 +1626,7 @@
 <h3>
   <a name="reg2mem">-reg2mem: Demote all values to stack slots</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This file demotes all registers to memory references.  It is intented to be
   the inverse of <a href="#mem2reg"><tt>-mem2reg</tt></a>.  By converting to
@@ -1643,7 +1643,7 @@
 <h3>
   <a name="scalarrepl">-scalarrepl: Scalar Replacement of Aggregates (DT)</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   The well-known scalar replacement of aggregates transformation.  This
   transform breaks up <tt>alloca</tt> instructions of aggregate type (structure
@@ -1665,7 +1665,7 @@
 <h3>
   <a name="sccp">-sccp: Sparse Conditional Constant Propagation</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Sparse conditional constant propagation and merging, which can be summarized
   as:
@@ -1688,7 +1688,7 @@
 <h3>
   <a name="simplify-libcalls">-simplify-libcalls: Simplify well-known library calls</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Applies a variety of small optimizations for calls to specific well-known 
   function calls (e.g. runtime library functions). For example, a call
@@ -1701,7 +1701,7 @@
 <h3>
   <a name="simplifycfg">-simplifycfg: Simplify the CFG</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Performs dead code elimination and basic block merging. Specifically:
   </p>
@@ -1720,7 +1720,7 @@
 <h3>
   <a name="sink">-sink: Code sinking</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>This pass moves instructions into successor blocks, when possible, so that
  they aren't executed on paths where their results aren't needed.
   </p>
@@ -1730,7 +1730,7 @@
 <h3>
   <a name="sretpromotion">-sretpromotion: Promote sret arguments to multiple ret values</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass finds functions that return a struct (using a pointer to the struct
   as the first argument of the function, marked with the '<tt>sret</tt>' attribute) and
@@ -1753,7 +1753,7 @@
 <h3>
   <a name="strip">-strip: Strip all symbols from a module</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   performs code stripping. this transformation can delete:
   </p>
@@ -1775,7 +1775,7 @@
 <h3>
   <a name="strip-dead-debug-info">-strip-dead-debug-info: Strip debug info for unused symbols</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   performs code stripping. this transformation can delete:
   </p>
@@ -1797,7 +1797,7 @@
 <h3>
   <a name="strip-dead-prototypes">-strip-dead-prototypes: Strip Unused Function Prototypes</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass loops over all of the functions in the input module, looking for
   dead declarations and removes them. Dead declarations are declarations of
@@ -1810,7 +1810,7 @@
 <h3>
   <a name="strip-debug-declare">-strip-debug-declare: Strip all llvm.dbg.declare intrinsics</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>This pass implements code stripping. Specifically, it can delete:</p>
   <ul>
   <li>names for virtual registers</li>
@@ -1828,7 +1828,7 @@
 <h3>
   <a name="strip-nondebug">-strip-nondebug: Strip all symbols, except dbg symbols, from a module</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>This pass implements code stripping. Specifically, it can delete:</p>
   <ul>
   <li>names for virtual registers</li>
@@ -1846,7 +1846,7 @@
 <h3>
   <a name="tailcallelim">-tailcallelim: Tail Call Elimination</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This file transforms calls of the current function (self recursion) followed
   by a return instruction with a branch to the entry of the function, creating
@@ -1878,7 +1878,7 @@
 <h3>
   <a name="tailduplicate">-tailduplicate: Tail Duplication</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass performs a limited form of tail duplication, intended to simplify
   CFGs by removing some unconditional branches.  This pass is necessary to
@@ -1888,17 +1888,18 @@
   </p>
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h2><a name="utilities">Utility Passes</a></h2>
-<div class="doc_text">
+<div>
   <p>This section describes the LLVM Utility Passes.</p>
-</div>
 
 <!-------------------------------------------------------------------------- -->
 <h3>
   <a name="deadarghaX0r">-deadarghaX0r: Dead Argument Hacking (BUGPOINT USE ONLY; DO NOT USE)</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Same as dead argument elimination, but deletes arguments to functions which
   are external.  This is only for use by <a
@@ -1909,7 +1910,7 @@
 <h3>
   <a name="extract-blocks">-extract-blocks: Extract Basic Blocks From Module (for bugpoint use)</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   This pass is used by bugpoint to extract all blocks from the module into their
   own functions.</p>
@@ -1919,7 +1920,7 @@
 <h3>
   <a name="instnamer">-instnamer: Assign names to anonymous instructions</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>This is a little utility pass that gives instructions names, this is mostly
  useful when diffing the effect of an optimization because deleting an
  unnamed instruction can change all other instruction numbering, making the
@@ -1931,7 +1932,7 @@
 <h3>
   <a name="preverify">-preverify: Preliminary module verification</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Ensures that the module is in the form required by the <a
   href="#verifier">Module Verifier</a> pass.
@@ -1947,7 +1948,7 @@
 <h3>
   <a name="verify">-verify: Module Verifier</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Verifies an LLVM IR code. This is useful to run after an optimization which is
   undergoing testing. Note that <tt>llvm-as</tt> verifies its input before
@@ -1998,7 +1999,7 @@
 <h3>
   <a name="view-cfg">-view-cfg: View CFG of function</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Displays the control flow graph using the GraphViz tool.
   </p>
@@ -2008,7 +2009,7 @@
 <h3>
   <a name="view-cfg-only">-view-cfg-only: View CFG of function (with no function bodies)</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Displays the control flow graph using the GraphViz tool, but omitting function
   bodies.
@@ -2019,7 +2020,7 @@
 <h3>
   <a name="view-dom">-view-dom: View dominance tree of function</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Displays the dominator tree using the GraphViz tool.
   </p>
@@ -2029,7 +2030,7 @@
 <h3>
   <a name="view-dom-only">-view-dom-only: View dominance tree of function (with no function bodies)</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Displays the dominator tree using the GraphViz tool, but omitting function
   bodies.
@@ -2040,7 +2041,7 @@
 <h3>
   <a name="view-postdom">-view-postdom: View postdominance tree of function</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Displays the post dominator tree using the GraphViz tool.
   </p>
@@ -2050,13 +2051,15 @@
 <h3>
   <a name="view-postdom-only">-view-postdom-only: View postdominance tree of function (with no function bodies)</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>
   Displays the post dominator tree using the GraphViz tool, but omitting
   function bodies.
   </p>
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 
 <hr>

Modified: llvm/trunk/docs/ProgrammersManual.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/ProgrammersManual.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/ProgrammersManual.html (original)
+++ llvm/trunk/docs/ProgrammersManual.html Fri Apr 22 19:30:22 2011
@@ -215,7 +215,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This document is meant to highlight some of the important classes and
 interfaces available in the LLVM source-base.  This manual is not
@@ -247,19 +247,17 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This section contains general information that is useful if you are working
 in the LLVM source-base, but that isn't specific to any particular API.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="stl">The C++ Standard Template Library</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM makes heavy use of the C++ Standard Template Library (STL),
 perhaps much more than you are used to, or have seen before.  Because of
@@ -309,7 +307,7 @@
   <a name="stl">Other useful references</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <ol>
 <li><a href="http://www.fortran-2000.com/ArnaudRecipes/sharedlib.html">Using
@@ -318,26 +316,26 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="apis">Important and useful LLVM APIs</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Here we highlight some LLVM APIs that are generally useful and good to
 know about when writing transformations.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="isa">The <tt>isa<></tt>, <tt>cast<></tt> and
   <tt>dyn_cast<></tt> templates</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The LLVM source-base makes extensive use of a custom form of RTTI.
 These templates have many similarities to the C++ <tt>dynamic_cast<></tt>
@@ -447,7 +445,7 @@
 and <tt>Twine</tt> classes)</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Although LLVM generally does not do much string manipulation, we do have
 several important APIs which take strings.  Two important examples are the
@@ -461,14 +459,12 @@
 many LLVM APIs use a <tt>StringRef</tt> or a <tt>const Twine&</tt> for
 passing strings efficiently.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="StringRef">The <tt>StringRef</tt> class</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>StringRef</tt> data type represents a reference to a constant string
 (a character array and a length) and supports the common operations available
@@ -508,7 +504,7 @@
   <a name="Twine">The <tt>Twine</tt> class</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>Twine</tt> class is an efficient way for APIs to accept concatenated
 strings.  For example, a common LLVM paradigm is to name one instruction based on
@@ -539,13 +535,14 @@
 
 </div>
 
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="DEBUG">The <tt>DEBUG()</tt> macro and <tt>-debug</tt> option</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Often when working on your pass you will put a bunch of debugging printouts
 and other code into your pass.  After you get it working, you want to remove
@@ -591,15 +588,13 @@
 program hasn't been started yet, you can always just run it with
 <tt>-debug</tt>.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="DEBUG_TYPE">Fine grained debug info with <tt>DEBUG_TYPE</tt> and
   the <tt>-debug-only</tt> option</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Sometimes you may find yourself in a situation where enabling <tt>-debug</tt>
 just turns on <b>too much</b> information (such as when working on the code
@@ -667,13 +662,15 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="Statistic">The <tt>Statistic</tt> class & <tt>-stats</tt>
   option</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The "<tt><a
 href="/doxygen/Statistic_8h-source.html">llvm/ADT/Statistic.h</a></tt>" file
@@ -772,7 +769,7 @@
   <a name="ViewGraph">Viewing graphs while debugging code</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Several of the important data structures in LLVM are graphs: for example
 CFGs made out of LLVM <a href="#BasicBlock">BasicBlock</a>s, CFGs made out of
@@ -816,13 +813,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="datastructure">Picking the Right Data Structure for a Task</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>LLVM has a plethora of data structures in the <tt>llvm/ADT/</tt> directory,
  and we commonly use STL data structures.  This section describes the trade-offs
@@ -878,24 +877,21 @@
 .  Doing so avoids (relatively) expensive malloc/free calls, which dwarf the
 cost of adding the elements to the container. </p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="ds_sequential">Sequential Containers (std::vector, std::list, etc)</a>
 </h3>
 
-<div class="doc_text">
+<div>
 There are a variety of sequential containers available for you, based on your
 needs.  Pick the first in this section that will do what you want.
-</div>
 
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="dss_arrayref">llvm/ADT/ArrayRef.h</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p>The llvm::ArrayRef class is the preferred class to use in an interface that
    accepts a sequential list of elements in memory and just reads from them.  By
    taking an ArrayRef, the API can be passed a fixed size array, an std::vector,
@@ -910,7 +906,7 @@
   <a name="dss_fixedarrays">Fixed Size Arrays</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p>Fixed size arrays are very simple and very fast.  They are good if you know
 exactly how many elements you have, or you have a (low) upper bound on how many
 you have.</p>
@@ -921,7 +917,7 @@
   <a name="dss_heaparrays">Heap Allocated Arrays</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p>Heap allocated arrays (new[] + delete[]) are also simple.  They are good if
 the number of elements is variable, if you know how many elements you will need
 before the array is allocated, and if the array is usually large (if not,
@@ -937,7 +933,7 @@
   <a name="dss_smallvector">"llvm/ADT/SmallVector.h"</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p><tt>SmallVector<Type, N></tt> is a simple class that looks and smells
 just like <tt>vector<Type></tt>:
 it supports efficient iteration, lays out elements in memory order (so you can
@@ -966,7 +962,7 @@
   <a name="dss_vector"><vector></a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p>
 std::vector is well loved and respected.  It is useful when SmallVector isn't:
 when the size of the vector is often large (thus the small optimization will
@@ -1008,7 +1004,7 @@
   <a name="dss_deque"><deque></a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p>std::deque is, in some senses, a generalized version of std::vector.  Like
 std::vector, it provides constant time random access and other similar
 properties, but it also provides efficient access to the front of the list.  It
@@ -1024,7 +1020,7 @@
   <a name="dss_list"><list></a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p>std::list is an extremely inefficient class that is rarely useful.
 It performs a heap allocation for every element inserted into it, thus having an
 extremely high constant factor, particularly for small data types.  std::list
@@ -1042,7 +1038,7 @@
   <a name="dss_ilist">llvm/ADT/ilist.h</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p><tt>ilist<T></tt> implements an 'intrusive' doubly-linked list.  It is
 intrusive, because it requires the element to store and provide access to the
 prev/next pointers for the list.</p>
@@ -1072,7 +1068,7 @@
   <a name="dss_ilist_traits">ilist_traits</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p><tt>ilist_traits<T></tt> is <tt>ilist<T></tt>'s customization
 mechanism. <tt>iplist<T></tt> (and consequently <tt>ilist<T></tt>)
 publicly derive from this traits class.</p>
@@ -1083,7 +1079,7 @@
   <a name="dss_iplist">iplist</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p><tt>iplist<T></tt> is <tt>ilist<T></tt>'s base and as such
 supports a slightly narrower interface. Notably, inserters from
 <tt>T&</tt> are absent.</p>
@@ -1097,7 +1093,7 @@
   <a name="dss_ilist_node">llvm/ADT/ilist_node.h</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p><tt>ilist_node<T></tt> implements a the forward and backward links
 that are expected by the <tt>ilist<T></tt> (and analogous containers)
 in the default manner.</p>
@@ -1112,7 +1108,7 @@
   <a name="dss_ilist_sentinel">Sentinels</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p><tt>ilist</tt>s have another specialty that must be considered. To be a good
 citizen in the C++ ecosystem, it needs to support the standard container
 operations, such as <tt>begin</tt> and <tt>end</tt> iterators, etc. Also, the
@@ -1150,7 +1146,7 @@
   <a name="dss_other">Other Sequential Container options</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p>Other STL containers are available, such as std::string.</p>
 
 <p>There are also various STL adapter classes such as std::queue,
@@ -1159,27 +1155,25 @@
 
 </div>
 
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="ds_set">Set-Like Containers (std::set, SmallSet, SetVector, etc)</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Set-like containers are useful when you need to canonicalize multiple values
 into a single representation.  There are several different choices for how to do
 this, providing various trade-offs.</p>
 
-</div>
-
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="dss_sortedvectorset">A sorted 'vector'</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>If you intend to insert a lot of elements, then do a lot of queries, a
 great approach is to use a vector (or other sequential container) with
@@ -1201,7 +1195,7 @@
   <a name="dss_smallset">"llvm/ADT/SmallSet.h"</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>If you have a set-like data structure that is usually small and whose elements
 are reasonably small, a <tt>SmallSet<Type, N></tt> is a good choice.  This set
@@ -1224,7 +1218,7 @@
   <a name="dss_smallptrset">"llvm/ADT/SmallPtrSet.h"</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>SmallPtrSet has all the advantages of <tt>SmallSet</tt> (and a <tt>SmallSet</tt> of pointers is 
 transparently implemented with a <tt>SmallPtrSet</tt>), but also supports iterators.  If
@@ -1244,7 +1238,7 @@
   <a name="dss_denseset">"llvm/ADT/DenseSet.h"</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 DenseSet is a simple quadratically probed hash table.  It excels at supporting
@@ -1263,7 +1257,7 @@
   <a name="dss_FoldingSet">"llvm/ADT/FoldingSet.h"</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 FoldingSet is an aggregate class that is really good at uniquing
@@ -1300,7 +1294,7 @@
   <a name="dss_set"><set></a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p><tt>std::set</tt> is a reasonable all-around set class, which is decent at
 many things but great at nothing.  std::set allocates memory for each element
@@ -1325,7 +1319,7 @@
   <a name="dss_setvector">"llvm/ADT/SetVector.h"</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p>LLVM's SetVector<Type> is an adapter class that combines your choice of
 a set-like container along with a <a href="#ds_sequential">Sequential 
 Container</a>.  The important property
@@ -1365,7 +1359,7 @@
   <a name="dss_uniquevector">"llvm/ADT/UniqueVector.h"</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 UniqueVector is similar to <a href="#dss_setvector">SetVector</a>, but it
@@ -1385,7 +1379,7 @@
   <a name="dss_otherset">Other Set-Like Container Options</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 The STL provides several other options, such as std::multiset and the various 
@@ -1401,22 +1395,23 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="ds_map">Map-Like Containers (std::map, DenseMap, etc)</a>
 </h3>
 
-<div class="doc_text">
+<div>
 Map-like containers are useful when you want to associate data to a key.  As
 usual, there are a lot of different ways to do this. :)
-</div>
 
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="dss_sortedvectormap">A sorted 'vector'</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 If your usage pattern follows a strict insert-then-query approach, you can
@@ -1433,7 +1428,7 @@
   <a name="dss_stringmap">"llvm/ADT/StringMap.h"</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 Strings are commonly used as keys in maps, and they are difficult to support
@@ -1467,7 +1462,7 @@
   <a name="dss_indexedmap">"llvm/ADT/IndexedMap.h"</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p>
 IndexedMap is a specialized container for mapping small dense integers (or
 values that can be mapped to small dense integers) to some other type.  It is
@@ -1487,7 +1482,7 @@
   <a name="dss_densemap">"llvm/ADT/DenseMap.h"</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 DenseMap is a simple quadratically probed hash table.  It excels at supporting
@@ -1513,7 +1508,7 @@
   <a name="dss_valuemap">"llvm/ADT/ValueMap.h"</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 ValueMap is a wrapper around a <a href="#dss_densemap">DenseMap</a> mapping
@@ -1530,7 +1525,7 @@
   <a name="dss_intervalmap">"llvm/ADT/IntervalMap.h"</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p> IntervalMap is a compact map for small keys and values. It maps key
 intervals instead of single keys, and it will automatically coalesce adjacent
@@ -1547,7 +1542,7 @@
   <a name="dss_map"><map></a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 std::map has similar characteristics to <a href="#dss_set">std::set</a>: it uses
@@ -1567,7 +1562,7 @@
   <a name="dss_inteqclasses">"llvm/ADT/IntEqClasses.h"</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>IntEqClasses provides a compact representation of equivalence classes of
 small integers. Initially, each integer in the range 0..n-1 has its own
@@ -1587,7 +1582,7 @@
   <a name="dss_othermap">Other Map-Like Container Options</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 The STL provides several other options, such as std::multimap and the various 
@@ -1601,12 +1596,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="ds_string">String-like containers</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 TODO: const char* vs stringref vs smallstring vs std::string.  Describe twine,
@@ -1620,7 +1617,7 @@
   <a name="ds_bit">Bit storage containers (BitVector, SparseBitVector)</a>
 </h3>
 
-<div class="doc_text">
+<div>
 <p>Unlike the other containers, there are only two bit storage containers, and 
 choosing when to use each is relatively straightforward.</p>
 
@@ -1630,14 +1627,13 @@
 GCC) is extremely inefficient and 2) the C++ standards committee is likely to
 deprecate this container and/or change it significantly somehow.  In any case,
 please don't use it.</p>
-</div>
 
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="dss_bitvector">BitVector</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p> The BitVector container provides a dynamic size set of bits for manipulation.
 It supports individual bit setting/testing, as well as set operations.  The set
 operations take time O(size of bitvector), but operations are performed one word
@@ -1652,7 +1648,7 @@
   <a name="dss_smallbitvector">SmallBitVector</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p> The SmallBitVector container provides the same interface as BitVector, but
 it is optimized for the case where only a small number of bits, less than
 25 or so, are needed. It also transparently supports larger bit counts, but
@@ -1671,7 +1667,7 @@
   <a name="dss_sparsebitvector">SparseBitVector</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p> The SparseBitVector container is much like BitVector, with one major
 difference: Only the bits that are set, are stored.  This makes the
 SparseBitVector much more space efficient than BitVector when the set is sparse,
@@ -1681,13 +1677,17 @@
 </p>
 </div>
 
+</div>
+
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="common">Helpful Hints for Common Operations</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This section describes how to perform some very simple transformations of
 LLVM code.  This is meant to give examples of common idioms used, showing the
@@ -1696,15 +1696,13 @@
 <a href="#coreclasses">Core LLVM Class Hierarchy Reference</a> contains details
 and descriptions of the main classes that you should know about.</p>
 
-</div>
-
 <!-- NOTE: this section should be heavy on example code -->
 <!-- ======================================================================= -->
 <h3>
   <a name="inspection">Basic Inspection and Traversal Routines</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The LLVM compiler infrastructure have many different data structures that may
 be traversed.  Following the example of the C++ standard template library, the
@@ -1721,8 +1719,6 @@
 examples of the data structures that need to be traversed.  Other data
 structures are traversed in very similar ways.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="iterate_function">Iterating over the </a><a
@@ -1730,7 +1726,7 @@
   href="#Function"><tt>Function</tt></a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>It's quite common to have a <tt>Function</tt> instance that you'd like to
 transform in some way; in particular, you'd like to manipulate its
@@ -1765,7 +1761,7 @@
   href="#BasicBlock"><tt>BasicBlock</tt></a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Just like when dealing with <tt>BasicBlock</tt>s in <tt>Function</tt>s, it's
 easy to iterate over the individual instructions that make up
@@ -1796,7 +1792,7 @@
   href="#Function"><tt>Function</tt></a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>If you're finding that you commonly iterate over a <tt>Function</tt>'s
 <tt>BasicBlock</tt>s and then that <tt>BasicBlock</tt>'s <tt>Instruction</tt>s,
@@ -1841,7 +1837,7 @@
   vice-versa)</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Sometimes, it'll be useful to grab a reference (or pointer) to a class
 instance when all you've got at hand is an iterator.  Well, extracting
@@ -1918,7 +1914,7 @@
   example</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Say that you're writing a FunctionPass and would like to count all the
 locations in the entire module (that is, across every <tt>Function</tt>) where a
@@ -1979,7 +1975,7 @@
   <a name="calls_and_invokes">Treating calls and invokes the same way</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>You may have noticed that the previous example was a bit oversimplified in
 that it did not deal with call sites generated by 'invoke' instructions. In
@@ -2006,7 +2002,7 @@
   <a name="iterate_chains">Iterating over def-use & use-def chains</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Frequently, we might have an instance of the <a
 href="/doxygen/classllvm_1_1Value.html">Value Class</a> and we want to
@@ -2068,7 +2064,7 @@
 successors of blocks</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Iterating over the predecessors and successors of a block is quite easy
 with the routines defined in <tt>"llvm/Support/CFG.h"</tt>.  Just use code like
@@ -2091,13 +2087,14 @@
 
 </div>
 
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="simplechanges">Making simple changes</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>There are some primitive transformation operations present in the LLVM
 infrastructure that are worth knowing about.  When performing
@@ -2105,15 +2102,13 @@
 blocks. This section describes some of the common methods for doing so
 and gives example code.</p>
 
-</div>
-
 <!--_______________________________________________________________________-->
 <h4>
   <a name="schanges_creating">Creating and inserting new
   <tt>Instruction</tt>s</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p><i>Instantiating Instructions</i></p>
 
@@ -2253,7 +2248,7 @@
   <a name="schanges_deleting">Deleting <tt>Instruction</tt>s</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Deleting an instruction from an existing sequence of instructions that form a
 <a href="#BasicBlock"><tt>BasicBlock</tt></a> is very straight-forward: just
@@ -2278,7 +2273,7 @@
   <tt>Value</tt></a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p><i>Replacing individual instructions</i></p>
 
@@ -2343,7 +2338,7 @@
   <a name="schanges_deletingGV">Deleting <tt>GlobalVariable</tt>s</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Deleting a global variable from a module is just as easy as deleting an 
 Instruction. First, you must have a pointer to the global variable that you wish
@@ -2360,12 +2355,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="create_types">How to Create Types</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>In generating IR, you may need some complex types.  If you know these types
 statically, you can use <tt>TypeBuilder<...>::get()</tt>, defined
@@ -2400,13 +2397,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="threading">Threads and LLVM</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 <p>
 This section describes the interaction of the LLVM APIs with multithreading,
 both on the part of client applications, and in the JIT, in the hosted
@@ -2429,14 +2428,13 @@
 using the resultant compiler to build a copy of LLVM with multithreading
 support.
 </p>
-</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="startmultithreaded">Entering and Exiting Multithreaded Mode</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 In order to properly protect its internal data structures while avoiding 
@@ -2473,7 +2471,7 @@
   <a name="shutdown">Ending Execution with <tt>llvm_shutdown()</tt></a>
 </h3>
 
-<div class="doc_text">
+<div>
 <p>
 When you are done using the LLVM APIs, you should call <tt>llvm_shutdown()</tt>
 to deallocate memory used for internal structures.  This will also invoke 
@@ -2493,7 +2491,7 @@
   <a name="managedstatic">Lazy Initialization with <tt>ManagedStatic</tt></a>
 </h3>
 
-<div class="doc_text">
+<div>
 <p>
 <tt>ManagedStatic</tt> is a utility class in LLVM used to implement static
 initialization of static resources, such as the global type tables.  Before the
@@ -2522,7 +2520,7 @@
   <a name="llvmcontext">Achieving Isolation with <tt>LLVMContext</tt></a>
 </h3>
 
-<div class="doc_text">
+<div>
 <p>
 <tt>LLVMContext</tt> is an opaque class in the LLVM API which clients can use
 to operate multiple, isolated instances of LLVM concurrently within the same
@@ -2566,7 +2564,7 @@
   <a name="jitthreading">Threads and the JIT</a>
 </h3>
 
-<div class="doc_text">
+<div>
 <p>
 LLVM's "eager" JIT compiler is safe to use in threaded programs.  Multiple
 threads can call <tt>ExecutionEngine::getPointerToFunction()</tt> or
@@ -2589,26 +2587,27 @@
 </p>
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="advanced">Advanced Topics</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 <p>
 This section describes some of the advanced or obscure API's that most clients
 do not need to be aware of.  These API's tend manage the inner workings of the
 LLVM system, and only need to be accessed in unusual circumstances.
 </p>
-</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="TypeResolve">LLVM Type Resolution</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 The LLVM type system has a very simple goal: allow clients to compare types for
@@ -2637,14 +2636,12 @@
 float }</tt>").
 </p>
 
-</div>
-
 <!-- ______________________________________________________________________ -->
 <h4>
   <a name="BuildRecType">Basic Recursive Type Construction</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 Because the most common question is "how do I build a recursive type with LLVM",
@@ -2700,7 +2697,7 @@
   <a name="refineAbstractTypeTo">The <tt>refineAbstractTypeTo</tt> method</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p>
 The <tt>refineAbstractTypeTo</tt> method starts the type unification process.
 While this method is actually a member of the DerivedType class, it is most
@@ -2730,7 +2727,7 @@
   <a name="PATypeHolder">The PATypeHolder Class</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p>
 PATypeHolder is a form of a "smart pointer" for Type objects.  When VMCore
 happily goes about nuking types that become isomorphic to existing types, it
@@ -2752,7 +2749,7 @@
   <a name="AbstractTypeUser">The AbstractTypeUser Class</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 Some data structures need more to perform more complex updates when types get
@@ -2766,6 +2763,7 @@
 </p>
 </div>
 
+</div>
 
 <!-- ======================================================================= -->
 <h3>
@@ -2773,7 +2771,7 @@
    <tt>TypeSymbolTable</tt> classes</a>
 </h3>
 
-<div class="doc_text">
+<div>
 <p>The <tt><a href="http://llvm.org/doxygen/classllvm_1_1ValueSymbolTable.html">
 ValueSymbolTable</a></tt> class provides a symbol table that the <a
 href="#Function"><tt>Function</tt></a> and <a href="#Module">
@@ -2808,7 +2806,7 @@
   <a name="UserLayout">The <tt>User</tt> and owned <tt>Use</tt> classes' memory layout</a>
 </h3>
 
-<div class="doc_text">
+<div>
 <p>The <tt><a href="http://llvm.org/doxygen/classllvm_1_1User.html">
 User</a></tt> class provides a basis for expressing the ownership of <tt>User</tt>
 towards other <tt><a href="http://llvm.org/doxygen/classllvm_1_1Value.html">
@@ -2823,14 +2821,13 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p>
 A subclass of <tt>User</tt> can choose between incorporating its <tt>Use</tt> objects
 or refer to them out-of-line by means of a pointer. A mixed variant
 (some <tt>Use</tt>s inline others hung off) is impractical and breaks the invariant
 that the <tt>Use</tt> objects belonging to the same <tt>User</tt> form a contiguous array.
 </p>
-</div>
 
 <p>
 We have 2 different layouts in the <tt>User</tt> (sub)classes:
@@ -2879,17 +2876,18 @@
 <i>(In the above figures '<tt>P</tt>' stands for the <tt>Use**</tt> that
     is stored in each <tt>Use</tt> object in the member <tt>Use::Prev</tt>)</i>
 
+</div>
+
 <!-- ______________________________________________________________________ -->
 <h4>
   <a name="Waymarking">The waymarking algorithm</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p>
 Since the <tt>Use</tt> objects are deprived of the direct (back)pointer to
 their <tt>User</tt> objects, there must be a fast and exact method to
 recover it. This is accomplished by the following scheme:</p>
-</div>
 
 A bit-encoding in the 2 LSBits (least significant bits) of the <tt>Use::Prev</tt> allows to find the
 start of the <tt>User</tt> object:
@@ -2920,15 +2918,16 @@
 stops, so that the <i>worst case is 20 memory accesses</i> when there are
 1000 <tt>Use</tt> objects associated with a <tt>User</tt>.</p>
 
+</div>
+
 <!-- ______________________________________________________________________ -->
 <h4>
   <a name="ReferenceImpl">Reference implementation</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p>
 The following literate Haskell fragment demonstrates the concept:</p>
-</div>
 
 <div class="doc_code">
 <pre>
@@ -3010,11 +3009,15 @@
 OK, passed 500 tests.
 </pre>
 
+</div>
+
 <!-- ______________________________________________________________________ -->
 <h4>
   <a name="Tagging">Tagging considerations</a>
 </h4>
 
+<div>
+
 <p>
 To maintain the invariant that the 2 LSBits of each <tt>Use**</tt> in <tt>Use</tt>
 never change after being set up, setters of <tt>Use::Prev</tt> must re-tag the
@@ -3029,13 +3032,17 @@
 
 </div>
 
-  <!-- *********************************************************************** -->
+</div>
+
+</div>
+
+<!-- *********************************************************************** -->
 <h2>
   <a name="coreclasses">The Core LLVM Class Hierarchy Reference </a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 <p><tt>#include "<a href="/doxygen/Type_8h-source.html">llvm/Type.h</a>"</tt>
 <br>doxygen info: <a href="/doxygen/classllvm_1_1Type.html">Type Class</a></p>
 
@@ -3044,14 +3051,12 @@
 header files in the <tt>include/llvm/</tt> directory, and implemented in
 the <tt>lib/VMCore</tt> directory.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="Type">The <tt>Type</tt> class and Derived Types</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
   <p><tt>Type</tt> is a superclass of all type classes. Every <tt>Value</tt> has
   a <tt>Type</tt>. <tt>Type</tt> cannot be instantiated directly but only
@@ -3066,14 +3071,13 @@
   be performed with address equality of the Type Instance. That is, given two 
   <tt>Type*</tt> values, the types are identical if the pointers are identical.
   </p>
-</div>
 
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="m_Type">Important Public Methods</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <ul>
   <li><tt>bool isIntegerTy() const</tt>: Returns true for any integer type.</li>
@@ -3094,7 +3098,7 @@
 <h4>
   <a name="derivedtypes">Important Derived Types</a>
 </h4>
-<div class="doc_text">
+<div>
 <dl>
   <dt><tt>IntegerType</tt></dt>
   <dd>Subclass of DerivedType that represents integer types of any bit width. 
@@ -3156,14 +3160,14 @@
 </dl>
 </div>
 
-
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="Module">The <tt>Module</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p><tt>#include "<a
 href="/doxygen/Module_8h-source.html">llvm/Module.h</a>"</tt><br> doxygen info:
@@ -3178,14 +3182,12 @@
 href="#SymbolTable"><tt>SymbolTable</tt></a>.  Additionally, it contains a few
 helpful member functions that try to make common operations easy.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="m_Module">Important Public Members of the <tt>Module</tt> class</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <ul>
   <li><tt>Module::Module(std::string name = "")</tt></li>
@@ -3284,13 +3286,14 @@
 
 </div>
 
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="Value">The <tt>Value</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p><tt>#include "<a href="/doxygen/Value_8h-source.html">llvm/Value.h</a>"</tt>
 <br> 
@@ -3341,14 +3344,12 @@
 represents this value.  Although this may take some getting used to, it
 simplifies the representation and makes it easier to manipulate.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="m_Value">Important Public Members of the <tt>Value</tt> class</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <ul>
   <li><tt>Value::use_iterator</tt> - Typedef for iterator over the
@@ -3395,12 +3396,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="User">The <tt>User</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
   
 <p>
 <tt>#include "<a href="/doxygen/User_8h-source.html">llvm/User.h</a>"</tt><br>
@@ -3419,14 +3422,12 @@
 allowing this direct connection.  This connection provides the use-def
 information in LLVM.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="m_User">Important Public Members of the <tt>User</tt> class</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>User</tt> class exposes the operand list in two ways: through
 an index access interface and through an iterator based interface.</p>
@@ -3449,12 +3450,14 @@
 
 </div>    
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="Instruction">The <tt>Instruction</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p><tt>#include "</tt><tt><a
 href="/doxygen/Instruction_8h-source.html">llvm/Instruction.h</a>"</tt><br>
@@ -3485,15 +3488,13 @@
 this file confuses doxygen, so these enum values don't show up correctly in the
 <a href="/doxygen/classllvm_1_1Instruction.html">doxygen output</a>.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="s_Instruction">
     Important Subclasses of the <tt>Instruction</tt> class
   </a>
 </h4>
-<div class="doc_text">
+<div>
   <ul>
     <li><tt><a name="BinaryOperator">BinaryOperator</a></tt>
     <p>This subclasses represents all two operand instructions whose operands
@@ -3518,7 +3519,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <ul>
   <li><tt><a href="#BasicBlock">BasicBlock</a> *getParent()</tt>
@@ -3538,12 +3539,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="Constant">The <tt>Constant</tt> class and subclasses</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Constant represents a base class for different types of constants. It
 is subclassed by ConstantInt, ConstantArray, etc. for representing 
@@ -3551,11 +3554,9 @@
 a subclass, which represents the address of a global variable or function.
 </p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>Important Subclasses of Constant</h4>
-<div class="doc_text">
+<div>
 <ul>
   <li>ConstantInt : This subclass of Constant represents an integer constant of
   any width.
@@ -3603,13 +3604,14 @@
 </ul>
 </div>
 
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="GlobalValue">The <tt>GlobalValue</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p><tt>#include "<a
 href="/doxygen/GlobalValue_8h-source.html">llvm/GlobalValue.h</a>"</tt><br>
@@ -3649,8 +3651,6 @@
 can be accessed. This is explained in the <a href="LangRef.html#globalvars">LLVM
 Language Reference Manual</a>.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="m_GlobalValue">
@@ -3658,7 +3658,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <ul>
   <li><tt>bool hasInternalLinkage() const</tt><br>
@@ -3674,12 +3674,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="Function">The <tt>Function</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p><tt>#include "<a
 href="/doxygen/Function_8h-source.html">llvm/Function.h</a>"</tt><br> doxygen
@@ -3726,7 +3728,6 @@
 <p>Note that <tt>Function</tt> is a <a href="#GlobalValue">GlobalValue</a>
 and therefore also a <a href="#Constant">Constant</a>. The value of the function
 is its address (after linking) which is guaranteed to be constant.</p>
-</div>
 
 <!-- _______________________________________________________________________ -->
 <h4>
@@ -3735,7 +3736,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <ul>
   <li><tt>Function(const </tt><tt><a href="#FunctionType">FunctionType</a>
@@ -3813,12 +3814,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="GlobalVariable">The <tt>GlobalVariable</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p><tt>#include "<a
 href="/doxygen/GlobalVariable_8h-source.html">llvm/GlobalVariable.h</a>"</tt>
@@ -3840,7 +3843,6 @@
 <a href="#Constant"><tt>Constant</tt></a>), and if they have an initializer, 
 they may be marked as "constant" themselves (indicating that their contents 
 never change at runtime).</p>
-</div>
 
 <!-- _______________________________________________________________________ -->
 <h4>
@@ -3849,7 +3851,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <ul>
   <li><tt>GlobalVariable(const </tt><tt><a href="#Type">Type</a> *Ty, bool
@@ -3887,13 +3889,14 @@
 
 </div>
 
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="BasicBlock">The <tt>BasicBlock</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p><tt>#include "<a
 href="/doxygen/BasicBlock_8h-source.html">llvm/BasicBlock.h</a>"</tt><br>
@@ -3918,8 +3921,6 @@
 like branches and can go in the switch tables. <tt>BasicBlock</tt>s have type
 <tt>label</tt>.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="m_BasicBlock">
@@ -3927,7 +3928,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 <ul>
 
 <li><tt>BasicBlock(const std::string &Name = "", </tt><tt><a
@@ -3979,13 +3980,14 @@
 
 </div>
 
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="Argument">The <tt>Argument</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>This subclass of Value defines the interface for incoming formal
 arguments to a function. A Function maintains a list of its formal
@@ -3993,6 +3995,8 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <hr>
 <address>

Modified: llvm/trunk/docs/Projects.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/Projects.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/Projects.html (original)
+++ llvm/trunk/docs/Projects.html Fri Apr 22 19:30:22 2011
@@ -33,7 +33,7 @@
 <h2><a name="overview">Overview</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The LLVM build system is designed to facilitate the building of third party
 projects that use LLVM header files, libraries, and tools.  In order to use
@@ -78,7 +78,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Follow these simple steps to start your project:</p>
 
@@ -150,7 +150,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>In order to use the LLVM build system, you will want to organize your
 source code so that it can benefit from the build system's features.
@@ -235,21 +235,19 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The LLVM build system provides a convenient way to build libraries and
 executables.  Most of your project Makefiles will only need to define a few
 variables.  Below is a list of the variables one can set and what they can
 do:</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="reqVars">Required Variables</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <dl>
   <dt>LEVEL
@@ -267,7 +265,7 @@
   <a name="varsBuildDir">Variables for Building Subdirectories</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <dl>
   <dt>DIRS
@@ -298,7 +296,7 @@
   <a name="varsBuildLib">Variables for Building Libraries</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <dl>
   <dt>LIBRARYNAME
@@ -329,7 +327,7 @@
   <a name="varsBuildProg">Variables for Building Programs</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <dl>
   <dt>TOOLNAME
@@ -372,7 +370,7 @@
   <a name="miscVars">Miscellaneous Variables</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <dl>
   <dt>ExtraSource
@@ -398,13 +396,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="objcode">Placement of Object Code</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The final location of built libraries and executables will depend upon
 whether you do a Debug, Release, or Profile build.</p>
@@ -432,7 +432,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>If you have any questions or need any help creating an LLVM project,
 the LLVM team would be more than happy to help.  You can always post your

Modified: llvm/trunk/docs/SourceLevelDebugging.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/SourceLevelDebugging.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/SourceLevelDebugging.html (original)
+++ llvm/trunk/docs/SourceLevelDebugging.html Fri Apr 22 19:30:22 2011
@@ -71,7 +71,7 @@
 <h2><a name="introduction">Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This document is the central repository for all information pertaining to
    debug information in LLVM.  It describes the <a href="#format">actual format
@@ -80,14 +80,12 @@
    Further, this document provides specific examples of what debug information
    for C/C++ looks like.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="phil">Philosophy behind LLVM debugging information</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The idea of the LLVM debugging information is to capture how the important
    pieces of the source-language's Abstract Syntax Tree map onto LLVM code.
@@ -137,7 +135,7 @@
   <a name="consumers">Debug information consumers</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The role of debug information is to provide meta information normally
    stripped away during the compilation process.  This meta information provides
@@ -161,7 +159,7 @@
   <a name="debugopt">Debugging optimized code</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>An extremely high priority of LLVM debugging information is to make it
    interact well with optimizations and analysis.  In particular, the LLVM debug
@@ -226,13 +224,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="format">Debugging information format</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>LLVM debugging information has been carefully designed to make it possible
    for the optimizer to optimize the program and debugging information without
@@ -265,14 +265,12 @@
    common to any source-language.  The <a href="#ccxx_frontend">next section</a>
    describes the data layout conventions used by the C and C++ front-ends.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="debug_info_descriptors">Debug information descriptors</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>In consideration of the complexity and volume of debug information, LLVM
    provides a specification for well formed debug descriptors. </p>
@@ -312,14 +310,12 @@
 
 <p>The details of the various descriptors follow.</p>  
 
-</div>
-
 <!-- ======================================================================= -->
 <h4>
   <a name="format_compile_units">Compile unit descriptors</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -355,7 +351,7 @@
   <a name="format_files">File descriptors</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -384,7 +380,7 @@
   <a name="format_global_variables">Global variable descriptors</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -417,7 +413,7 @@
   <a name="format_subprograms">Subprogram descriptors</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -461,7 +457,7 @@
   <a name="format_blocks">Block descriptors</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -487,7 +483,7 @@
   <a name="format_basic_type">Basic type descriptors</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -539,7 +535,7 @@
   <a name="format_derived_type">Derived type descriptors</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -611,7 +607,7 @@
   <a name="format_composite_type">Composite type descriptors</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -698,7 +694,7 @@
   <a name="format_subrange">Subrange descriptors</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -724,7 +720,7 @@
   <a name="format_enumeration">Enumerator descriptors</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -748,7 +744,7 @@
   <a name="format_variables">Local variables</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -787,24 +783,24 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="format_common_intrinsics">Debugger intrinsic functions</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>LLVM uses several intrinsic functions (name prefixed with "llvm.dbg") to
    provide debug information at various points in generated code.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h4>
   <a name="format_common_declare">llvm.dbg.declare</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <pre>
   void %<a href="#format_common_declare">llvm.dbg.declare</a>(metadata, metadata)
 </pre>
@@ -819,7 +815,7 @@
   <a name="format_common_value">llvm.dbg.value</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <pre>
   void %<a href="#format_common_value">llvm.dbg.value</a>(metadata, i64, metadata)
 </pre>
@@ -831,12 +827,14 @@
    user source variable. </p>
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="format_common_lifetime">Object lifetimes and scoping</a>
 </h3>
 
-<div class="doc_text">
+<div>
 <p>In many languages, the local variables in functions can have their lifetimes
    or scopes limited to a subset of a function.  In the C family of languages,
    for example, variables are only live (readable and writable) within the
@@ -994,13 +992,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="ccxx_frontend">C/C++ front-end specific debug information</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The C and C++ front-ends represent information about the program in a format
    that is effectively identical
@@ -1021,14 +1021,12 @@
 <p>The following sections provide examples of various C/C++ constructs and the
    debug information that would best describe those constructs.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="ccxx_compile_units">C/C++ source file information</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Given the source files <tt>MySource.cpp</tt> and <tt>MyHeader.h</tt> located
    in the directory <tt>/Users/mine/sources</tt>, the following code:</p>
@@ -1106,7 +1104,7 @@
   <a name="ccxx_global_variable">C/C++ global variable information</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Given an integer global variable declared as follows:</p>
 
@@ -1176,7 +1174,7 @@
   <a name="ccxx_subprogram">C/C++ function information</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Given a function declared as follows:</p>
 
@@ -1233,18 +1231,16 @@
   <a name="ccxx_basic_types">C/C++ basic types</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The following are the basic type descriptors for C/C++ core types:</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h4>
   <a name="ccxx_basic_type_bool">bool</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -1270,7 +1266,7 @@
   <a name="ccxx_basic_char">char</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -1296,7 +1292,7 @@
   <a name="ccxx_basic_unsigned_char">unsigned char</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -1322,7 +1318,7 @@
   <a name="ccxx_basic_short">short</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -1348,7 +1344,7 @@
   <a name="ccxx_basic_unsigned_short">unsigned short</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -1374,7 +1370,7 @@
   <a name="ccxx_basic_int">int</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -1399,7 +1395,7 @@
   <a name="ccxx_basic_unsigned_int">unsigned int</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -1425,7 +1421,7 @@
   <a name="ccxx_basic_long_long">long long</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -1451,7 +1447,7 @@
   <a name="ccxx_basic_unsigned_long_long">unsigned long long</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -1477,7 +1473,7 @@
   <a name="ccxx_basic_float">float</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -1503,7 +1499,7 @@
   <a name="ccxx_basic_double">double</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code">
 <pre>
@@ -1524,12 +1520,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="ccxx_derived_types">C/C++ derived types</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Given the following as an example of C/C++ derived type:</p>
 
@@ -1614,7 +1612,7 @@
   <a name="ccxx_composite_types">C/C++ struct/union types</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Given the following as an example of C/C++ struct type:</p>
 
@@ -1727,7 +1725,7 @@
   <a name="ccxx_enumeration_types">C/C++ enumeration types</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Given the following as an example of C/C++ enumeration type:</p>
 
@@ -1788,6 +1786,8 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 
 <hr>

Modified: llvm/trunk/docs/SystemLibrary.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/SystemLibrary.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/SystemLibrary.html (original)
+++ llvm/trunk/docs/SystemLibrary.html Fri Apr 22 19:30:22 2011
@@ -37,7 +37,7 @@
 
 <!-- *********************************************************************** -->
 <h2><a name="abstract">Abstract</a></h2>
-<div class="doc_text">
+<div>
   <p>This document provides some details on LLVM's System Library, located in
   the source at <tt>lib/System</tt> and <tt>include/llvm/System</tt>. The
   library's purpose is to shield LLVM from the differences between operating
@@ -66,17 +66,16 @@
 <h2>
   <a name="requirements">Keeping LLVM Portable</a>
 </h2>
-<div class="doc_text">
+<div>
   <p>In order to keep LLVM portable, LLVM developers should adhere to a set of
   portability rules associated with the System Library. Adherence to these rules
   should help the System Library achieve its goal of shielding LLVM from the
   variations in operating system interfaces and doing so efficiently.  The 
   following sections define the rules needed to fulfill this objective.</p>
-</div>
 
 <!-- ======================================================================= -->
 <h3><a name="headers">Don't Include System Headers</a></h3>
-<div class="doc_text">
+<div>
   <p>Except in <tt>lib/System</tt>, no LLVM source code should directly
   <tt>#include</tt> a system header. Care has been taken to remove all such
   <tt>#includes</tt> from LLVM while <tt>lib/System</tt> was being
@@ -91,7 +90,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="expose">Don't Expose System Headers</a></h3>
-<div class="doc_text">
+<div>
   <p>The System Library must shield LLVM from <em>all</em> system headers. To 
   obtain system level functionality, LLVM source must 
   <tt>#include "llvm/System/Thing.h"</tt> and nothing else. This means that 
@@ -102,7 +101,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="c_headers">Use Standard C Headers</a></h3>
-<div class="doc_text">
+<div>
   <p>The <em>standard</em> C headers (the ones beginning with "c") are allowed
   to be exposed through the <tt>lib/System</tt> interface. These headers and 
   the things they declare are considered to be platform agnostic. LLVM source 
@@ -112,7 +111,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="cpp_headers">Use Standard C++ Headers</a></h3>
-<div class="doc_text">
+<div>
   <p>The <em>standard</em> C++ headers from the standard C++ library and
   standard template library may be exposed through the <tt>lib/System</tt>
   interface. These headers and the things they declare are considered to be
@@ -122,7 +121,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="highlev">High Level Interface</a></h3>
-<div class="doc_text">
+<div>
   <p>The entry points specified in the interface of lib/System must be aimed at 
   completing some reasonably high level task needed by LLVM. We do not want to
   simply wrap each operating system call. It would be preferable to wrap several
@@ -141,7 +140,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="nounused">No Unused Functionality</a></h3>
-<div class="doc_text">
+<div>
   <p>There must be no functionality specified in the interface of lib/System 
   that isn't actually used by LLVM. We're not writing a general purpose
   operating system wrapper here, just enough to satisfy LLVM's needs. And, LLVM
@@ -151,7 +150,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="nodupl">No Duplicate Implementations</a></h3>
-<div class="doc_text">
+<div>
   <p>The implementation of a function for a given platform must be written
   exactly once. This implies that it must be possible to apply a function's 
   implementation to multiple operating systems if those operating systems can
@@ -162,7 +161,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="virtuals">No Virtual Methods</a></h3>
-<div class="doc_text">
+<div>
   <p>The System Library interfaces can be called quite frequently by LLVM. In
   order to make those calls as efficient as possible, we discourage the use of
   virtual methods. There is no need to use inheritance for implementation
@@ -172,7 +171,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="nofunc">No Exposed Functions</a></h3>
-<div class="doc_text">
+<div>
   <p>Any functions defined by system libraries (i.e. not defined by lib/System) 
   must not be exposed through the lib/System interface, even if the header file 
   for that function is not exposed. This prevents inadvertent use of system
@@ -188,7 +187,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="nodata">No Exposed Data</a></h3>
-<div class="doc_text">
+<div>
   <p>Any data defined by system libraries (i.e. not defined by lib/System) must
   not be exposed through the lib/System interface, even if the header file for
   that function is not exposed. As with functions, this prevents inadvertent use
@@ -197,7 +196,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="softerrors">Minimize Soft Errors</a></h3>
-<div class="doc_text">
+<div>
   <p>Operating system interfaces will generally provide error results for every
   little thing that could go wrong. In almost all cases, you can divide these
   error results into two groups: normal/good/soft and abnormal/bad/hard. That
@@ -236,7 +235,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="throw_spec">No throw Specifications</a></h3>
-<div class="doc_text">
+<div>
   <p>None of the lib/System interface functions may be declared with C++ 
   <tt>throw()</tt> specifications on them. This requirement makes sure that the
   compiler does not insert additional exception handling code into the interface
@@ -248,7 +247,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="organization">Code Organization</a></h3>
-<div class="doc_text">
+<div>
   <p>Implementations of the System Library interface are separated by their
   general class of operating system. Currently only Unix and Win32 classes are
   defined but more could be added for other operating system classifications.
@@ -277,7 +276,7 @@
 
 <!-- ======================================================================= -->
 <h3><a name="semantics">Consistent Semantics</a></h3>
-<div class="doc_text">
+<div>
   <p>The implementation of a lib/System interface can vary drastically between
   platforms. That's okay as long as the end result of the interface function 
   is the same. For example, a function to create a directory is pretty straight
@@ -292,11 +291,13 @@
 
 <!-- ======================================================================= -->
 <h3><a name="bug">Bug 351</a></h3>
-<div class="doc_text">
+<div>
   <p>See <a href="http://llvm.org/PR351">bug 351</a>
   for further details on the progress of this work</p>
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 
 <hr>

Modified: llvm/trunk/docs/TableGenFundamentals.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/TableGenFundamentals.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/TableGenFundamentals.html (original)
+++ llvm/trunk/docs/TableGenFundamentals.html Fri Apr 22 19:30:22 2011
@@ -9,7 +9,7 @@
 
 <h1>TableGen Fundamentals</h1>
 
-<div class="doc_text">
+<div>
 <ul>
   <li><a href="#introduction">Introduction</a>
   <ol>
@@ -53,7 +53,7 @@
 <h2><a name="introduction">Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>TableGen's purpose is to help a human develop and maintain records of
 domain-specific information.  Because there may be a large number of these
@@ -72,12 +72,10 @@
 <tt>llvm/utils/emacs</tt> and <tt>llvm/utils/vim</tt> directories of your LLVM
 distribution, respectively.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3><a name="concepts">Basic concepts</a></h3>
 
-<div class="doc_text">
+<div>
 
 <p>TableGen files consist of two key parts: 'classes' and 'definitions', both
 of which are considered 'records'.</p>
@@ -114,7 +112,7 @@
 <!-- ======================================================================= -->
 <h3><a name="example">An example record</a></h3>
 
-<div class="doc_text">
+<div>
 
 <p>With no other arguments, TableGen parses the specified file and prints out
 all of the classes, then all of the definitions.  This is a good way to see what
@@ -214,7 +212,7 @@
 <!-- ======================================================================= -->
 <h3><a name="running">Running TableGen</a></h3>
 
-<div class="doc_text">
+<div>
 
 <p>TableGen runs just like any other LLVM tool.  The first (optional) argument
 specifies the file to read.  If a filename is not specified, <tt>tblgen</tt>
@@ -256,27 +254,28 @@
 
 </div>
 
+</div>
 
 <!-- *********************************************************************** -->
 <h2><a name="syntax">TableGen syntax</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>TableGen doesn't care about the meaning of data (that is up to the backend to
 define), but it does care about syntax, and it enforces a simple type system.
 This section describes the syntax and the constructs allowed in a TableGen file.
 </p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3><a name="primitives">TableGen primitives</a></h3>
 
+<div>
+
 <!-- -------------------------------------------------------------------------->
 <h4><a name="comments">TableGen comments</a></h4>
 
-<div class="doc_text">
+<div>
 
 <p>TableGen supports BCPL style "<tt>//</tt>" comments, which run to the end of
 the line, and it also supports <b>nestable</b> "<tt>/* */</tt>" comments.</p>
@@ -288,7 +287,7 @@
   <a name="types">The TableGen type system</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>TableGen files are strongly typed, in a simple (but complete) type-system.
 These types are used to perform automatic conversions, check for errors, and to
@@ -348,7 +347,7 @@
   <a name="values">TableGen values and expressions</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>TableGen allows for a pretty reasonable number of different expression forms
 when building up values.  These forms allow the TableGen file to be written in a
@@ -433,12 +432,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="classesdefs">Classes and definitions</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>As mentioned in the <a href="#concepts">intro</a>, classes and definitions
 (collectively known as 'records') in TableGen are the main high-level unit of
@@ -473,14 +474,12 @@
 permit the specification of default values for their subclasses, allowing the
 subclasses to override them as they wish.</p>
 
-</div>
-
 <!---------------------------------------------------------------------------->
 <h4>
   <a name="valuedef">Value definitions</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Value definitions define named entries in records.  A value must be defined
 before it can be referred to as the operand for another value definition or
@@ -496,7 +495,7 @@
   <a name="recordlet">'let' expressions</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>A record-level let expression is used to change the value of a value
 definition in a record.  This is primarily useful when a superclass defines a
@@ -523,7 +522,7 @@
   <a name="templateargs">Class template arguments</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>TableGen permits the definition of parameterized classes as well as normal
 concrete classes.  Parameterized TableGen classes specify a list of variable
@@ -614,7 +613,7 @@
   <a name="multiclass">Multiclass definitions and instances</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 While classes with template arguments are a good way to factor commonality
@@ -772,17 +771,21 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="filescope">File scope entities</a>
 </h3>
 
+<div>
+
 <!-- -------------------------------------------------------------------------->
 <h4>
   <a name="include">File inclusion</a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p>TableGen supports the '<tt>include</tt>' token, which textually substitutes
 the specified file in place of the include directive.  The filename should be
 specified as a double quoted string immediately after the '<tt>include</tt>'
@@ -801,7 +804,7 @@
   <a name="globallet">'let' expressions</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>"Let" expressions at file scope are similar to <a href="#recordlet">"let"
 expressions within a record</a>, except they can specify a value binding for
@@ -864,11 +867,15 @@
 </pre>
 </div>
 
+</div>
+
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="codegen">Code Generator backend info</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Expressions used by code generator to describe instructions and isel
 patterns:</p>
@@ -885,7 +892,7 @@
 <h2><a name="backends">TableGen backends</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>TODO: How they work, how to write one.  This section should not contain
 details about any particular backend, except maybe -print-enums as an example.

Modified: llvm/trunk/docs/TestingGuide.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/TestingGuide.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/TestingGuide.html (original)
+++ llvm/trunk/docs/TestingGuide.html Fri Apr 22 19:30:22 2011
@@ -55,7 +55,7 @@
 <h2><a name="overview">Overview</a></h2>
 <!--=========================================================================-->
 
-<div class="doc_text">
+<div>
 
 <p>This document is the reference manual for the LLVM testing infrastructure. It
 documents the structure of the LLVM testing infrastructure, the tools needed to
@@ -67,7 +67,7 @@
 <h2><a name="requirements">Requirements</a></h2>
 <!--=========================================================================-->
 
-<div class="doc_text">
+<div>
 
 <p>In order to use the LLVM testing infrastructure, you will need all of the
 software required to build LLVM, as well
@@ -79,7 +79,7 @@
 <h2><a name="org">LLVM testing infrastructure organization</a></h2>
 <!--=========================================================================-->
 
-<div class="doc_text">
+<div>
 
 <p>The LLVM testing infrastructure contains two major categories of tests:
 regression tests and whole programs. The regression tests are contained inside
@@ -89,13 +89,11 @@
 in subversion.
 </p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h3><a name="regressiontests">Regression tests</a></h3>
 <!-- _______________________________________________________________________ -->
 
-<div class="doc_text">
+<div>
 
 <p>The regression tests are small pieces of code that test a specific feature of
 LLVM or trigger a specific bug in LLVM.  They are usually written in LLVM
@@ -122,7 +120,7 @@
 <h3><a name="testsuite">Test suite</a></h3>
 <!-- _______________________________________________________________________ -->
 
-<div class="doc_text">
+<div>
 
 <p>The test suite contains whole programs, which are pieces of
 code which can be compiled and linked into a stand-alone program that can be
@@ -147,7 +145,7 @@
 <h3><a name="debuginfotests">Debugging Information tests</a></h3>
 <!-- _______________________________________________________________________ -->
 
-<div class="doc_text">
+<div>
 
 <p>The test suite contains tests to check quality of debugging information.
 The test are written in C based languages or in LLVM assembly language. </p>
@@ -159,11 +157,13 @@
 
 </div>
 
+</div>
+
 <!--=========================================================================-->
 <h2><a name="quick">Quick start</a></h2>
 <!--=========================================================================-->
 
-<div class="doc_text">
+<div>
 
   <p>The tests are located in two separate Subversion modules. The regressions
   tests are in the main "llvm" module under the directory
@@ -179,6 +179,7 @@
 
 <!-- _______________________________________________________________________ -->
 <h3><a name="quickregressiontests">Regression tests</a></h3>
+<div>
 <!-- _______________________________________________________________________ -->
 <p>To run all of the LLVM regression tests, use master Makefile in
  the <tt>llvm/test</tt> directory:</p>
@@ -238,10 +239,14 @@
 <p>For more information on using the 'lit' tool, see 'llvm-lit --help' or the
 'lit' man page.</p>
 
+</div>
+
 <!-- _______________________________________________________________________ -->
 <h3><a name="quicktestsuite">Test suite</a></h3>
 <!-- _______________________________________________________________________ -->
 
+<div>
+
 <p>To run the comprehensive test suite (tests that compile and execute whole 
 programs), first checkout and setup the <tt>test-suite</tt> module:</p>
 
@@ -292,8 +297,9 @@
 
 <!-- _______________________________________________________________________ -->
 <h3><a name="quickdebuginfotests">Debugging Information tests</a></h3>
+<div>
 <!-- _______________________________________________________________________ -->
-<div class="doc_text">
+<div>
 
 <p> To run debugging information tests simply checkout the tests inside
 clang/test directory. </p>
@@ -309,10 +315,14 @@
 
 </div>
 
+</div>
+
+</div>
+
 <!--=========================================================================-->
 <h2><a name="rtstructure">Regression test structure</a></h2>
 <!--=========================================================================-->
-<div class="doc_text">
+<div>
   <p>The LLVM regression tests are driven by 'lit' and are located in
   the <tt>llvm/test</tt> directory.
 
@@ -334,12 +344,10 @@
     <li><tt>Verifier</tt>: tests the IR verifier.</li>
   </ul>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h3><a name="rtcustom">Writing new regression tests</a></h3>
 <!-- _______________________________________________________________________ -->
-<div class="doc_text">
+<div>
   <p>The regression test structure is very simple, but does require some
   information to be set. This information is gathered via <tt>configure</tt> and
   is written to a file, <tt>lit.site.cfg</tt>
@@ -494,7 +502,7 @@
 <h3><a name="FileCheck">The FileCheck utility</a></h3>
 <!-- _______________________________________________________________________ -->
 
-<div class="doc_text">
+<div>
 
 <p>A powerful feature of the RUN: lines is that it allows any arbitrary commands
    to be executed as part of the test harness.  While standard (portable) unix
@@ -560,14 +568,12 @@
 that would not count: "grep subl" matches if subl exists anywhere in the
 file.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="FileCheck-check-prefix">The FileCheck -check-prefix option</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The FileCheck -check-prefix option allows multiple test configurations to be
 driven from one .ll file.  This is useful in many circumstances, for example,
@@ -602,7 +608,7 @@
   <a name="FileCheck-CHECK-NEXT">The "CHECK-NEXT:" directive</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Sometimes you want to match lines and would like to verify that matches
 happen on exactly consecutive lines with no other lines in between them.  In
@@ -643,7 +649,7 @@
   <a name="FileCheck-CHECK-NOT">The "CHECK-NOT:" directive</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The CHECK-NOT: directive is used to verify that a string doesn't occur
 between two matches (or the first match and the beginning of the file).  For
@@ -674,7 +680,7 @@
   <a name="FileCheck-Matching">FileCheck Pattern Matching Syntax</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The CHECK: and CHECK-NOT: directives both take a pattern to match.  For most
 uses of FileCheck, fixed string matching is perfectly sufficient.  For some
@@ -707,7 +713,7 @@
   <a name="FileCheck-Variables">FileCheck Variables</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>It is often useful to match a pattern and then verify that it occurs again
 later in the file.  For codegen tests, this can be useful to allow any register,
@@ -742,10 +748,12 @@
 
 </div>
 
+</div>
+
 <!-- _______________________________________________________________________ -->
 <h3><a name="rtvars">Variables and substitutions</a></h3>
 <!-- _______________________________________________________________________ -->
-<div class="doc_text">
+<div>
   <p>With a RUN line there are a number of substitutions that are permitted. In
   general, any Tcl variable that is available in the <tt>substitute</tt> 
   function (in <tt>test/lib/llvm.exp</tt>) can be substituted into a RUN line.
@@ -840,7 +848,7 @@
 <!-- _______________________________________________________________________ -->
 <h3><a name="rtfeatures">Other Features</a></h3>
 <!-- _______________________________________________________________________ -->
-<div class="doc_text">
+<div>
   <p>To make RUN line writing easier, there are several shell scripts located
   in the <tt>llvm/test/Scripts</tt> directory. This directory is in the PATH
   when running tests, so you can just call these scripts using their name. For
@@ -895,11 +903,13 @@
 
 </div>
 
+</div>
+
 <!--=========================================================================-->
 <h2><a name="testsuitestructure">Test suite Structure</a></h2>
 <!--=========================================================================-->
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>test-suite</tt> module contains a number of programs that can be compiled 
 with LLVM and executed. These programs are compiled using the native compiler
@@ -967,7 +977,7 @@
 <h2><a name="testsuiterun">Running the test suite</a></h2>
 <!--=========================================================================-->
 
-<div class="doc_text">
+<div>
 
 <p>First, all tests are executed within the LLVM object directory tree.  They
 <i>are not</i> executed inside of the LLVM source tree. This is because the
@@ -1022,15 +1032,13 @@
 have the suite checked out and configured, you don't need to do it again (unless
 the test code or configure script changes).</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h3>
   <a name="testsuiteexternal">Configuring External Tests</a>
 </h3>
 <!-- _______________________________________________________________________ -->
 
-<div class="doc_text">
+<div>
 <p>In order to run the External tests in the <tt>test-suite</tt>
   module, you must specify <i>--with-externals</i>.  This
   must be done during the <em>re-configuration</em> step (see above),
@@ -1062,7 +1070,7 @@
   <a name="testsuitetests">Running different tests</a>
 </h3>
 <!-- _______________________________________________________________________ -->
-<div class="doc_text">
+<div>
 <p>In addition to the regular "whole program" tests, the <tt>test-suite</tt>
 module also provides a mechanism for compiling the programs in different ways.
 If the variable TEST is defined on the <tt>gmake</tt> command line, the test system will
@@ -1086,7 +1094,7 @@
   <a name="testsuiteoutput">Generating test output</a>
 </h3>
 <!-- _______________________________________________________________________ -->
-<div class="doc_text">
+<div>
   <p>There are a number of ways to run the tests and generate output. The most
   simple one is simply running <tt>gmake</tt> with no arguments. This will
   compile and run all programs in the tree using a number of different methods
@@ -1119,7 +1127,7 @@
 </h3>
 <!-- _______________________________________________________________________ -->
 
-<div class="doc_text">
+<div>
 
 <p>Assuming you can run the test suite, (e.g. "<tt>gmake TEST=nightly report</tt>"
 should work), it is really easy to run optimizations or code generator
@@ -1185,6 +1193,8 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 
 <hr>

Modified: llvm/trunk/docs/UsingLibraries.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/UsingLibraries.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/UsingLibraries.html (original)
+++ llvm/trunk/docs/UsingLibraries.html Fri Apr 22 19:30:22 2011
@@ -31,7 +31,7 @@
 
 <!-- ======================================================================= -->
 <h2><a name="abstract">Abstract</a></h2>
-<div class="doc_text">
+<div>
   <p>Amongst other things, LLVM is a toolkit for building compilers, linkers,
   runtime executives, virtual machines, and other program execution related
   tools. In addition to the LLVM tool set, the functionality of LLVM is
@@ -46,7 +46,7 @@
 
 <!-- ======================================================================= -->
 <h2><a name="introduction">Introduction</a></h2>
-<div class="doc_text">
+<div>
   <p>If you're writing a compiler, virtual machine, or any other utility based 
   on LLVM, you'll need to figure out which of the many libraries files you will 
   need to link with to be successful. An understanding of the contents of these 
@@ -75,7 +75,7 @@
 </div>
 <!-- ======================================================================= -->
 <h2><a name="descriptions">Library Descriptions</a></h2>
-<div class="doc_text">
+<div>
   <p>The table below categorizes each library
 <table style="text-align:left">
   <tr><th>Library</th><th>Forms</th><th>Description</th></tr>
@@ -153,7 +153,7 @@
 
 <!-- ======================================================================= -->
 <h2><a name="dependencies">Using llvm-config</a></h2>
-<div class="doc_text">
+<div>
   <p>The <tt>llvm-config</tt> tool is a perl script that produces on its output
   various kinds of information. For example, the source or object directories 
   used to build LLVM can be accessed by passing options to <tt>llvm-config</tt>.
@@ -402,15 +402,14 @@
 
 <!-- ======================================================================= -->
 <h2><a name="rot">Linkage Rules Of Thumb</a></h2>
-<div class="doc_text">
+<div>
 	<p>This section contains various "rules of thumb" about what files you
 	should link into your programs.</p>
-</div>
 <!-- ======================================================================= -->
 <h3>
   <a name="always">Always Link LLVMCore, LLVMSupport, and LLVMSystem</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>No matter what you do with LLVM, the last three entries in the value of 
   your LLVMLIBS make variable should always be: 
   <tt>LLVMCore LLVMSupport.a LLVMSystem.a</tt>. There are no <tt>LLVM</tt> 
@@ -420,13 +419,16 @@
 <h3>
   <a name="onlyone">Never link both archive and re-linked library</a>
 </h3>
-<div class="doc_text">
+<div>
   <p>There is never any point to linking both the re-linked (<tt>.o</tt>) and
   the archive (<tt>.a</tt>) versions of a library. Since the re-linked version
   includes the entire library, the archive version will not resolve any symbols.
   You could even end up with link error if you place the archive version before
   the re-linked version on the linker's command line.</p>
 </div>
+
+</div>
+
 <!-- ======================================================================= -->
 <hr>
 <div class="doc_footer">

Modified: llvm/trunk/docs/WritingAnLLVMBackend.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/WritingAnLLVMBackend.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/WritingAnLLVMBackend.html (original)
+++ llvm/trunk/docs/WritingAnLLVMBackend.html Fri Apr 22 19:30:22 2011
@@ -66,7 +66,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 This document describes techniques for writing compiler backends that convert
@@ -91,13 +91,11 @@
 conventions.
 </p>
 
-</div>
-
 <h3>
   <a name="Audience">Audience</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 The audience for this document is anyone who needs to write an LLVM backend to
@@ -110,7 +108,7 @@
   <a name="Prerequisite">Prerequisite Reading</a>
 </h3>
 
-<div class="doc_text">  
+<div>  
 
 <p>
 These essential documents must be read before reading this document:
@@ -159,7 +157,7 @@
   <a name="Basic">Basic Steps</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 To write a compiler backend for LLVM that converts the LLVM IR to code for a
@@ -224,7 +222,7 @@
   <a name="Preliminaries">Preliminaries</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 To actually create your compiler backend, you need to create and modify a few
@@ -281,13 +279,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="TargetMachine">Target Machine</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 <tt>LLVMTargetMachine</tt> is designed as a base class for targets implemented
@@ -360,11 +360,6 @@
 </pre>
 </div>
 
-</div>
-
-
-<div class="doc_text">
-
 <ul>
 <li><tt>getInstrInfo()</tt></li>
 <li><tt>getRegisterInfo()</tt></li>
@@ -398,10 +393,6 @@
 </pre>
 </div>
 
-</div>
-
-<div class="doc_text">
-
 <p>Hyphens separate portions of the <tt>TargetDescription</tt> string.</p>
 
 <ul>
@@ -429,7 +420,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 You must also register your target with the <tt>TargetRegistry</tt>, which is
@@ -485,7 +476,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 You should describe a concrete target-specific class that represents the
@@ -514,14 +505,12 @@
 implementation of <tt>XXXRegisterInfo</tt> requires hand-coding.
 </p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="RegisterDef">Defining a Register</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 The <tt>XXXRegisterInfo.td</tt> file typically starts with register definitions
@@ -704,7 +693,7 @@
   <a name="RegisterClassDef">Defining a Register Class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 The <tt>RegisterClass</tt> class (specified in <tt>Target.td</tt>) is used to
@@ -899,7 +888,7 @@
   <a href="CodeGenerator.html#targetregisterinfo">TargetRegisterInfo</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 The final step is to hand code portions of <tt>XXXRegisterInfo</tt>, which
@@ -933,13 +922,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="InstructionSet">Instruction Set</a>
 </h2>
 
 <!-- *********************************************************************** -->
-<div class="doc_text">
+<div>
 
 <p>
 During the early stages of code generation, the LLVM IR code is converted to a
@@ -1188,14 +1179,12 @@
 <tt>SPCC::ICC_NE = 9</tt>, <tt>SPCC::FCC_U = 23</tt> and so on.)
 </p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="operandMapping">Instruction Operand Mapping</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 The code generator backend maps instruction operands to fields in the
@@ -1288,7 +1277,7 @@
   <a href="CodeGenerator.html#targetinstrinfo">TargetInstrInfo</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 The final step is to hand code portions of <tt>XXXInstrInfo</tt>, which
@@ -1330,7 +1319,7 @@
 <h3>
   <a name="branchFolding">Branch Folding and If Conversion</a>
 </h3>
-<div class="doc_text">
+<div>
 
 <p>
 Performance can be improved by combining instructions or by eliminating
@@ -1485,13 +1474,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="InstructionSelector">Instruction Selector</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 LLVM uses a <tt>SelectionDAG</tt> to represent LLVM IR instructions, and nodes
@@ -1642,14 +1633,12 @@
 </pre>
 </div>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="LegalizePhase">The SelectionDAG Legalize Phase</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 The Legalize phase converts a DAG to use types and operations that are natively
@@ -1716,14 +1705,12 @@
 contains examples of all four <tt>LegalAction</tt> values.
 </p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="promote">Promote</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 For an operation without native support for a given type, the specified type may
@@ -1746,7 +1733,7 @@
   <a name="expand">Expand</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 For a type without native support, a value may need to be broken down further,
@@ -1771,7 +1758,7 @@
   <a name="custom">Custom</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 For some operations, simple type promotion or operation expansion may be
@@ -1837,7 +1824,7 @@
   <a name="legal">Legal</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>
 The <tt>Legal</tt> LegalizeAction enum value simply indicates that an
@@ -1865,12 +1852,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="callingConventions">Calling Conventions</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 To support target-specific calling conventions, <tt>XXXGenCallingConv.td</tt>
@@ -2015,13 +2004,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="assemblyPrinter">Assembly Printer</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 During the code emission stage, the code generator may utilize an LLVM pass to
@@ -2176,7 +2167,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 Subtarget support is used to inform the code generation process of instruction
@@ -2294,7 +2285,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 The implementation of a target machine optionally includes a Just-In-Time (JIT)
@@ -2333,14 +2324,12 @@
 that write data (in bytes, words, strings, etc.) to the output stream.
 </p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="mce">Machine Code Emitter</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 In <tt>XXXCodeEmitter.cpp</tt>, a target-specific of the <tt>Emitter</tt> class
@@ -2482,7 +2471,7 @@
   <a name="targetJITInfo">Target JIT Info</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>
 <tt>XXXJITInfo.cpp</tt> implements the JIT interfaces for target-specific
@@ -2537,6 +2526,8 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 
 <hr>

Modified: llvm/trunk/docs/WritingAnLLVMPass.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/WritingAnLLVMPass.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/WritingAnLLVMPass.html (original)
+++ llvm/trunk/docs/WritingAnLLVMPass.html Fri Apr 22 19:30:22 2011
@@ -126,7 +126,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The LLVM Pass Framework is an important part of the LLVM system, because LLVM
 passes are where most of the interesting parts of the compiler exist.  Passes
@@ -161,7 +161,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Here we describe how to write the "hello world" of passes.  The "Hello" pass
 is designed to simply print out the name of non-external functions that exist in
@@ -169,14 +169,12 @@
 inspects it.  The source code and files for this pass are available in the LLVM
 source tree in the <tt>lib/Transforms/Hello</tt> directory.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="makefile">Setting up the build environment</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
   <p>First, configure and build LLVM.  This needs to be done directly inside the
   LLVM source tree rather than in a separate objects directory.
@@ -224,7 +222,7 @@
   <a name="basiccode">Basic code required</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Now that we have a way to compile our new pass, we just have to write it.
 Start out with:</p>
@@ -360,7 +358,7 @@
   <a name="running">Running a pass with <tt>opt</tt></a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>Now that you have a brand new shiny shared object file, we can use the
 <tt>opt</tt> command to run an LLVM program through your pass.  Because you
@@ -446,13 +444,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="passtype">Pass classes and requirements</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>One of the first things that you should do when designing a new pass is to
 decide what class you should subclass for your pass.  The <a
@@ -467,14 +467,12 @@
 optimize how passes are run, so that the resultant compiler isn't unnecessarily
 slow.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h3>
   <a name="ImmutablePass">The <tt>ImmutablePass</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The most plain and boring type of pass is the "<tt><a
 href="http://llvm.org/doxygen/classllvm_1_1ImmutablePass.html">ImmutablePass</a></tt>"
@@ -497,7 +495,7 @@
   <a name="ModulePass">The <tt>ModulePass</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The "<tt><a
 href="http://llvm.org/doxygen/classllvm_1_1ModulePass.html">ModulePass</a></tt>"
@@ -519,14 +517,12 @@
 <tt>ModulePass</tt> and overload the <tt>runOnModule</tt> method with the
 following signature:</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="runOnModule">The <tt>runOnModule</tt> method</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual bool</b> runOnModule(Module &M) = 0;
@@ -538,12 +534,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="CallGraphSCCPass">The <tt>CallGraphSCCPass</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The "<tt><a
 href="http://llvm.org/doxygen/classllvm_1_1CallGraphSCCPass.html">CallGraphSCCPass</a></tt>"
@@ -584,8 +582,6 @@
 methods described below should return true if they modified the program, or
 false if they didn't.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="doInitialization_scc">
@@ -593,7 +589,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual bool</b> doInitialization(CallGraph &CG);
@@ -614,7 +610,7 @@
   <a name="runOnSCC">The <tt>runOnSCC</tt> method</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual bool</b> runOnSCC(CallGraphSCC &SCC) = 0;
@@ -633,7 +629,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual bool</b> doFinalization(CallGraph &CG);
@@ -646,12 +642,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="FunctionPass">The <tt>FunctionPass</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>In contrast to <tt>ModulePass</tt> subclasses, <tt><a
 href="http://llvm.org/doxygen/classllvm_1_1Pass.html">FunctionPass</a></tt>
@@ -676,8 +674,6 @@
 may overload three virtual methods to do their work.  All of these methods
 should return true if they modified the program, or false if they didn't.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="doInitialization_mod">
@@ -685,7 +681,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual bool</b> doInitialization(Module &M);
@@ -713,7 +709,7 @@
   <a name="runOnFunction">The <tt>runOnFunction</tt> method</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual bool</b> runOnFunction(Function &F) = 0;
@@ -732,7 +728,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual bool</b> doFinalization(Module &M);
@@ -745,12 +741,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="LoopPass">The <tt>LoopPass</tt> class </a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p> All <tt>LoopPass</tt> execute on each loop in the function independent of
 all of the other loops in the function. <tt>LoopPass</tt> processes loops in
@@ -761,7 +759,6 @@
 straightforward. <tt>LoopPass</tt>'s may overload three virtual methods to
 do their work. All these methods should return true if they modified the 
 program, or false if they didn't. </p>
-</div>
 
 <!-- _______________________________________________________________________ -->
 <h4>
@@ -770,7 +767,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual bool</b> doInitialization(Loop *, LPPassManager &LPM);
@@ -791,7 +788,7 @@
   <a name="runOnLoop">The <tt>runOnLoop</tt> method</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual bool</b> runOnLoop(Loop *, LPPassManager &LPM) = 0;
@@ -809,7 +806,7 @@
   <a name="doFinalization_loop">The <tt>doFinalization()</tt> method</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual bool</b> doFinalization();
@@ -822,12 +819,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="RegionPass">The <tt>RegionPass</tt> class </a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p> <tt>RegionPass</tt> is similar to <a href="#LoopPass"><tt>LoopPass</tt></a>,
 but executes on each single entry single exit region in the function.
@@ -839,7 +838,6 @@
 <tt>RegionPass</tt> to implement your own region pass. All these
 methods should return true if they modified the program, or false if they didn not.
 </p>
-</div>
 
 <!-- _______________________________________________________________________ -->
 <h4>
@@ -848,7 +846,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual bool</b> doInitialization(Region *, RGPassManager &RGM);
@@ -869,7 +867,7 @@
   <a name="runOnRegion">The <tt>runOnRegion</tt> method</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual bool</b> runOnRegion(Region *, RGPassManager &RGM) = 0;
@@ -887,7 +885,7 @@
   <a name="doFinalization_region">The <tt>doFinalization()</tt> method</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual bool</b> doFinalization();
@@ -900,14 +898,14 @@
 
 </div>
 
-
+</div>
 
 <!-- ======================================================================= -->
 <h3>
   <a name="BasicBlockPass">The <tt>BasicBlockPass</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p><tt>BasicBlockPass</tt>'s are just like <a
 href="#FunctionPass"><tt>FunctionPass</tt></a>'s, except that they must limit
@@ -929,8 +927,6 @@
 href="#doFinalization_mod"><tt>doFinalization(Module &)</tt></a> methods that <a
 href="#FunctionPass"><tt>FunctionPass</tt></a>'s have, but also have the following virtual methods that may also be implemented:</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="doInitialization_fn">
@@ -938,7 +934,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual bool</b> doInitialization(Function &F);
@@ -959,7 +955,7 @@
   <a name="runOnBasicBlock">The <tt>runOnBasicBlock</tt> method</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual bool</b> runOnBasicBlock(BasicBlock &BB) = 0;
@@ -979,7 +975,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual bool</b> doFinalization(Function &F);
@@ -993,12 +989,14 @@
 
 </div>
 
+</div>
+
 <!-- ======================================================================= -->
 <h3>
   <a name="MachineFunctionPass">The <tt>MachineFunctionPass</tt> class</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>A <tt>MachineFunctionPass</tt> is a part of the LLVM code generator that
 executes on the machine-dependent representation of each LLVM function in the
@@ -1023,8 +1021,6 @@
 data)</li>
 </ol>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="runOnMachineFunction">
@@ -1032,7 +1028,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual bool</b> runOnMachineFunction(MachineFunction &MF) = 0;
@@ -1053,13 +1049,17 @@
 
 </div>
 
+</div>
+
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="registration">Pass registration</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>In the <a href="#basiccode">Hello World</a> example pass we illustrated how
 pass registration works, and discussed some of the reasons that it is used and
@@ -1076,14 +1076,12 @@
 <p>If you want your pass to be easily dumpable, you should 
 implement the virtual <tt>print</tt> method:</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="print">The <tt>print</tt> method</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual void</b> print(std::ostream &O, <b>const</b> Module *M) <b>const</b>;
@@ -1103,13 +1101,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="interaction">Specifying interactions between passes</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>One of the main responsibilities of the <tt>PassManager</tt> is to make sure
 that passes interact with each other correctly.  Because <tt>PassManager</tt>
@@ -1126,14 +1126,12 @@
 href="#getAnalysisUsage">getAnalysisUsage</a></tt> method, it defaults to not
 having any prerequisite passes, and invalidating <b>all</b> other passes.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="getAnalysisUsage">The <tt>getAnalysisUsage</tt> method</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual void</b> getAnalysisUsage(AnalysisUsage &Info) <b>const</b>;
@@ -1156,7 +1154,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p>
 If your pass requires a previous pass to be executed (an analysis for example),
 it can use one of these methods to arrange for it to be run before your pass.
@@ -1184,7 +1182,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 <p>
 One of the jobs of the PassManager is to optimize how and when analyses are run.
 In particular, it attempts to avoid recomputing data unless it needs to.  For
@@ -1221,7 +1219,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <i>// This example modifies the program, but does not modify the CFG</i>
@@ -1241,7 +1239,7 @@
   </a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>Pass::getAnalysis<></tt> method is automatically inherited by
 your class, providing you with access to the passes that you declared that you
@@ -1293,13 +1291,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="analysisgroup">Implementing Analysis Groups</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Now that we understand the basics of how passes are defined, how they are
 used, and how they are required from other passes, it's time to get a little bit
@@ -1318,14 +1318,12 @@
 situations like this, the LLVM Pass Infrastructure supports the notion of
 Analysis Groups.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="agconcepts">Analysis Group Concepts</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>An Analysis Group is a single simple interface that may be implemented by
 multiple different passes.  Analysis Groups can be given human readable names
@@ -1376,7 +1374,7 @@
   <a name="registerag">Using <tt>RegisterAnalysisGroup</tt></a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>The <tt>RegisterAnalysisGroup</tt> template is used to register the analysis
 group itself, while the <tt>INITIALIZE_AG_PASS</tt> is used to add pass
@@ -1433,13 +1431,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="passStatistics">Pass Statistics</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 <p>The <a
 href="http://llvm.org/doxygen/Statistic_8h-source.html"><tt>Statistic</tt></a>
 class is designed to be an easy way to expose various success
@@ -1456,7 +1456,7 @@
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The <a
 href="http://llvm.org/doxygen/PassManager_8h-source.html"><tt>PassManager</tt></a>
@@ -1623,14 +1623,12 @@
 <p>Which shows that we don't accidentally invalidate dominator information
 anymore, and therefore do not have to compute it twice.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="releaseMemory">The <tt>releaseMemory</tt> method</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <div class="doc_code"><pre>
   <b>virtual void</b> releaseMemory();
@@ -1651,13 +1649,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="registering">Registering dynamically loaded passes</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p><i>Size matters</i> when constructing production quality tools using llvm, 
 both for the purposes of distribution, and for regulating the resident code size
@@ -1684,14 +1684,12 @@
 in the tool will be registered at start up. A dynamically loaded pass will
 register on load and unregister at unload.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h3>
   <a name="registering_existing">Using existing registries</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>There are predefined registries to track instruction scheduling
 (<tt>RegisterScheduler</tt>) and register allocation (<tt>RegisterRegAlloc</tt>)
@@ -1756,7 +1754,7 @@
   <a name="registering_new">Creating new registries</a>
 </h3>
 
-<div class="doc_text">
+<div>
 
 <p>The easiest way to get started is to clone one of the existing registries; we
 recommend <tt>llvm/CodeGen/RegAllocRegistry.h</tt>.  The key things to modify
@@ -1784,13 +1782,15 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="debughints">Using GDB with dynamically loaded passes</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Unfortunately, using GDB with dynamically loaded passes is not as easy as it
 should be.  First of all, you can't set a breakpoint in a shared object that has
@@ -1802,14 +1802,12 @@
 transformation invoked by <tt>opt</tt>, although nothing described here depends
 on that.</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="breakpoint">Setting a breakpoint in your pass</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>First thing you do is start <tt>gdb</tt> on the <tt>opt</tt> process:</p>
 
@@ -1854,7 +1852,7 @@
   <a name="debugmisc">Miscellaneous Problems</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Once you have the basics down, there are a couple of problems that GDB has,
 some with solutions, some without.</p>
@@ -1882,26 +1880,26 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2>
   <a name="future">Future extensions planned</a>
 </h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Although the LLVM Pass Infrastructure is very capable as it stands, and does
 some nifty stuff, there are things we'd like to add in the future.  Here is
 where we are going:</p>
 
-</div>
-
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="SMP">Multithreaded LLVM</a>
 </h4>
 
-<div class="doc_text">
+<div>
 
 <p>Multiple CPU machines are becoming more common and compilation can never be
 fast enough: obviously we should allow for a multithreaded compiler.  Because of
@@ -1919,6 +1917,8 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <hr>
 <address>

Modified: llvm/trunk/docs/index.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/index.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/index.html (original)
+++ llvm/trunk/docs/index.html Fri Apr 22 19:30:22 2011
@@ -13,7 +13,6 @@
 see <a href="http://llvm.org/releases/">the download page</a> to find
 your documentation.</p>
 
-<div class="doc_text">
 <table class="layout" width="95%"><tr class="layout"><td class="left">
 <ul>
   <li><a href="#llvmdesign">LLVM Design</a></li>
@@ -32,7 +31,6 @@
     </p>
   </form>
 </td></tr></table>
-</div>
 
 <div class="doc_author">
   <p>Written by <a href="http://llvm.org/">The LLVM Team</a></p>

Modified: llvm/trunk/docs/tutorial/LangImpl1.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/tutorial/LangImpl1.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/tutorial/LangImpl1.html (original)
+++ llvm/trunk/docs/tutorial/LangImpl1.html Fri Apr 22 19:30:22 2011
@@ -33,7 +33,7 @@
 <h2><a name="intro">Tutorial Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Welcome to the "Implementing a language with LLVM" tutorial.  This tutorial
 runs through the implementation of a simple language, showing how fun and
@@ -126,7 +126,7 @@
 <h2><a name="language">The Basic Language</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This tutorial will be illustrated with a toy language that we'll call
 "<a href="http://en.wikipedia.org/wiki/Kaleidoscope">Kaleidoscope</a>" (derived 
@@ -184,7 +184,7 @@
 <h2><a name="lexer">The Lexer</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>When it comes to implementing a language, the first thing needed is
 the ability to process a text file and recognize what it says.  The traditional

Modified: llvm/trunk/docs/tutorial/LangImpl2.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/tutorial/LangImpl2.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/tutorial/LangImpl2.html (original)
+++ llvm/trunk/docs/tutorial/LangImpl2.html Fri Apr 22 19:30:22 2011
@@ -39,7 +39,7 @@
 <h2><a name="intro">Chapter 2 Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Welcome to Chapter 2 of the "<a href="index.html">Implementing a language
 with LLVM</a>" tutorial.  This chapter shows you how to use the lexer, built in 
@@ -64,7 +64,7 @@
 <h2><a name="ast">The Abstract Syntax Tree (AST)</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The AST for a program captures its behavior in such a way that it is easy for
 later stages of the compiler (e.g. code generation) to interpret.  We basically
@@ -181,7 +181,7 @@
 <h2><a name="parserbasics">Parser Basics</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Now that we have an AST to build, we need to define the parser code to build
 it.  The idea here is that we want to parse something like "x+y" (which is
@@ -242,7 +242,7 @@
 <h2><a name="parserprimexprs">Basic Expression Parsing</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>We start with numeric literals, because they are the simplest to process.
 For each production in our grammar, we'll define a function which parses that
@@ -396,7 +396,7 @@
 <h2><a name="parserbinops">Binary Expression Parsing</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Binary expressions are significantly harder to parse because they are often
 ambiguous.  For example, when given the string "x+y*z", the parser can choose
@@ -618,7 +618,7 @@
 <h2><a name="parsertop">Parsing the Rest</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 The next thing missing is handling of function prototypes.  In Kaleidoscope,
@@ -715,7 +715,7 @@
 <h2><a name="driver">The Driver</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The driver for this simply invokes all of the parsing pieces with a top-level
 dispatch loop.  There isn't much interesting here, so I'll just include the
@@ -754,7 +754,7 @@
 <h2><a name="conclusions">Conclusions</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>With just under 400 lines of commented code (240 lines of non-comment, 
 non-blank code), we fully defined our minimal language, including a lexer,
@@ -791,7 +791,7 @@
 <h2><a name="code">Full Code Listing</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 Here is the complete code listing for this and the previous chapter.  

Modified: llvm/trunk/docs/tutorial/LangImpl3.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/tutorial/LangImpl3.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/tutorial/LangImpl3.html (original)
+++ llvm/trunk/docs/tutorial/LangImpl3.html Fri Apr 22 19:30:22 2011
@@ -37,7 +37,7 @@
 <h2><a name="intro">Chapter 3 Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Welcome to Chapter 3 of the "<a href="index.html">Implementing a language
 with LLVM</a>" tutorial.  This chapter shows you how to transform the <a 
@@ -60,7 +60,7 @@
 <h2><a name="basics">Code Generation Setup</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 In order to generate LLVM IR, we want some simple setup to get started.  First
@@ -150,7 +150,7 @@
 <h2><a name="exprs">Expression Code Generation</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Generating LLVM code for expression nodes is very straightforward: less
 than 45 lines of commented code for all four of our expression nodes.  First
@@ -296,7 +296,7 @@
 <h2><a name="funcs">Function Code Generation</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Code generation for prototypes and functions must handle a number of
 details, which make their code less beautiful than expression code
@@ -518,7 +518,7 @@
 <h2><a name="driver">Driver Changes and Closing Thoughts</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 For now, code generation to LLVM doesn't really get us much, except that we can
@@ -659,7 +659,7 @@
 <h2><a name="code">Full Code Listing</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 Here is the complete code listing for our running example, enhanced with the

Modified: llvm/trunk/docs/tutorial/LangImpl4.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/tutorial/LangImpl4.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/tutorial/LangImpl4.html (original)
+++ llvm/trunk/docs/tutorial/LangImpl4.html Fri Apr 22 19:30:22 2011
@@ -36,7 +36,7 @@
 <h2><a name="intro">Chapter 4 Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Welcome to Chapter 4 of the "<a href="index.html">Implementing a language
 with LLVM</a>" tutorial.  Chapters 1-3 described the implementation of a simple
@@ -51,7 +51,7 @@
 <h2><a name="trivialconstfold">Trivial Constant Folding</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 Our demonstration for Chapter 3 is elegant and easy to extend.  Unfortunately,
@@ -136,7 +136,7 @@
 <h2><a name="optimizerpasses">LLVM Optimization Passes</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>LLVM provides many optimization passes, which do many different sorts of
 things and have different tradeoffs.  Unlike other systems, LLVM doesn't hold
@@ -267,7 +267,7 @@
 <h2><a name="jit">Adding a JIT Compiler</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Code that is available in LLVM IR can have a wide variety of tools 
 applied to it.  For example, you can run optimizations on it (as we did above),
@@ -475,7 +475,7 @@
 <h2><a name="code">Full Code Listing</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 Here is the complete code listing for our running example, enhanced with the

Modified: llvm/trunk/docs/tutorial/LangImpl5.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/tutorial/LangImpl5.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/tutorial/LangImpl5.html (original)
+++ llvm/trunk/docs/tutorial/LangImpl5.html Fri Apr 22 19:30:22 2011
@@ -51,7 +51,7 @@
 <h2><a name="intro">Chapter 5 Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Welcome to Chapter 5 of the "<a href="index.html">Implementing a language
 with LLVM</a>" tutorial.  Parts 1-4 described the implementation of the simple
@@ -68,7 +68,7 @@
 <h2><a name="ifthen">If/Then/Else</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 Extending Kaleidoscope to support if/then/else is quite straightforward.  It
@@ -108,14 +108,12 @@
 <p>Now that we know what we "want", lets break this down into its constituent
 pieces.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h4><a name="iflexer">Lexer Extensions for If/Then/Else</a></h4>
 <!-- ======================================================================= -->
 
 
-<div class="doc_text">
+<div>
 
 <p>The lexer extensions are straightforward.  First we add new enum values
 for the relevant tokens:</p>
@@ -148,7 +146,7 @@
 <h4><a name="ifast">AST Extensions for If/Then/Else</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>To represent the new expression we add a new AST node for it:</p>
 
@@ -173,7 +171,7 @@
 <h4><a name="ifparser">Parser Extensions for If/Then/Else</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>Now that we have the relevant tokens coming from the lexer and we have the
 AST node to build, our parsing logic is relatively straightforward.  First we
@@ -231,7 +229,7 @@
 <h4><a name="ifir">LLVM IR for If/Then/Else</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>Now that we have it parsing and building the AST, the final piece is adding
 LLVM code generation support.  This is the most interesting part of the
@@ -347,7 +345,7 @@
 <h4><a name="ifcodegen">Code Generation for If/Then/Else</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>In order to generate code for this, we implement the <tt>Codegen</tt> method
 for <tt>IfExprAST</tt>:</p>
@@ -496,11 +494,13 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="for">'for' Loop Expression</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Now that we know how to add basic control flow constructs to the language,
 we have the tools to add more powerful things.  Lets add something more
@@ -529,13 +529,11 @@
 <p>As before, lets talk about the changes that we need to Kaleidoscope to
 support this.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h4><a name="forlexer">Lexer Extensions for the 'for' Loop</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>The lexer extensions are the same sort of thing as for if/then/else:</p>
 
@@ -564,7 +562,7 @@
 <h4><a name="forast">AST Extensions for the 'for' Loop</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>The AST node is just as simple.  It basically boils down to capturing
 the variable name and the constituent expressions in the node.</p>
@@ -590,7 +588,7 @@
 <h4><a name="forparser">Parser Extensions for the 'for' Loop</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>The parser code is also fairly standard.  The only interesting thing here is
 handling of the optional step value.  The parser code handles it by checking to
@@ -649,7 +647,7 @@
 <h4><a name="forir">LLVM IR for the 'for' Loop</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>Now we get to the good part: the LLVM IR we want to generate for this thing.
 With the simple example above, we get this LLVM IR (note that this dump is
@@ -694,7 +692,7 @@
 <h4><a name="forcodegen">Code Generation for the 'for' Loop</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>The first part of Codegen is very simple: we just output the start expression
 for the loop value:</p>
@@ -867,11 +865,13 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="code">Full Code Listing</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 Here is the complete code listing for our running example, enhanced with the

Modified: llvm/trunk/docs/tutorial/LangImpl6.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/tutorial/LangImpl6.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/tutorial/LangImpl6.html (original)
+++ llvm/trunk/docs/tutorial/LangImpl6.html Fri Apr 22 19:30:22 2011
@@ -37,7 +37,7 @@
 <h2><a name="intro">Chapter 6 Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Welcome to Chapter 6 of the "<a href="index.html">Implementing a language
 with LLVM</a>" tutorial.  At this point in our tutorial, we now have a fully
@@ -63,7 +63,7 @@
 <h2><a name="idea">User-defined Operators: the Idea</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 The "operator overloading" that we will add to Kaleidoscope is more general than
@@ -128,7 +128,7 @@
 <h2><a name="binary">User-defined Binary Operators</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Adding support for user-defined binary operators is pretty simple with our
 current framework.  We'll first add support for the unary/binary keywords:</p>
@@ -345,7 +345,7 @@
 <h2><a name="unary">User-defined Unary Operators</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Since we don't currently support unary operators in the Kaleidoscope
 language, we'll need to add everything to support them.  Above, we added simple
@@ -494,7 +494,7 @@
 <h2><a name="example">Kicking the Tires</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>It is somewhat hard to believe, but with a few simple extensions we've
 covered in the last chapters, we have grown a real-ish language.  With this, we 
@@ -799,7 +799,7 @@
 <h2><a name="code">Full Code Listing</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 Here is the complete code listing for our running example, enhanced with the

Modified: llvm/trunk/docs/tutorial/LangImpl7.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/tutorial/LangImpl7.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/tutorial/LangImpl7.html (original)
+++ llvm/trunk/docs/tutorial/LangImpl7.html Fri Apr 22 19:30:22 2011
@@ -41,7 +41,7 @@
 <h2><a name="intro">Chapter 7 Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Welcome to Chapter 7 of the "<a href="index.html">Implementing a language
 with LLVM</a>" tutorial.  In chapters 1 through 6, we've built a very
@@ -69,7 +69,7 @@
 <h2><a name="why">Why is this a hard problem?</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 To understand why mutable variables cause complexities in SSA construction, 
@@ -143,7 +143,7 @@
 <h2><a name="memory">Memory in LLVM</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The 'trick' here is that while LLVM does require all register values to be
 in SSA form, it does not require (or permit) memory objects to be in SSA form.
@@ -324,7 +324,7 @@
 <h2><a name="kalvars">Mutable Variables in Kaleidoscope</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Now that we know the sort of problem we want to tackle, lets see what this
 looks like in the context of our little Kaleidoscope language.  We're going to
@@ -380,7 +380,7 @@
 <h2><a name="adjustments">Adjusting Existing Variables for Mutation</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 The symbol table in Kaleidoscope is managed at code generation time by the 
@@ -649,7 +649,7 @@
 <h2><a name="assignment">New Assignment Operator</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>With our current framework, adding a new assignment operator is really
 simple.  We will parse it just like any other binary operator, but handle it
@@ -746,7 +746,7 @@
 <h2><a name="localvars">User-defined Local Variables</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Adding var/in is just like any other other extensions we made to 
 Kaleidoscope: we extend the lexer, the parser, the AST and the code generator.
@@ -979,7 +979,7 @@
 <h2><a name="code">Full Code Listing</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 Here is the complete code listing for our running example, enhanced with mutable

Modified: llvm/trunk/docs/tutorial/LangImpl8.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/tutorial/LangImpl8.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/tutorial/LangImpl8.html (original)
+++ llvm/trunk/docs/tutorial/LangImpl8.html Fri Apr 22 19:30:22 2011
@@ -45,7 +45,7 @@
 <h2><a name="conclusion">Tutorial Conclusion</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Welcome to the the final chapter of the "<a href="index.html">Implementing a
 language with LLVM</a>" tutorial.  In the course of this tutorial, we have grown
@@ -156,18 +156,16 @@
 <h2><a name="llvmirproperties">Properties of the LLVM IR</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>We have a couple common questions about code in the LLVM IR form - lets just
 get these out of the way right now, shall we?</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h4><a name="targetindep">Target Independence</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>Kaleidoscope is an example of a "portable language": any program written in
 Kaleidoscope will work the same way on any target that it runs on.  Many other
@@ -221,7 +219,7 @@
 <h4><a name="safety">Safety Guarantees</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>Many of the languages above are also "safe" languages: it is impossible for
 a program written in Java to corrupt its address space and crash the process
@@ -243,7 +241,7 @@
 <h4><a name="langspecific">Language-Specific Optimizations</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>One thing about LLVM that turns off many people is that it does not solve all
 the world's problems in one system (sorry 'world hunger', someone else will have
@@ -293,23 +291,23 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="tipsandtricks">Tips and Tricks</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>There is a variety of useful tips and tricks that you come to know after
 working on/with LLVM that aren't obvious at first glance.  Instead of letting
 everyone rediscover them, this section talks about some of these issues.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h4><a name="offsetofsizeof">Implementing portable offsetof/sizeof</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>One interesting thing that comes up, if you are trying to keep the code 
 generated by your compiler "target independent", is that you often need to know
@@ -329,7 +327,7 @@
 <h4><a name="gcstack">Garbage Collected Stack Frames</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>Some languages want to explicitly manage their stack frames, often so that
 they are garbage collected or to allow easy implementation of closures.  There
@@ -343,6 +341,8 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <hr>
 <address>

Modified: llvm/trunk/docs/tutorial/OCamlLangImpl1.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/tutorial/OCamlLangImpl1.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/tutorial/OCamlLangImpl1.html (original)
+++ llvm/trunk/docs/tutorial/OCamlLangImpl1.html Fri Apr 22 19:30:22 2011
@@ -38,7 +38,7 @@
 <h2><a name="intro">Tutorial Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Welcome to the "Implementing a language with LLVM" tutorial.  This tutorial
 runs through the implementation of a simple language, showing how fun and
@@ -133,7 +133,7 @@
 <h2><a name="language">The Basic Language</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>This tutorial will be illustrated with a toy language that we'll call
 "<a href="http://en.wikipedia.org/wiki/Kaleidoscope">Kaleidoscope</a>" (derived
@@ -191,7 +191,7 @@
 <h2><a name="lexer">The Lexer</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>When it comes to implementing a language, the first thing needed is
 the ability to process a text file and recognize what it says.  The traditional

Modified: llvm/trunk/docs/tutorial/OCamlLangImpl2.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/tutorial/OCamlLangImpl2.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/tutorial/OCamlLangImpl2.html (original)
+++ llvm/trunk/docs/tutorial/OCamlLangImpl2.html Fri Apr 22 19:30:22 2011
@@ -43,7 +43,7 @@
 <h2><a name="intro">Chapter 2 Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Welcome to Chapter 2 of the "<a href="index.html">Implementing a language
 with LLVM in Objective Caml</a>" tutorial.  This chapter shows you how to use
@@ -68,7 +68,7 @@
 <h2><a name="ast">The Abstract Syntax Tree (AST)</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The AST for a program captures its behavior in such a way that it is easy for
 later stages of the compiler (e.g. code generation) to interpret.  We basically
@@ -149,7 +149,7 @@
 <h2><a name="parserbasics">Parser Basics</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Now that we have an AST to build, we need to define the parser code to build
 it.  The idea here is that we want to parse something like "x+y" (which is
@@ -184,7 +184,7 @@
 <h2><a name="parserprimexprs">Basic Expression Parsing</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>We start with numeric literals, because they are the simplest to process.
 For each production in our grammar, we'll define a function which parses that
@@ -305,7 +305,7 @@
 <h2><a name="parserbinops">Binary Expression Parsing</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Binary expressions are significantly harder to parse because they are often
 ambiguous.  For example, when given the string "x+y*z", the parser can choose
@@ -518,7 +518,7 @@
 <h2><a name="parsertop">Parsing the Rest</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 The next thing missing is handling of function prototypes.  In Kaleidoscope,
@@ -597,7 +597,7 @@
 <h2><a name="driver">The Driver</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The driver for this simply invokes all of the parsing pieces with a top-level
 dispatch loop.  There isn't much interesting here, so I'll just include the
@@ -653,7 +653,7 @@
 <h2><a name="conclusions">Conclusions</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>With just under 300 lines of commented code (240 lines of non-comment,
 non-blank code), we fully defined our minimal language, including a lexer,
@@ -690,7 +690,7 @@
 <h2><a name="code">Full Code Listing</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 Here is the complete code listing for this and the previous chapter.

Modified: llvm/trunk/docs/tutorial/OCamlLangImpl3.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/tutorial/OCamlLangImpl3.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/tutorial/OCamlLangImpl3.html (original)
+++ llvm/trunk/docs/tutorial/OCamlLangImpl3.html Fri Apr 22 19:30:22 2011
@@ -41,7 +41,7 @@
 <h2><a name="intro">Chapter 3 Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Welcome to Chapter 3 of the "<a href="index.html">Implementing a language
 with LLVM</a>" tutorial.  This chapter shows you how to transform the <a
@@ -60,7 +60,7 @@
 <h2><a name="basics">Code Generation Setup</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 In order to generate LLVM IR, we want some simple setup to get started.  First
@@ -131,7 +131,7 @@
 <h2><a name="exprs">Expression Code Generation</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Generating LLVM code for expression nodes is very straightforward: less
 than 30 lines of commented code for all four of our expression nodes.  First
@@ -266,7 +266,7 @@
 <h2><a name="funcs">Function Code Generation</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Code generation for prototypes and functions must handle a number of
 details, which make their code less beautiful than expression code
@@ -469,7 +469,7 @@
 <h2><a name="driver">Driver Changes and Closing Thoughts</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 For now, code generation to LLVM doesn't really get us much, except that we can
@@ -609,7 +609,7 @@
 <h2><a name="code">Full Code Listing</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 Here is the complete code listing for our running example, enhanced with the

Modified: llvm/trunk/docs/tutorial/OCamlLangImpl4.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/tutorial/OCamlLangImpl4.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/tutorial/OCamlLangImpl4.html (original)
+++ llvm/trunk/docs/tutorial/OCamlLangImpl4.html Fri Apr 22 19:30:22 2011
@@ -40,7 +40,7 @@
 <h2><a name="intro">Chapter 4 Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Welcome to Chapter 4 of the "<a href="index.html">Implementing a language
 with LLVM</a>" tutorial.  Chapters 1-3 described the implementation of a simple
@@ -55,7 +55,7 @@
 <h2><a name="trivialconstfold">Trivial Constant Folding</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p><b>Note:</b> the default <tt>IRBuilder</tt> now always includes the constant 
 folding optimisations below.<p>
@@ -150,7 +150,7 @@
 <h2><a name="optimizerpasses">LLVM Optimization Passes</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>LLVM provides many optimization passes, which do many different sorts of
 things and have different tradeoffs.  Unlike other systems, LLVM doesn't hold
@@ -284,7 +284,7 @@
 <h2><a name="jit">Adding a JIT Compiler</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Code that is available in LLVM IR can have a wide variety of tools
 applied to it.  For example, you can run optimizations on it (as we did above),
@@ -487,7 +487,7 @@
 <h2><a name="code">Full Code Listing</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 Here is the complete code listing for our running example, enhanced with the

Modified: llvm/trunk/docs/tutorial/OCamlLangImpl5.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/tutorial/OCamlLangImpl5.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/tutorial/OCamlLangImpl5.html (original)
+++ llvm/trunk/docs/tutorial/OCamlLangImpl5.html Fri Apr 22 19:30:22 2011
@@ -55,7 +55,7 @@
 <h2><a name="intro">Chapter 5 Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Welcome to Chapter 5 of the "<a href="index.html">Implementing a language
 with LLVM</a>" tutorial.  Parts 1-4 described the implementation of the simple
@@ -72,7 +72,7 @@
 <h2><a name="ifthen">If/Then/Else</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 Extending Kaleidoscope to support if/then/else is quite straightforward.  It
@@ -112,14 +112,12 @@
 <p>Now that we know what we "want", lets break this down into its constituent
 pieces.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h4><a name="iflexer">Lexer Extensions for If/Then/Else</a></h4>
 <!-- ======================================================================= -->
 
 
-<div class="doc_text">
+<div>
 
 <p>The lexer extensions are straightforward.  First we add new variants
 for the relevant tokens:</p>
@@ -155,7 +153,7 @@
 <h4><a name="ifast">AST Extensions for If/Then/Else</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>To represent the new expression we add a new AST variant for it:</p>
 
@@ -176,7 +174,7 @@
 <h4><a name="ifparser">Parser Extensions for If/Then/Else</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>Now that we have the relevant tokens coming from the lexer and we have the
 AST node to build, our parsing logic is relatively straightforward.  First we
@@ -214,7 +212,7 @@
 <h4><a name="ifir">LLVM IR for If/Then/Else</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>Now that we have it parsing and building the AST, the final piece is adding
 LLVM code generation support.  This is the most interesting part of the
@@ -331,7 +329,7 @@
 <h4><a name="ifcodegen">Code Generation for If/Then/Else</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>In order to generate code for this, we implement the <tt>Codegen</tt> method
 for <tt>IfExprAST</tt>:</p>
@@ -488,11 +486,13 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="for">'for' Loop Expression</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Now that we know how to add basic control flow constructs to the language,
 we have the tools to add more powerful things.  Lets add something more
@@ -521,13 +521,11 @@
 <p>As before, lets talk about the changes that we need to Kaleidoscope to
 support this.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h4><a name="forlexer">Lexer Extensions for the 'for' Loop</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>The lexer extensions are the same sort of thing as for if/then/else:</p>
 
@@ -557,7 +555,7 @@
 <h4><a name="forast">AST Extensions for the 'for' Loop</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>The AST variant is just as simple.  It basically boils down to capturing
 the variable name and the constituent expressions in the node.</p>
@@ -577,7 +575,7 @@
 <h4><a name="forparser">Parser Extensions for the 'for' Loop</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>The parser code is also fairly standard.  The only interesting thing here is
 handling of the optional step value.  The parser code handles it by checking to
@@ -624,7 +622,7 @@
 <h4><a name="forir">LLVM IR for the 'for' Loop</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>Now we get to the good part: the LLVM IR we want to generate for this thing.
 With the simple example above, we get this LLVM IR (note that this dump is
@@ -669,7 +667,7 @@
 <h4><a name="forcodegen">Code Generation for the 'for' Loop</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>The first part of Codegen is very simple: we just output the start expression
 for the loop value:</p>
@@ -842,11 +840,13 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="code">Full Code Listing</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 Here is the complete code listing for our running example, enhanced with the

Modified: llvm/trunk/docs/tutorial/OCamlLangImpl6.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/tutorial/OCamlLangImpl6.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/tutorial/OCamlLangImpl6.html (original)
+++ llvm/trunk/docs/tutorial/OCamlLangImpl6.html Fri Apr 22 19:30:22 2011
@@ -41,7 +41,7 @@
 <h2><a name="intro">Chapter 6 Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Welcome to Chapter 6 of the "<a href="index.html">Implementing a language
 with LLVM</a>" tutorial.  At this point in our tutorial, we now have a fully
@@ -67,7 +67,7 @@
 <h2><a name="idea">User-defined Operators: the Idea</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 The "operator overloading" that we will add to Kaleidoscope is more general than
@@ -132,7 +132,7 @@
 <h2><a name="binary">User-defined Binary Operators</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Adding support for user-defined binary operators is pretty simple with our
 current framework.  We'll first add support for the unary/binary keywords:</p>
@@ -323,7 +323,7 @@
 <h2><a name="unary">User-defined Unary Operators</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Since we don't currently support unary operators in the Kaleidoscope
 language, we'll need to add everything to support them.  Above, we added simple
@@ -475,7 +475,7 @@
 <h2><a name="example">Kicking the Tires</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>It is somewhat hard to believe, but with a few simple extensions we've
 covered in the last chapters, we have grown a real-ish language.  With this, we
@@ -781,7 +781,7 @@
 <h2><a name="code">Full Code Listing</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 Here is the complete code listing for our running example, enhanced with the

Modified: llvm/trunk/docs/tutorial/OCamlLangImpl7.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/tutorial/OCamlLangImpl7.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/tutorial/OCamlLangImpl7.html (original)
+++ llvm/trunk/docs/tutorial/OCamlLangImpl7.html Fri Apr 22 19:30:22 2011
@@ -45,7 +45,7 @@
 <h2><a name="intro">Chapter 7 Introduction</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Welcome to Chapter 7 of the "<a href="index.html">Implementing a language
 with LLVM</a>" tutorial.  In chapters 1 through 6, we've built a very
@@ -73,7 +73,7 @@
 <h2><a name="why">Why is this a hard problem?</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 To understand why mutable variables cause complexities in SSA construction,
@@ -147,7 +147,7 @@
 <h2><a name="memory">Memory in LLVM</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>The 'trick' here is that while LLVM does require all register values to be
 in SSA form, it does not require (or permit) memory objects to be in SSA form.
@@ -328,7 +328,7 @@
 <h2><a name="kalvars">Mutable Variables in Kaleidoscope</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Now that we know the sort of problem we want to tackle, lets see what this
 looks like in the context of our little Kaleidoscope language.  We're going to
@@ -384,7 +384,7 @@
 <h2><a name="adjustments">Adjusting Existing Variables for Mutation</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 The symbol table in Kaleidoscope is managed at code generation time by the
@@ -673,7 +673,7 @@
 <h2><a name="assignment">New Assignment Operator</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>With our current framework, adding a new assignment operator is really
 simple.  We will parse it just like any other binary operator, but handle it
@@ -774,7 +774,7 @@
 <h2><a name="localvars">User-defined Local Variables</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Adding var/in is just like any other other extensions we made to
 Kaleidoscope: we extend the lexer, the parser, the AST and the code generator.
@@ -956,7 +956,7 @@
 <h2><a name="code">Full Code Listing</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>
 Here is the complete code listing for our running example, enhanced with mutable

Modified: llvm/trunk/docs/tutorial/OCamlLangImpl8.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/tutorial/OCamlLangImpl8.html?rev=130040&r1=130039&r2=130040&view=diff
==============================================================================
--- llvm/trunk/docs/tutorial/OCamlLangImpl8.html (original)
+++ llvm/trunk/docs/tutorial/OCamlLangImpl8.html Fri Apr 22 19:30:22 2011
@@ -45,7 +45,7 @@
 <h2><a name="conclusion">Tutorial Conclusion</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>Welcome to the the final chapter of the "<a href="index.html">Implementing a
 language with LLVM</a>" tutorial.  In the course of this tutorial, we have grown
@@ -156,18 +156,16 @@
 <h2><a name="llvmirproperties">Properties of the LLVM IR</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>We have a couple common questions about code in the LLVM IR form - lets just
 get these out of the way right now, shall we?</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h4><a name="targetindep">Target Independence</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>Kaleidoscope is an example of a "portable language": any program written in
 Kaleidoscope will work the same way on any target that it runs on.  Many other
@@ -221,7 +219,7 @@
 <h4><a name="safety">Safety Guarantees</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>Many of the languages above are also "safe" languages: it is impossible for
 a program written in Java to corrupt its address space and crash the process
@@ -243,7 +241,7 @@
 <h4><a name="langspecific">Language-Specific Optimizations</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>One thing about LLVM that turns off many people is that it does not solve all
 the world's problems in one system (sorry 'world hunger', someone else will have
@@ -293,23 +291,23 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <h2><a name="tipsandtricks">Tips and Tricks</a></h2>
 <!-- *********************************************************************** -->
 
-<div class="doc_text">
+<div>
 
 <p>There is a variety of useful tips and tricks that you come to know after
 working on/with LLVM that aren't obvious at first glance.  Instead of letting
 everyone rediscover them, this section talks about some of these issues.</p>
 
-</div>
-
 <!-- ======================================================================= -->
 <h4><a name="offsetofsizeof">Implementing portable offsetof/sizeof</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>One interesting thing that comes up, if you are trying to keep the code 
 generated by your compiler "target independent", is that you often need to know
@@ -329,7 +327,7 @@
 <h4><a name="gcstack">Garbage Collected Stack Frames</a></h4>
 <!-- ======================================================================= -->
 
-<div class="doc_text">
+<div>
 
 <p>Some languages want to explicitly manage their stack frames, often so that
 they are garbage collected or to allow easy implementation of closures.  There
@@ -343,6 +341,8 @@
 
 </div>
 
+</div>
+
 <!-- *********************************************************************** -->
 <hr>
 <address>





More information about the llvm-commits mailing list