1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 04:02:41 +01:00
llvm-mirror/lib/Transforms/Scalar
Dan Gohman 52ed61204b Make LoopSimplify change conditional branches in loop exiting blocks
which branch on undef to branch on a boolean constant for the edge
exiting the loop. This helps ScalarEvolution compute trip counts for
loops.

Teach ScalarEvolution to recognize single-value PHIs, when safe, and
ForgetSymbolicName to forget such single-value PHI nodes as apprpriate
in ForgetSymbolicName.

llvm-svn: 97126
2010-02-25 06:57:05 +00:00
..
ABCD.cpp There are two ways of checking for a given type, for example isa<PointerType>(T) 2010-02-16 11:11:14 +00:00
ADCE.cpp Use do+while instead of while for loops which obviously have a 2010-01-05 16:27:25 +00:00
BasicBlockPlacement.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
CMakeLists.txt Pull these back out, they're a little too aggressive and time 2010-02-09 17:29:18 +00:00
CodeGenPrepare.cpp There are two ways of checking for a given type, for example isa<PointerType>(T) 2010-02-16 11:11:14 +00:00
ConstantProp.cpp remove a bunch of extraneous LLVMContext arguments 2009-11-06 04:27:31 +00:00
DCE.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
DeadStoreElimination.cpp Make DSE only scan blocks that are reachable from the entry 2010-02-11 05:11:54 +00:00
GEPSplitter.cpp Check in the experimental GEP splitter pass. This pass splits complex 2009-10-26 19:12:14 +00:00
GVN.cpp Reapply r97010, the speculative revert failed. 2010-02-24 08:48:04 +00:00
IndVarSimplify.cpp Make LoopSimplify change conditional branches in loop exiting blocks 2010-02-25 06:57:05 +00:00
JumpThreading.cpp There are two ways of checking for a given type, for example isa<PointerType>(T) 2010-02-16 11:11:14 +00:00
LICM.cpp There are two ways of checking for a given type, for example isa<PointerType>(T) 2010-02-16 11:11:14 +00:00
LoopDeletion.cpp LoopDeletion depends on loops having dedicated exits. 2009-11-05 21:47:04 +00:00
LoopIndexSplit.cpp Use do+while instead of while for loops which obviously have a 2010-01-05 16:27:25 +00:00
LoopRotation.cpp Update various Loop optimization passes to cope with the possibility that 2009-11-05 21:11:53 +00:00
LoopStrengthReduce.cpp Remove unused variables and parameters. 2010-02-22 04:11:59 +00:00
LoopUnrollPass.cpp Don't unroll loops containing function calls. 2010-02-05 23:21:31 +00:00
LoopUnswitch.cpp There are two ways of checking for a given type, for example isa<PointerType>(T) 2010-02-16 11:11:14 +00:00
Makefile make -fno-rtti the default unless a directory builds with REQUIRES_RTTI. 2010-01-24 20:43:08 +00:00
MemCpyOptimizer.cpp Uniformize the names of type predicates: rather than having isFloatTy and 2010-02-15 16:12:20 +00:00
Reassociate.cpp There are two ways of checking for a given type, for example isa<PointerType>(T) 2010-02-16 11:11:14 +00:00
Reg2Mem.cpp clean up this code a bit. 2009-09-02 06:15:37 +00:00
Scalar.cpp remove the now dead condprop pass, PR3906. 2009-11-11 05:56:35 +00:00
ScalarReplAggregates.cpp There are two ways of checking for a given type, for example isa<PointerType>(T) 2010-02-16 11:11:14 +00:00
SCCP.cpp There are two ways of checking for a given type, for example isa<PointerType>(T) 2010-02-16 11:11:14 +00:00
SCCVN.cpp Use do+while instead of while for loops which obviously have a 2010-01-05 16:27:25 +00:00
SimplifyCFGPass.cpp Teach SimplifyCFG about magic pointer constants. 2010-02-05 22:03:18 +00:00
SimplifyHalfPowrLibCalls.cpp Fix "the the" and similar typos. 2010-02-10 16:03:48 +00:00
SimplifyLibCalls.cpp There are two ways of checking for a given type, for example isa<PointerType>(T) 2010-02-16 11:11:14 +00:00
TailDuplication.cpp Change errs() to dbgs(). 2010-01-05 01:27:33 +00:00
TailRecursionElimination.cpp Revert 94937 and move the noreturn check to codegen. 2010-02-03 03:55:59 +00:00