1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-25 05:52:53 +02:00
llvm-mirror/lib/Transforms/Utils
Peter Collingbourne c940ae83b9 Cloning: Reduce complexity of debug info cloning and fix correctness issue.
Commit r260791 contained an error in that it would introduce a cross-module
reference in the old module. It also introduced O(N^2) complexity in the
module cloner by requiring the entire module to be visited for each function.
Fix both of these problems by avoiding use of the CloneDebugInfoMetadata
function (which is only designed to do intra-module cloning) and cloning
function-attached metadata in the same way that we clone all other metadata.

Differential Revision: http://reviews.llvm.org/D18583

llvm-svn: 264935
2016-03-30 22:05:13 +00:00
..
AddDiscriminators.cpp Remove llvm::getDISubprogram in favor of Function::getSubprogram 2016-03-11 02:14:16 +00:00
ASanStackFrameLayout.cpp Update to use new name alignTo(). 2016-01-14 21:06:47 +00:00
BasicBlockUtils.cpp [LV] Preserve LoopInfo when store predication is used 2016-03-15 18:06:20 +00:00
BreakCriticalEdges.cpp
BuildLibCalls.cpp Fix Clang-tidy readability-redundant-control-flow warnings; other minor fixes. 2016-02-02 18:20:45 +00:00
BypassSlowDivision.cpp Clarify that the bypassSlowDivision optimization operates on a single BB [v2] 2016-01-04 23:18:58 +00:00
CloneFunction.cpp Cloning: Reduce complexity of debug info cloning and fix correctness issue. 2016-03-30 22:05:13 +00:00
CloneModule.cpp Cloning: Reduce complexity of debug info cloning and fix correctness issue. 2016-03-30 22:05:13 +00:00
CMakeLists.txt [ThinLTO] Move global processing from Linker to TransformUtils (NFC) 2016-02-10 18:11:31 +00:00
CmpInstAnalysis.cpp
CodeExtractor.cpp [IR] Reformulate LLVM's EH funclet IR 2015-12-12 05:38:55 +00:00
CtorUtils.cpp
DemoteRegToStack.cpp
Evaluator.cpp Add #include "llvm/Support/raw_ostream.h" to fix Windows build. 2016-02-03 03:16:37 +00:00
FlattenCFG.cpp LPM: Stop threading Pass * through all of the loop utility APIs. NFC 2015-12-15 19:40:57 +00:00
FunctionImportUtils.cpp Rework linkInModule(), making it oblivious to ThinLTO 2016-03-19 00:40:31 +00:00
GlobalStatus.cpp
InlineFunction.cpp Introduce @llvm.experimental.deoptimize 2016-03-11 19:08:34 +00:00
InstructionNamer.cpp
IntegerDivision.cpp TransformUtils: Avoid getNodePtrUnchecked() in integer division, NFC 2016-02-21 20:14:29 +00:00
LCSSA.cpp [AA] Preserve the AA results wrapper pass as well as BasicAA in a few 2016-02-19 03:12:14 +00:00
LLVMBuild.txt
Local.cpp [RS4GC] Lower calls to @llvm.experimental.deoptimize 2016-03-25 20:12:13 +00:00
LoopSimplify.cpp [LoopSimplify] Reuse changeToUnreachable 2016-01-24 19:32:52 +00:00
LoopUnroll.cpp Use some braces to format this a little better. 2016-03-15 03:01:31 +00:00
LoopUnrollRuntime.cpp Enable non-power-of-2 #pragma unroll counts. 2016-03-25 14:24:52 +00:00
LoopUtils.cpp Remove HasFnAttribute guards to getFnAttribute calls 2016-03-30 15:41:12 +00:00
LoopVersioning.cpp [LoopVersioning] Relax an assert for LCSSA PHIs 2016-03-22 18:38:15 +00:00
LowerInvoke.cpp
LowerSwitch.cpp
Mem2Reg.cpp [Mem2Reg] Respect optnone 2015-12-11 13:36:59 +00:00
MemorySSA.cpp [MemorySSA] Make the visitor more careful with calls. 2016-03-30 03:12:08 +00:00
MetaRenamer.cpp
ModuleUtils.cpp [ModuleUtils] Use range-based loop. NFC. 2016-03-23 00:43:35 +00:00
PromoteMemoryToRegister.cpp Remove uses of builtin comma operator. 2016-02-18 22:09:30 +00:00
SanitizerStats.cpp Fix Clang-tidy modernize-use-nullptr and modernize-use-override warnings; other minor fixes. 2016-01-26 18:48:36 +00:00
SimplifyCFG.cpp [SimlifyCFG] Prevent passes from destroying canonical loop structure, especially for nested loops 2016-03-29 04:08:57 +00:00
SimplifyIndVar.cpp [IndVars] Make the fix for PR26973 more obvious; NFCI 2016-03-18 20:37:11 +00:00
SimplifyInstructions.cpp [Utils] Put includes in correct order. NFC. 2015-11-24 18:57:06 +00:00
SimplifyLibCalls.cpp [SimplifyLibCalls] Transform printf("%s", "a") -> putchar('a'). 2016-03-28 15:54:01 +00:00
SplitModule.cpp Avoid overly large SmallPtrSet/SmallSet 2016-01-30 01:24:31 +00:00
SSAUpdater.cpp
SymbolRewriter.cpp Make some headers self-contained, remove unused includes that violate layering. 2016-01-27 16:05:37 +00:00
UnifyFunctionExitNodes.cpp
Utils.cpp This patch adds MemorySSA to LLVM. 2016-02-02 22:46:49 +00:00
ValueMapper.cpp [ThinLTO] Remove post-pass metadata linking support 2016-03-29 18:24:19 +00:00