Commit Graph

3057 Commits

Author SHA1 Message Date
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
Chris Lattner 64a6727d02 *** empty log message ***
llvm-svn: 3087
2002-07-25 16:31:09 +00:00
Chris Lattner 42f1d37e75 Be more namespace correct
llvm-svn: 3086
2002-07-25 16:31:01 +00:00
Chris Lattner f200f7b11a Avoid warning message
llvm-svn: 3085
2002-07-25 16:30:45 +00:00
Chris Lattner ba614ba122 REmove extra blank lines
llvm-svn: 3084
2002-07-25 15:40:38 +00:00
Chris Lattner 68c7b71ea6 Break line to fit 80 columns
llvm-svn: 3083
2002-07-25 15:40:04 +00:00
Chris Lattner 3f351ba1d7 *** empty log message ***
llvm-svn: 3082
2002-07-25 15:39:09 +00:00
Chris Lattner c678c17211 Avoid warning: control reaches end of non-void function
llvm-svn: 3081
2002-07-25 15:39:05 +00:00
Chris Lattner 0c87ad3b87 Add support for GCC 3.0.4
llvm-svn: 3080
2002-07-25 15:23:20 +00:00
Chris Lattner 7369952460 Don't doxygenize the boost libraries
llvm-svn: 3079
2002-07-25 15:05:28 +00:00
Chris Lattner d1a72292ef Changes to allow building lib/Target/Sparc the FIRST time.
llvm-svn: 3078
2002-07-25 15:01:19 +00:00
Chris Lattner 880cfedadd *** empty log message ***
llvm-svn: 3077
2002-07-25 15:00:45 +00:00
Chris Lattner 379d3286ff GCC 3.1 changes
llvm-svn: 3076
2002-07-25 15:00:43 +00:00
Chris Lattner 10073a9080 *** empty log message ***
llvm-svn: 3075
2002-07-25 06:17:51 +00:00
Chris Lattner e680139c34 GCC 3.1 changes
llvm-svn: 3074
2002-07-25 06:17:42 +00:00
Chris Lattner 3091e11726 GCC 3.1 changes, finally the burm file builds the FIRST time a clean directory is built.
llvm-svn: 3073
2002-07-25 06:08:32 +00:00
Chris Lattner 2d380955dd *** empty log message ***
llvm-svn: 3072
2002-07-24 22:40:39 +00:00
Chris Lattner f1ca92d42d GCC 3.1 changes
llvm-svn: 3071
2002-07-24 22:40:36 +00:00
Chris Lattner 834cf2978b GCC 3.1 changes
llvm-svn: 3070
2002-07-24 22:34:01 +00:00
Chris Lattner 1cd30451c0 *** empty log message ***
llvm-svn: 3069
2002-07-24 22:33:53 +00:00
Chris Lattner 4fcf153ffd Changes for GCC 3.1
llvm-svn: 3068
2002-07-24 22:33:50 +00:00
Chris Lattner 44a50ea5b7 *** empty log message ***
llvm-svn: 3067
2002-07-24 22:20:06 +00:00
Chris Lattner 1e9a5805a4 GCC 3.1 fixes
llvm-svn: 3066
2002-07-24 22:20:00 +00:00
Chris Lattner a82ee2df46 *** empty log message ***
llvm-svn: 3065
2002-07-24 22:08:53 +00:00
Chris Lattner 889cddf52c Changes to build with GCC 3.1
llvm-svn: 3064
2002-07-24 22:08:36 +00:00
Chris Lattner 7d520558f3 Use the Support/iterator file to abstract out compiler differences
llvm-svn: 3063
2002-07-24 22:07:57 +00:00
Chris Lattner 1fafa67e37 Use the new include/Support/iterator file
llvm-svn: 3062
2002-07-24 22:07:42 +00:00
Chris Lattner bad64ee7e3 Add forward_iterator wrapper
llvm-svn: 3061
2002-07-24 22:07:13 +00:00
Chris Lattner 80b3dfd7d6 Add another GCC2.95->3.1 compatibility header
llvm-svn: 3060
2002-07-24 21:38:41 +00:00
Chris Lattner 47ef71bd87 Spiff up the header files
llvm-svn: 3059
2002-07-24 21:25:34 +00:00
Chris Lattner 6c21f2454b *** empty log message ***
llvm-svn: 3058
2002-07-24 21:21:33 +00:00
Chris Lattner e583333ec9 Non-standard hash classes are not in the std:: namespace
llvm-svn: 3057
2002-07-24 21:21:33 +00:00
Chris Lattner e98dd5fcac *** empty log message ***
llvm-svn: 3056
2002-07-24 21:21:32 +00:00
Chris Lattner f0f2da260f Move hash_* extension headers from ext/ to Support/ so that we can support
GCC 2.95, GCC 3.0.4 and GCC 3.1 all concurrently, without having to delete
headers after a chackou.

