Commit Graph

3084 Commits

Author SHA1 Message Date
Chris Lattner 33fca976ee * Fix bug: test/Regression/Transforms/ADCE/2002-07-17-AssertionFailure.ll
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
2002-07-30 00:22:34 +00:00
Chris Lattner 13e40b402f Trim down testcase, a lot.
llvm-svn: 3136
2002-07-30 00:10:05 +00:00
Chris Lattner 8ec14765f8 Reduce testcase more
llvm-svn: 3135
2002-07-29 23:41:21 +00:00
Chris Lattner 3be5d0b892 Add code to ensure that no PHI nodes are left laying around with their
arguments dropped.  This fixes bug:
   test/Regression/Transforms/ADCE/2002-07-17-PHIAssertion.ll

llvm-svn: 3134
2002-07-29 23:40:46 +00:00
Chris Lattner 2511b6e296 Use a module analysis
llvm-svn: 3133
2002-07-29 23:02:25 +00:00
Chris Lattner fdf6bc216f Reduce the size of the testcase
llvm-svn: 3132
2002-07-29 22:46:55 +00:00
Chris Lattner b17274ebf6 Implement a new RemoveSuccessor function
llvm-svn: 3131
2002-07-29 22:32:08 +00:00
Chris Lattner 153ccdcac0 Implement a new RemoveSuccessor function
llvm-svn: 3130
2002-07-29 22:32:06 +00:00
Chris Lattner ee420b7f9d Fix bug: test/Regression/Transforms/ADCE/2002-07-29-Segfault.ll
llvm-svn: 3129
2002-07-29 22:31:39 +00:00
Chris Lattner 1cec4d90cd Allow folding of basic blocks that have PHI nodes in them, fixing "bug":
test/Regression/Transforms/SimplifyCFG/2002-06-24-PHINode.ll

