llvm-6502/lib
Andrew Trick 4b4bb71bcd Added a SimplifyIndVar utility to simplify induction variable users
based on ScalarEvolution without changing the induction variable phis.

This utility is the main tool of IndVarSimplifyPass, but the pass also
restructures induction variables in strange ways that are sensitive to
pass ordering. This provides a way for other loop passes to simplify
new uses of induction variables created during transformation. The
utility may be used by any pass that preserves ScalarEvolution. Soon
LoopUnroll will use it.

The net effect in this checkin is to cleanup the IndVarSimplify pass
by factoring out the SimplifyIndVar algorithm into a standalone utility.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137197 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-10 03:46:27 +00:00
..
Analysis Cleanup. Added LoopBlocksDFS::perform for simple clients. 2011-08-10 01:59:05 +00:00
Archive
AsmParser Representation of 'atomic load' and 'atomic store' in IR. 2011-08-09 23:02:53 +00:00
Bitcode Representation of 'atomic load' and 'atomic store' in IR. 2011-08-09 23:02:53 +00:00
CodeGen Trim an unneeded header. 2011-08-09 23:49:21 +00:00
CompilerDriver
ExecutionEngine
Linker Linke NamedMDNodes after linking global values as comment suggests. 2011-08-04 19:44:28 +00:00
MC Don't truncate MachO addresses. 2011-08-09 22:12:37 +00:00
Object
Support Put Darwin-specific code inside an __APPLE__ ifdef. 2011-08-09 19:54:32 +00:00
Target Fix a bug in vpermilps mask checking. Fix PR10560 2011-08-10 01:54:17 +00:00
Transforms Added a SimplifyIndVar utility to simplify induction variable users 2011-08-10 03:46:27 +00:00
VMCore VMCore/BasicBlock.cpp: Don't assume BasicBlock::iterator might end with a non-PHInode Instruction in successors. 2011-08-09 23:13:05 +00:00
CMakeLists.txt
Makefile