1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 04:02:41 +01:00
llvm-mirror/lib
Evan Cheng d4ddda68fa 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%.

llvm-svn: 47046
2008-02-13 03:01:43 +00:00
..
Analysis Re-apply the patch to improve the optimizations of memcpy's, with several 2008-02-12 21:15:18 +00:00
Archive Use empty() instead of comparing size() with zero. 2008-01-29 13:02:09 +00:00
AsmParser Back out mods to llvmAsmParser, incorrectly committed 2008-01-30 03:10:00 +00:00
Bitcode Use empty() instead of comparing size() with zero. 2008-01-29 13:02:09 +00:00
CodeGen Initial support for copy elimination by commuting its definition MI. 2008-02-13 03:01:43 +00:00
Debugger Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
ExecutionEngine Use empty() instead of comparing size() with zero. 2008-01-29 13:02:09 +00:00
Linker Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
Support Added "Profile" method to APFloat for use with FoldingSet. 2008-02-11 17:24:50 +00:00
System Set error message. 2008-02-04 20:57:54 +00:00
Target Make register scavenging happy by not using a reg (CR0) that isn't defined 2008-02-13 02:58:33 +00:00
Transforms Re-apply the patch to improve the optimizations of memcpy's, with several 2008-02-12 21:15:18 +00:00
VMCore check that terminators only occur at the end of a block. This catches the 2008-02-09 01:06:01 +00:00
Makefile remove attribution from lib Makefiles. 2007-12-29 20:09:26 +00:00