1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-26 04:32:44 +01:00

[Kaleidoscope] Tiny typo fixes

Fixes for "lets" references which should be "let's" in the Kaleidoscope
tutorial.

Patch by: Robin Dupret

Differential Revision: https://reviews.llvm.org/D44990

llvm-svn: 328772
This commit is contained in:
Sjoerd Meijer 2018-03-29 12:31:06 +00:00
parent cd09be7294
commit bc1fb95f66
5 changed files with 14 additions and 14 deletions

View File

@ -20,7 +20,7 @@ Parsing <http://en.wikipedia.org/wiki/Recursive_descent_parser>`_ and
`Operator-Precedence
Parsing <http://en.wikipedia.org/wiki/Operator-precedence_parser>`_ to
parse the Kaleidoscope language (the latter for binary expressions and
the former for everything else). Before we get to parsing though, lets
the former for everything else). Before we get to parsing though, let's
talk about the output of the parser: the Abstract Syntax Tree.
The Abstract Syntax Tree (AST)
@ -716,7 +716,7 @@ Intermediate Representation (IR) from the AST.
Full Code Listing
=================
Here is the complete code listing for our running example. Because this
Here is the complete code listing for our running example. Because this
uses the LLVM libraries, we need to link them in. To do this, we use the
`llvm-config <http://llvm.org/cmds/llvm-config.html>`_ tool to inform
our makefile/command line about which options to use:

View File

@ -261,7 +261,7 @@ Function Code Generation
Code generation for prototypes and functions must handle a number of
details, which make their code less beautiful than expression code
generation, but allows us to illustrate some important points. First,
lets talk about code generation for prototypes: they are used both for
let's talk about code generation for prototypes: they are used both for
function bodies and external function declarations. The code starts
with:

View File

@ -203,7 +203,7 @@ Another good source of ideas can come from looking at the passes that
experiment with passes from the command line, so you can see if they do
anything.
Now that we have reasonable code coming out of our front-end, lets talk
Now that we have reasonable code coming out of our front-end, let's talk
about executing it!
Adding a JIT Compiler
@ -335,7 +335,7 @@ Recall, however, that the module we created a few lines earlier (via
``InitializeModuleAndPassManager``) is still open and waiting for new code to be
added.
With just these two changes, lets see how Kaleidoscope works now!
With just these two changes, let's see how Kaleidoscope works now!
::
@ -514,7 +514,7 @@ In HandleDefinition, we add two lines to transfer the newly defined function to
the JIT and open a new module. In HandleExtern, we just need to add one line to
add the prototype to FunctionProtos.
With these changes made, lets try our REPL again (I removed the dump of the
With these changes made, let's try our REPL again (I removed the dump of the
anonymous functions this time, you should get the idea by now :) :
::

View File

@ -27,7 +27,7 @@ lexer, parser, AST, and LLVM code emitter. This example is nice, because
it shows how easy it is to "grow" a language over time, incrementally
extending it as new ideas are discovered.
Before we get going on "how" we add this extension, lets talk about
Before we get going on "how" we add this extension, let's talk about
"what" we want. The basic idea is that we want to be able to write this
sort of thing:
@ -54,7 +54,7 @@ false, the second subexpression is evaluated and returned. Since
Kaleidoscope allows side-effects, this behavior is important to nail
down.
Now that we know what we "want", lets break this down into its
Now that we know what we "want", let's break this down into its
constituent pieces.
Lexer Extensions for If/Then/Else
@ -176,7 +176,7 @@ of the if/then/else example, because this is where it starts to
introduce new concepts. All of the code above has been thoroughly
described in previous chapters.
To motivate the code we want to produce, lets take a look at a simple
To motivate the code we want to produce, let's take a look at a simple
example. Consider:
::
@ -276,7 +276,7 @@ of using the techniques that we will describe for #1, or you can insert
Phi nodes directly, if convenient. In this case, it is really
easy to generate the Phi node, so we choose to do it directly.
Okay, enough of the motivation and overview, lets generate code!
Okay, enough of the motivation and overview, let's generate code!
Code Generation for If/Then/Else
--------------------------------
@ -429,7 +429,7 @@ languages...
=====================
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
language, we have the tools to add more powerful things. Let's add
something more aggressive, a 'for' expression:
::
@ -450,7 +450,7 @@ it executes its body expression. Because we don't have anything better
to return, we'll just define the loop as always returning 0.0. In the
future when we have mutable variables, it will get more useful.
As before, lets talk about the changes that we need to Kaleidoscope to
As before, let's talk about the changes that we need to Kaleidoscope to
support this.
Lexer Extensions for the 'for' Loop
@ -619,7 +619,7 @@ this dump is generated with optimizations disabled for clarity):
}
This loop contains all the same constructs we saw before: a phi node,
several expressions, and some basic blocks. Lets see how this fits
several expressions, and some basic blocks. Let's see how this fits
together.
Code Generation for the 'for' Loop

View File

@ -303,7 +303,7 @@ we need to do to "extend the grammar".
Now we have useful user-defined binary operators. This builds a lot on
the previous framework we built for other operators. Adding unary
operators is a bit more challenging, because we don't have any framework
for it yet - lets see what it takes.
for it yet - let's see what it takes.
User-defined Unary Operators
============================