summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Push analysis passes to InstSimplify when they're around anyways.Benjamin Kramer2013-09-241-1/+1
| | | | llvm-svn: 191309
* Get rid of unused isPodLike definitions.Eli Friedman2013-09-111-2/+0
| | | | llvm-svn: 190461
* Consistently use dbgs() in debug printingMatt Arsenault2013-09-051-5/+5
| | | | llvm-svn: 190093
* Tidy up a bit. No functional change.Jim Grosbach2013-04-051-96/+96
| | | | llvm-svn: 178915
* Move all of the header files which are involved in modelling the LLVM IRChandler Carruth2013-01-021-1/+1
| | | | | | | | | | | | | | | | | | | | | into their new header subdirectory: include/llvm/IR. This matches the directory structure of lib, and begins to correct a long standing point of file layout clutter in LLVM. There are still more header files to move here, but I wanted to handle them in separate commits to make tracking what files make sense at each layer easier. The only really questionable files here are the target intrinsic tablegen files. But that's a battle I'd rather not fight today. I've updated both CMake and Makefile build systems (I think, and my tests think, but I may have missed something). I've also re-sorted the includes throughout the project. I'll be committing updates to Clang, DragonEgg, and Polly momentarily. llvm-svn: 171366
* Use the new script to sort the includes of every file under lib.Chandler Carruth2012-12-031-2/+2
| | | | | | | | | | | | | | | | | Sooooo many of these had incorrect or strange main module includes. I have manually inspected all of these, and fixed the main module include to be the nearest plausible thing I could find. If you own or care about any of these source files, I encourage you to take some time and check that these edits were sensible. I can't have broken anything (I strictly added headers, and reordered them, never removed), but they may not be the headers you'd really like to identify as containing the API being implemented. Many forward declarations and missing includes were added to a header files to allow them to parse cleanly when included first. The main module rule does in fact have its merits. =] llvm-svn: 169131
* Move TargetData to DataLayout.Micah Villmow2012-10-081-1/+1
| | | | llvm-svn: 165402
* Update instcombine for atomic load/store.Eli Friedman2011-08-151-1/+6
| | | | llvm-svn: 137664
* Shorten some expressions by using ArrayRef::slice().Frits van Bommel2011-07-251-2/+1
| | | | llvm-svn: 135910
* Convert GetElementPtrInst to use ArrayRef.Jay Foad2011-07-251-2/+2
| | | | llvm-svn: 135904
* land David Blaikie's patch to de-constify Type, with a few tweaks.Chris Lattner2011-07-181-5/+5
| | | | llvm-svn: 135375
* Final step of instcombine debuginfo; switch a couple more places over to ↵Eli Friedman2011-05-271-9/+23
| | | | | | InsertNewInstWith, and use setDebugLoc for the cases which can't be easily handled by the automated mechanisms. llvm-svn: 132167
* Stop trying to have instcombine preserve LCSSA form: this was notDuncan Sands2011-04-271-3/+0
| | | | | | | | | | effective in avoiding recomputation of LCSSA form; the widespread use of instsimplify (which looks through phi nodes) means it was not preserving LCSSA form anyway; and instcombine is no longer scheduled in the middle of the loop passes so this doesn't matter anymore. llvm-svn: 130301
* Rename a misleadingly-named variable.Frits van Bommel2011-04-161-5/+5
| | | | llvm-svn: 129644
* Fix bug when checking phi operands in InstCombiner::visitPHINode(),Jay Foad2011-04-161-1/+1
| | | | | | found by code inspection. llvm-svn: 129641
* Fix a ton of comment typos found by codespell. Patch byChris Lattner2011-04-151-1/+1
| | | | | | Luis Felipe Strano Moraes! llvm-svn: 129558
* Remove PHINode::reserveOperandSpace(). Instead, add a parameter toJay Foad2011-03-301-10/+7
| | | | | | PHINode::Create() giving the (known or expected) number of operands. llvm-svn: 128537
* (Almost) always call reserveOperandSpace() on newly created PHINodes.Jay Foad2011-03-301-0/+1
| | | | llvm-svn: 128535
* Make more use of PHINode::getNumIncomingValues().Jay Foad2011-03-281-4/+4
| | | | llvm-svn: 128406
* have instcombine preserve nsw/nuw/exact when sinkingChris Lattner2011-02-171-11/+53
| | | | | | common operations through a phi. llvm-svn: 125790
* fix typoChris Lattner2011-02-171-1/+1
| | | | llvm-svn: 125787
* fix instcombine merging GEPs through a PHI to only make theChris Lattner2011-02-171-3/+7
| | | | | | result inbounds if all of the inputs are inbounds. llvm-svn: 125785
* Teach InstructionSimplify about phi nodes. I chose to have it simplyDuncan Sands2010-11-141-2/+3
| | | | | | | | | | offload the work to hasConstantValue rather than do something more complicated (such handling mutually recursive phis) because (1) it is not clear it is worth it; and (2) if it is worth it, maybe such logic would be better placed in hasConstantValue. Adjust some GVN tests which are now cleaned up much further (eg: all phi nodes are removed). llvm-svn: 119043
* cache result of operator*Gabor Greif2010-07-121-2/+3
| | | | llvm-svn: 108147
* fix PR6512, a case where instcombine would incorrectly merge loadsChris Lattner2010-03-051-0/+2
| | | | | | from different addr spaces. llvm-svn: 97813
* There are two ways of checking for a given type, for example isa<PointerType>(T)Duncan Sands2010-02-161-2/+2
| | | | | | | and T->isPointerTy(). Convert most instances of the first form to the second form. Requested by Chris. llvm-svn: 96344
* Add newline at EOF.Benjamin Kramer2010-01-051-1/+1
| | | | llvm-svn: 92727
* split PHI node stuff out to InstCombinePHI.cppChris Lattner2010-01-051-0/+841
llvm-svn: 92682
OpenPOWER on IntegriCloud