summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Changes to be GCC3.1 friendlyChris Lattner2002-07-313-12/+13
| | | | llvm-svn: 3186
* *** empty log message ***Chris Lattner2002-07-314-10/+12
| | | | llvm-svn: 3185
* We need iostream in PassManagerT.h to use cerrChris Lattner2002-07-312-1/+1
| | | | llvm-svn: 3183
* Add new -only-print-main-ds option that causes mains ds graph to beChris Lattner2002-07-311-1/+4
| | | | | | printed, but no others. llvm-svn: 3178
* Fix bug that was causing problems for lliChris Lattner2002-07-311-1/+1
| | | | llvm-svn: 3176
* Add GlobalDSGraph -- a common graph that holds externally visible nodes.Vikram S. Adve2002-07-301-4/+8
| | | | llvm-svn: 3173
* Print globals graph after either the BU or the TD pass.Vikram S. Adve2002-07-301-17/+41
| | | | llvm-svn: 3172
* This file implements the top-down propagation pass for data structure graphs.Vikram S. Adve2002-07-301-0/+224
| | | | | | | | | | Also, we now use a separate globals graph to hold externally visible nodes. This changes both the bottom-up and top-down propagation so that globals and other external objects do not have to appear in every function, but only in functions in which they are referenced or they can be used to access something else that is referenced. llvm-svn: 3171
* Use a separate globals graph to hold externally visible nodes.Vikram S. Adve2002-07-302-107/+484
| | | | | | | | | This changes both the bottom-up and top-down propagation so that globals and other external objects do not have to appear in every function, but only in functions in which they are referenced or they can be used to access something else that is referenced. llvm-svn: 3170
* Implement new -debug-pass=Arguments option that causes PassManager toChris Lattner2002-07-302-9/+35
| | | | | | print out the command line options for the optimizations it is running. llvm-svn: 3165
* * Indent class into anonymous namespace, filling up the diff with garbageChris Lattner2002-07-301-30/+43
| | | | | | | | | * Internalize global variables with initializers * Add new stat to track global variable internalization * Only count functions that were not internal before in internalized function count llvm-svn: 3163
* Cleanup ConstantExpr handling:Chris Lattner2002-07-304-54/+61
| | | | | | | | | | | | | | * Correctly delete TypeHandles in AsmParser. In addition to not leaking memory, this prevents a bug that could have occurred when a type got resolved that the constexpr was using * Check for errors in the AsmParser instead of hitting assertion failures deep in the code * Simplify the interface to the ConstantExpr class, removing unneccesary parameters to the ::get* methods. * Rename the 'getelementptr' version of ConstantExpr::get to ConstantExpr::getGetElementPtr llvm-svn: 3161
* Cleanup ConstantExpr handling:Chris Lattner2002-07-302-30/+24
| | | | | | | | | | | | | | * Correctly delete TypeHandles in AsmParser. In addition to not leaking memory, this prevents a bug that could have occurred when a type got resolved that the constexpr was using * Check for errors in the AsmParser instead of hitting assertion failures deep in the code * Simplify the interface to the ConstantExpr class, removing unneccesary parameters to the ::get* methods. * Rename the 'getelementptr' version of ConstantExpr::get to ConstantExpr::getGetElementPtr llvm-svn: 3160
* Remove FIXME's that aren't really needed after all.Chris Lattner2002-07-301-9/+0
| | | | llvm-svn: 3158
* Declare that these passes only depend on the CFG of the functionChris Lattner2002-07-304-18/+18
| | | | llvm-svn: 3157
* * Move some code from Pass.cpp to PassManagerT.hChris Lattner2002-07-302-55/+37
| | | | | | | * Implement stuff so that code can declare that they only depend on the CFG of a function, not on anything else. This speeds up GCCAS a lot. llvm-svn: 3155
* Implement constant propogation of logical (and, or, xor) expressions.Chris Lattner2002-07-301-118/+113
| | | | | | Fixes testcase: test/Regression/Transforms/ConstProp/logicaltest.ll llvm-svn: 3154
* * Move InstructionSelection Pass here instead of living in Sparc.cpp. ItChris Lattner2002-07-301-169/+146
| | | | | | | | | is platform independant afterall. * Object orientize the functions, cleanup code a bit. Instead of static global functions, the helpers for instruction selection are now part of the InstructionSelection Pass class. llvm-svn: 3147
* * Move InstructionSelection pass to lib/CodeGen/InstrSelection so it isChris Lattner2002-07-301-18/+1
| | | | | | shared by backends. llvm-svn: 3146
* Remove unused vectorChris Lattner2002-07-301-3/+0
| | | | llvm-svn: 3143
* Fix bug with last patch which would occur when a call returned void and weChris Lattner2002-07-301-1/+2
| | | | | | attempted to assign it a name. llvm-svn: 3142
* * Make sure the resolved function call instructions get the name from theChris Lattner2002-07-301-7/+15
| | | | | | | | old call instruction * Implement conversion of return values for calls. This fixes bug: test/Regression/Transforms/FunctionResolve/retmismatch3.ll llvm-svn: 3140
* * Fix bug: test/Regression/Transforms/ADCE/2002-07-17-AssertionFailure.llChris Lattner2002-07-301-21/+46
| | | | | | | | | | | which was caused by us not running the "drop references of dead instructions" code when there were no basic blocks that were dead. We still don't want to do some of the stuff we do if there are dead basic blocks, but we DO want to drop references of dead instructions, so we factor the common code out to a new method. llvm-svn: 3137
* Add code to ensure that no PHI nodes are left laying around with theirChris Lattner2002-07-291-2/+16
| | | | | | | arguments dropped. This fixes bug: test/Regression/Transforms/ADCE/2002-07-17-PHIAssertion.ll llvm-svn: 3134
* Implement a new RemoveSuccessor functionChris Lattner2002-07-291-4/+51
| | | | llvm-svn: 3131
* Fix bug: test/Regression/Transforms/ADCE/2002-07-29-Segfault.llChris Lattner2002-07-291-28/+60
| | | | llvm-svn: 3129
* Allow folding of basic blocks that have PHI nodes in them, fixing "bug":Chris Lattner2002-07-291-1/+11
| | | | | | test/Regression/Transforms/SimplifyCFG/2002-06-24-PHINode.ll llvm-svn: 3128
* * Eliminate the Provided set. All Passes now finally just automaticallyChris Lattner2002-07-291-19/+16
| | | | | | provide themselves. llvm-svn: 3125
* * Eliminate the Provided set. All Passes now finally just automaticallyChris Lattner2002-07-293-3/+0
| | | | | | provide themselves. llvm-svn: 3124
* * PassInfo is allowed to be missing now (ie, not all passes need be registered)Chris Lattner2002-07-291-6/+9
| | | | | | | * getPassName uses PassInfo if it's available * PassInfo is now cached in the pass so that it is only looked up once, maximum llvm-svn: 3123
* * Fix assertion failure caused by command line argument getting removed afterChris Lattner2002-07-291-15/+35
| | | | | | | the map was freed. * Cleanup code a bit llvm-svn: 3121
* Remove needless #includeChris Lattner2002-07-271-1/+0
| | | | llvm-svn: 3117
* * Standardize how analysis results/passes as printed with the print() virtualChris Lattner2002-07-2714-201/+216
| | | | | | | | | | 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: 3116
* * Standardize how analysis results/passes as printed with the print() virtualChris Lattner2002-07-276-14/+18
| | | | | | | | | | 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-2623-28/+34
| | | | | | | | | | | | | | | * 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: 3113
* * Add support for different "PassType's"Chris Lattner2002-07-2617-19/+69
| | | | | | | | | | | | | | | * 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-266-229/+184
| | | | llvm-svn: 3105
* Fix typeo that caused bug:Chris Lattner2002-07-251-1/+1
| | | | | | test/Regression/Assembler/2002-07-25-ReturnPtrFunction.llx llvm-svn: 3103
* Add check to fix bug:Chris Lattner2002-07-251-0/+5
| | | | | | test/Regression/Assembler/2002-07-25-ParserAssertionFailure.llx llvm-svn: 3101
* Fix bug: test/Regression/Assembler/2002-07-25-QuoteInString.llxChris Lattner2002-07-251-1/+1
| | | | llvm-svn: 3099
* *** empty log message ***Chris Lattner2002-07-251-12/+0
| | | | llvm-svn: 3097
* Refix stuff for GCC 2.95, 3.0.4 & 3.1Chris Lattner2002-07-251-6/+6
| | | | llvm-svn: 3094
* Fix gcc 3.1 complaintChris Lattner2002-07-251-1/+1
| | | | llvm-svn: 3091
* now removes deleted nops from MachineCodeForInstructionMehwish Nagda2002-07-251-8/+20
| | | | llvm-svn: 3090
* changed implementation of LLVM BYTECODE LengthMehwish Nagda2002-07-251-18/+16
| | | | llvm-svn: 3089
* Avoid warning messageChris Lattner2002-07-251-0/+1
| | | | llvm-svn: 3085
* Break line to fit 80 columnsChris Lattner2002-07-251-1/+2
| | | | llvm-svn: 3083
* Avoid warning: control reaches end of non-void functionChris Lattner2002-07-251-1/+4
| | | | llvm-svn: 3081
* *** empty log message ***Chris Lattner2002-07-2512-24/+26
| | | | llvm-svn: 3075
* GCC 3.1 changesChris Lattner2002-07-252-2/+2
| | | | llvm-svn: 3074
OpenPOWER on IntegriCloud