llvm-6502/include/llvm
Evan Cheng 70071434ae Initial support for copy elimination by commuting its definition MI.
PR1877.
A3 = op A2 B0<kill>                                                                                                                                                                            
...                                                                                                                                                                                     
B1 = A3      <- this copy                                                                                                                                                                      
...                                                                                                                                                                                          
   = op A3   <- more uses                                                                                                                                                                      
                                                                                                                                                                                                 
==>                                                                                                                                                                                             
                                                                                                                                                                                            
B2 = op B0 A2<kill>                                                                                                                                                                            
...                                                                                                                                                                                          
B1 = B2      <- now an identify copy                                                                                                                                                           
...                                                                                                                                                                                          
   = op B2   <- more uses

This speeds up FreeBench/neural by 29%, Olden/bh by 12%, oopack_v1p8 by 53%.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47046 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-13 03:01:43 +00:00
..
ADT Change APInt::getBitsSet to accept a "half-open" range, where the 2008-02-12 21:47:33 +00:00
Analysis Re-apply the patch to improve the optimizations of memcpy's, with several 2008-02-12 21:15:18 +00:00
Assembly Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Bitcode Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
CodeGen Initial support for copy elimination by commuting its definition MI. 2008-02-13 03:01:43 +00:00
Config Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Debugger Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
ExecutionEngine Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Support Added "Profile" method to APFloat for use with FoldingSet. 2008-02-11 17:24:50 +00:00
System Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Target Convert SelectionDAG::ComputeMaskedBits to use APInt instead of uint64_t. 2008-02-13 00:35:47 +00:00
Transforms The CorrelatedExpressionElimination pass is known to be buggy. Remove it. 2008-01-27 06:11:41 +00:00
AbstractTypeUser.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Argument.h Add hasByValAttr() and hasNoAliasAttr() methods to the Argument class. 2008-01-24 17:47:11 +00:00
AutoUpgrade.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
BasicBlock.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
CallGraphSCCPass.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
CallingConv.h Implement sseregparm. 2008-02-05 20:46:33 +00:00
Constant.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Constants.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
DerivedTypes.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Function.h Disallow copying explicitly. 2008-01-03 00:09:47 +00:00
GlobalAlias.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
GlobalValue.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
GlobalVariable.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
InlineAsm.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
InstrTypes.h When transforming a call to a bitcast function into 2008-01-06 10:12:28 +00:00
Instruction.def remove attribution from a variety of miscellaneous files. 2007-12-29 22:59:10 +00:00
Instruction.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Instructions.h Handle some more combinations of extend and icmp. Fixes PR1940. 2008-01-28 03:48:02 +00:00
IntrinsicInst.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Intrinsics.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Intrinsics.td For PR1839: add initial support for __builtin_trap. llvm-gcc part is missed 2008-01-15 07:02:33 +00:00
IntrinsicsARM.td remove attribution from a variety of miscellaneous files. 2007-12-29 22:59:10 +00:00
IntrinsicsCellSPU.td More CellSPU refinement and progress: 2008-01-11 02:53:15 +00:00
IntrinsicsPowerPC.td remove attribution from a variety of miscellaneous files. 2007-12-29 22:59:10 +00:00
IntrinsicsX86.td Missed one. 2008-02-05 01:12:10 +00:00
LinkAllPasses.h The CorrelatedExpressionElimination pass is known to be buggy. Remove it. 2008-01-27 06:11:41 +00:00
LinkAllVMCore.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Linker.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
LinkTimeOptimizer.h - Introduces versioning macro LLVM_LTO_VERSION 2008-01-15 23:52:34 +00:00
Module.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
ModuleProvider.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
ParameterAttributes.h I noticed that the trampoline straightening transformation could 2008-01-14 19:52:09 +00:00
Pass.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
PassAnalysisSupport.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
PassManager.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
PassManagers.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
PassSupport.h Add explicit keywords. 2008-01-29 11:36:12 +00:00
SymbolTableListTraits.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Type.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
TypeSymbolTable.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Use.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
User.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Value.h Re-apply the memory operand changes, with a fix for the static 2008-02-06 22:27:42 +00:00
ValueSymbolTable.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00