summaryrefslogtreecommitdiff
path: root/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
AgeCommit message (Expand)AuthorFilesLines
2012-09-27Revert 'Fix a typo 'iff' => 'if''. iff is an abreviation of if and only if. S...Sylvestre Ledru1-19/+19
2012-09-27Fix a typo 'iff' => 'if'Sylvestre Ledru1-19/+19
2012-06-14InstCombine: fix a bug when combining (fcmp cc0 x, y) && (fcmp cc1 x, y).Manman Ren1-2/+4
2012-06-06Fix combine of uno && ord -> false so that the ordering of the fcmps doesn'tChad Rosier1-1/+3
2012-05-28Fix suspicous hasOneUse() check, found by PVS Studio (PR12357).Benjamin Kramer1-1/+1
2012-04-26Add instcombine patterns for the following transformations:Chad Rosier1-0/+5
2012-03-26eliminate an unneeded branch, part of PR12357Chris Lattner1-7/+2
2012-03-16In InstCombiner::visitOr, make sure we reverse the operand swap used for chec...Eli Friedman1-1/+7
2012-02-29Restrict this transformation to equality conditions.Bill Wendling1-1/+1
2012-02-07Convert assert(0) to llvm_unreachableCraig Topper1-1/+1
2012-02-06Make helper static.Benjamin Kramer1-3/+3
2012-01-20More dead code removal (using -Wunreachable-code)David Blaikie1-2/+0
2012-01-09Move assert to the right place.Benjamin Kramer1-1/+1
2012-01-09InstCombine: Teach foldLogOpOfMaskedICmpsHelper that sign bit tests are bit t...Benjamin Kramer1-81/+82
2012-01-08Tweak my last commit to be less conservative about uses.Benjamin Kramer1-25/+23
2012-01-08InstCombine: If we have a bit test and a sign test anded/ored together, merge...Benjamin Kramer1-0/+32
2011-12-17Refactor code used in InstCombine::FoldAndOfICmps to new file.Pete Cooper1-72/+11
2011-09-27Stop emitting instructions with the name "tmp" they eat up memory and have to...Benjamin Kramer1-3/+3
2011-09-19Fix an infinite loop where a transform in InstCombiner::visitAnd claims a con...Eli Friedman1-21/+22
2011-07-18land David Blaikie's patch to de-constify Type, with a few tweaks.Chris Lattner1-3/+3
2011-07-14Change Intrinsic::getDeclaration and friends to take an ArrayRef.Benjamin Kramer1-2/+1
2011-07-12Second attempt at de-constifying LLVM Types in FunctionType::get(),Jay Foad1-2/+2
2011-07-12Revert r134893 and r134888 (and related patches in other trees). It was causingBill Wendling1-2/+2
2011-07-11De-constify Types in FunctionType::get().Jay Foad1-2/+2
2011-04-28We require threse bits to be zero, too.Benjamin Kramer1-2/+2
2011-04-28Fix a comment.Benjamin Kramer1-1/+1
2011-04-28InstCombine: Merge "(trunc x) == C1 & (and x, CA) == C2" into a single and+icmp.Benjamin Kramer1-0/+36
2011-04-15Fix a ton of comment typos found by codespell. Patch byChris Lattner1-1/+1
2011-04-14Add an instcombine for constructs like a | -(b != c); a select is moreEli Friedman1-1/+8
2011-03-29InstCombine: Add a few missing combines for ANDs and ORs of sign bit tests.Benjamin Kramer1-0/+24
2011-03-01Make InstCombiner::FoldAndOfICmps create a ConstantRange that's theAnders Carlsson1-8/+12
2011-02-20Move "A | ~(A & ?) -> -1" from InstCombine to InstructionSimplify.Benjamin Kramer1-16/+8
2011-02-20InstCombine: Add a bunch of combines of the form x | (y ^ z).Benjamin Kramer1-0/+41
2011-02-15Fix 9216 - Endless loop in InstCombine pass.Nadav Rotem1-1/+5
2011-02-15tidy up a bit.Chris Lattner1-7/+9
2011-02-10more cleanups, notably bitcast isn't used for "signed to unsigned type Chris Lattner1-45/+27
2011-02-09Rework InstrTypes.h so to reduce the repetition around the NSW/NUW/ExactChris Lattner1-2/+2
2011-01-21Just because we have determined that an (fcmp | fcmp) is true for A < B,Owen Anderson1-1/+3
2011-01-15reduce indentationChris Lattner1-29/+29
2010-12-22Add a generic expansion transform: A op (B op' C) -> (A op B) op' (A op C)Duncan Sands1-6/+9
2010-12-20Add a check missing from my last commit and avoid a potential overflow situat...Benjamin Kramer1-3/+3
2010-12-20Reduce indentation.Benjamin Kramer1-7/+5
2010-12-20Teach InstCombine to merge (icmp ult (X + CA), C1) | (icmp eq X, C2) into (ic...Benjamin Kramer1-1/+10
2010-11-23Rename SimplifyDistributed to the more meaningfull name SimplifyByFactorizing.Duncan Sands1-3/+3
2010-11-23Exploit distributive laws (eg: And distributes over Or, Mul over Add, etc) in aDuncan Sands1-42/+11
2010-11-17Move some those Xor simplifications which don't require creating newDuncan Sands1-31/+2
2010-11-13Generalize the reassociation transform in SimplifyCommutative (now renamed toDuncan Sands1-3/+3
2010-09-13Re-apply r113679, which was reverted in r113720, which added a paid of new in...Owen Anderson1-5/+31
2010-09-12Revert 113679, it was causing an infinite loop in a testcase that I've sentEric Christopher1-30/+5
2010-09-11Invert and-of-or into or-of-and when doing so would allow us to clear bits of...Owen Anderson1-5/+30