Commit Graph

33 Commits

Author SHA1 Message Date
Jeffrey Yasskin
42fc558624 Make Kaleidoscope not link against the interpreter, since that didn't
work anyway (Interpreter::getPointerToFunction doesn't return a
callable pointer), and improve the error message when an
ExecutionEngine can't be created.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95896 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-11 19:15:20 +00:00
Dan Gohman
523e3928a3 Add "Author Date Id Revision" svn:keyword properties to these files, as
is done with the other html files in doc, to hopefully keep strings like
"Last modified" current.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95225 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-03 17:27:31 +00:00
Jeffrey Yasskin
f0356fe140 Kill ModuleProvider and ghost linkage by inverting the relationship between
Modules and ModuleProviders. Because the "ModuleProvider" simply materializes
GlobalValues now, and doesn't provide modules, it's renamed to
"GVMaterializer". Code that used to need a ModuleProvider to materialize
Functions can now materialize the Functions directly. Functions no longer use a
magic linkage to record that they're materializable; they simply ask the
GVMaterializer.

Because the C ABI must never change, we can't remove LLVMModuleProviderRef or
the functions that refer to it. Instead, because Module now exposes the same
functionality ModuleProvider used to, we store a Module* in any
LLVMModuleProviderRef and translate in the wrapper methods.  The bindings to
other languages still use the ModuleProvider concept.  It would probably be
worth some time to update them to follow the C++ more closely, but I don't
intend to do it.

Fixes http://llvm.org/PR5737 and http://llvm.org/PR5735.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94686 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-27 20:34:15 +00:00
Erick Tryzelaar
fd1ec5e68b Sync c++ kaleidoscope tutorial with test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82572 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-22 21:14:49 +00:00
Nick Lewycky
422094c38d Update the tutorial to match changes to examples/Kaleidoscope.
One change I'm not folding in is the removal of two unused variables that
caused warnings, because those were there for expository purposes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81721 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-13 21:38:54 +00:00
Reid Kleckner
60130f0e90 Allocate the module provider in the Kaleidoscope code on the heap, not the stack, so that it can be properly deleted. Also update the tutorial with the new code. This fixes PR4762, hopefully better than the last time.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80138 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-26 20:58:25 +00:00
Owen Anderson
1d0be15f89 Push LLVMContexts through the IntegerType APIs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78948 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-13 21:58:54 +00:00
Owen Anderson
a7235ea724 Move a few more APIs back to 2.5 forms. The only remaining ones left to change back are
metadata related, which I'm waiting on to avoid conflicting with Devang.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77721 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-31 20:28:14 +00:00
Owen Anderson
debcb01b0f Move types back to the 2.5 API.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77516 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-29 22:17:13 +00:00
Owen Anderson
6f83c9c6ef Move ConstantFP construction back to the 2.5-ish API.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77247 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-27 20:59:43 +00:00
Owen Anderson
e922c02019 Get rid of the Pass+Context magic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76702 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-22 00:24:57 +00:00
Reid Kleckner
4b1511b027 Add EngineBuilder to ExecutionEngine in favor of the five optional argument EE::create().
Also a test commit.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76276 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-18 00:42:18 +00:00
Owen Anderson
914e50c841 Privatize the ConstantFP table. I'm on a roll!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76097 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-16 19:05:41 +00:00
Owen Anderson
0a5372ed3e Begin the painful process of tearing apart the rat'ss nest that is Constants.cpp and ConstantFold.cpp.
This involves temporarily hard wiring some parts to use the global context.  This isn't ideal, but it's
the only way I could figure out to make this process vaguely incremental.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75445 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 04:09:18 +00:00
Owen Anderson
d1fbd14294 Push LLVMContext _back_ through IRBuilder.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75040 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-08 20:50:47 +00:00
Gabor Greif
d6c1ed08f6 Fix exaples using IRBuilder. Thanks, Quadrescence and Glip7 from IRC!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66687 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-11 19:51:07 +00:00
Gabor Greif
5934adf9bb adjust calls to ConstantFP::get to new API
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52165 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-10 01:52:17 +00:00
Gabor Greif
df7d2b4ce8 merge of 49966 from branches/ggreif/use-diet to trunk. these are already active API changes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49968 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-19 22:25:09 +00:00
Chris Lattner
6c4be9c23b improve diagnostics in call parsing, patch suggested by
Matthijs Kooijman


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49648 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-14 16:44:41 +00:00
Duncan Sands
89f6d88db3 Merge LLVMBuilder and FoldingBuilder, calling
the result IRBuilder.  Patch by Dominic Hamon.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49604 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-13 06:22:09 +00:00
Chris Lattner
729eb14ae8 Various updates from Sam Bishop:
"I have been working my way through the JIT and Kaleidoscope tutorials in my
(minuscule) spare time.  Thanks again for writing them!  I have attached a
patch containing some minor changes, ranging from spelling and grammar fixes
to adding a "Next: <next tutorial section>" hyperlink to the bottom of each
page.

Every page has been given the "next link" treatment, but otherwise I'm only
half way through the Kaleidoscope tutorial.  I will send a follow-on patch
if time permits."



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46933 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-10 19:11:04 +00:00
Chris Lattner
515686b130 dump the module *before* we delete it, not after.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46741 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-05 06:18:42 +00:00
Chris Lattner
c80c23ff63 fix typo noticed by Joshua Pennington
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44522 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-02 22:46:01 +00:00
Chris Lattner
61ad449be8 !< is >=, not >. Thanks to Max Hailperin for pointing this out!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44291 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-23 22:19:33 +00:00
Chris Lattner
b7e6b1ab70 many edits, patch by Kelly Wilson!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44157 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-15 04:51:31 +00:00
Chris Lattner
3616a8a415 edits for chapter 7
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43810 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-07 06:06:38 +00:00
Chris Lattner
711552174e fixes from Ryan Brown.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43747 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 01:39:12 +00:00
Chris Lattner
0e555b1ab0 add some links to the tutorial index and between chapters.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43730 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 20:04:56 +00:00
Chris Lattner
128eb863df add table of contents to each chapter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43723 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 19:06:59 +00:00
Chris Lattner
20a0c80f7e spell identifier correctly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43718 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 17:54:34 +00:00
Chris Lattner
b5d81b3e66 fix typos
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43637 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-02 05:54:25 +00:00
Chris Lattner
58f2c874d3 Finish chapter 6, and add a spiffy demo that shows off the language.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43636 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-02 05:42:52 +00:00
Chris Lattner
c9d5d2c548 Add the start of chapter 6, still much to go.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43607 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-01 06:49:54 +00:00