llvm-6502/lib/Transforms/IPO
Benjamin Kramer e749325463 [CallSite] Make construction from Value* (or Instruction*) explicit.
CallSite roughly behaves as a common base CallInst and InvokeInst. Bring
the behavior closer to that model by making upcasts explicit. Downcasts
remain implicit and work as before.

Following dyn_cast as a mental model checking whether a Value *V isa
CallSite now looks like this: 
  if (auto CS = CallSite(V)) // think dyn_cast
instead of:
  if (CallSite CS = V)

This is an extra token but I think it is slightly clearer. Making the
ctor explicit has the advantage of not accidentally creating nullptr
CallSites, e.g. when you pass a Value * to a function taking a CallSite
argument.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@234601 91177308-0d34-0410-b5e6-96231b3b80d8
2015-04-10 14:50:08 +00:00
..
ArgumentPromotion.cpp [CallSite] Make construction from Value* (or Instruction*) explicit. 2015-04-10 14:50:08 +00:00
BarrierNoopPass.cpp
CMakeLists.txt
ConstantMerge.cpp DataLayout is mandatory, update the API to reflect it with references. 2015-03-10 02:37:25 +00:00
DeadArgumentElimination.cpp [CallSite] Make construction from Value* (or Instruction*) explicit. 2015-04-10 14:50:08 +00:00
ExtractGV.cpp
FunctionAttrs.cpp
GlobalDCE.cpp GlobalDCE: Improve performance for large modules containing comdats. 2015-03-19 18:23:29 +00:00
GlobalOpt.cpp [opaque pointer type] API migration for GEP constant factories 2015-04-02 18:55:32 +00:00
InlineAlways.cpp
Inliner.cpp Re-sort includes with sort-includes.py and insert raw_ostream.h where it's used. 2015-03-23 19:32:43 +00:00
InlineSimple.cpp
Internalize.cpp
IPConstantPropagation.cpp
IPO.cpp
LLVMBuild.txt
LoopExtractor.cpp
LowerBitSets.cpp [opaque pointer type] More GEP API migrations in IRBuilder uses 2015-04-03 19:41:44 +00:00
Makefile
MergeFunctions.cpp DataLayout is mandatory, update the API to reflect it with references. 2015-03-10 02:37:25 +00:00
PartialInlining.cpp
PassManagerBuilder.cpp Reapply r233175 and r233183: float2int. 2015-03-27 10:36:57 +00:00
PruneEH.cpp
StripDeadPrototypes.cpp
StripSymbols.cpp Transforms: Stop using DIDescriptor::is*() and auto-casting 2015-04-06 23:27:00 +00:00