- Oct 23, 2006
-
-
Chris Lattner authored
Prolangs-C/agrep and SCCP/2006-10-23-IPSCCP-Crash.ll llvm-svn: 31132
-
- Oct 22, 2006
-
-
Chris Lattner authored
1. Better document what is going on here. 2. Only hack on one branch per iteration, making the results less conservative. 3. Handle the problematic case by marking edges executable instead of by playing with value lattice states. This is far less pessimistic, and fixes SCCP/ipsccp-gvar.ll. llvm-svn: 31106
-
- Oct 20, 2006
-
-
Chris Lattner authored
llvm-svn: 31073
-
- Sep 29, 2006
-
-
Chris Lattner authored
Eliminate ConstantBool::True and ConstantBool::False. Instead, provide ConstantBool::getTrue() and ConstantBool::getFalse(). llvm-svn: 30665
-
- Aug 28, 2006
-
-
Chris Lattner authored
llvm-svn: 29925
-
- Apr 08, 2006
-
-
Chris Lattner authored
llvm-svn: 27513
-
- Feb 08, 2006
-
-
Chris Lattner authored
test/Regression/Transforms/SCCP/select.ll llvm-svn: 26049
-
- Jan 23, 2006
-
-
Chris Lattner authored
llvm-svn: 25514
-
- Jan 17, 2006
-
-
Robert Bocchino authored
llvm-svn: 25406
-
- Jan 10, 2006
-
-
Robert Bocchino authored
llvm-svn: 25180
-
- Sep 26, 2005
-
-
Chris Lattner authored
ConstantFoldLoadThroughGEPConstantExpr function in the utils lib. llvm-svn: 23446
-
- Apr 23, 2005
-
-
Jeff Cohen authored
llvm-svn: 21480
-
- Apr 22, 2005
-
-
Misha Brukman authored
llvm-svn: 21427
-
- Apr 19, 2005
-
-
Chris Lattner authored
Make IPSCCP strip off dead constant exprs that are using functions, making them appear as though their address is taken. This allows us to propagate some more pool descriptors, lowering the overhead of pool alloc. llvm-svn: 21363
-
- Mar 15, 2005
-
-
Chris Lattner authored
using Function::arg_{iterator|begin|end}. Likewise Module::g* -> Module::global_*. This patch is contributed by Gabor Greif, thanks! llvm-svn: 20597
-
- Jan 08, 2005
-
-
Chris Lattner authored
llvm-svn: 19379
-
- Dec 12, 2004
-
-
Chris Lattner authored
if the other side is overdefined. This allows us to fold conditions like: if (X < Y || Y > Z) in some cases. llvm-svn: 18807
-
- Dec 11, 2004
-
-
Chris Lattner authored
1. Actually increment the Statistic for the GV elim optzn 2. When resolving undef branches, only resolve branches in executable blocks, avoiding marking a bunch of completely dead blocks live. This has a big impact on the quality of the generated code. With this patch, we positively rip up vortex, compiling Ut_MoveBytes to a single memcpy call. In vortex we get this: 12 ipsccp - Number of globals found to be constant 986 ipsccp - Number of arguments constant propagated 1378 ipsccp - Number of basic blocks unreachable 8919 ipsccp - Number of instructions removed llvm-svn: 18796
-
Chris Lattner authored
llvm-svn: 18795
-
Chris Lattner authored
non-address-taken global variables. llvm-svn: 18790
-
Chris Lattner authored
In functions where we fully constant prop the return value, replace all ret instructions with 'ret undef'. llvm-svn: 18786
-
- Dec 10, 2004
-
-
Chris Lattner authored
llvm-svn: 18781
-
Chris Lattner authored
llvm-svn: 18776
-
Chris Lattner authored
This implements SCCP/ipsccp-basic.ll, rips apart Olden/mst (as described in PR415), and does other nice things. There is still more to come with this, but it's a start. llvm-svn: 18752
-
- Nov 16, 2004
-
-
Chris Lattner authored
llvm-svn: 17897
-
- Nov 15, 2004
-
-
Chris Lattner authored
llvm-svn: 17825
-
Chris Lattner authored
llvm-svn: 17824
-
Chris Lattner authored
1. Speedup getValueState by having it not consider Arguments. It's better to just add them before we start SCCP'ing. 2. SCCP can delete the contents of dead blocks. No really, it's ok! This reduces the size of the IR for subsequent passes, even though simplifycfg would do the same job. In practice, simplifycfg does not run until much later than sccp in gccas llvm-svn: 17820
-
Chris Lattner authored
llvm-svn: 17818
-
Chris Lattner authored
class. The only changes are minor: * Do not try to SCCP instructions that return void in the rewrite loop. This is silly and fool hardy, wasting a map lookup and adding an entry to the map which is never used. * If we decide something has an undefined value, rewrite it to undef, potentially leading to further simplications. llvm-svn: 17816
-
- Oct 27, 2004
-
-
Chris Lattner authored
and work better with VC++. Patch contributed by Morten Ofstad! llvm-svn: 17281
-
- Oct 16, 2004
-
-
Chris Lattner authored
ignore unreachable instructions llvm-svn: 17044
-
- Oct 09, 2004
-
-
Chris Lattner authored
-debug-only! llvm-svn: 16868
-
- Sep 20, 2004
-
-
Chris Lattner authored
llvm-svn: 16432
-
- Sep 15, 2004
-
-
Reid Spencer authored
Patch contributed by Paolo Invernizzi. Thanks Paolo! llvm-svn: 16368
-
- Sep 02, 2004
-
-
Reid Spencer authored
Move include/Config and include/Support into include/llvm/Config, include/llvm/ADT and include/llvm/Support. From here on out, all LLVM public header files must be under include/llvm/. llvm-svn: 16137
-
- Aug 04, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 15487
-
- Jul 18, 2004
-
-
Reid Spencer authored
llvm-svn: 14967
-
Reid Spencer authored
- Replace ConstantPointerRef usage with GlobalValue usage - Correct isa<Constant> for GlobalValue subclass llvm-svn: 14947
-
- Jul 16, 2004
-
-
Chris Lattner authored
Speed up SCCP substantially by processing overdefined values quickly. This patch speeds up SCCP by about 30-40% on large testcases. llvm-svn: 14861
-