llvm-6502/lib/Transforms/IPO
Nico Rieck 38f68c5a2e Decouple dllexport/dllimport from linkage
Representing dllexport/dllimport as distinct linkage types prevents using
these attributes on templates and inline functions.

Instead of introducing further mixed linkage types to include linkonce and
weak ODR, the old import/export linkage types are replaced with a new
separate visibility-like specifier:

  define available_externally dllimport void @f() {}
  @Var = dllexport global i32 1, align 4

Linkage for dllexported globals and functions is now equal to their linkage
without dllexport. Imported globals and functions must be either
declarations with external linkage, or definitions with
AvailableExternallyLinkage.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199218 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-14 15:22:47 +00:00
..
ArgumentPromotion.cpp [PM] Split the CallGraph out from the ModulePass which creates the 2013-11-26 04:19:30 +00:00
BarrierNoopPass.cpp
CMakeLists.txt
ConstantMerge.cpp Corruptly merge constants with explicit and implicit alignments. 2013-11-12 20:21:43 +00:00
DeadArgumentElimination.cpp Fix spelling, grammar, and match naming convention for test files. 2013-10-21 23:14:06 +00:00
ExtractGV.cpp Add a fixed version of r195470 back. 2013-11-22 17:58:12 +00:00
FunctionAttrs.cpp [PM] Split the CallGraph out from the ModulePass which creates the 2013-11-26 04:19:30 +00:00
GlobalDCE.cpp Implement function prefix data as an IR feature. 2013-09-16 01:08:15 +00:00
GlobalOpt.cpp Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
InlineAlways.cpp [PM] Split the CallGraph out from the ModulePass which creates the 2013-11-26 04:19:30 +00:00
Inliner.cpp [PM] Split the CallGraph out from the ModulePass which creates the 2013-11-26 04:19:30 +00:00
InlineSimple.cpp [PM] Split the CallGraph out from the ModulePass which creates the 2013-11-26 04:19:30 +00:00
Internalize.cpp Decouple dllexport/dllimport from linkage 2014-01-14 15:22:47 +00:00
IPConstantPropagation.cpp Correct word hyphenations 2013-12-05 05:44:44 +00:00
IPO.cpp Initialize the barrier pass llvm::initializeIPO 2013-12-12 20:45:08 +00:00
LLVMBuild.txt Prune redundant dependencies in LLVMBuild.txt. 2013-12-11 00:30:57 +00:00
LoopExtractor.cpp [PM] Split DominatorTree into a concrete analysis result object which 2014-01-13 13:07:17 +00:00
Makefile
MergeFunctions.cpp PR17925 bugfix. 2013-11-26 16:11:03 +00:00
PartialInlining.cpp [PM] Split DominatorTree into a concrete analysis result object which 2014-01-13 13:07:17 +00:00
PassManagerBuilder.cpp [cleanup] Move the Dominators.h and Verifier.h headers into the IR 2014-01-13 09:26:24 +00:00
PruneEH.cpp [PM] Split the CallGraph out from the ModulePass which creates the 2013-11-26 04:19:30 +00:00
StripDeadPrototypes.cpp
StripSymbols.cpp Correct word hyphenations 2013-12-05 05:44:44 +00:00