llvm-svn: 3128
2002-07-29 21:26:30 +00:00
Chris Lattner 59aa81c78e Seperate analysis wrapper stuff to AnalysisWrappers.cpp
llvm-svn: 3127
2002-07-29 21:24:10 +00:00
Chris Lattner 2416144353 Hrm, testcase was checking the wrong pass. :(
llvm-svn: 3126
2002-07-29 21:12:20 +00:00
Chris Lattner 73503173ed * Eliminate the Provided set. All Passes now finally just automatically
provide themselves.

llvm-svn: 3125
2002-07-29 21:03:38 +00:00
Chris Lattner f356bcc824 * Eliminate the Provided set. All Passes now finally just automatically
provide themselves.

llvm-svn: 3124
2002-07-29 21:03:33 +00:00
Chris Lattner 071577d66d * PassInfo is allowed to be missing now (ie, not all passes need be registered)
* 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
2002-07-29 21:02:31 +00:00
Chris Lattner 83e9f43895 * Fix comment descriptions
* Remove defaulted argument to ctor that is never used anyway
* Prevent copying and assignment

llvm-svn: 3122
2002-07-29 21:01:19 +00:00
Chris Lattner 1f790afad8 * Fix assertion failure caused by command line argument getting removed after
the map was freed.
* Cleanup code a bit

llvm-svn: 3121
2002-07-29 20:58:42 +00:00
Chris Lattner 17b6ef6328 New testcase
llvm-svn: 3120
2002-07-29 19:39:52 +00:00
Chris Lattner 8ef8e3a0d4 Fix testcase to not print pointer value
llvm-svn: 3119
2002-07-29 19:07:48 +00:00
Chris Lattner 3913c06cc0 New testcase
llvm-svn: 3118
2002-07-29 19:02:49 +00:00
Chris Lattner e04258db39 Remove needless #include
llvm-svn: 3117
2002-07-27 05:25:29 +00:00
Chris Lattner 2675007573 * Standardize how analysis results/passes as printed with the print() virtual
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
2002-07-27 01:12:17 +00:00
Chris Lattner 96a0dfa33e * Standardize how analysis results/passes as printed with the print() virtual
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
2002-07-27 01:12:15 +00:00
Chris Lattner 5768f01926 Make analyze use the Pass repository to populate it's command line argument list
llvm-svn: 3114
2002-07-27 01:08:50 +00:00
Chris Lattner c8b7092e54 * 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
* 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
2002-07-26 21:12:46 +00:00
Chris Lattner a2c0985980 * 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
* 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
2002-07-26 21:12:44 +00:00
Chris Lattner d858d8087f *** empty log message ***
llvm-svn: 3111
2002-07-26 21:11:42 +00:00
Chris Lattner e656a47313 * 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: 3110
2002-07-26 21:11:38 +00:00
Chris Lattner e79bf38f4a Factor PassNamePArser out into llvm/Support/PassNameParser.h
llvm-svn: 3109
2002-07-26 21:09:32 +00:00
Chris Lattner 137bc9826f Factor PassNameParser out of opt.cpp so that analyze and eventually llc can use it.
llvm-svn: 3108
2002-07-26 21:09:10 +00:00
Chris Lattner 5dd95b2e55 *** empty log message ***
llvm-svn: 3107
2002-07-26 19:19:31 +00:00
Chris Lattner b8c55331c7 Analysis contructors now no longer take AnalysisID's as their argument,
because there is a one-one mapping between classes and analyses.

llvm-svn: 3106
2002-07-26 19:19:16 +00:00
Chris Lattner 64eea749de *** empty log message ***
llvm-svn: 3105
2002-07-26 18:40:14 +00:00
Chris Lattner d4879400ca Simplify analyses so that there is only one analysis per class
llvm-svn: 3104
2002-07-26 18:40:06 +00:00
Chris Lattner d9a36a63bb Fix typeo that caused bug:
test/Regression/Assembler/2002-07-25-ReturnPtrFunction.llx

llvm-svn: 3103
2002-07-25 20:58:51 +00:00
Chris Lattner 6fe2906627 New testcase for bug
llvm-svn: 3102
2002-07-25 20:57:21 +00:00
Chris Lattner 91e0832181 Add check to fix bug:
test/Regression/Assembler/2002-07-25-ParserAssertionFailure.llx

llvm-svn: 3101
2002-07-25 20:52:56 +00:00
Chris Lattner 65923eff65 New testcase
llvm-svn: 3100
2002-07-25 20:52:34 +00:00
Chris Lattner 5fa3a4429f Fix bug: test/Regression/Assembler/2002-07-25-QuoteInString.llx
llvm-svn: 3099
2002-07-25 20:32:37 +00:00
Chris Lattner 03e0499931 Add testcase for disassembler problem.
llvm-svn: 3098
2002-07-25 20:27:31 +00:00
Chris Lattner b62cc6785c *** empty log message ***
llvm-svn: 3097
2002-07-25 19:59:41 +00:00
Chris Lattner a442cde414 Remove dead options
llvm-svn: 3096
2002-07-25 19:59:38 +00:00
Chris Lattner 2e19f3e205 Update the CommandLine manual for the newest revision, include outline of reference manual and extension guide
llvm-svn: 3095
2002-07-25 19:27:01 +00:00
Chris Lattner e38dce72a7 Refix stuff for GCC 2.95, 3.0.4 & 3.1
llvm-svn: 3094
2002-07-25 18:04:48 +00:00
Chris Lattner 4f5624f218 Fix previous checkin
llvm-svn: 3093
2002-07-25 17:58:58 +00:00
Chris Lattner fcc395841b Add typenames
llvm-svn: 3092
2002-07-25 17:55:37 +00:00
Chris Lattner 6dd03356a6 Fix gcc 3.1 complaint
llvm-svn: 3091
2002-07-25 17:37:05 +00:00
Mehwish Nagda 7a167de851 now removes deleted nops from MachineCodeForInstruction
llvm-svn: 3090
2002-07-25 17:31:05 +00:00
Mehwish Nagda 26c7e5839e changed implementation of LLVM BYTECODE Length
llvm-svn: 3089
2002-07-25 17:22:48 +00:00
Chris Lattner 6d044b588b Namespace correctness is good
llvm-svn: 3088
2002-07-25 16:39:56 +00:00