- Jun 22, 2007
-
-
Duraid Madina authored
llvm-svn: 37703
-
Owen Anderson authored
Avoid excessive calls to find_leader when calculating AVAIL_OUT. This reduces the time to optimize 403.gcc from 23.5s to 21.9s. llvm-svn: 37702
-
Evan Cheng authored
std::set is really really terrible. Switch to SmallPtrSet to reduce compile time. For Duraid's example. The overall isel time is reduced from 0.6255 sec to 0.1876 sec. llvm-svn: 37701
-
Dale Johannesen authored
llvm-svn: 37700
-
Owen Anderson authored
Reserve space in vectors before topologically sorting into them. This improves the time to optimize 403.gcc from 28s to 23.5s. llvm-svn: 37699
-
Owen Anderson authored
Make a bunch of optimizations for compile time to GVNPRE, including smarter set unions, deferring blocks rather than computing maximal sets, and smarter use of sets. With these enhancements, the time to optimize 273.perlbmk goes from 5.3s to 2.7s. llvm-svn: 37698
-
Owen Anderson authored
llvm-svn: 37697
-
Chris Lattner authored
1. Make SmallPtrSet::erase faster in the small case by replacing a memmove with a pointer copy. 2. Fix a bug where the null terminator at the end of the array in the small case was not copied llvm-svn: 37696
-
Devang Patel authored
Use schedulePass() to accomodate these requirement instead of directly assigning a manager to new CallGraph PassManager. llvm-svn: 37695
-
- Jun 21, 2007
-
-
Chris Lattner authored
transformation. Also, keep track of which end of the integer interval overflows occur on. This fixes Transforms/InstCombine/2007-06-21-DivCompareMiscomp.ll and rdar://5278853, a miscompilation of perl. llvm-svn: 37692
-
Owen Anderson authored
Change lots of sets from std::set to SmallPtrSet. This reduces the time required to optimize 253.perlbmk from 10.9s to 5.3s. llvm-svn: 37690
-
Devang Patel authored
from LoopSimplify.cpp to Dominator.cpp llvm-svn: 37689
-
Dan Gohman authored
llvm-svn: 37688
-
Dan Gohman authored
TargetLowering::getNumRegisters and similar, to avoid confusion with the actual number of elements for vector types. llvm-svn: 37687
-
Evan Cheng authored
(add (select cc, 0, c), x) -> (select cc, x, (add, x, c)) (sub x, (select cc, 0, c)) -> (select cc, x, (sub, x, c)) llvm-svn: 37685
-
Owen Anderson authored
Eliminate a redundant check. This speeds up optimization of 253.perlbmk from 13.5 seconds to 10.9 seconds. llvm-svn: 37683
-
Owen Anderson authored
llvm-svn: 37681
-
Chris Lattner authored
routine. llvm-svn: 37679
-
Owen Anderson authored
Split runOnFunction into many smaller functions. This make it easier to get accurate performance analysis of GVNPRE. llvm-svn: 37678
-
- Jun 20, 2007
-
-
Owen Anderson authored
llvm-svn: 37673
-
Owen Anderson authored
llvm-svn: 37670
-
Evan Cheng authored
llvm-svn: 37669
-
Owen Anderson authored
Use a DenseMap instead of an std::map for the value numbering. This reduces the time to optimize lencod on a PPC Debug build from ~300s to ~140s. llvm-svn: 37668
-
Owen Anderson authored
Make dependsOnInvoke much more specific in what it tests, which in turn make it much faster to run. This reduces the time to optimize lencondwith a debug build on PPC from ~450s to ~300s. llvm-svn: 37667
-
Tanya Lattner authored
llvm-svn: 37666
-
Tanya Lattner authored
llvm-svn: 37665
-
- Jun 19, 2007
-
-
Evan Cheng authored
Avoid if-converting simple block that ends with unconditional branch or fallthrough unless it branches / falls to the 'false' block. Not profitable, may end up increasing code size. llvm-svn: 37660
-
Evan Cheng authored
llvm-svn: 37659
-
Dan Gohman authored
deleteValueFromRecords and loosen the types to all it to accept Value* instead of just Instruction*, since this is what ScalarEvolution uses internally anyway. This allows more flexibility for future uses. llvm-svn: 37657
-
Dan Gohman authored
for needing the DAG node to print pre-legalize extended value types, and to get better debug messages with target-specific nodes. llvm-svn: 37656
-
Owen Anderson authored
Handle constants in phi nodes properly. This fixes test/Transforms/GVNPRE/2007-06-18-ConstantInPhi.ll llvm-svn: 37655
-
Chris Lattner authored
llvm-svn: 37651
-
Chris Lattner authored
llvm-svn: 37650
-
Chris Lattner authored
llvm-svn: 37649
-
Owen Anderson authored
Be careful to erase values from all of the appropriate sets when they're not needed anymore. This fixes a few more memory-related issues. llvm-svn: 37647
-
Owen Anderson authored
Thanks to Nicholas for valgrinding this. llvm-svn: 37646
-
Owen Anderson authored
Refactor GVNPRE to use a much smart method of uniquing value sets, and centralize a lot of the value numbering information. No functionality change. llvm-svn: 37645
-
Dan Gohman authored
with a general target hook to identify rematerializable instructions. Some instructions are only rematerializable with specific operands, such as loads from constant pools, while others are always rematerializable. This hook allows both to be identified as being rematerializable with the same mechanism. llvm-svn: 37644
-
Evan Cheng authored
llvm-svn: 37643
-
Chris Lattner authored
Anton for half of this patch. llvm-svn: 37641
-