summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Utils/UnifyFunctionExitNodes.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Move all of the header files which are involved in modelling the LLVM IRChandler Carruth2013-01-021-4/+4
| | | | | | | | | | | | | | | | | | | | | 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
* [unwind removal] We no longer have 'unwind' instructions being generated, soBill Wendling2012-02-061-20/+0
| | | | | | remove the code that handles them. llvm-svn: 149901
* Remove PHINode::reserveOperandSpace(). Instead, add a parameter toJay Foad2011-03-301-2/+2
| | | | | | 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
* Now with fewer extraneous semicolons!Owen Anderson2010-10-071-1/+1
| | | | llvm-svn: 115996
* Eliminate PromoteMemoryToRegisterID; just use addPreserved("mem2reg")Dan Gohman2010-08-061-1/+1
| | | | | | instead, as an example of what this looks like. llvm-svn: 110478
* Fix batch of converting RegisterPass<> to INTIALIZE_PASS().Owen Anderson2010-07-211-2/+2
| | | | llvm-svn: 109045
* Avoid going through the LLVMContext for type equality where it's safe to ↵Benjamin Kramer2010-01-051-1/+1
| | | | | | dereference the type pointer. llvm-svn: 92726
* Push LLVMContexts through the IntegerType APIs.Owen Anderson2009-08-131-8/+10
| | | | llvm-svn: 78948
* Tidy up #includes, deleting a bunch of unnecessary #includes.Dan Gohman2009-01-051-1/+0
| | | | llvm-svn: 61715
* Enable first-class aggregates support.Dan Gohman2008-07-231-28/+6
| | | | | | | | | | | | Remove the GetResultInst instruction. It is still accepted in LLVM assembly and bitcode, where it is now auto-upgraded to ExtractValueInst. Also, remove support for return instructions with multiple values. These are auto-upgraded to use InsertValueInst instructions. The IRBuilder still accepts multiple-value returns, and auto-upgrades them to InsertValueInst instructions. llvm-svn: 53941
* Remove uses of llvm/System/IncludeFile.h that are no longer needed.Dan Gohman2008-05-061-2/+0
| | | | llvm-svn: 50695
* Fix insert point handling for multiple return values.Devang Patel2008-04-081-4/+12
| | | | llvm-svn: 49367
* API changes for class Use size reduction, wave 1.Gabor Greif2008-04-061-12/+12
| | | | | | | | Specifically, introduction of XXX::Create methods for Users that have a potentially variable number of Uses. llvm-svn: 49277
* simplifyDevang Patel2008-03-101-2/+4
| | | | llvm-svn: 48160
* Handle 'ret' with multiple values.Devang Patel2008-03-051-11/+23
| | | | llvm-svn: 47965
* Skip functions that return multiple values.Devang Patel2008-03-051-0/+5
| | | | llvm-svn: 47924
* remove the LowerSelect pass. The last client was the old Sparc backend, ↵Chris Lattner2008-02-191-1/+0
| | | | | | which is long dead by now. llvm-svn: 47323
* Remove attribution from file headers, per discussion on llvmdev.Chris Lattner2007-12-291-2/+2
| | | | llvm-svn: 45418
* Drop 'const'Devang Patel2007-05-031-1/+1
| | | | llvm-svn: 36662
* Use 'static const char' instead of 'static const int'.Devang Patel2007-05-021-1/+1
| | | | | | | Due to darwin gcc bug, one version of darwin linker coalesces static const int, which defauts PassID based pass identification. llvm-svn: 36652
* Do not use typeinfo to identify pass in pass manager.Devang Patel2007-05-011-0/+1
| | | | llvm-svn: 36632
* eliminate RegisterOpt. It does the same thing as RegisterPass.Chris Lattner2006-08-271-1/+1
| | | | llvm-svn: 29925
* Force anything that #includes llvm/Transforms/Utils/UnifyFunctionExitNodes.hChris Lattner2006-06-021-0/+2
| | | | | | | to link in the implementation. Thanks to Anton Korobeynikov for figuring out what was going on here. llvm-svn: 28660
* Patch to make some xforms preserve each other. Patch contributed byChris Lattner2006-05-091-0/+4
| | | | | | Domagoj Babic! llvm-svn: 28181
* Remove trailing whitespaceMisha Brukman2005-04-211-6/+6
| | | | llvm-svn: 21427
* Add support for unreachableChris Lattner2004-10-161-3/+23
| | | | llvm-svn: 17056
* Merge i*.h headers into Instructions.h as part of bug403.Alkis Evlogimenos2004-07-291-2/+1
| | | | llvm-svn: 15325
* Use one destination constructor for the unconditional branch.Alkis Evlogimenos2004-05-261-1/+1
| | | | llvm-svn: 13792
* Minor cleanups and simplificationsChris Lattner2003-11-211-10/+4
| | | | llvm-svn: 10127
* Start using the nicer terminator auto-insertion APIChris Lattner2003-11-201-5/+5
| | | | llvm-svn: 10111
* Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke2003-11-111-0/+4
| | | | llvm-svn: 9903
* Added LLVM project notice to the top of every C++ source file.John Criswell2003-10-201-0/+7
| | | | | | Header files will be on the way. llvm-svn: 9298
* Expand the pass to unify all of the unwind blocks as wellChris Lattner2003-09-101-5/+29
| | | | llvm-svn: 8456
* Remove using declarationsChris Lattner2003-05-221-4/+3
| | | | llvm-svn: 6306
* * We now preserve the no-critical-edge pass (because we cannot insert ↵Chris Lattner2003-03-311-11/+17
| | | | | | | | critical edges) * Small modification to be more efficient llvm-svn: 5757
* Fix bug I introduced with one of my previous changes.Chris Lattner2002-09-121-1/+1
| | | | | | Thanks fly out to Nick for noticing it! :) llvm-svn: 3691
* Fix bugs in previous checkinsChris Lattner2002-09-101-4/+4
| | | | llvm-svn: 3673
* Fix minor problems in previous checkinChris Lattner2002-09-101-3/+3
| | | | llvm-svn: 3668
* Clean up code due to auto-insert constructorsChris Lattner2002-09-101-5/+5
| | | | llvm-svn: 3666
* - Do not expose ::ID from any of the analyses anymore.Chris Lattner2002-08-211-1/+0
| | | | llvm-svn: 3417
* * Standardize how analysis results/passes as printed with the print() virtualChris Lattner2002-07-271-2/+1
| | | | | | | | | | methods * Eliminate AnalysisID: Now it is just a typedef for const PassInfo* * Simplify how AnalysisID's are initialized * Eliminate Analysis/Writer.cpp/.h: incorporate printing functionality into the analyses themselves. llvm-svn: 3115
* * Add support for different "PassType's"Chris Lattner2002-07-261-1/+1
| | | | | | | | | | | | | | | * Add new RegisterOpt/RegisterAnalysis templates for registering passes that are to show up in opt or analyze * Register Analyses now * Change optimizations to use RegisterOpt instead of RegisterPass * Add support for different "PassType's" * Add new RegisterOpt/RegisterAnalysis templates for registering passes that are to show up in opt or analyze * Register Analyses now * Change optimizations to use RegisterOpt instead of RegisterPass * Remove getPassName implementations from various subclasses llvm-svn: 3112
* *** empty log message ***Chris Lattner2002-07-231-0/+2
| | | | llvm-svn: 3016
* *** empty log message ***Chris Lattner2002-06-251-8/+8
| | | | llvm-svn: 2777
* Give the unified exit node a nameChris Lattner2002-05-071-1/+1
| | | | llvm-svn: 2550
* Move UnifyFunctionExitNodes to Utils library: final resting place this timeChris Lattner2002-05-071-1/+1
| | | | llvm-svn: 2531
* Cleanup implementation a bitChris Lattner2002-05-071-4/+6
| | | | llvm-svn: 2526
* Updates to move some header files out of include/llvm/Transforms intoChris Lattner2002-05-071-1/+1
| | | | | | the Scalar and Utils subdirectories llvm-svn: 2523
OpenPOWER on IntegriCloud