llvm/lib/VMCore
Bill Wendling 5e721d7682 Implement the "linker_private_weak" linkage type. This will be used for
Objective-C metadata types which should be marked as "weak", but which the
linker will remove upon final linkage. However, this linkage isn't specific to
Objective-C.

For example, the "objc_msgSend_fixup_alloc" symbol is defined like this:

      .globl l_objc_msgSend_fixup_alloc
      .weak_definition l_objc_msgSend_fixup_alloc
      .section __DATA, __objc_msgrefs, coalesced
      .align 3
l_objc_msgSend_fixup_alloc:
       .quad   _objc_msgSend_fixup
       .quad   L_OBJC_METH_VAR_NAME_1

This is different from the "linker_private" linkage type, because it can't have
the metadata defined with ".weak_definition".

Currently only supported on Darwin platforms.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107433 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-01 21:55:59 +00:00
..
AsmWriter.cpp Implement the "linker_private_weak" linkage type. This will be used for 2010-07-01 21:55:59 +00:00
Attributes.cpp There are two ways of checking for a given type, for example isa<PointerType>(T) 2010-02-16 11:11:14 +00:00
AutoUpgrade.cpp use ArgOperand API 2010-06-29 16:17:26 +00:00
BasicBlock.cpp Skip debug info when looking for existing EH calls at the 2010-04-02 21:49:27 +00:00
CMakeLists.txt update cmakefile. 2010-04-01 01:02:19 +00:00
ConstantFold.cpp Constant fold x == undef to undef. 2010-06-28 21:30:07 +00:00
ConstantFold.h eliminate a bunch of pointless LLVMContext arguments. 2010-02-01 20:48:08 +00:00
Constants.cpp Remove the API compatibility layer which converted add, sub, and mul 2010-05-03 22:44:19 +00:00
ConstantsContext.h Free all Constants in ~LLVMConstantImpl. We avoid assertion failures 2010-03-22 05:23:37 +00:00
Core.cpp Implement the "linker_private_weak" linkage type. This will be used for 2010-07-01 21:55:59 +00:00
DebugLoc.cpp rename NewDebugLoc -> DebugLoc, prune #includes in DebugLoc.h. 2010-04-02 20:21:22 +00:00
Dominators.cpp Fix a bunch of namespace polution. 2010-04-15 17:08:50 +00:00
Function.cpp Introduce ImmutableCallSite, useful for contexts where no mutation 2010-04-01 08:21:08 +00:00
Globals.cpp rename use_const_iterator to const_use_iterator for consistency's sake 2010-03-25 23:06:16 +00:00
GVMaterializer.cpp Kill ModuleProvider and ghost linkage by inverting the relationship between 2010-01-27 20:34:15 +00:00
InlineAsm.cpp Memoize InlineAsms into the LLVMContext and delete them on shutdown. 2010-03-21 20:37:19 +00:00
Instruction.cpp Switch the representation of the location in instruction from 2010-04-01 05:23:13 +00:00
Instructions.cpp reformulate CallSite::getCallee to adapt to CallInst::ArgOffset, and make it work even if CallInst::op_* are private 2010-07-01 10:41:37 +00:00
IntrinsicInst.cpp warmup ritual: use high-level argument accessors 2010-06-22 19:46:37 +00:00
IRBuilder.cpp make irbuilder use the new optimized debug info accessors. 2010-03-31 04:09:11 +00:00
LeakDetector.cpp
LeaksContext.h Fix a bunch of namespace polution. 2010-04-15 17:08:50 +00:00
LLVMContext.cpp introduce a new recoverable error handling API to LLVMContext 2010-04-07 23:40:44 +00:00
LLVMContextImpl.cpp Fix a bunch of namespace polution. 2010-04-15 17:08:50 +00:00
LLVMContextImpl.h give LLVMContext an inline asm diagnostic hook member. 2010-04-06 00:44:45 +00:00
Makefile Enable RTTI again. While this works fine for LLVM, it creates an ABI 2010-04-14 05:51:59 +00:00
Metadata.cpp Fix a problem exposed by my previous commit and noticed by a release-asserts 2010-05-04 14:25:42 +00:00
Module.cpp Use single interface, using twine, to get named metadata. 2010-06-22 01:19:38 +00:00
Pass.cpp Move several non-performance-critical member functinos out of line. 2010-06-21 18:46:45 +00:00
PassManager.cpp Move several non-performance-critical member functinos out of line. 2010-06-21 18:46:45 +00:00
PrintModulePass.cpp Ok, third time's the charm. No changes from last time except the CMake 2010-04-02 23:17:14 +00:00
SymbolTableListTraitsImpl.h
Type.cpp VMCore: Add Type::getIntN[Ptr]Ty, which are the obvious generic forms of 2010-04-13 01:39:07 +00:00
TypesContext.h Add support for a union type in LLVM IR. Patch by Talin! 2010-02-12 20:49:41 +00:00
TypeSymbolTable.cpp Fix -Wcast-qual warnings. 2010-04-19 15:42:05 +00:00
Use.cpp
Value.cpp Fix Value::stripPointerCasts and BasicAA to avoid trouble on 2010-06-28 21:16:52 +00:00
ValueSymbolTable.cpp Bump SmallString size a bit to avoid malloc trashing. 2010-03-31 16:04:26 +00:00
ValueTypes.cpp Adding a v8i64 512-bit vector type. This will be used to model ARM NEON intrinsics which translate into a pair of vld / vst instructions that can load / store 8 consecutive 64-bit (D) registers. 2010-05-13 23:55:47 +00:00
Verifier.cpp use ArgOperand accessors 2010-06-23 13:56:57 +00:00