Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Fix crash in LSR due to attempt to remove original induction variable. However, | Jeff Cohen | 2005-02-28 | 1 | -3/+14 | |
| | | | | | | | for reasons explained in the comments, I also deactivated this code as it needs more thought. llvm-svn: 20367 | |||||
* | PHI nodes were incorrectly placed when more than one GEP is reduced in a loop. | Jeff Cohen | 2005-02-27 | 1 | -7/+6 | |
| | | | | llvm-svn: 20360 | |||||
* | First pass at improved Loop Strength Reduction. Still not yet ready for ↵ | Jeff Cohen | 2005-02-27 | 1 | -35/+39 | |
| | | | | | | prime time. llvm-svn: 20358 | |||||
* | Use const iterators where possible. Patch by Evan Jones! | Chris Lattner | 2005-02-27 | 1 | -2/+2 | |
| | | | | llvm-svn: 20354 | |||||
* | Teach globalopt how memset/cpy/move affect memory, to allow better optimization. | Chris Lattner | 2005-02-27 | 1 | -25/+40 | |
| | | | | llvm-svn: 20352 | |||||
* | Fix spelling, patch contributed by Gabor Greif! | Chris Lattner | 2005-02-27 | 4 | -4/+4 | |
| | | | | llvm-svn: 20343 | |||||
* | Fix spelling, patch contributed by Gabor Greif | Chris Lattner | 2005-02-27 | 1 | -1/+1 | |
| | | | | llvm-svn: 20342 | |||||
* | Remove some stuff I checked in accidentally | Chris Lattner | 2005-02-27 | 1 | -6/+0 | |
| | | | | llvm-svn: 20340 | |||||
* | DCE a dead function | Chris Lattner | 2005-02-26 | 1 | -19/+0 | |
| | | | | llvm-svn: 20339 | |||||
* | Implement an isBytecodeArchive method to determine if an archive contains | Reid Spencer | 2005-02-26 | 1 | -0/+29 | |
| | | | | | | | bytecode file members or not. Patch Contributed By Adam Treat llvm-svn: 20338 | |||||
* | 1 + 100 + 51 == 152, not 52. | Chris Lattner | 2005-02-26 | 1 | -0/+2 | |
| | | | | | | | | If we fold three constants together (c1+c2+c3), make sure to keep LHSC updated, instead of reusing (in this case), the 1 instead of the partial sum. llvm-svn: 20337 | |||||
* | remove extraneous cast | Chris Lattner | 2005-02-26 | 1 | -2/+1 | |
| | | | | llvm-svn: 20334 | |||||
* | make BB labels be exported for debuging, add fp negation optimization, ↵ | Andrew Lenharth | 2005-02-25 | 3 | -30/+61 | |
| | | | | | | further pecimise the FP instructions llvm-svn: 20332 | |||||
* | Handle null a bit more carefully. | Chris Lattner | 2005-02-25 | 1 | -1/+11 | |
| | | | | | | | | Actually teach dsa about select instructions. This doesn't affect the graph in any way other than not setting a spurious U marker on pointer nodes that are selected. llvm-svn: 20324 | |||||
* | This instruction: | Chris Lattner | 2005-02-24 | 1 | -1/+2 | |
| | | | | | | | | | X = gep null, ... Used to not create a scalar map entry for X, which caused clients to barf. This is bad. llvm-svn: 20316 | |||||
* | Fix a bug introduced by revision 1.187 of this file. | Chris Lattner | 2005-02-24 | 1 | -1/+2 | |
| | | | | llvm-svn: 20308 | |||||
* | fix Allocas. Really. I mean it this time. | Andrew Lenharth | 2005-02-24 | 1 | -1/+6 | |
| | | | | llvm-svn: 20306 | |||||
* | Fix some problems where the verifier would crash on invalid input instead of | Chris Lattner | 2005-02-24 | 2 | -3/+7 | |
| | | | | | | reporting the problem and exiting. llvm-svn: 20302 | |||||
* | Implement Transforms/SimplifyCFG/switch_thread.ll | Chris Lattner | 2005-02-24 | 1 | -4/+190 | |
| | | | | | | | | This does a simple form of "jump threading", which eliminates CFG edges that are provably dead. This triggers 90 times in the external tests, and eliminating CFG edges is always always a good thing! :) llvm-svn: 20300 | |||||
* | switch instructions only allow constantints for their values, be more specific. | Chris Lattner | 2005-02-24 | 1 | -1/+1 | |
| | | | | llvm-svn: 20298 | |||||
* | use more specific cast. | Chris Lattner | 2005-02-24 | 1 | -1/+1 | |
| | | | | llvm-svn: 20297 | |||||
* | add more checking | Chris Lattner | 2005-02-24 | 1 | -2/+6 | |
| | | | | llvm-svn: 20296 | |||||
* | Do not read free'd memory when printing an error message. | Chris Lattner | 2005-02-24 | 1 | -1/+1 | |
| | | | | llvm-svn: 20295 | |||||
* | add a new method. | Chris Lattner | 2005-02-24 | 1 | -0/+10 | |
| | | | | llvm-svn: 20293 | |||||
* | Only print out machine instructions before modulo scheduling if we are ↵ | Tanya Lattner | 2005-02-24 | 1 | -1/+1 | |
| | | | | | | actually doing modulo scheduling! :) llvm-svn: 20292 | |||||
* | Ah the problems you have to fix when you stray from the One True Way (TM) | Andrew Lenharth | 2005-02-23 | 1 | -2/+2 | |
| | | | | llvm-svn: 20290 | |||||
* | make this more efficient. Scan up to 16 nodes, not the whole list. | Chris Lattner | 2005-02-23 | 2 | -2/+2 | |
| | | | | llvm-svn: 20289 | |||||
* | new method | Chris Lattner | 2005-02-23 | 1 | -0/+13 | |
| | | | | llvm-svn: 20288 | |||||
* | Reduce the amount of searching this assertion does. On a testcase of mine, | Chris Lattner | 2005-02-23 | 1 | -1/+3 | |
| | | | | | | this reduces the time for -simplifycfg in a debug build from 106s to 14.82s llvm-svn: 20286 | |||||
* | Silence some uninit variable warnings. | Chris Lattner | 2005-02-23 | 1 | -0/+2 | |
| | | | | llvm-svn: 20284 | |||||
* | Fixed bug in findAllcircuits. Fixed branch addition to schedule. Added debug ↵ | Tanya Lattner | 2005-02-23 | 4 | -92/+150 | |
| | | | | | | information. llvm-svn: 20280 | |||||
* | oops | Andrew Lenharth | 2005-02-22 | 1 | -1/+1 | |
| | | | | llvm-svn: 20278 | |||||
* | Remove use of bind_obj, deleter, and finegrainify namespacification. | Chris Lattner | 2005-02-22 | 1 | -18/+15 | |
| | | | | llvm-svn: 20277 | |||||
* | Remove use of bind_obj | Chris Lattner | 2005-02-22 | 1 | -2/+3 | |
| | | | | llvm-svn: 20276 | |||||
* | C++ is not a functional programming language. | Chris Lattner | 2005-02-22 | 1 | -5/+7 | |
| | | | | llvm-svn: 20274 | |||||
* | dynamic stack allocas | Andrew Lenharth | 2005-02-22 | 2 | -65/+154 | |
| | | | | llvm-svn: 20273 | |||||
* | Fix a bug in the 'store fpimm, ptr' -> 'store intimm, ptr' handling code. | Chris Lattner | 2005-02-22 | 1 | -2/+1 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changing 'op' here caused us to not enter the store into a map, causing reemission of the code!! In practice, a simple loop like this: no_exit: ; preds = %no_exit, %entry %indvar = phi uint [ %indvar.next, %no_exit ], [ 0, %entry ] ; <uint> [#uses=3] %tmp.4 = getelementptr "complex long double"* %P, uint %indvar, uint 0 ; <double*> [#uses=1] store double 0.000000e+00, double* %tmp.4 %indvar.next = add uint %indvar, 1 ; <uint> [#uses=2] %exitcond = seteq uint %indvar.next, %N ; <bool> [#uses=1] br bool %exitcond, label %return, label %no_exit was being code gen'd to: .LBBtest_1: # no_exit movl %edx, %esi shll $4, %esi movl $0, 4(%eax,%esi) movl $0, (%eax,%esi) incl %edx movl $0, (%eax,%esi) movl $0, 4(%eax,%esi) cmpl %ecx, %edx jne .LBBtest_1 # no_exit Note that we are doing 4 32-bit stores instead of 2. Now we generate: .LBBtest_1: # no_exit movl %edx, %esi incl %esi shll $4, %edx movl $0, (%eax,%edx) movl $0, 4(%eax,%edx) cmpl %ecx, %esi movl %esi, %edx jne .LBBtest_1 # no_exit This is much happier, though it would be even better if the increment of ESI was scheduled after the compare :-/ llvm-svn: 20265 | |||||
* | no longer build as a shared library | Andrew Lenharth | 2005-02-22 | 1 | -1/+0 | |
| | | | | llvm-svn: 20264 | |||||
* | Fix problems running the HowToUseJIT on powerpc, and probably problems with | Chris Lattner | 2005-02-20 | 1 | -2/+2 | |
| | | | | | | ANY program that does not have all functions internalized. llvm-svn: 20258 | |||||
* | Fix silly mistake. | Jeff Cohen | 2005-02-20 | 1 | -1/+1 | |
| | | | | llvm-svn: 20256 | |||||
* | Implement standard I/O redirection in ExecuteAndWait(). | Jeff Cohen | 2005-02-20 | 1 | -7/+73 | |
| | | | | llvm-svn: 20255 | |||||
* | Add support for ".so" files compiled with LLVM which contain LLVM bytecode. | Chris Lattner | 2005-02-19 | 2 | -3/+11 | |
| | | | | llvm-svn: 20253 | |||||
* | Eliminate silly warnings from the linker of the form: | Chris Lattner | 2005-02-19 | 1 | -12/+0 | |
| | | | | | | | WARNING: Type conflict between types named 'union.._604.'. Src=' %union.._604.'. Dest=' %union.._604.' llvm-svn: 20252 | |||||
* | Change __MINGW to __MINGW32__. Patch submitted by Henrik Bach. | Jeff Cohen | 2005-02-19 | 4 | -4/+4 | |
| | | | | llvm-svn: 20243 | |||||
* | Make PreventCoreFiles() do the right thing on Windows. | Jeff Cohen | 2005-02-18 | 1 | -3/+6 | |
| | | | | llvm-svn: 20237 | |||||
* | Fix compilation errors with VS 2005, patch contributed by Aaron Gray. | Misha Brukman | 2005-02-17 | 1 | -8/+28 | |
| | | | | llvm-svn: 20232 | |||||
* | Fix compilation errors with VS 2005, patch by Aaron Gray. | Misha Brukman | 2005-02-17 | 1 | -0/+3 | |
| | | | | llvm-svn: 20231 | |||||
* | Don't rely on doubles comparing identical to each other, which doesn't work | Chris Lattner | 2005-02-17 | 1 | -4/+19 | |
| | | | | | | for 0.0 and -0.0. llvm-svn: 20230 | |||||
* | Don't sink argument loads into loops or other bad places. This disables ↵ | Chris Lattner | 2005-02-17 | 1 | -1/+8 | |
| | | | | | | folding of argument loads with instructions that are not in the entry block. llvm-svn: 20228 | |||||
* | Do not mark obviously unreachable blocks live when processing PHI nodes, | Chris Lattner | 2005-02-17 | 1 | -40/+61 | |
| | | | | | | | | | | | | and handle incomplete control dependences correctly. This fixes: Regression/Transforms/ADCE/dead-phi-edge.ll -> a missed optimization Regression/Transforms/ADCE/dead-phi-edge.ll -> a compiler crash distilled from QT4 llvm-svn: 20227 |