From 128eb863dfb242aac982b505a9aab06dc35be8d1 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Mon, 5 Nov 2007 19:06:59 +0000 Subject: add table of contents to each chapter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43723 91177308-0d34-0410-b5e6-96231b3b80d8 --- docs/tutorial/LangImpl1.html | 14 ++++++++++++-- docs/tutorial/LangImpl2.html | 24 ++++++++++++++++++++---- docs/tutorial/LangImpl3.html | 19 ++++++++++++++++--- docs/tutorial/LangImpl4.html | 25 +++++++++++++++++++------ docs/tutorial/LangImpl5.html | 37 ++++++++++++++++++++++++++++++++----- docs/tutorial/LangImpl6.html | 19 ++++++++++++++++--- docs/tutorial/LangImpl7.html | 24 ++++++++++++++++++++---- 7 files changed, 135 insertions(+), 27 deletions(-) diff --git a/docs/tutorial/LangImpl1.html b/docs/tutorial/LangImpl1.html index 6325d3c..8d96750 100644 --- a/docs/tutorial/LangImpl1.html +++ b/docs/tutorial/LangImpl1.html @@ -13,6 +13,16 @@
Kaleidoscope: The basic language, with its lexer
+ +

Written by Chris Lattner

@@ -32,7 +42,7 @@ can extend to other languages and to play with other things. -
The basic language
+
The Basic Language
@@ -99,7 +109,7 @@ a lot of fun to play with languages!

-
The Lexer
+
The Lexer
diff --git a/docs/tutorial/LangImpl2.html b/docs/tutorial/LangImpl2.html index edf19a8..2339d96 100644 --- a/docs/tutorial/LangImpl2.html +++ b/docs/tutorial/LangImpl2.html @@ -13,18 +13,34 @@
Kaleidoscope: Implementing a Parser and AST
+ +

Written by Chris Lattner

- +
-

Welcome to part 2 of the "Implementing a language with -LLVM" tutorial. This chapter shows you how to use the Welcome to Chapter 2 of the "Implementing a language +with LLVM" tutorial. This chapter shows you how to use the Lexer built in Chapter 1 to build a full parser for our Kaleidoscope language and build an

- +
diff --git a/docs/tutorial/LangImpl3.html b/docs/tutorial/LangImpl3.html index 59513ab..2e961d2 100644 --- a/docs/tutorial/LangImpl3.html +++ b/docs/tutorial/LangImpl3.html @@ -13,18 +13,31 @@
Kaleidoscope: Code generation to LLVM IR
+ +

Written by Chris Lattner

- +
-

Welcome to part 3 of the "Implementing a language with -LLVM" tutorial. This chapter shows you how to transform the Welcome to Chapter 3 of the "Implementing a language +with LLVM" tutorial. This chapter shows you how to transform the Abstract Syntax Tree built in Chapter 2 into LLVM IR. This will teach you a little bit about how LLVM does things, as well as demonstrate how easy it is to use. It's much more work to build a lexer and diff --git a/docs/tutorial/LangImpl4.html b/docs/tutorial/LangImpl4.html index 6fb2c88..6bafacb 100644 --- a/docs/tutorial/LangImpl4.html +++ b/docs/tutorial/LangImpl4.html @@ -13,21 +13,34 @@

Kaleidoscope: Adding JIT and Optimizer Support
+ +

Written by Chris Lattner

- +
-

Welcome to part 4 of the "Implementing a language with -LLVM" tutorial. Parts 1-3 described the implementation of a simple language -and included support for generating LLVM IR. This chapter describes two new -techniques: adding optimizer support to your language, and adding JIT compiler -support. This shows how to get nice efficient code for your language.

+

Welcome to Chapter 4 of the "Implementing a language +with LLVM" tutorial. Parts 1-3 described the implementation of a simple +language and included support for generating LLVM IR. This chapter describes +two new techniques: adding optimizer support to your language, and adding JIT +compiler support. This shows how to get nice efficient code for your +language.

diff --git a/docs/tutorial/LangImpl5.html b/docs/tutorial/LangImpl5.html index 09477fa..a579758 100644 --- a/docs/tutorial/LangImpl5.html +++ b/docs/tutorial/LangImpl5.html @@ -13,18 +13,45 @@
Kaleidoscope: Extending the Language: Control Flow
+ +

Written by Chris Lattner

- +
-

Welcome to Part 5 of the "Implementing a language with -LLVM" tutorial. Parts 1-4 described the implementation of the simple +

Welcome to Chapter 5 of the "Implementing a language +with LLVM" tutorial. Parts 1-4 described the implementation of the simple Kaleidoscope language and included support for generating LLVM IR, following by optimizations and a JIT compiler. Unfortunately, as presented, Kaleidoscope is mostly useless: it has no control flow other than call and return. This means @@ -116,7 +143,7 @@ stuff:

+ If/Then/Else
@@ -142,7 +169,7 @@ public: +If/Then/Else
diff --git a/docs/tutorial/LangImpl6.html b/docs/tutorial/LangImpl6.html index 5a184c2..978ba8e 100644 --- a/docs/tutorial/LangImpl6.html +++ b/docs/tutorial/LangImpl6.html @@ -13,18 +13,31 @@
Kaleidoscope: Extending the Language: User-defined Operators
+ +

Written by Chris Lattner

- +
-

Welcome to Part 6 of the "Implementing a language with -LLVM" tutorial. At this point in our tutorial, we now have a fully +

Welcome to Chapter 6 of the "Implementing a language +with LLVM" tutorial. At this point in our tutorial, we now have a fully functional language that is fairly minimal, but also useful. One big problem with it though is that it doesn't have many useful operators (like division, logical negation, or even any comparisons other than less-than.

diff --git a/docs/tutorial/LangImpl7.html b/docs/tutorial/LangImpl7.html index 07dd5c6..bea97e5 100644 --- a/docs/tutorial/LangImpl7.html +++ b/docs/tutorial/LangImpl7.html @@ -14,19 +14,35 @@
Kaleidoscope: Extending the Language: Mutable Variables
+ +

Written by Chris Lattner

- +
-

Welcome to Part 7 of the "Implementing a language with -LLVM" tutorial. In parts 1 through 6, we've built a very respectable, -albeit simple, Welcome to Chapter 7 of the "Implementing a language +with LLVM" tutorial. In chapters 1 through 6, we've built a very +respectable, albeit simple, functional programming language. In our journey, we learned some parsing techniques, how to build and represent an AST, how to build LLVM IR, and how to optimize -- cgit v1.1