forked from OSchip/llvm-project
[Doc][NFC] Fix Kaleidoscope links, typos and add blog posts for MCJIT
This commit is contained in:
parent
3201274dea
commit
3546b37221
llvm
docs/tutorial
LangImpl01.rstLangImpl02.rstLangImpl03.rstLangImpl04.rstLangImpl05.rstLangImpl06.rstLangImpl07.rstLangImpl08.rstLangImpl09.rstLangImpl10.rst
MyFirstLanguageFrontend
examples/Kaleidoscope/MCJIT
|
@ -4,4 +4,4 @@
|
|||
Kaleidoscope Tutorial
|
||||
=====================
|
||||
|
||||
The Kaleidoscope Tutorial has `moved to another location <MyFirstLanguageFrontend/index.html>`_ .
|
||||
The Kaleidoscope Tutorial has moved to :doc:`MyFirstLanguageFrontend/index`.
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
Kaleidoscope Tutorial
|
||||
=====================
|
||||
|
||||
The Kaleidoscope Tutorial has `moved to another location <MyFirstLanguageFrontend/index.html>`_ .
|
||||
The Kaleidoscope Tutorial has moved to :doc:`MyFirstLanguageFrontend/index`.
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
Kaleidoscope Tutorial
|
||||
=====================
|
||||
|
||||
The Kaleidoscope Tutorial has `moved to another location <MyFirstLanguageFrontend/index.html>`_ .
|
||||
The Kaleidoscope Tutorial has moved to :doc:`MyFirstLanguageFrontend/index`.
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
Kaleidoscope Tutorial
|
||||
=====================
|
||||
|
||||
The Kaleidoscope Tutorial has `moved to another location <MyFirstLanguageFrontend/index.html>`_ .
|
||||
The Kaleidoscope Tutorial has moved to :doc:`MyFirstLanguageFrontend/index`.
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
Kaleidoscope Tutorial
|
||||
=====================
|
||||
|
||||
The Kaleidoscope Tutorial has `moved to another location <MyFirstLanguageFrontend/index.html>`_ .
|
||||
The Kaleidoscope Tutorial has moved to :doc:`MyFirstLanguageFrontend/index`.
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
Kaleidoscope Tutorial
|
||||
=====================
|
||||
|
||||
The Kaleidoscope Tutorial has `moved to another location <MyFirstLanguageFrontend/index.html>`_ .
|
||||
The Kaleidoscope Tutorial has moved to :doc:`MyFirstLanguageFrontend/index`.
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
Kaleidoscope Tutorial
|
||||
=====================
|
||||
|
||||
The Kaleidoscope Tutorial has `moved to another location <MyFirstLanguageFrontend/index.html>`_ .
|
||||
The Kaleidoscope Tutorial has moved to :doc:`MyFirstLanguageFrontend/index`.
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
Kaleidoscope Tutorial
|
||||
=====================
|
||||
|
||||
The Kaleidoscope Tutorial has `moved to another location <MyFirstLanguageFrontend/index.html>`_ .
|
||||
The Kaleidoscope Tutorial has moved to :doc:`MyFirstLanguageFrontend/index`.
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
Kaleidoscope Tutorial
|
||||
=====================
|
||||
|
||||
The Kaleidoscope Tutorial has `moved to another location <MyFirstLanguageFrontend/index.html>`_ .
|
||||
The Kaleidoscope Tutorial has moved to :doc:`MyFirstLanguageFrontend/index`.
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
Kaleidoscope Tutorial
|
||||
=====================
|
||||
|
||||
The Kaleidoscope Tutorial has `moved to another location <MyFirstLanguageFrontend/index.html>`_ .
|
||||
The Kaleidoscope Tutorial has moved to :doc:`MyFirstLanguageFrontend/index`.
|
||||
|
|
|
@ -642,7 +642,7 @@ the LLVM JIT and optimizer. To build this example, use:
|
|||
.. code-block:: bash
|
||||
|
||||
# Compile
|
||||
clang++ -g toy.cpp `llvm-config --cxxflags --ldflags --system-libs --libs core mcjit native` -O3 -o toy
|
||||
clang++ -g toy.cpp `llvm-config --cxxflags --ldflags --system-libs --libs core orcjit native` -O3 -o toy
|
||||
# Run
|
||||
./toy
|
||||
|
||||
|
|
|
@ -355,12 +355,12 @@ beginning of the block. :)
|
|||
Once the insertion point is set, we recursively codegen the "then"
|
||||
expression from the AST. To finish off the "then" block, we create an
|
||||
unconditional branch to the merge block. One interesting (and very
|
||||
important) aspect of the LLVM IR is that it `requires all basic blocks
|
||||
to be "terminated" <../LangRef.html#functionstructure>`_ with a `control
|
||||
flow instruction <../LangRef.html#terminators>`_ such as return or
|
||||
branch. This means that all control flow, *including fall throughs* must
|
||||
be made explicit in the LLVM IR. If you violate this rule, the verifier
|
||||
will emit an error.
|
||||
important) aspect of the LLVM IR is that it :ref:`requires all basic
|
||||
blocks to be "terminated" <functionstructure>` with a :ref:`control
|
||||
flow instruction <terminators>` such as return or branch. This means
|
||||
that all control flow, *including fall throughs* must be made explicit
|
||||
in the LLVM IR. If you violate this rule, the verifier will emit an
|
||||
error.
|
||||
|
||||
The final line here is quite subtle, but is very important. The basic
|
||||
issue is that when we create the Phi node in the merge block, we need to
|
||||
|
@ -801,7 +801,7 @@ the if/then/else and for expressions. To build this example, use:
|
|||
.. code-block:: bash
|
||||
|
||||
# Compile
|
||||
clang++ -g toy.cpp `llvm-config --cxxflags --ldflags --system-libs --libs core mcjit native` -O3 -o toy
|
||||
clang++ -g toy.cpp `llvm-config --cxxflags --ldflags --system-libs --libs core orcjit native` -O3 -o toy
|
||||
# Run
|
||||
./toy
|
||||
|
||||
|
|
|
@ -747,7 +747,7 @@ the support for user-defined operators. To build this example, use:
|
|||
.. code-block:: bash
|
||||
|
||||
# Compile
|
||||
clang++ -g toy.cpp `llvm-config --cxxflags --ldflags --system-libs --libs core mcjit native` -O3 -o toy
|
||||
clang++ -g toy.cpp `llvm-config --cxxflags --ldflags --system-libs --libs core orcjit native` -O3 -o toy
|
||||
# Run
|
||||
./toy
|
||||
|
||||
|
|
|
@ -870,7 +870,7 @@ mutable variables and var/in support. To build this example, use:
|
|||
.. code-block:: bash
|
||||
|
||||
# Compile
|
||||
clang++ -g toy.cpp `llvm-config --cxxflags --ldflags --system-libs --libs core mcjit native` -O3 -o toy
|
||||
clang++ -g toy.cpp `llvm-config --cxxflags --ldflags --system-libs --libs core orcjit native` -O3 -o toy
|
||||
# Run
|
||||
./toy
|
||||
|
||||
|
|
|
@ -452,7 +452,7 @@ debug information. To build this example, use:
|
|||
.. code-block:: bash
|
||||
|
||||
# Compile
|
||||
clang++ -g toy.cpp `llvm-config --cxxflags --ldflags --system-libs --libs core mcjit native` -O3 -o toy
|
||||
clang++ -g toy.cpp `llvm-config --cxxflags --ldflags --system-libs --libs core orcjit native` -O3 -o toy
|
||||
# Run
|
||||
./toy
|
||||
|
||||
|
|
|
@ -2,11 +2,8 @@
|
|||
// Kaleidoscope with MCJIT
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
The files in this directory are meant to accompany a series of blog posts
|
||||
that describe the process of porting the Kaleidoscope tutorial to use the MCJIT
|
||||
execution engine instead of the older JIT engine.
|
||||
The files in this directory are accompany a series of blog posts that describe
|
||||
the process of porting the Kaleidoscope tutorial to use the MCJIT execution
|
||||
engine instead of the older JIT engine.
|
||||
|
||||
When the blog posts are ready this file will be updated with links to the posts.
|
||||
|
||||
These directories contain Makefiles that allow the code to be built in a
|
||||
standalone manner, independent of the larger LLVM build infrastructure.
|
|
@ -2,11 +2,12 @@
|
|||
// Kaleidoscope with MCJIT
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
The files in this directory are meant to accompany the first in a series of
|
||||
The files in this directory are meant to accompany the third blog in a series of
|
||||
three blog posts that describe the process of porting the Kaleidoscope tutorial
|
||||
to use the MCJIT execution engine instead of the older JIT engine.
|
||||
|
||||
When the blog post is ready this file will be updated with a link to the post.
|
||||
The link of blog post-
|
||||
https://blog.llvm.org/posts/2013-08-02-object-caching-with-kaleidoscope/
|
||||
|
||||
The source code in this directory demonstrates the third version of the
|
||||
program, now modified to accept an input IR file on the command line and,
|
||||
|
@ -15,14 +16,12 @@ optionally, to use a basic caching mechanism to store generated object images.
|
|||
The toy-jit.cpp file contains a version of the original JIT-based source code
|
||||
that has been modified to support the input IR file command line option.
|
||||
|
||||
This directory contain a Makefile that allow the code to be built in a
|
||||
standalone manner, independent of the larger LLVM build infrastructure. To build
|
||||
the program you will need to have 'clang++' and 'llvm-config' in your path. If
|
||||
you attempt to build using the LLVM 3.3 release, some minor modifications will
|
||||
be required.
|
||||
To build the program you will need to have 'clang++' and 'llvm-config' in your
|
||||
path. If you attempt to build using the LLVM 3.3 release, some minor
|
||||
modifications will be required.
|
||||
|
||||
This directory also contains a Python script that may be used to generate random
|
||||
input for the program and test scripts to capture data for rough performance
|
||||
comparisons. Another Python script will split generated input files into
|
||||
definitions and function calls for the purpose of testing the IR input and
|
||||
caching facilities.
|
||||
caching facilities.
|
||||
|
|
|
@ -6,20 +6,16 @@ The files in this directory are meant to accompany the first in a series of
|
|||
three blog posts that describe the process of porting the Kaleidoscope tutorial
|
||||
to use the MCJIT execution engine instead of the older JIT engine.
|
||||
|
||||
When the blog post is ready this file will be updated with a link to the post.
|
||||
|
||||
The source code in this directory combines all previous versions, including the
|
||||
old JIT-based implementation, into a single file for easy comparison with
|
||||
command line options to select between the various possibilities.
|
||||
|
||||
This directory contain a Makefile that allow the code to be built in a
|
||||
standalone manner, independent of the larger LLVM build infrastructure. To build
|
||||
the program you will need to have 'clang++' and 'llvm-config' in your path. If
|
||||
you attempt to build using the LLVM 3.3 release, some minor modifications will
|
||||
be required.
|
||||
To build the program you will need to have 'clang++' and 'llvm-config' in your
|
||||
path. If you attempt to build using the LLVM 3.3 release, some minor
|
||||
modifications will be required.
|
||||
|
||||
This directory also contains a Python script that may be used to generate random
|
||||
input for the program and test scripts to capture data for rough performance
|
||||
comparisons. Another Python script will split generated input files into
|
||||
definitions and function calls for the purpose of testing the IR input and
|
||||
caching facilities.
|
||||
caching facilities.
|
||||
|
|
|
@ -2,17 +2,16 @@
|
|||
// Kaleidoscope with MCJIT
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
The files in this directory are meant to accompany the first in a series of
|
||||
The files in this directory are meant to accompany the first blog in a series of
|
||||
three blog posts that describe the process of porting the Kaleidoscope tutorial
|
||||
to use the MCJIT execution engine instead of the older JIT engine.
|
||||
|
||||
When the blog post is ready this file will be updated with a link to the post.
|
||||
The link of blog post-
|
||||
https://blog.llvm.org/posts/2013-07-22-using-mcjit-with-kaleidoscope-tutorial/
|
||||
|
||||
The source code in this directory demonstrates the initial working version of
|
||||
the program before subsequent performance improvements are applied.
|
||||
|
||||
This directory contain a Makefile that allow the code to be built in a
|
||||
standalone manner, independent of the larger LLVM build infrastructure. To build
|
||||
the program you will need to have 'clang++' and 'llvm-config' in your path. If
|
||||
you attempt to build using the LLVM 3.3 release, some minor modifications will
|
||||
be required, as mentioned in the blog posts.
|
||||
To build the program you will need to have 'clang++' and 'llvm-config' in your
|
||||
path. If you attempt to build using the LLVM 3.3 release, some minor
|
||||
modifications will be required, as mentioned in the blog posts.
|
||||
|
|
|
@ -2,11 +2,12 @@
|
|||
// Kaleidoscope with MCJIT
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
The files in this directory are meant to accompany the first in a series of
|
||||
The files in this directory are meant to accompany the second blog in a series of
|
||||
three blog posts that describe the process of porting the Kaleidoscope tutorial
|
||||
to use the MCJIT execution engine instead of the older JIT engine.
|
||||
|
||||
When the blog post is ready this file will be updated with a link to the post.
|
||||
The link of blog post-
|
||||
https://blog.llvm.org/posts/2013-07-29-kaleidoscope-performance-with-mcjit/
|
||||
|
||||
The source code in this directory demonstrates the second version of the
|
||||
program, now modified to implement a sort of 'lazy' compilation.
|
||||
|
@ -14,12 +15,10 @@ program, now modified to implement a sort of 'lazy' compilation.
|
|||
The toy-jit.cpp file contains a version of the original JIT-based source code
|
||||
that has been modified to disable most stderr output for timing purposes.
|
||||
|
||||
This directory contain a Makefile that allow the code to be built in a
|
||||
standalone manner, independent of the larger LLVM build infrastructure. To build
|
||||
the program you will need to have 'clang++' and 'llvm-config' in your path. If
|
||||
you attempt to build using the LLVM 3.3 release, some minor modifications will
|
||||
be required.
|
||||
To build the program you will need to have 'clang++' and 'llvm-config' in your
|
||||
path. If you attempt to build using the LLVM 3.3 release, some minor
|
||||
modifications will be required.
|
||||
|
||||
This directory also contains a Python script that may be used to generate random
|
||||
input for the program and test scripts to capture data for rough performance
|
||||
comparisons.
|
||||
comparisons.
|
||||
|
|
Loading…
Reference in New Issue