Jeffrey Yasskin
8a30324e51
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.
llvm-svn: 95896
2010-02-11 19:15:20 +00:00
Jeffrey Yasskin
091217be6f
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 .
llvm-svn: 94686
2010-01-27 20:34:15 +00:00
Daniel Dunbar
19c46329dd
This example requires RTTI.
...
llvm-svn: 94398
2010-01-25 00:45:01 +00:00
Erick Tryzelaar
21e83eab3f
Add examples for Kaleidoscope chapters 2 through 6.
...
Conflicts:
examples/Makefile
llvm-svn: 82574
2009-09-22 21:15:19 +00:00
Erick Tryzelaar
2d8813cfb0
Rename Kaleidoscope to show that it's for Chapter 7 of the tutorial.
...
llvm-svn: 82573
2009-09-22 21:15:00 +00:00
Erick Tryzelaar
6e2b34bc14
Sync c++ kaleidoscope tutorial with test.
...
llvm-svn: 82572
2009-09-22 21:14:49 +00:00
Reid Kleckner
ab7700479f
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.
...
llvm-svn: 80138
2009-08-26 20:58:25 +00:00
Reid Kleckner
e56676a3cc
Fixed double free in Kaleidoscope. Fixes PR4762.
...
llvm-svn: 79896
2009-08-24 05:42:21 +00:00
Oscar Fuentes
349df2c976
CMake: LLVMConfig assigns LLVMX86 to the `native' component
...
name. Updated LLVM_LINK_COMPONENTS of Kaleidoscope.
llvm-svn: 79219
2009-08-17 01:41:46 +00:00
Owen Anderson
55f1c09e31
Push LLVMContexts through the IntegerType APIs.
...
llvm-svn: 78948
2009-08-13 21:58:54 +00:00
Owen Anderson
5a1acd9912
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.
llvm-svn: 77721
2009-07-31 20:28:14 +00:00
Owen Anderson
4056ca9568
Move types back to the 2.5 API.
...
llvm-svn: 77516
2009-07-29 22:17:13 +00:00
Owen Anderson
69c464dec4
Move ConstantFP construction back to the 2.5-ish API.
...
llvm-svn: 77247
2009-07-27 20:59:43 +00:00
Owen Anderson
47db941fd3
Get rid of the Pass+Context magic.
...
llvm-svn: 76702
2009-07-22 00:24:57 +00:00
Eli Friedman
e04169cc21
PR4591: Make sure to initialize the pass manager before using it.
...
llvm-svn: 76422
2009-07-20 14:50:07 +00:00
Daniel Dunbar
c8fb7c61a9
Fix build
...
llvm-svn: 76366
2009-07-19 08:27:16 +00:00
Xerxes Ranby
68602758e4
Fix: Kaleidoscope link in JIT and Interpreter by including JIT.h and Interpreter.h
...
llvm-svn: 76363
2009-07-19 08:10:01 +00:00
Reid Kleckner
fc8a2d5a83
Add EngineBuilder to ExecutionEngine in favor of the five optional argument EE::create().
...
Also a test commit.
llvm-svn: 76276
2009-07-18 00:42:18 +00:00
Owen Anderson
c277dc408b
Privatize the ConstantFP table. I'm on a roll!
...
llvm-svn: 76097
2009-07-16 19:05:41 +00:00
Owen Anderson
53a52215b5
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.
llvm-svn: 75445
2009-07-13 04:09:18 +00:00
Owen Anderson
a771459bb1
Push LLVMContext _back_ through IRBuilder.
...
llvm-svn: 75040
2009-07-08 20:50:47 +00:00
Owen Anderson
1cf085d558
Hold the LLVMContext by reference rather than by pointer.
...
llvm-svn: 74640
2009-07-01 21:22:36 +00:00
Owen Anderson
6773d388aa
Add a pointer to the owning LLVMContext to Module. This requires threading LLVMContext through a lot
...
of the bitcode reader and ASM parser APIs, as well as supporting it in all of the tools.
Patches for Clang and LLVM-GCC to follow.
llvm-svn: 74614
2009-07-01 16:58:40 +00:00
Chris Lattner
d24df24527
make sure that JIT examples link in their appropriate target.
...
llvm-svn: 73613
2009-06-17 16:48:44 +00:00
Chris Lattner
0813c0c34c
silence a warning.
...
llvm-svn: 69117
2009-04-15 00:16:05 +00:00
Bill Wendling
7aba8e30c4
Get rid of some compile warnings.
...
llvm-svn: 68978
2009-04-13 19:45:05 +00:00
Nick Lewycky
109af6232b
Add Kaleidoscope to examples/ so that it gets built regularly and we'll notice
...
if an API change causes it to be out of date. The code is copied out of
LangImpl7.html.
llvm-svn: 68912
2009-04-12 20:47:23 +00:00