diff options
Diffstat (limited to 'docs/tutorial/OCamlLangImpl7.html')
-rw-r--r-- | docs/tutorial/OCamlLangImpl7.html | 43 |
1 files changed, 20 insertions, 23 deletions
diff --git a/docs/tutorial/OCamlLangImpl7.html b/docs/tutorial/OCamlLangImpl7.html index a9fcd70..a48e679 100644 --- a/docs/tutorial/OCamlLangImpl7.html +++ b/docs/tutorial/OCamlLangImpl7.html @@ -13,7 +13,7 @@ <body> -<div class="doc_title">Kaleidoscope: Extending the Language: Mutable Variables</div> +<h1>Kaleidoscope: Extending the Language: Mutable Variables</h1> <ul> <li><a href="index.html">Up to Tutorial Index</a></li> @@ -42,10 +42,10 @@ </div> <!-- *********************************************************************** --> -<div class="doc_section"><a name="intro">Chapter 7 Introduction</a></div> +<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 @@ -70,10 +70,10 @@ support for this, though the way it works is a bit unexpected for some.</p> </div> <!-- *********************************************************************** --> -<div class="doc_section"><a name="why">Why is this a hard problem?</a></div> +<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, @@ -144,10 +144,10 @@ logic.</p> </div> <!-- *********************************************************************** --> -<div class="doc_section"><a name="memory">Memory in LLVM</a></div> +<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. @@ -325,11 +325,10 @@ variables now! </div> <!-- *********************************************************************** --> -<div class="doc_section"><a name="kalvars">Mutable Variables in -Kaleidoscope</a></div> +<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 @@ -382,11 +381,10 @@ Kaleidoscope to support new variable definitions. </div> <!-- *********************************************************************** --> -<div class="doc_section"><a name="adjustments">Adjusting Existing Variables for -Mutation</a></div> +<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 @@ -672,10 +670,10 @@ we'll add the assignment operator.</p> </div> <!-- *********************************************************************** --> -<div class="doc_section"><a name="assignment">New Assignment Operator</a></div> +<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 @@ -773,11 +771,10 @@ add this next! </div> <!-- *********************************************************************** --> -<div class="doc_section"><a name="localvars">User-defined Local -Variables</a></div> +<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,10 +953,10 @@ anywhere in sight.</p> </div> <!-- *********************************************************************** --> -<div class="doc_section"><a name="code">Full Code Listing</a></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 mutable @@ -1887,7 +1884,7 @@ extern double printd(double X) { </dd> </dl> -<a href="LangImpl8.html">Next: Conclusion and other useful LLVM tidbits</a> +<a href="OCamlLangImpl8.html">Next: Conclusion and other useful LLVM tidbits</a> </div> <!-- *********************************************************************** --> @@ -1899,9 +1896,9 @@ extern double printd(double X) { src="http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01!"></a> <a href="mailto:sabre@nondot.org">Chris Lattner</a><br> - <a href="http://llvm.org">The LLVM Compiler Infrastructure</a><br> + <a href="http://llvm.org/">The LLVM Compiler Infrastructure</a><br> <a href="mailto:idadesub@users.sourceforge.net">Erick Tryzelaar</a><br> - Last modified: $Date: 2011-01-01 04:27:43 +0100 (Sat, 01 Jan 2011) $ + Last modified: $Date: 2011-04-23 02:30:22 +0200 (Sat, 23 Apr 2011) $ </address> </body> </html> |