summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Scalar/InstructionCombining.cpp
Commit message (Expand)AuthorAgeFilesLines
* Implement instcombine optimizations:Chris Lattner2003-08-131-1/+97
* Generalize some of the add tests to allow for reassociation to take placeChris Lattner2003-08-131-10/+130
* Implement InstCombine/2003-08-12-AllocaNonNull.llChris Lattner2003-08-131-2/+4
* Do not cannonicalize (X != 0) into (cast X to bool)Chris Lattner2003-08-131-79/+68
* Change cannonicalization rules: add X,X is represented as multiplies, multipliesChris Lattner2003-08-131-8/+24
* Allow pulling logical operations through shifts.Chris Lattner2003-08-121-16/+61
* Simplify codeChris Lattner2003-08-121-11/+8
* Implement testcases InstCombine/or.ll:test16/test17Chris Lattner2003-08-121-0/+13
* Instcombine: (A >> c1) << c2 for signed integersChris Lattner2003-07-241-10/+12
* Reorganization of code, no functional changes.Chris Lattner2003-07-241-47/+48
* Allow folding several instructions into casts, which can simplify a lotChris Lattner2003-07-241-7/+84
* Add commentsChris Lattner2003-07-231-0/+9
* Remove explicit check for: not (not X) = X, it is already handled because xor...Chris Lattner2003-07-231-10/+16
* InstCombine: (X ^ C1) & C2 --> (X & C2) iff (C1&C2) == 0Chris Lattner2003-07-231-9/+11
* - InstCombine: (X | C1) & C2 --> X & C2 iff C1 & C1 == 0Chris Lattner2003-07-231-10/+33
* IC: (X & C1) | C2 --> (X | C2) & (C1|C2)Chris Lattner2003-07-231-1/+26
* IC: (X ^ C1) & C2 --> (X & C2) ^ (C1&C2)Chris Lattner2003-07-231-4/+16
* InstCombine: (X ^ 4) == 8 --> X == 12Chris Lattner2003-07-231-1/+6
* IC: (X & 5) == 13 --> falseChris Lattner2003-07-231-5/+25
* Simplify code by using ConstantInt::getRawValue instead of checking to seeChris Lattner2003-07-231-2/+1
* - InstCombine (cast (xor A, B) to bool) ==> (setne A, B)Chris Lattner2003-07-221-5/+44
* Added code that checks to see if a global variable is external before replacingJohn Criswell2003-07-211-1/+1
* Dinakar and I fixed a bug where we were trying to get the initializer ofJohn Criswell2003-07-171-1/+1
* Add support for elimination of load instruction from global constantsChris Lattner2003-06-261-0/+48
* Instcombine: X * -1 -> -XChris Lattner2003-06-251-3/+4
* Implement new transforms:Chris Lattner2003-06-231-4/+33
* Instcombine cast (getelementptr Ptr, 0, 0, 0) to ... into: cast Ptr to ...Chris Lattner2003-06-211-0/+17
* Implement the functionality of InstCombine/call.llChris Lattner2003-06-191-1/+145
* Fix bug: InstCombine/2003-06-05-BranchInvertInfLoop.llChris Lattner2003-06-051-1/+1
* Clean up previous code.Chris Lattner2003-06-041-11/+20
* Implement combination of boolean not with branchChris Lattner2003-06-041-0/+14
* Implement xform: (X != 0) -> (bool)XChris Lattner2003-06-011-0/+3
* Fix bug: Instcombine/2003-05-27-ConstExprCrash.llChris Lattner2003-05-271-27/+37
* Fix bug: InstCombine/2003-05-26-CastMiscompile.llChris Lattner2003-05-261-1/+1
* Minor cleanups.Chris Lattner2003-05-221-8/+5
* s/convertable/convertible/gMisha Brukman2003-05-201-1/+1
* Fix another case where constexprs could cause a crashChris Lattner2003-04-301-5/+2
* Fix constant folding of constexprsChris Lattner2003-04-301-6/+3
* Change the interface to constant expressions to allow automatic foldingChris Lattner2003-04-161-1/+1
* Add the following instcombine xforms:Chris Lattner2003-03-111-29/+74
* Implement: -A*-B == A*BChris Lattner2003-03-101-0/+4
* Add new transformation: // (~A | ~B) == (~(A & B))Chris Lattner2003-03-101-8/+19
* Generalize not and neg comparison testers to allow constant to be considered ...Chris Lattner2003-03-101-27/+41
* Generalize (A+c1)+c2 optimization to work with all associative operatorsChris Lattner2003-03-101-35/+50
* Minor change, no functionality diffChris Lattner2003-03-101-3/+3
* Fix bug: (x << 100) wasn't folded to 0, but (x >> 100) was (when x is unsigned)Chris Lattner2003-03-101-7/+48
* Implement: (A|B)^B == A & (~B)Chris Lattner2003-03-101-0/+25
* Implement %test7 in InstCombine/getelementptr.llChris Lattner2003-03-051-7/+21
* 4 new transformations:Chris Lattner2003-02-181-0/+42
* Add a variety of new transformations:Chris Lattner2003-02-181-48/+140
OpenPOWER on IntegriCloud