| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Fixed a segfault in gccld. | John Criswell | 2003-08-07 | 1 | -2/+4 |
| | | | | | | | | | The original code does not work because the value from WorkList.end() is invalidated once WorkList.erase() is called. To ensure proper functionality, we must ensure that WorkList.erase() is always called before WorkList.end(). llvm-svn: 7673 | ||||
| * | Added code for pool allocating only the pool-allocatable data structures in ↵ | Sumant Kowshik | 2003-08-07 | 1 | -12/+46 |
| | | | | | | | the presence of collapsed nodes + a couple of bug fixes llvm-svn: 7662 | ||||
| * | Remove unnecessary use of NonCopyable | Chris Lattner | 2003-08-06 | 1 | -4/+3 |
| | | | | | llvm-svn: 7641 | ||||
| * | Fixed minor bug in SafeToHoist and made some changes suggested by Chris. | Tanya Lattner | 2003-08-05 | 1 | -19/+10 |
| | | | | | llvm-svn: 7614 | ||||
| * | Fixed LICM bug that hoists trapping instructions that are not guaranteed to ↵ | Tanya Lattner | 2003-08-05 | 1 | -5/+59 |
| | | | | | | | execute. llvm-svn: 7612 | ||||
| * | Minor changes: | Chris Lattner | 2003-08-05 | 1 | -52/+48 |
| | | | | | | | | * Expand most tabs into spaces * Move #define DEBUG_TYPE to top of file to avoid warning llvm-svn: 7611 | ||||
| * | Major bug fixes including a memory leak and tracking some exceptional ↵ | Sumant Kowshik | 2003-08-05 | 1 | -83/+317 |
| | | | | | | | conditions. Also added support for including global and indirect call information in the DS graphs used by the pool allocation llvm-svn: 7605 | ||||
| * | Fix bug: SimplifyCFG/2003-08-05-InvokeCrash.ll | Chris Lattner | 2003-08-05 | 1 | -1/+2 |
| | | | | | | | Fix bug: SimplifyCFG/2003-08-05-MishandleInvoke.ll llvm-svn: 7599 | ||||
| * | DEBUG got moved to Support/Debug.h | Chris Lattner | 2003-08-01 | 19 | -24/+38 |
| | | | | | llvm-svn: 7492 | ||||
| * | Instcombine: (A >> c1) << c2 for signed integers | Chris Lattner | 2003-07-24 | 1 | -10/+12 |
| | | | | | llvm-svn: 7295 | ||||
| * | Reorganization of code, no functional changes. | Chris Lattner | 2003-07-24 | 1 | -47/+48 |
| | | | | | | | Now it shoudl be a bit more efficient llvm-svn: 7292 | ||||
| * | Allow folding several instructions into casts, which can simplify a lot | Chris Lattner | 2003-07-24 | 1 | -7/+84 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | of codes. For example, short kernel (short t1) { t1 >>= 8; t1 <<= 8; return t1; } became: short %kernel(short %t1.1) { %tmp.3 = shr short %t1.1, ubyte 8 ; <short> [#uses=1] %tmp.5 = cast short %tmp.3 to int ; <int> [#uses=1] %tmp.7 = shl int %tmp.5, ubyte 8 ; <int> [#uses=1] %tmp.8 = cast int %tmp.7 to short ; <short> [#uses=1] ret short %tmp.8 } before, now it becomes: short %kernel(short %t1.1) { %tmp.3 = shr short %t1.1, ubyte 8 ; <short> [#uses=1] %tmp.8 = shl short %tmp.3, ubyte 8 ; <short> [#uses=1] ret short %tmp.8 } which will become: short %kernel(short %t1.1) { %tmp.3 = and short %t1.1, 0xFF00 ret short %tmp.3 } This implements cast-set.ll:test4 and test5 llvm-svn: 7290 | ||||
| * | Minor cleanups | Chris Lattner | 2003-07-24 | 1 | -3/+3 |
| | | | | | llvm-svn: 7289 | ||||
| * | Fix bug: FunctionResolve/2003-07-23-CPR-Reference.ll | Chris Lattner | 2003-07-23 | 1 | -6/+8 |
| | | | | | | | | This fixes a long time annoyance which caused prototypes for bzero, bcopy, bcmp, fputs, and fputs_unlocked to never get deleted. Grr. llvm-svn: 7285 | ||||
| * | Add comments | Chris Lattner | 2003-07-23 | 1 | -0/+9 |
| | | | | | llvm-svn: 7283 | ||||
| * | Remove explicit check for: not (not X) = X, it is already handled because ↵ | Chris Lattner | 2003-07-23 | 1 | -10/+16 |
| | | | | | | | | | | xor is commutative - InstCombine: (X & C1) ^ C2 --> (X & C1) | C2 iff (C1&C2) == 0 - InstCombine: (X | C1) ^ C2 --> (X | C1) & ~C2 iff (C1&C2) == C2 llvm-svn: 7282 | ||||
| * | InstCombine: (X ^ C1) & C2 --> (X & C2) iff (C1&C2) == 0 | Chris Lattner | 2003-07-23 | 1 | -9/+11 |
| | | | | | llvm-svn: 7272 | ||||
| * | - InstCombine: (X | C1) & C2 --> X & C2 iff C1 & C1 == 0 | Chris Lattner | 2003-07-23 | 1 | -10/+33 |
| | | | | | | | | - InstCombine: (X | C) & C --> C - InstCombine: (X | C1) & C2 --> (X | (C1&C2)) & C2 llvm-svn: 7269 | ||||
| * | IC: (X & C1) | C2 --> (X | C2) & (C1|C2) | Chris Lattner | 2003-07-23 | 1 | -1/+26 |
| | | | | | | | | | | IC: (X ^ C1) | C2 --> (X | C2) ^ (C1&~C2) We are now guaranteed that all 'or's will be inside of 'and's, and all 'and's will be inside of 'xor's, if the second operands are constants. llvm-svn: 7264 | ||||
| * | IC: (X ^ C1) & C2 --> (X & C2) ^ (C1&C2) | Chris Lattner | 2003-07-23 | 1 | -4/+16 |
| | | | | | | | Minor code cleanup llvm-svn: 7262 | ||||
| * | InstCombine: (X ^ 4) == 8 --> X == 12 | Chris Lattner | 2003-07-23 | 1 | -1/+6 |
| | | | | | llvm-svn: 7260 | ||||
| * | IC: (X & 5) == 13 --> false | Chris Lattner | 2003-07-23 | 1 | -5/+25 |
| | | | | | | | IC: (X | 8) == 4 --> false llvm-svn: 7257 | ||||
| * | Simplify code by using ConstantInt::getRawValue instead of checking to see | Chris Lattner | 2003-07-23 | 3 | -10/+3 |
| | | | | | | | whether the constant is signed or unsigned, then casting llvm-svn: 7252 | ||||
| * | Fix bug: TailDup/2003-07-22-InfiniteLoop.ll | Chris Lattner | 2003-07-23 | 1 | -0/+5 |
| | | | | | llvm-svn: 7243 | ||||
| * | - InstCombine (cast (xor A, B) to bool) ==> (setne A, B) | Chris Lattner | 2003-07-22 | 1 | -5/+44 |
| | | | | | | | - InstCombine (cast (and X, (1 << size(X)-1)) to bool) ==> x < 0 llvm-svn: 7241 | ||||
| * | Added code that checks to see if a global variable is external before replacing | John Criswell | 2003-07-21 | 1 | -1/+1 |
| | | | | | | | a load of the global variable with the variable's constant value. llvm-svn: 7216 | ||||
| * | Added check for inlinable function | Anand Shukla | 2003-07-18 | 1 | -1/+55 |
| | | | | | llvm-svn: 7206 | ||||
| * | A pass to combine multiple backedges that go to same target | Anand Shukla | 2003-07-18 | 1 | -0/+227 |
| | | | | | llvm-svn: 7201 | ||||
| * | Dinakar and I fixed a bug where we were trying to get the initializer of | John Criswell | 2003-07-17 | 1 | -1/+1 |
| | | | | | | | | an external constant. Since external constants don't have initializers, we were failing on an assert() call in llvm/GlobalVariable.h. llvm-svn: 7193 | ||||
| * | Trace loads and stores as they happen (stores were being | Vikram S. Adve | 2003-07-11 | 1 | -10/+17 |
| | | | | | | | | | | | | remembered in valuesStoredInFunction, but never traced at function return, and that's too late to be finding the error anyway). Stores trace both the value and the address being stored to, but after some experience I think only values should be traced. The pointer hash table just fills up far too quickly if every store address were traced. llvm-svn: 7169 | ||||
| * | Added functionality to instrmentation pass | Anand Shukla | 2003-07-10 | 1 | -99/+111 |
| | | | | | llvm-svn: 7161 | ||||
| * | Merged in autoconf branch. This provides configuration via the autoconf | John Criswell | 2003-06-30 | 2 | -2/+2 |
| | | | | | | | system. llvm-svn: 7014 | ||||
| * | Eliminate using declarations, adjust for new DSGraph API | Chris Lattner | 2003-06-30 | 1 | -21/+19 |
| | | | | | llvm-svn: 6992 | ||||
| * | Allow the inlining limit to be controlled from the command line! | Chris Lattner | 2003-06-28 | 1 | -1/+5 |
| | | | | | llvm-svn: 6929 | ||||
| * | Add support to globaldce for deleting dead function prototypes | Chris Lattner | 2003-06-26 | 1 | -1/+7 |
| | | | | | llvm-svn: 6918 | ||||
| * | When internalizing global ctor/dtor list, also mark it constant. This is ↵ | Chris Lattner | 2003-06-26 | 1 | -0/+8 |
| | | | | | | | | | gross, but until DSA is working all of the time and is totally reliable, we do this. llvm-svn: 6917 | ||||
| * | Add support for elimination of load instruction from global constants | Chris Lattner | 2003-06-26 | 1 | -0/+48 |
| | | | | | llvm-svn: 6912 | ||||
| * | Instcombine: X * -1 -> -X | Chris Lattner | 2003-06-25 | 1 | -3/+4 |
| | | | | | llvm-svn: 6904 | ||||
| * | Fix bug: Mem2Reg/2003-06-26-IterativePromote.ll | Chris Lattner | 2003-06-25 | 1 | -10/+17 |
| | | | | | llvm-svn: 6901 | ||||
| * | Add argument to DAE to allow operation on non-internal functions | Chris Lattner | 2003-06-25 | 1 | -9/+21 |
| | | | | | llvm-svn: 6895 | ||||
| * | Fix bug: ADCE/2003-06-24-BadSuccessor.ll | Chris Lattner | 2003-06-24 | 1 | -12/+35 |
| | | | | | llvm-svn: 6891 | ||||
| * | Do not mark ALL terminators live if any instruciton in the block is live. ↵ | Chris Lattner | 2003-06-24 | 1 | -2/+23 |
| | | | | | | | | | | We only want to mark it live if it is an unconditional branch. This fixes bug: ADCE/2002-05-28-Crash.ll and makes this pass _much_ more useful. llvm-svn: 6887 | ||||
| * | Fix bug: SCCP/2003-06-24-OverdefinedPHIValue.ll | Chris Lattner | 2003-06-24 | 1 | -4/+5 |
| | | | | | llvm-svn: 6883 | ||||
| * | Fix bug: TailDup/2003-06-24-Simpleloop.ll | Chris Lattner | 2003-06-24 | 1 | -1/+2 |
| | | | | | llvm-svn: 6881 | ||||
| * | Implement new transforms: | Chris Lattner | 2003-06-23 | 1 | -4/+33 |
| | | | | | | | | Replace (cast (sub A, B) to bool) -> (setne A, B) Replace (cast (add A, B) to bool) -> (setne A, -B) llvm-svn: 6873 | ||||
| * | avoid dividing by zero when dealing with zero sized types (like [0 x double]) | Chris Lattner | 2003-06-23 | 2 | -0/+2 |
| | | | | | llvm-svn: 6862 | ||||
| * | Add paranoia checking | Chris Lattner | 2003-06-22 | 1 | -1/+1 |
| | | | | | llvm-svn: 6856 | ||||
| * | Test change | Chris Lattner | 2003-06-22 | 1 | -0/+1 |
| | | | | | llvm-svn: 6852 | ||||
| * | Initial checkin of Tail duplication pass. | Chris Lattner | 2003-06-22 | 1 | -0/+324 |
| | | | | | llvm-svn: 6846 | ||||
| * | Instcombine cast (getelementptr Ptr, 0, 0, 0) to ... into: cast Ptr to ... | Chris Lattner | 2003-06-21 | 1 | -0/+17 |
| | | | | | | | | This fixes type safety problems in a variety of benchmarks that were confusing DSA. llvm-svn: 6837 | ||||

