aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add testcase for this:Chris Lattner2005-03-061-0/+21
| | | | | | | | | | | | | (3) Do not reduce element sizes of small power of two: char s[10]; for (i) ...s[i] ... when the indvar is not eliminable. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20502 91177308-0d34-0410-b5e6-96231b3b80d8
* implement Transforms/LoopStrengthReduce/invariant_value_first_arg.llChris Lattner2005-03-061-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20501 91177308-0d34-0410-b5e6-96231b3b80d8
* testcase for A[invariant][indvar] where invariant is an instruction.Chris Lattner2005-03-061-0/+19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20500 91177308-0d34-0410-b5e6-96231b3b80d8
* add test for this:Chris Lattner2005-03-061-0/+21
| | | | | | | | | | | | (1) Allow loop invariant expressions to come before the induction variable (instead of just constants): int x; for (i) ...a[x][i] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20499 91177308-0d34-0410-b5e6-96231b3b80d8
* Add test for this:Chris Lattner2005-03-061-0/+22
| | | | | | | | | | | | Allow operands after the induction variable (no restrictions): int x; for (i) j = ..... a[i][x][j] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20498 91177308-0d34-0410-b5e6-96231b3b80d8
* minor simplifications of the code.Chris Lattner2005-03-061-9/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20497 91177308-0d34-0410-b5e6-96231b3b80d8
* a regtestChris Lattner2005-03-061-0/+19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20496 91177308-0d34-0410-b5e6-96231b3b80d8
* new directoryChris Lattner2005-03-061-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20495 91177308-0d34-0410-b5e6-96231b3b80d8
* trivial simplificationChris Lattner2005-03-061-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20494 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a bug where we could corrupt a parent loop's header info if we unrolledChris Lattner2005-03-061-6/+17
| | | | | | | | a nested loop. This fixes Transforms/LoopUnroll/2005-03-06-BadLoopInfoUpdate.ll and PR532 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20493 91177308-0d34-0410-b5e6-96231b3b80d8
* New testcase for PR532Chris Lattner2005-03-061-0/+29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20492 91177308-0d34-0410-b5e6-96231b3b80d8
* new helper methodChris Lattner2005-03-061-0/+15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20491 91177308-0d34-0410-b5e6-96231b3b80d8
* new testcase reduced from the MultiSource/Applications/d failure last night.Chris Lattner2005-03-061-0/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20490 91177308-0d34-0410-b5e6-96231b3b80d8
* move some method declarations around to make it clear that users shouldChris Lattner2005-03-061-49/+52
| | | | | | | | not call insert(Value *Val), remove(Value* Val), or changeName(Value *V, const std::string &Name) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20488 91177308-0d34-0410-b5e6-96231b3b80d8
* this method is never called.Chris Lattner2005-03-061-11/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20487 91177308-0d34-0410-b5e6-96231b3b80d8
* cleanup some htmlChris Lattner2005-03-061-11/+8
| | | | | | | | remove a statement that is no longer true remove comment about a dead method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20486 91177308-0d34-0410-b5e6-96231b3b80d8
* the only caller of insertEntry is insert, inline it and remove insertEntryChris Lattner2005-03-061-7/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20485 91177308-0d34-0410-b5e6-96231b3b80d8
* rename insertEntry to insertChris Lattner2005-03-061-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20484 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge SymbolTable::removeEntry into SymbolTable::remove, its only callerChris Lattner2005-03-061-28/+21
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20483 91177308-0d34-0410-b5e6-96231b3b80d8
* remove this method.Chris Lattner2005-03-061-4/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20482 91177308-0d34-0410-b5e6-96231b3b80d8
* Delete the really inefficient method: void remove(const Type* Typ);Chris Lattner2005-03-061-18/+2
| | | | | | | | | | | Speed up the symbol stripping code by avoiding a linear search of the type table. Get rid of removeEntry(type_iterator), since 'remove' is exactly the same operation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20481 91177308-0d34-0410-b5e6-96231b3b80d8
* Delete the really inefficient method: void remove(const Type* Typ);Chris Lattner2005-03-061-14/+1
| | | | | | | | Get rid of removeEntry(type_iterator), since 'remove' is exactly the same operation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20480 91177308-0d34-0410-b5e6-96231b3b80d8
* Make this MUCH faster by avoiding a linear search in the symbol table code.Chris Lattner2005-03-061-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20479 91177308-0d34-0410-b5e6-96231b3b80d8
* InternallyInconsistent is dead!Chris Lattner2005-03-061-11/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20478 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove some really gross and hard to understand code now thatChris Lattner2005-03-061-27/+6
| | | | | | | InternallyInconsistent is always false. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20477 91177308-0d34-0410-b5e6-96231b3b80d8
* Simplify some code.Chris Lattner2005-03-061-7/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20476 91177308-0d34-0410-b5e6-96231b3b80d8
* remove these dead methods.Chris Lattner2005-03-061-30/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20475 91177308-0d34-0410-b5e6-96231b3b80d8
* remove these methods.Chris Lattner2005-03-061-42/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20474 91177308-0d34-0410-b5e6-96231b3b80d8
* These methods are removed.Chris Lattner2005-03-061-8/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20473 91177308-0d34-0410-b5e6-96231b3b80d8
* simplify and speed up some codeChris Lattner2005-03-062-4/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20472 91177308-0d34-0410-b5e6-96231b3b80d8
* simplify some code.Chris Lattner2005-03-062-10/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20471 91177308-0d34-0410-b5e6-96231b3b80d8
* nuke some dead methods.Chris Lattner2005-03-061-20/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20470 91177308-0d34-0410-b5e6-96231b3b80d8
* This fixes PR531, a crash when running the CBE on a bytecode file.Chris Lattner2005-03-062-4/+50
| | | | | | | | | | | | | | | | | | | The problem is that Function::renameLocalSymbols is iterating through the symbol table planes, occasionally calling setName to rename a value (which used to do a symbol table remove/insert pair). The problem is that if there is only a single value in a particular type plane that the remove will nuke the symbol table plane, and the insert will create and insert a new one. This hoses Function::renameLocalSymbols because it has an iterator to the old plane, under the (very reasonable) assumption that simply renaming a value won't cause the type plane to disappear. This patch fixes the bug by making the rename operation a single atomic operation, which has a side effect of making the whole thing faster too. :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20469 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a new method, allow symtab to poke name.Chris Lattner2005-03-062-0/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20468 91177308-0d34-0410-b5e6-96231b3b80d8
* Reformat comments to fix 80 columns.Jeff Cohen2005-03-051-7/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20467 91177308-0d34-0410-b5e6-96231b3b80d8
* Reuse induction variables created for strength-reduced GEPs by other similar ↵Jeff Cohen2005-03-051-32/+61
| | | | | | GEPs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20466 91177308-0d34-0410-b5e6-96231b3b80d8
* remove extraneous spaces from argument lists.Chris Lattner2005-03-051-11/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20465 91177308-0d34-0410-b5e6-96231b3b80d8
* remove all of the various setName implementations, consolidating them intoChris Lattner2005-03-0513-71/+29
| | | | | | | Value::setName, which is no longer virtual. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20464 91177308-0d34-0410-b5e6-96231b3b80d8
* second argument to Value::setName is now gone.Chris Lattner2005-03-053-5/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20463 91177308-0d34-0410-b5e6-96231b3b80d8
* Make sure the two arguments of a setcc instruction point to the same node.Chris Lattner2005-03-051-1/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20462 91177308-0d34-0410-b5e6-96231b3b80d8
* zapChris Lattner2005-03-051-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20461 91177308-0d34-0410-b5e6-96231b3b80d8
* 2nd arg to setName goes away.Chris Lattner2005-03-051-8/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20460 91177308-0d34-0410-b5e6-96231b3b80d8
* Constants never get names.Chris Lattner2005-03-051-5/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20459 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove the 2nd argument to Value::setNameChris Lattner2005-03-054-17/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20458 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove the second argument to Value::setName, it is never needed.Chris Lattner2005-03-057-12/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20457 91177308-0d34-0410-b5e6-96231b3b80d8
* New testcase for PR533Chris Lattner2005-03-051-0/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20456 91177308-0d34-0410-b5e6-96231b3b80d8
* don't break the build on 32-bit hosts.Chris Lattner2005-03-051-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20455 91177308-0d34-0410-b5e6-96231b3b80d8
* This file is all commented out.Chris Lattner2005-03-051-45/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20454 91177308-0d34-0410-b5e6-96231b3b80d8
* fix data size stuff for architectures with bit challenged data typesAndrew Lenharth2005-03-051-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20453 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not compute 1ULL << 64, which is undefined. This fixes Ptrdist/ks on theChris Lattner2005-03-041-1/+2
| | | | | | | sparc, and testcase Regression/Transforms/InstCombine/2005-03-04-ShiftOverflow.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20445 91177308-0d34-0410-b5e6-96231b3b80d8