1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 03:53:04 +02:00
llvm-mirror/lib/Transforms/Utils
Sanjay Patel e29d90184d Fix for PR17073 ( http://llvm.org/pr17073 ), simplifycfg illegally hoists an operation in a phi node that can trap.
This patch adds to an existing loop over phi nodes in SimplifyCondBranchToCondBranch() to check for trapping ops and bails out of the optimization if we find one of those.

The test cases verify that trapping ops are not hoisted and non-trapping ops are still optimized as expected.

llvm-svn: 212490
2014-07-07 21:19:00 +00:00
..
AddDiscriminators.cpp [C++] Use 'nullptr'. Transforms edition. 2014-04-25 05:29:35 +00:00
ASanStackFrameLayout.cpp Revert "Introduce a string_ostream string builder facilty" 2014-06-26 22:52:05 +00:00
BasicBlockUtils.cpp Fix rampant quadratic behavior in UpdatePHINodes. The operation of 2014-04-28 10:37:30 +00:00
BreakCriticalEdges.cpp [C++] Use 'nullptr'. Transforms edition. 2014-04-25 05:29:35 +00:00
BuildLibCalls.cpp [C++] Use 'nullptr'. Transforms edition. 2014-04-25 05:29:35 +00:00
BypassSlowDivision.cpp [C++] Use 'nullptr'. Transforms edition. 2014-04-25 05:29:35 +00:00
CloneFunction.cpp Revert "Patch for function cloning to inline all blocks whose address is taken" 2014-05-19 16:04:10 +00:00
CloneModule.cpp Allow alias to point to an arbitrary ConstantExpr. 2014-06-03 02:41:57 +00:00
CMakeLists.txt Teach GlobalDCE how to remove empty global_ctor entries. 2014-05-02 18:35:25 +00:00
CmpInstAnalysis.cpp [C++] Use 'nullptr'. Transforms edition. 2014-04-25 05:29:35 +00:00
CodeExtractor.cpp [C++] Use 'nullptr'. Transforms edition. 2014-04-25 05:29:35 +00:00
CtorUtils.cpp Add comdat key field to llvm.global_ctors and llvm.global_dtors 2014-05-16 20:39:27 +00:00
DemoteRegToStack.cpp [C++] Use 'nullptr'. Transforms edition. 2014-04-25 05:29:35 +00:00
FlattenCFG.cpp [C++] Use 'nullptr'. Transforms edition. 2014-04-25 05:29:35 +00:00
GlobalStatus.cpp [C++] Use 'nullptr'. Transforms edition. 2014-04-25 05:29:35 +00:00
InlineFunction.cpp DebugInfo: Preserve debug location information when transforming a call into an invoke during inlining. 2014-06-30 20:30:39 +00:00
InstructionNamer.cpp [C++11] Add 'override' keyword to virtual methods that override their base class. 2014-03-05 09:10:37 +00:00
IntegerDivision.cpp [Modules] Fix potential ODR violations by sinking the DEBUG_TYPE 2014-04-22 02:55:47 +00:00
LCSSA.cpp [Modules] Fix potential ODR violations by sinking the DEBUG_TYPE 2014-04-22 02:55:47 +00:00
LLVMBuild.txt LLVMBuild: Remove trailing newline, which irked me. 2011-12-12 19:48:00 +00:00
Local.cpp Rename ComputeMaskedBits to computeKnownBits. "Masked" has been 2014-05-14 21:14:37 +00:00
LoopSimplify.cpp Fix a typo in comment 2014-04-29 07:35:33 +00:00
LoopUnroll.cpp LCSSA should be performed on the outermost affected loop while unrolling loop. 2014-05-29 06:47:23 +00:00
LoopUnrollRuntime.cpp LoopUnrollRuntime: Check for overflow in the trip count calculation. 2014-06-21 13:46:25 +00:00
LowerExpectIntrinsic.cpp [Modules] Fix potential ODR violations by sinking the DEBUG_TYPE 2014-04-22 02:55:47 +00:00
LowerInvoke.cpp [Modules] Fix potential ODR violations by sinking the DEBUG_TYPE 2014-04-22 02:55:47 +00:00
LowerSwitch.cpp LowerSwitch: track bounding range for the condition tree. 2014-06-16 16:55:20 +00:00
Makefile
Mem2Reg.cpp [Modules] Fix potential ODR violations by sinking the DEBUG_TYPE 2014-04-22 02:55:47 +00:00
MetaRenamer.cpp [C++11] Add 'override' keyword to virtual methods that override their base class. 2014-03-05 09:10:37 +00:00
ModuleUtils.cpp Add comdat key field to llvm.global_ctors and llvm.global_dtors 2014-05-16 20:39:27 +00:00
PromoteMemoryToRegister.cpp [C++] Use 'nullptr'. Transforms edition. 2014-04-25 05:29:35 +00:00
SimplifyCFG.cpp Fix for PR17073 ( http://llvm.org/pr17073 ), simplifycfg illegally hoists an operation in a phi node that can trap. 2014-07-07 21:19:00 +00:00
SimplifyIndVar.cpp [C++] Use 'nullptr'. Transforms edition. 2014-04-25 05:29:35 +00:00
SimplifyInstructions.cpp RecursivelyDeleteTriviallyDeadInstructions() could remove 2014-04-26 05:58:11 +00:00
SimplifyLibCalls.cpp Add support for missed and analysis optimization remarks. 2014-05-22 14:19:46 +00:00
SpecialCaseList.cpp Update the MemoryBuffer API to use ErrorOr. 2014-07-06 17:43:13 +00:00
SSAUpdater.cpp [C++] Use 'nullptr'. 2014-04-28 04:05:08 +00:00
UnifyFunctionExitNodes.cpp [C++] Use 'nullptr'. Transforms edition. 2014-04-25 05:29:35 +00:00
Utils.cpp Pass to emit DWARF path discriminators. 2014-03-03 20:06:11 +00:00
ValueMapper.cpp [C++] Use 'nullptr'. Transforms edition. 2014-04-25 05:29:35 +00:00