llvm-svn: 3055
2002-07-24 21:16:42 +00:00
Chris Lattner cfbda0cced Move compatibility headers to Support
llvm-svn: 3054
2002-07-24 21:09:54 +00:00
Chris Lattner f7b84b6718 *** empty log message ***
llvm-svn: 3053
2002-07-24 20:44:02 +00:00
Chris Lattner afdf577637 Changes to make it GCC 3.1 compatible
llvm-svn: 3052
2002-07-24 20:44:01 +00:00
Chris Lattner 2182c33ab5 Add missing typename's that GCC3.1 is whining about.
llvm-svn: 3051
2002-07-24 20:22:09 +00:00
Chris Lattner 48014b7f37 Fix problem that GCC3.1 doesn't like.
llvm-svn: 3050
2002-07-24 20:17:22 +00:00
Chris Lattner ca0e79eaa0 Fix a bug exposed by lli
llvm-svn: 3049
2002-07-24 20:15:13 +00:00
Chris Lattner feb53298fd Disable the operator= in Value
Disable the copy ctor and operator= in Annotation.h

llvm-svn: 3048
2002-07-24 20:01:57 +00:00
Chris Lattner f70058d24d Make the background white, add a "By" section.
llvm-svn: 3047
2002-07-24 19:59:33 +00:00
Chris Lattner 1c1ef11e62 Major changes, expansions, clarifications and corrections.
llvm-svn: 3046
2002-07-24 19:51:14 +00:00
Chris Lattner 418b537393 Remove assert hack now that I'm using the right GDB. :)
llvm-svn: 3045
2002-07-24 17:21:36 +00:00
Chris Lattner b3b021622f *** empty log message ***
llvm-svn: 3044
2002-07-24 17:12:08 +00:00
Chris Lattner 99a53f6aa9 Eliminate several include/llvm/Transforms/IPO/*.h files, moving their contents into IPO.h
llvm-svn: 3043
2002-07-24 17:12:05 +00:00
Chris Lattner 8cf6e10b4b Move many files into IPO.h
llvm-svn: 3042
2002-07-24 17:10:58 +00:00
Chris Lattner a6afead9b2 Move contents of these files into IPO.h
llvm-svn: 3041
2002-07-24 17:10:24 +00:00
Chris Lattner 35c4541bbe *** empty log message ***
llvm-svn: 3040
2002-07-23 22:04:43 +00:00
Chris Lattner da02d41e41 Minor changes due to code juggled around
llvm-svn: 3039
2002-07-23 22:04:40 +00:00
Chris Lattner 42706e4dec Merge ChangeAllocations into scalar.h
llvm-svn: 3038
2002-07-23 22:04:17 +00:00
Chris Lattner 5afe2f2ccd Rename header
llvm-svn: 3037
2002-07-23 22:04:02 +00:00
Chris Lattner 0db86893eb Cleanup and simplify code
llvm-svn: 3036
2002-07-23 22:03:41 +00:00
Chris Lattner b0cec70cbc Incorporate ConstantMerge.h into IPO.h
llvm-svn: 3035
2002-07-23 19:57:40 +00:00
Chris Lattner 417ae51c17 Rename LevelChange.h to RaisePointerReferences.h
llvm-svn: 3034
2002-07-23 19:57:08 +00:00
Chris Lattner 36d2c7c39b Register the WriteBytecodePass
llvm-svn: 3033
2002-07-23 19:56:44 +00:00
Chris Lattner 259a9b25a6 * Rename to IPO.h
* Add ConstantMerge.h contents

llvm-svn: 3032
2002-07-23 19:56:27 +00:00
Chris Lattner efe5de0f81 Add a version of the bytecode writer pass that has a default ctor
llvm-svn: 3031
2002-07-23 19:56:03 +00:00
Chris Lattner b765d4e57e Incorporate into IPO.h
llvm-svn: 3030
2002-07-23 19:51:10 +00:00
Chris Lattner 86fa226049 Prepare the file to become IPO.h
llvm-svn: 3029
2002-07-23 19:48:52 +00:00
Chris Lattner b1b12d1aaa Merge the contents of ChangeAllocations.h into Scalar.h
llvm-svn: 3028
2002-07-23 19:37:38 +00:00
Chris Lattner 570c6a6114 Allow directories to specify that they want to be built as a shared object by default
llvm-svn: 3027
2002-07-23 19:21:31 +00:00
Chris Lattner d3ee230c1d Checking testcase in my local tree only
llvm-svn: 3026
2002-07-23 18:28:03 +00:00
Chris Lattner d45d18ddfd New testcase for bug
llvm-svn: 3025
2002-07-23 18:27:20 +00:00
Chris Lattner 7d7041c3b1 TEstcases for old bugs
llvm-svn: 3024
2002-07-23 18:26:48 +00:00
Chris Lattner 999b83e7a2 Check in testcases that were just in my tree
llvm-svn: 3023
2002-07-23 18:25:39 +00:00
Chris Lattner c5aa75ffa7 New testcase
llvm-svn: 3022
2002-07-23 18:21:12 +00:00
Chris Lattner 5a48a248bd Use the pass registration mechanism to populate command line options for
opt, not huge explicit gross tables.

llvm-svn: 3021
2002-07-23 18:12:22 +00:00
Chris Lattner 8c7b31599b Raise pass requires an explicit TargetData member now.
llvm-svn: 3020
2002-07-23 18:09:58 +00:00
Chris Lattner 00fb26cf4d Register Verifier pass
llvm-svn: 3019
2002-07-23 18:08:17 +00:00
Chris Lattner 37d3c95b0f Add support for pass registration
llvm-svn: 3018
2002-07-23 18:08:00 +00:00
Chris Lattner 7f8845a523 Register Writer passes
llvm-svn: 3017
2002-07-23 18:07:49 +00:00
Chris Lattner b28b680155 *** empty log message ***
llvm-svn: 3016
2002-07-23 18:06:35 +00:00
Chris Lattner 6788f25f99 * Remove getPassName implementation
* Register all Passes

llvm-svn: 3015
2002-07-23 18:06:30 +00:00
Chris Lattner 6d216fdc1f * Cleanup the pass a bit more, making it more object oriented.
* Split the two behaviors of the InsertTraceCode class into two subclasses
* Register Passes

llvm-svn: 3014
2002-07-23 18:04:15 +00:00
Chris Lattner 75a210a63d * Break the two different behaviors of SimpleStructMutation into two subclasses
* Register the passes

llvm-svn: 3013
2002-07-23 18:03:11 +00:00
Chris Lattner aadb84f7ff * Make the ctor take a TargetData even though it's not using it yet
* Register the pass

llvm-svn: 3012
2002-07-23 18:02:23 +00:00
Chris Lattner 784d54ba4b * Remove lots of dead stuff
* Register Pass

llvm-svn: 3011
2002-07-23 18:01:39 +00:00
Chris Lattner a073fe167c Break part of Pass.h out into PassAnalysisSupport.h
Add PassSupport.h which contains code for Pass registration

llvm-svn: 3010
2002-07-23 17:59:55 +00:00
Chris Lattner 301dd0e990 Allow comparison against null
llvm-svn: 3009
2002-07-23 17:59:02 +00:00
Chris Lattner 5d33f9d4f3 *** empty log message ***
llvm-svn: 3008
2002-07-23 17:58:44 +00:00
Chris Lattner 5be9f9b357 Pass creator requires a TargetData member
llvm-svn: 3007
2002-07-23 17:58:42 +00:00
Chris Lattner 1201ce53fc Regularize the Print*Passes so they have default ctors.
llvm-svn: 3006
2002-07-23 17:58:09 +00:00
Chris Lattner 2c54a0db79 Initial checkin
llvm-svn: 3005
2002-07-23 17:56:53 +00:00
Chris Lattner 79e5e0009e Ignore the boost #include files
llvm-svn: 3004
2002-07-23 17:56:32 +00:00
Chris Lattner 76d98ba598 Enable USEDLIBS to contain .a and .o files
llvm-svn: 3003
2002-07-23 17:56:16 +00:00
Chris Lattner a896b08b5c *** empty log message ***
llvm-svn: 3002
2002-07-23 17:52:38 +00:00
Chris Lattner 2a77d8a7aa Convert over to new style makefile where libraries by default build .o files
unless they specify BUILD_ARCHIVE to also build a .a file.

llvm-svn: 3001
2002-07-23 17:52:24 +00:00
Chris Lattner 0af07b48f2 Convert over to new style of Makefile, where there is a difference between .o and .a libraries.
llvm-svn: 3000
2002-07-23 17:50:41 +00:00
Chris Lattner 494c0b07de *** empty log message ***
llvm-svn: 2999
2002-07-23 17:15:12 +00:00
Chris Lattner ee49ae0626 Add support for removing an option from a genericparser
llvm-svn: 2998
2002-07-23 17:15:09 +00:00
Chris Lattner c0c03be046 Change to avoid bug in GCC 3.0.4
llvm-svn: 2997
2002-07-23 00:44:37 +00:00
Chris Lattner 38773cd86f initial checkin
llvm-svn: 2996
2002-07-23 00:17:55 +00:00
Chris Lattner d4a73fe927 *** empty log message ***
llvm-svn: 2995
2002-07-23 00:17:22 +00:00
Chris Lattner 4c1ab7f2c3 Initial checkin
llvm-svn: 2994
2002-07-23 00:17:14 +00:00
Mehwish Nagda c4ffab60d5 moving to the Reoptimizer/Mapping dir
llvm-svn: 2993
2002-07-22 22:10:55 +00:00
Mehwish Nagda f6f772b1af moved from CodeGen to this dir
llvm-svn: 2992
2002-07-22 22:09:35 +00:00
Mehwish Nagda 08580d4f91 Moved to Reoptimizer/Mapping directory
llvm-svn: 2991
2002-07-22 22:06:56 +00:00
Chris Lattner aaf425bb4d Always create a shadow node for a store instruction, even if it's storing
a scalar value.  Likewise for load instructions.

llvm-svn: 2990
2002-07-22 16:35:53 +00:00
Chris Lattner d49ea88488 Minor bugfix, prevents error in LLI
llvm-svn: 2989
2002-07-22 02:21:57 +00:00
Chris Lattner 17570e182a Fix synopsis
llvm-svn: 2988
2002-07-22 02:18:09 +00:00
Chris Lattner de88ac4f45 Add description to Enum options.
llvm-svn: 2987
2002-07-22 02:18:00 +00:00
Chris Lattner df7633fb5f Hide extra argument
llvm-svn: 2986
2002-07-22 02:17:27 +00:00
Chris Lattner f5cad15a67 *** empty log message ***
llvm-svn: 2985
2002-07-22 02:10:13 +00:00
Chris Lattner bf30a91f94 Convert command line option processing code over to use the syntax supported
by the CommandLine 2.0 library

llvm-svn: 2984
2002-07-22 02:10:07 +00:00
Chris Lattner 341ce63dd4 Convert Command Line option handling code to use the CommandLine 2.0 interface
llvm-svn: 2983
2002-07-22 02:08:59 +00:00
Chris Lattner 5df56c47fc Checkin CommandLine 2.0
llvm-svn: 2982
2002-07-22 02:07:59 +00:00
Chris Lattner 6635edfee4 Print the contents, not the pointer...
llvm-svn: 2981
2002-07-22 02:06:50 +00:00
Anand Shukla 2a78633b4a comeented out debug printing
llvm-svn: 2980
2002-07-21 09:41:18 +00:00
Anand Shukla 889faf8bc9 Adding code for outputing length in .s
llvm-svn: 2979
2002-07-21 09:35:01 +00:00
Anand Shukla b3f6bfe0df changed first arg of parseBytecodeBuffer to unsigned char
llvm-svn: 2978
2002-07-21 09:31:59 +00:00
Anand Shukla dc7e934edb changed first arg og parseBytecodeBuffer to uchar
llvm-svn: 2977
2002-07-21 09:26:32 +00:00
Chris Lattner 45da3c7618 *** empty log message ***
llvm-svn: 2976
2002-07-20 08:20:00 +00:00
Chris Lattner aaac44a560 Check in the boost type_traits library, because it is now used by the CommandLine library.
llvm-svn: 2975
2002-07-20 08:19:52 +00:00
Mehwish Nagda 0644a84a5f changed size computation
llvm-svn: 2974
2002-07-19 22:54:08 +00:00
Chris Lattner 20695cba3c Ignore some common varargs functions.
llvm-svn: 2973
2002-07-19 18:11:43 +00:00
Chris Lattner cf71a85974 New testcase
llvm-svn: 2972
2002-07-19 03:51:49 +00:00
Anand Shukla fd61c60864 minor corrections
llvm-svn: 2971
2002-07-18 20:56:47 +00:00
Chris Lattner b6d2dc48c9 * Inline CopyFunctionCallsList
* Don't clone OrigCallList
* Rename removeDeadNodes -> removeTriviallyDeadNodes
* Implement new removeDeadNodes method

llvm-svn: 2970
2002-07-18 18:22:40 +00:00
Chris Lattner 4f99733c8c Rename removeDeadNodes to removeTriviallyDeadNodes
llvm-svn: 2969
2002-07-18 18:19:09 +00:00
Chris Lattner c04eeaaded Rename removeDeadNodes to removeTriviallyDeadNodes
Add new removeDeadNodes method

llvm-svn: 2968
2002-07-18 18:18:40 +00:00
Chris Lattner 8211ada36a Simplify saveOrigFunctionCalls
llvm-svn: 2967
2002-07-18 16:23:02 +00:00
Vikram S. Adve 94c8e5da41 Add support for a top-down propagation pass:
-- Save a copy of the original call nodes in DSGraph before inlining bottom-up.
-- Also, save a list of the callers of each function in DSGraph.

llvm-svn: 2966
2002-07-18 16:13:52 +00:00
Vikram S. Adve 4eac78e660 Add support for a top-down propagation pass.
Each DSGraph now keeps a list of pending callers that have not
been inlined into the function represented by that graph.
It also keeps a copy of the original call nodes before the BU pass
eliminates some of them.

llvm-svn: 2965
2002-07-18 16:12:08 +00:00
Chris Lattner db7a680aec Implement cast nodes correctly.
llvm-svn: 2964
2002-07-18 15:54:42 +00:00
Chris Lattner 93dc95fc7d Add support for bottom up closure of ds analysis
llvm-svn: 2963
2002-07-18 06:40:56 +00:00
Chris Lattner f2fbd00804 Build globaldce tests
llvm-svn: 2962
2002-07-18 06:40:31 +00:00