llvm-6502/lib/Transforms/Scalar
Dan Gohman 23e8b71526 Teach InstCombine's ComputeMaskedBits what SelectionDAG's
ComputeMaskedBits knows about cttz, ctlz, and ctpop. Teach
SelectionDAG's ComputeMaskedBits what InstCombine's knows
about SRem. And teach them both some things about high bits
in Mul, UDiv, URem, and Sub. This allows instcombine and
dagcombine to eliminate sign-extension operations in
several new cases.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50358 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-28 17:02:21 +00:00
..
ADCE.cpp API changes for class Use size reduction, wave 1. 2008-04-06 20:25:17 +00:00
BasicBlockPlacement.cpp Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
CodeGenPrepare.cpp Implement a signficant optimization for inline asm: 2008-04-27 00:37:18 +00:00
CondPropagate.cpp Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
ConstantProp.cpp Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
DCE.cpp Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
DeadStoreElimination.cpp Be more precise when eliminating pointers bue to memcpy's. This allows more 2008-02-04 04:53:00 +00:00
GCSE.cpp API changes for class Use size reduction, wave 1. 2008-04-06 20:25:17 +00:00
GVN.cpp Remove unneeded #include's. 2008-04-21 07:47:38 +00:00
GVNPRE.cpp API changes for class Use size reduction, wave 1. 2008-04-06 20:25:17 +00:00
IndVarSimplify.cpp API changes for class Use size reduction, wave 1. 2008-04-06 20:25:17 +00:00
InstructionCombining.cpp Teach InstCombine's ComputeMaskedBits what SelectionDAG's 2008-04-28 17:02:21 +00:00
JumpThreading.cpp Don't infininitely thread branches when a threaded edge 2008-04-25 04:12:29 +00:00
LICM.cpp Use empty() instead of comparing size() with zero. 2008-01-29 13:02:09 +00:00
LoopIndexSplit.cpp API changes for class Use size reduction, wave 1. 2008-04-06 20:25:17 +00:00
LoopRotation.cpp Revert r49614. As Dan pointed out, some of these aren't correct. 2008-04-14 17:38:21 +00:00
LoopStrengthReduce.cpp Minor whitespace and comment cleanups. 2008-04-14 18:26:16 +00:00
LoopUnroll.cpp Remove 'unwinds to' support from mainline. This patch undoes r47802 r47989 2008-04-25 16:53:59 +00:00
LoopUnswitch.cpp Remove 'unwinds to' support from mainline. This patch undoes r47802 r47989 2008-04-25 16:53:59 +00:00
Makefile remove attribution from lib Makefiles. 2007-12-29 20:09:26 +00:00
MemCpyOptimizer.cpp Refactor memcpyopt based on Chris' suggestions. Consolidate several functions 2008-04-21 07:45:10 +00:00
PredicateSimplifier.cpp Remove unnecessary <sstream> includes. 2008-04-14 20:40:47 +00:00
Reassociate.cpp Don't include <map> in Pass.h, which doesn't need it. This requires 2008-03-21 23:51:57 +00:00
Reg2Mem.cpp Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
Scalar.cpp C and Objective Caml bindings for mem2reg and reg2mem. 2008-03-20 17:16:03 +00:00
ScalarReplAggregates.cpp API changes for class Use size reduction, wave 1. 2008-04-06 20:25:17 +00:00
SCCP.cpp Remove 'unwinds to' support from mainline. This patch undoes r47802 r47989 2008-04-25 16:53:59 +00:00
SimplifyCFG.cpp API changes for class Use size reduction, wave 1. 2008-04-06 20:25:17 +00:00
TailDuplication.cpp replace a slow and verbose version of Instruction::isUsedOutsideOfBlock with 2008-04-20 22:18:22 +00:00
TailRecursionElimination.cpp API changes for class Use size reduction, wave 1. 2008-04-06 20:25:17 +00:00