llvm-6502/lib/Transforms/Utils
David Blaikie d62a1e966c [opaque pointer type] Avoid using PointerType::getElementType for a few cases of CallInst
Calls to llvm::Value::mutateType are becoming extra-sensitive now that
instructions have extra type information that will not be derived from
operands or result type (alloca, gep, load, call/invoke, etc... ). The
special-handling for mutateType will get more complicated as this work
continues - it might be worth making mutateType virtual & pushing the
complexity down into the classes that need special handling. But with
only two significant uses of mutateType (vectorization and linking) this
seems OK for now.

Totally open to ideas/suggestions/improvements, of course.

With this, and a bunch of exceptions, we can roundtrip an indirect call
site through bitcode and IR. (a direct call site is actually trickier...
I haven't figured out how to deal with the IR deserializer's lazy
construction of Function/GlobalVariable decl's based on the type of the
entity which means looking through the "pointer to T" type referring to
the global)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@235458 91177308-0d34-0410-b5e6-96231b3b80d8
2015-04-21 23:26:57 +00:00
..
AddDiscriminators.cpp DebugInfo: Drop rest of DIDescriptor subclasses 2015-04-21 18:44:06 +00:00
ASanStackFrameLayout.cpp
BasicBlockUtils.cpp
BreakCriticalEdges.cpp
BuildLibCalls.cpp
BypassSlowDivision.cpp
CloneFunction.cpp DebugInfo: Delete subclasses of DIScope 2015-04-20 22:10:08 +00:00
CloneModule.cpp
CMakeLists.txt [NFC] Refactor identification of reductions as common utility function. 2015-04-20 04:38:33 +00:00
CmpInstAnalysis.cpp
CodeExtractor.cpp
CtorUtils.cpp
DemoteRegToStack.cpp
FlattenCFG.cpp
GlobalStatus.cpp [CallSite] Make construction from Value* (or Instruction*) explicit. 2015-04-10 14:50:08 +00:00
InlineFunction.cpp [InlineFunction] Don't add lifetime markers for zero-sized allocas. 2015-04-20 16:11:05 +00:00
InstructionNamer.cpp
IntegerDivision.cpp
LCSSA.cpp Revamp PredIteratorCache interface to be cleaner. 2015-04-21 21:11:50 +00:00
LLVMBuild.txt
Local.cpp DebugInfo: Drop rest of DIDescriptor subclasses 2015-04-21 18:44:06 +00:00
LoopSimplify.cpp
LoopUnroll.cpp [LoopUnrollRuntime] Avoid high-cost trip count computation. 2015-04-14 03:20:38 +00:00
LoopUnrollRuntime.cpp [LoopUnrollRuntime] Avoid high-cost trip count computation. 2015-04-14 03:20:38 +00:00
LoopUtils.cpp [NFC] Refactor identification of reductions as common utility function. 2015-04-20 04:38:33 +00:00
LowerInvoke.cpp
LowerSwitch.cpp
Makefile
Mem2Reg.cpp
MetaRenamer.cpp
ModuleUtils.cpp
PromoteMemoryToRegister.cpp Move IDF Calculation to a separate file, expose an interface to it. 2015-04-21 19:13:02 +00:00
SimplifyCFG.cpp Fix typo. 2015-04-12 18:18:51 +00:00
SimplifyIndVar.cpp
SimplifyInstructions.cpp
SimplifyLibCalls.cpp
SSAUpdater.cpp
SymbolRewriter.cpp
UnifyFunctionExitNodes.cpp
Utils.cpp
ValueMapper.cpp [opaque pointer type] Avoid using PointerType::getElementType for a few cases of CallInst 2015-04-21 23:26:57 +00:00