llvm-6502/lib/Transforms/Utils
Manman Ren 554da1a222 SimplifyCFG: sink common codes from IF, ELSE blocks down to END block.
We already have HoistThenElseCodeToIf, this patch implements
SinkThenElseCodeToEnd. When END block has only two predecessors and each
predecessor terminates with unconditional branches, we compare instructions in
IF and ELSE blocks backwards and check whether we can sink the common
instructions down.

rdar://12191395


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164325 91177308-0d34-0410-b5e6-96231b3b80d8
2012-09-20 22:37:36 +00:00
..
AddrModeMatcher.cpp Release build: guard dump functions with 2012-09-12 05:06:18 +00:00
BasicBlockUtils.cpp Make MemoryBuiltins aware of TargetLibraryInfo. 2012-08-29 15:32:21 +00:00
BreakCriticalEdges.cpp
BuildLibCalls.cpp remove tabs from my previous commit. 2012-08-01 17:13:28 +00:00
BypassSlowDivision.cpp Stylistic and 80-col fixes 2012-09-14 21:25:34 +00:00
CloneFunction.cpp
CloneModule.cpp
CMakeLists.txt New utility for expanding integer division for targets that don't support it. 2012-09-18 22:02:40 +00:00
CmpInstAnalysis.cpp
CodeExtractor.cpp
DemoteRegToStack.cpp
InlineFunction.cpp
InstructionNamer.cpp
IntegerDivision.cpp Renaming functions to match coding style guidelines 2012-09-19 18:14:45 +00:00
LCSSA.cpp
LLVMBuild.txt
Local.cpp PGO: preserve branch-weight metadata when simplifying a switch with a single 2012-09-14 21:53:06 +00:00
LoopSimplify.cpp
LoopUnroll.cpp
LoopUnrollRuntime.cpp
LowerExpectIntrinsic.cpp
LowerInvoke.cpp
LowerSwitch.cpp
Makefile
Mem2Reg.cpp
MetaRenamer.cpp Review feedback from Duncan Sands. Alphabetize includes and simplify 2012-09-14 19:19:57 +00:00
ModuleUtils.cpp
PromoteMemoryToRegister.cpp
SimplifyCFG.cpp SimplifyCFG: sink common codes from IF, ELSE blocks down to END block. 2012-09-20 22:37:36 +00:00
SimplifyIndVar.cpp
SimplifyInstructions.cpp Make MemoryBuiltins aware of TargetLibraryInfo. 2012-08-29 15:32:21 +00:00
SSAUpdater.cpp Fix undefined behavior (binding a reference to a dereferenced null pointer) if 2012-08-17 21:42:44 +00:00
UnifyFunctionExitNodes.cpp
Utils.cpp Add a pass that renames everything with metasyntatic names. This works well after using bugpoint to reduce the confusion presented by the original names, which no longer mean what they used to. 2012-09-11 02:46:18 +00:00
ValueMapper.cpp