| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | - instcombine demorgan's law: and (not A), (not B) == not (or A, B) | Chris Lattner | 2002-08-23 | 1 | -0/+12 |
| | | | | | llvm-svn: 3495 | ||||
| * | Eliminated the MemAccessInst class, folding contents into GEP class. | Chris Lattner | 2002-08-22 | 1 | -6/+0 |
| | | | | | llvm-svn: 3488 | ||||
| * | Eliminated the MemAccessInst class, folding contents into GEP class. | Chris Lattner | 2002-08-22 | 4 | -55/+23 |
| | | | | | llvm-svn: 3487 | ||||
| * | Load & StoreInst no longer derive from MemAccessInst, so we don't have | Chris Lattner | 2002-08-22 | 3 | -22/+1 |
| | | | | | | | to handle indexing anymore llvm-svn: 3485 | ||||
| * | *** empty log message *** | Chris Lattner | 2002-08-22 | 3 | -17/+4 |
| | | | | | llvm-svn: 3483 | ||||
| * | Add capability of using pointer analysis to LICM | Chris Lattner | 2002-08-22 | 1 | -2/+35 |
| | | | | | llvm-svn: 3478 | ||||
| * | Remove long obsolete comments | Chris Lattner | 2002-08-22 | 1 | -7/+0 |
| | | | | | llvm-svn: 3476 | ||||
| * | Instcombine PHI's of the form %PN = phi PN, X into X and | Chris Lattner | 2002-08-22 | 1 | -4/+13 |
| | | | | | | | %PN = phi PN, PN, PN into 0 (because the phi must not be reachable) llvm-svn: 3470 | ||||
| * | Convert GCSE pass to use new alias analysis infrastructure | Chris Lattner | 2002-08-22 | 1 | -61/+35 |
| | | | | | llvm-svn: 3463 | ||||
| * | Do not generate load/store instructions with indexing. | Chris Lattner | 2002-08-22 | 1 | -18/+36 |
| | | | | | llvm-svn: 3461 | ||||
| * | - Split Dominators.h into Dominators.h & PostDominators.h | Chris Lattner | 2002-08-21 | 1 | -1/+1 |
| | | | | | llvm-svn: 3432 | ||||
| * | Do not generate loads/stores with indexing | Chris Lattner | 2002-08-21 | 1 | -28/+37 |
| | | | | | llvm-svn: 3422 | ||||
| * | Remove extraneous #includes | Chris Lattner | 2002-08-21 | 1 | -1/+0 |
| | | | | | llvm-svn: 3421 | ||||
| * | Do not create load/stores with indexes | Chris Lattner | 2002-08-21 | 1 | -14/+16 |
| | | | | | llvm-svn: 3420 | ||||
| * | Remove an optimization that isn't. | Chris Lattner | 2002-08-21 | 1 | -5/+7 |
| | | | | | llvm-svn: 3419 | ||||
| * | - Do not expose ::ID from any of the analyses anymore. | Chris Lattner | 2002-08-21 | 1 | -1/+0 |
| | | | | | llvm-svn: 3417 | ||||
| * | fixed bug: test/Regression/Linker/2002-08-20-ConstantExpr.ll | Chris Lattner | 2002-08-20 | 1 | -11/+11 |
| | | | | | llvm-svn: 3412 | ||||
| * | - instcombine (~(a < b)) into (a >= b) | Chris Lattner | 2002-08-20 | 1 | -2/+10 |
| | | | | | llvm-svn: 3406 | ||||
| * | - implemented instcombine of phi (X, X, X) -> X | Chris Lattner | 2002-08-20 | 1 | -1/+12 |
| | | | | | llvm-svn: 3397 | ||||
| * | - Made GlobalDCE worklist driven, making it more successful. Now can handle | Chris Lattner | 2002-08-18 | 1 | -17/+176 |
| | | | | | | | cases like: test/Regression/Transforms/GlobalDCE/2002-08-17-WorkListTest.ll llvm-svn: 3381 | ||||
| * | Promote getelementptr instructions to constexprs if we can. | Chris Lattner | 2002-08-17 | 1 | -3/+19 |
| | | | | | llvm-svn: 3368 | ||||
| * | Handle more cases of cast-of-cast in more general forms. | Chris Lattner | 2002-08-15 | 1 | -8/+35 |
| | | | | | llvm-svn: 3347 | ||||
| * | Implement capability to fold this: | Chris Lattner | 2002-08-14 | 1 | -4/+11 |
| | | | | | | | | | | | | uint %test4(int %A, int %B) { %COND = setlt int %A, %B ; <bool> [#uses=1] %result = cast bool %COND to uint ; <uint> [#uses=1] ret uint %result } into a single cast instruction. llvm-svn: 3339 | ||||
| * | Avoid creating 'load X, 0' instead of just 'load X' | Chris Lattner | 2002-08-14 | 1 | -0/+3 |
| | | | | | | | | | This _trivial_ change causes GCSE and LICM to be much more effective at hoisting loads. Before it would not be able to eliminate 'load X' if there was just a dominating 'load X, 0' because the expressions were not identical. llvm-svn: 3337 | ||||
| * | Avoid inserting an entry block unless we need it | Chris Lattner | 2002-08-14 | 1 | -5/+9 |
| | | | | | llvm-svn: 3336 | ||||
| * | Remove support for Not ConstantExpr. This simplifies the unary case to only | Chris Lattner | 2002-08-14 | 1 | -3/+3 |
| | | | | | | | have to support the cast instruction, so the function is renamed to getCast. llvm-svn: 3328 | ||||
| * | Fix bug introduced in last checkin due to CastInst not being visible | Chris Lattner | 2002-08-14 | 2 | -3/+5 |
| | | | | | llvm-svn: 3327 | ||||
| * | Remove support for NOT instruction | Chris Lattner | 2002-08-14 | 2 | -9/+6 |
| | | | | | llvm-svn: 3323 | ||||
| * | Remove extra #includes | Chris Lattner | 2002-08-14 | 1 | -2/+0 |
| | | | | | llvm-svn: 3322 | ||||
| * | Remove support for unary operators | Chris Lattner | 2002-08-14 | 1 | -6/+4 |
| | | | | | llvm-svn: 3318 | ||||
| * | - Fix InstCombine pass to not generate or process NOT instructions | Chris Lattner | 2002-08-14 | 1 | -15/+15 |
| | | | | | | | - Fixed testcases to not use them either. llvm-svn: 3315 | ||||
| * | Remove support for NOT instruction | Chris Lattner | 2002-08-14 | 1 | -6/+0 |
| | | | | | llvm-svn: 3313 | ||||
| * | - Rename ConstantGenericIntegral -> ConstantIntegral | Chris Lattner | 2002-08-13 | 1 | -3/+3 |
| | | | | | llvm-svn: 3300 | ||||
| * | * Factor a bunch of code by using ReplaceInstUsesWith | Chris Lattner | 2002-08-12 | 1 | -163/+51 |
| | | | | | | | * Move isMaxValue, isMinValue, isAllOnesValue to Constants.h llvm-svn: 3290 | ||||
| * | New functionality for instcombine: | Chris Lattner | 2002-08-09 | 1 | -28/+213 |
| | | | | | | | | | | | | | | | | | | * New ReplaceInstUsesWith function to factor out tons of common code This needs to be used more in the future still, but it's a good start * New InsertNewInstBefore to allow multi-instruction replacements * Change getMaxValue functions to isAllOnesValue function, which doesn't have to CREATE/lookup a new constant. Also the name is accurate * Add new isMaxValue, isMinValue, isMaxValueMinusOne, isMinValuePlusOne functions: This should be moved to Constant* classes eventually * Implement xor X, ALLONES -> not X * Fold ALL setcc's of booleans away * Handle various SetCC's for integers against values at the end of their ranges, possibly off by one. This implements the setcc-strength-reduce.ll testcase. llvm-svn: 3286 | ||||
| * | Initial checkin of the "Hello World" Pass. | Chris Lattner | 2002-08-08 | 2 | -0/+40 |
| | | | | | llvm-svn: 3266 | ||||
| * | - Cleaned up the interface to AnalysisUsage to take analysis class names | Chris Lattner | 2002-08-08 | 10 | -13/+13 |
| | | | | | | | | instead of ::ID's. - Pass::getAnalysis<> now no longer takes an optional argument llvm-svn: 3265 | ||||
| * | - Cleaned up the interface to AnalysisUsage to take analysis class names | Chris Lattner | 2002-08-08 | 1 | -1/+1 |
| | | | | | | | | instead of ::ID's. - Pass::getAnalysis<> now no longer takes an optional argument llvm-svn: 3264 | ||||
| * | Remove extraneous #includes | Chris Lattner | 2002-08-08 | 1 | -2/+0 |
| | | | | | llvm-svn: 3262 | ||||
| * | Eliminate cast instructions: use only GEPs in decomposed sequence. | Vikram S. Adve | 2002-08-03 | 1 | -81/+70 |
| | | | | | | | | Don't decompose if there are 2 indices with 0 as first index. Compute Changed flag correctly in runOnBasicBlock(). llvm-svn: 3233 | ||||
| * | Fix bug: test/Regression/Transforms/InstCombine/2002-08-02-CastTest.ll | Chris Lattner | 2002-08-02 | 1 | -7/+37 |
| | | | | | | | Implement feature: Cast's can now be converted to bitwise AND expressions. llvm-svn: 3225 | ||||
| * | * Cleanups of instcombine | Chris Lattner | 2002-08-02 | 1 | -80/+48 |
| | | | | | | | | | | - Reenable gep (gep x) -> x - Make instcombine do dead instruction elimination where it's really easy. Now visitors don't have to ensure they aren't not processing dead instructions. llvm-svn: 3222 | ||||
| * | Fix bug: test/Regression/Transforms/GCSE/2002-05-21-NoSharedDominator.ll | Chris Lattner | 2002-08-02 | 1 | -0/+29 |
| | | | | | llvm-svn: 3215 | ||||
| * | Remove unneccesary #inlcude | Chris Lattner | 2002-08-01 | 1 | -1/+0 |
| | | | | | llvm-svn: 3200 | ||||
| * | Implement the other half of a feature advertised by OperandConvertableToType. | Chris Lattner | 2002-07-31 | 1 | -6/+39 |
| | | | | | | | This fixes bug: test/Regression/Transforms/LevelRaise/2002-07-31-AssertionFailure.ll llvm-svn: 3193 | ||||
| * | * Indent class into anonymous namespace, filling up the diff with garbage | Chris Lattner | 2002-07-30 | 1 | -30/+43 |
| | | | | | | | | | | * Internalize global variables with initializers * Add new stat to track global variable internalization * Only count functions that were not internal before in internalized function count llvm-svn: 3163 | ||||
| * | Cleanup ConstantExpr handling: | Chris Lattner | 2002-07-30 | 1 | -8/+2 |
| | | | | | | | | | | | | | | | * Correctly delete TypeHandles in AsmParser. In addition to not leaking memory, this prevents a bug that could have occurred when a type got resolved that the constexpr was using * Check for errors in the AsmParser instead of hitting assertion failures deep in the code * Simplify the interface to the ConstantExpr class, removing unneccesary parameters to the ::get* methods. * Rename the 'getelementptr' version of ConstantExpr::get to ConstantExpr::getGetElementPtr llvm-svn: 3160 | ||||
| * | Remove FIXME's that aren't really needed after all. | Chris Lattner | 2002-07-30 | 1 | -9/+0 |
| | | | | | llvm-svn: 3158 | ||||
| * | Fix bug with last patch which would occur when a call returned void and we | Chris Lattner | 2002-07-30 | 1 | -1/+2 |
| | | | | | | | attempted to assign it a name. llvm-svn: 3142 | ||||
| * | * Make sure the resolved function call instructions get the name from the | Chris Lattner | 2002-07-30 | 1 | -7/+15 |
| | | | | | | | | | old call instruction * Implement conversion of return values for calls. This fixes bug: test/Regression/Transforms/FunctionResolve/retmismatch3.ll llvm-svn: 3140 | ||||

