summaryrefslogtreecommitdiffstats
path: root/lib/Transforms/InstCombine
Commit message (Expand)AuthorAgeFilesLines
* Move assert to the right place.Benjamin Kramer2012-01-091-1/+1
* InstCombine: Teach foldLogOpOfMaskedICmpsHelper that sign bit tests are bit t...Benjamin Kramer2012-01-091-81/+82
* Tweak my last commit to be less conservative about uses.Benjamin Kramer2012-01-081-25/+23
* InstCombine: If we have a bit test and a sign test anded/ored together, merge...Benjamin Kramer2012-01-081-0/+32
* Remove pointless asserts.Nick Lewycky2012-01-041-2/+0
* Teach instcombine all sorts of great stuff about shifts that have exact, nuw orNick Lewycky2012-01-042-8/+59
* Make use of the exact bit when optimizing '(X >>exact 3) << 1' to eliminate theNick Lewycky2011-12-311-5/+11
* InstCombine: Add a combine that turns (2^n)-1 ^ x back into (2^n)-1 - x iff x...Benjamin Kramer2011-12-241-0/+13
* InstCombine: Canonicalize (2^n)-1 - x into (2^n)-1 ^ x iff x is known to be s...Benjamin Kramer2011-12-242-0/+14
* Refactor code used in InstCombine::FoldAndOfICmps to new file.Pete Cooper2011-12-171-72/+11
* The powers that be have decided that LLVM IR should now support 16-bitDan Gohman2011-12-172-1/+6
* Added InstCombine for "select cond, ~cond, x" type patternsPete Cooper2011-12-151-0/+7
* LLVMBuild: Remove trailing newline, which irked me.Daniel Dunbar2011-12-121-1/+0
* Add support for vectors of pointers.Nadav Rotem2011-12-052-2/+9
* Fix a few more places where TargetData/TargetLibraryInfo is not being passed.Chad Rosier2011-12-025-17/+23
* Last bit of TargetLibraryInfo propagation. Also fixed a case for TargetDataChad Rosier2011-12-013-13/+17
* Improved fix for abs(val) != 0 to check other similar case. Also fixed style...Pete Cooper2011-12-011-6/+10
* Added instcombine pattern to spot comparing -val or val against 0.Pete Cooper2011-12-011-0/+14
* Whitespace.Chad Rosier2011-11-301-3/+1
* Add support for sqrt, sqrtl, and sqrtf in TargetLibraryInfo. Disable Chad Rosier2011-11-292-3/+6
* build/CMake: Finish removal of add_llvm_library_dependencies.Daniel Dunbar2011-11-291-8/+0
* Zap some completely ridiculous code. There's probably a miscompile here, but...Eli Friedman2011-11-291-1/+1
* Add a missing safety check to ProcessUGT_ADDCST_ADD. Fixes PR11438.Eli Friedman2011-11-281-0/+8
* Refactor code to use new attribute getters on CallSite for NoCapture and ByVal.Nick Lewycky2011-11-201-2/+2
* Remove all remaining uses of Value::getNameStr().Benjamin Kramer2011-11-151-1/+1
* InstCombine now optimizes vector udiv by power of 2 to shiftsPete Cooper2011-11-071-5/+9
* build: Add initial cut at LLVMBuild.txt files.Daniel Dunbar2011-11-031-0/+23
* Make sure we use the right insertion point when instcombine replaces a PHI wi...Eli Friedman2011-11-011-3/+4
* Minor simplification: use ShuffleVectorInst::getMaskValue instead of a more e...Eli Friedman2011-10-211-2/+2
* Extend instcombine's shufflevector simplification to handle more cases where ...Eli Friedman2011-10-211-61/+195
* Add support for the Objective-C personality function to the instructionBill Wendling2011-10-171-2/+5
* Add a routine to swap branch instruction operands, and update anyChandler Carruth2011-10-171-6/+3
* Re-commit 141203, but much more conservative.Jim Grosbach2011-10-051-3/+3
* Revert 141203. InstCombine is looping on unit tests.Jim Grosbach2011-10-051-9/+8
* Update InstCombine worklist after instruction transform is complete.Jim Grosbach2011-10-051-8/+9
* Add a new icmp+select optz'n. Also shows off the load(cst) folding added inNick Lewycky2011-10-021-0/+6
* Enhance a couple places where we were doing constant folding of instructions,Nick Lewycky2011-10-021-1/+6
* Don't modify constant in-place.Jim Grosbach2011-09-301-3/+4
* float comparison to double 'zero' constant can just be a float 'zero.'Jim Grosbach2011-09-301-3/+6
* Tidy up. Trailing whitespace.Jim Grosbach2011-09-301-220/+220
* Inlining often produces landingpad instructions with repeatedDuncan Sands2011-09-302-0/+338
* Clean up uses of switch instructions so they are not dependent on the operand...Eli Friedman2011-09-291-5/+11
* Stop emitting instructions with the name "tmp" they eat up memory and have to...Benjamin Kramer2011-09-276-42/+34
* Fix an infinite loop where a transform in InstCombiner::visitAnd claims a con...Eli Friedman2011-09-191-21/+22
* Make demanded-elt simplification for shufflevector slightly stronger. Spotte...Eli Friedman2011-09-151-0/+3
* Split the init.trampoline intrinsic, which currently combines GCC'sDuncan Sands2011-09-062-11/+90
* Use Duncan's patch to delete the instructions in reverse order (minus the lan...Bill Wendling2011-09-041-6/+10
* Update comments to reflect reality.Bill Wendling2011-09-021-2/+1
* Reduce indentation. No functionality change.Bill Wendling2011-09-011-17/+18
* Change worklist driven deletion to be an iterative process.Bill Wendling2011-09-011-26/+5