llvm-6502/lib/VMCore
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
..
AsmWriter.cpp Kill ModuleProvider and ghost linkage by inverting the relationship between 2010-01-27 20:34:15 +00:00
Attributes.cpp Remove the InlineHint attribute. There are no current or planned 2010-01-15 21:36:30 +00:00
AutoUpgrade.cpp Improve llvm.dbg.declare intrinsic by referring directly to the storage in its first argument, via function-local metadata (instead of via a bitcast). 2010-01-15 19:04:09 +00:00
BasicBlock.cpp Qualify a bunch of explicit template instantiations to satisfy clang++. 2009-12-19 00:55:12 +00:00
CMakeLists.txt Update CMake files for Mangler move. 2010-01-16 22:23:09 +00:00
ConstantFold.cpp Fix a crasher trying to fold each element in a comparison between two vectors 2010-01-21 07:03:21 +00:00
ConstantFold.h Value* were never meant to be const. Removing constness from the constant 2009-09-20 01:35:59 +00:00
Constants.cpp fix CastInst::castIsValid to reject aggregate types, fixing PR6153: 2010-01-26 21:51:43 +00:00
ConstantsContext.h Fix a build error and change errs() to dbgs(). 2010-01-05 01:34:26 +00:00
Core.cpp Kill ModuleProvider and ghost linkage by inverting the relationship between 2010-01-27 20:34:15 +00:00
Dominators.cpp Qualify a bunch of explicit template instantiations to satisfy clang++. 2009-12-19 00:55:12 +00:00
Function.cpp Avoid going through the LLVMContext for type equality where it's safe to dereference the type pointer. 2010-01-05 13:12:22 +00:00
Globals.cpp Kill ModuleProvider and ghost linkage by inverting the relationship between 2010-01-27 20:34:15 +00:00
GVMaterializer.cpp Kill ModuleProvider and ghost linkage by inverting the relationship between 2010-01-27 20:34:15 +00:00
InlineAsm.cpp Avoid going through the LLVMContext for type equality where it's safe to dereference the type pointer. 2010-01-05 13:12:22 +00:00
Instruction.cpp Add a comment. 2010-01-04 18:38:39 +00:00
Instructions.cpp fix CastInst::castIsValid to reject aggregate types, fixing PR6153: 2010-01-26 21:51:43 +00:00
IntrinsicInst.cpp Improve llvm.dbg.declare intrinsic by referring directly to the storage in its first argument, via function-local metadata (instead of via a bitcast). 2010-01-15 19:04:09 +00:00
IRBuilder.cpp Final step in the metadata API restructuring: move the 2009-12-29 09:01:33 +00:00
LeakDetector.cpp remove a bunch of locking from LLVMContextImpl. Since only one thread 2009-11-01 18:42:03 +00:00
LeaksContext.h Catch more cases of a pointer being marked garbage twice. This helps when 2009-12-18 20:35:38 +00:00
LLVMContext.cpp Final step in the metadata API restructuring: move the 2009-12-29 09:01:33 +00:00
LLVMContextImpl.h Final step in the metadata API restructuring: move the 2009-12-29 09:01:33 +00:00
Makefile mark some libraries that currently require RTTI. 2010-01-24 20:22:08 +00:00
Metadata.cpp Add MDNode::getIfExists(), an efficient way to determine if a value is used by metadata (since metadata does not appear in a value's use list) 2010-01-26 02:36:35 +00:00
Module.cpp Kill ModuleProvider and ghost linkage by inverting the relationship between 2010-01-27 20:34:15 +00:00
Pass.cpp Kill ModuleProvider and ghost linkage by inverting the relationship between 2010-01-27 20:34:15 +00:00
PassManager.cpp Kill ModuleProvider and ghost linkage by inverting the relationship between 2010-01-27 20:34:15 +00:00
PrintModulePass.cpp Change errs() to dbgs(). 2010-01-05 01:30:18 +00:00
SymbolTableListTraitsImpl.h Fold the useful features of alist and alist_node into ilist, and 2008-07-28 21:51:04 +00:00
Type.cpp Convert a ton of simple integer type equality tests to the new predicate. 2010-01-05 20:07:06 +00:00
TypesContext.h Change errs() to dbgs(). 2010-01-05 01:29:39 +00:00
TypeSymbolTable.cpp Change errs() to dbgs(). 2010-01-05 01:30:14 +00:00
Use.cpp Public and private corrections, warned about by icc (#304). 2009-09-06 08:55:57 +00:00
Value.cpp Change Value::getUnderlyingObject to have the MaxLookup value specified as a 2010-01-25 18:26:54 +00:00
ValueSymbolTable.cpp Delete NamedMDSymTable while destrucing Module. 2010-01-09 01:44:59 +00:00
ValueTypes.cpp Reapply 79977. 2009-08-28 23:24:31 +00:00
Verifier.cpp Kill ModuleProvider and ghost linkage by inverting the relationship between 2010-01-27 20:34:15 +00:00