- Sep 04, 2008
-
-
Dan Gohman authored
llvm-svn: 55779
-
Owen Anderson authored
llvm-svn: 55744
-
- Sep 03, 2008
-
-
Nick Lewycky authored
llvm-svn: 55690
-
Devang Patel authored
llvm-svn: 55682
-
Devang Patel authored
llvm-svn: 55680
-
Devang Patel authored
llvm-svn: 55678
-
Devang Patel authored
llvm-svn: 55674
-
- Sep 01, 2008
-
-
Duncan Sands authored
attributes on functions, based on the result of alias analysis. It's not hardwired to use GlobalsModRef even though this is the only (AFAIK) alias analysis that results in this pass actually doing something. Enable as follows: opt ... -globalsmodref-aa -markmodref ... Advantages of this pass: (1) records the result of globalsmodref in the bitcode, meaning it is available for use by later passes (currently the pass manager isn't smart enough to magically make an advanced alias analysis available to all later passes), which may expose more optimization opportunities; (2) hopefully speeds up compilation when code is optimized twice, for example when a file is compiled to bitcode, then later LTO is done on it: marking functions readonly/readnone when producing the initial bitcode should speed up alias analysis during LTO; (3) good for discovering that globalsmodref doesn't work very well :) Not currently turned on by default. llvm-svn: 55604
-
- Aug 27, 2008
-
-
Devang Patel authored
llvm-svn: 55433
-
Devang Patel authored
llvm-svn: 55424
-
Owen Anderson authored
Put a heuristic in place to prevent GVN from falling into bad cases with massively complicated CFGs. This speeds up a particular testcase from 12+ hours to 5 seconds with little perceptible loss of quality. llvm-svn: 55391
-
- Aug 26, 2008
-
-
Devang Patel authored
llvm-svn: 55374
-
- Aug 24, 2008
-
-
Chris Lattner authored
llvm-svn: 55271
-
Chris Lattner authored
patch contributed by m-s! llvm-svn: 55270
-
Chris Lattner authored
use raw_ostream instead of std::ostream. Among other goodness, this speeds up llvm-dis of kc++ with a release build from 0.85s to 0.49s (88% faster). Other interesting changes: 1) This makes Value::print be non-virtual. 2) AP[S]Int and ConstantRange can no longer print to ostream directly, use raw_ostream instead. 3) This fixes a bug in raw_os_ostream where it didn't flush itself when destroyed. 4) This adds a new SDNode::print method, instead of only allowing "dump". A lot of APIs have both std::ostream and raw_ostream versions, it would be useful to go through and systematically anihilate the std::ostream versions. This passes dejagnu, but there may be minor fallout, plz let me know if so and I'll fix it. llvm-svn: 55263
-
- Aug 23, 2008
-
-
Chris Lattner authored
indices that start with an array subscript. x->field[10000] is just as bad as (*X)[14][10000]. llvm-svn: 55226
-
- Aug 22, 2008
-
-
Chris Lattner authored
Patch contributed by m-s. llvm-svn: 55167
-
- Aug 21, 2008
-
-
Nick Lewycky authored
slowdown in bzip2. llvm-svn: 55113
-
Evan Cheng authored
llvm-svn: 55087
-
- Aug 20, 2008
-
-
Mon P Wang authored
llvm-svn: 55035
-
- Aug 19, 2008
-
-
Chris Lattner authored
llvm-svn: 54979
-
- Aug 17, 2008
-
-
Nick Lewycky authored
predicate, swap the order of the operands. llvm-svn: 54907
-
Nick Lewycky authored
produce an xor by 127. llvm-svn: 54906
-
Evan Cheng authored
llvm-svn: 54878
-
Nick Lewycky authored
llvm-svn: 54877
-
Nick Lewycky authored
the predicate. Also, make this optz'n apply in more cases where it's safe to do so. llvm-svn: 54876
-
- Aug 15, 2008
-
-
Owen Anderson authored
Remove GCSE, ValueNumbering, and LoadValueNumbering. These have been deprecated for almost a year; it's finally time for them to go away. llvm-svn: 54822
-
Devang Patel authored
llvm-svn: 54821
-
Evan Cheng authored
llvm-svn: 54813
-
Chris Lattner authored
by ~10% on some testcases. llvm-svn: 54811
-
Bill Wendling authored
llvm-svn: 54804
-
- Aug 14, 2008
-
-
Devang Patel authored
llvm-svn: 54792
-
Devang Patel authored
llvm-svn: 54786
-
Dan Gohman authored
llvm-svn: 54780
-
Dan Gohman authored
can have a non-negative result; for example, -16%16 is 0. Also, clarify the related comments. This fixes PR2670. llvm-svn: 54767
-
- Aug 13, 2008
-
-
Dan Gohman authored
track individual leaf values in such cases, so it needs to treat struct values as normal values in this case. llvm-svn: 54760
-
Devang Patel authored
llvm-svn: 54754
-
Devang Patel authored
llvm-svn: 54710
-
- Aug 12, 2008
-
-
Chris Lattner authored
do for scalars. Patch contributed by Nicolas Capens This also generalizes the previous xforms to work on long double, now that isExactlyValue works for long double. llvm-svn: 54653
-
- Aug 08, 2008
-
-
Eric Christopher authored
names. This can save a lot of allocations if you aren't going to be looking at the output. llvm-svn: 54546
-