aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/Support/CommandLine.h
Commit message (Collapse)AuthorAgeFilesLines
* Update aosp/master llvm for rebase to r233350Pirama Arumuga Nainar2015-04-091-17/+45
| | | | Change-Id: I07d935f8793ee8ec6b7da003f6483046594bca49
* Update aosp/master LLVM for rebase to r230699.Stephen Hines2015-03-231-508/+346
| | | | Change-Id: I2b5be30509658cb8266be782de0ab24f9099f9b9
* Update aosp/master LLVM for rebase to r222494.Stephen Hines2014-12-021-10/+28
| | | | Change-Id: Ic787f5e0124df789bd26f3f24680f45e678eef2d
* Update LLVM for 3.5 rebase (r209712).Stephen Hines2014-05-291-14/+15
| | | | Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
* Update to LLVM 3.5a.Stephen Hines2014-04-241-63/+78
| | | | Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
* [weak vtables] Remove a bunch of weak vtablesJuergen Ributzka2013-11-191-0/+4
| | | | | | | | | | | | This patch removes most of the trivial cases of weak vtables by pinning them to a single object file. The memory leaks in this version have been fixed. Thanks Alexey for pointing them out. Differential Revision: http://llvm-reviews.chandlerc.com/D2068 Reviewed by Andy git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@195064 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert r194865 and r194874.Alexey Samsonov2013-11-181-4/+0
| | | | | | | | | | | | | This change is incorrect. If you delete virtual destructor of both a base class and a subclass, then the following code: Base *foo = new Child(); delete foo; will not cause the destructor for members of Child class. As a result, I observe plently of memory leaks. Notable examples I investigated are: ObjectBuffer and ObjectBufferStream, AttributeImpl and StringSAttributeImpl. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194997 91177308-0d34-0410-b5e6-96231b3b80d8
* [weak vtables] Remove a bunch of weak vtablesJuergen Ributzka2013-11-151-0/+4
| | | | | | | | | | | This patch removes most of the trivial cases of weak vtables by pinning them to a single object file. Differential Revision: http://llvm-reviews.chandlerc.com/D2068 Reviewed by Andy git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194865 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix -Wdocumentation warningHans Wennborg2013-07-181-1/+1
| | | | | | | s/Tokenize/Tokenizer/ to make the comment correspond to the parameter name git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186608 91177308-0d34-0410-b5e6-96231b3b80d8
* [Support] Beef up and expose the response file parsing in llvm::clReid Kleckner2013-07-181-0/+53
| | | | | | | | | | | | | | | | | | | The plan is to use it for clang and lld. Major behavior changes: - We can now parse UTF-16 files that have a byte order mark. - PR16209: Don't drop backslashes on the floor if they don't escape anything. The actual parsing loop was based on code from Clang's driver.cpp, although it's been rewritten to track its state with control flow rather than state variables. Reviewers: hans Differential Revision: http://llvm-reviews.chandlerc.com/D1170 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186587 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix 'gcc -flto' builds for unittest binaries (undefined reference toPatrik Hagglund2013-06-121-2/+0
| | | | | | | | | `typeinfo for llvm::cl::GenericOptionValue'). Remove an "anchor" method for an abstract class. (This does not increase the number of vtables.) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183830 91177308-0d34-0410-b5e6-96231b3b80d8
* Use correct parameter names in comments [-Wdocumentation]Dmitri Gribenko2013-05-081-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181478 91177308-0d34-0410-b5e6-96231b3b80d8
* Implemented public interface for modifying registered (not positional or ↵Andrew Trick2013-05-061-0/+34
| | | | | | | | sink options) command line options at runtime. Patch by Dan Liew! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181254 91177308-0d34-0410-b5e6-96231b3b80d8
* Support command line option categories.Andrew Trick2013-05-061-8/+42
| | | | | | Patch by Dan Liew! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181253 91177308-0d34-0410-b5e6-96231b3b80d8
* Generalize my previous fix for -print-options.Andrew Trick2013-03-061-1/+1
| | | | | | | Always print options that differ from their implicit default. At least for simple option types. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176572 91177308-0d34-0410-b5e6-96231b3b80d8
* Simplify code. No functionality change.Jakub Staszak2013-02-191-4/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175559 91177308-0d34-0410-b5e6-96231b3b80d8
* Sort the #include lines for the include/... tree with the script.Chandler Carruth2012-12-031-2/+2
| | | | | | | | | | AKA: Recompile *ALL* the source code! This one went much better. No manual edits here. I spot-checked for silliness and grep-checked for really broken edits and everything seemed good. It all still compiles. Yell if you see something that looks goofy. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169133 91177308-0d34-0410-b5e6-96231b3b80d8
* Add missing this->. Fixes pr14238.Rafael Espindola2012-11-051-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167383 91177308-0d34-0410-b5e6-96231b3b80d8
* Enable response files in all tools. Patch by Liu, Yaxun (Sam). I have simplifiedRafael Espindola2012-10-091-4/+2
| | | | | | the test. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165535 91177308-0d34-0410-b5e6-96231b3b80d8
* Add LLVM_OVERRIDE to methods that override their base classes.Craig Topper2012-09-231-4/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164471 91177308-0d34-0410-b5e6-96231b3b80d8
* Initializers for some fields were missing in Option::OptionAlexander Kornienko2012-07-131-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160170 91177308-0d34-0410-b5e6-96231b3b80d8
* fix warnings when compiling with -WshadowNick Kledzik2012-05-181-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157061 91177308-0d34-0410-b5e6-96231b3b80d8
* Correct use of const in ParseCommandLineOptionsDavid Blaikie2012-02-071-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149999 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert assert(0) to llvm_unreachableCraig Topper2012-02-051-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149849 91177308-0d34-0410-b5e6-96231b3b80d8
* Reword comment based on feedback by Duncan Sands.David Blaikie2012-01-241-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148809 91177308-0d34-0410-b5e6-96231b3b80d8
* Changing bitfield enums to unsigned ints.David Blaikie2012-01-231-7/+9
| | | | | | | This was suggested by Chandler Carruth on the basis of past experience with esoteric compilers/quirks relating to signed enums. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148746 91177308-0d34-0410-b5e6-96231b3b80d8
* Simplify llvm::cl::Option by using a bit field instead of manual bit packing.David Blaikie2012-01-231-74/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This still preserves the same total layout. Previously it looked like: *** Dumping AST Record Layout 0 | class llvm::cl::Option 0 | (Option vtable pointer) 8 | int NumOccurrences 12 | int Flags 16 | unsigned int Position 20 | unsigned int AdditionalVals 24 | class llvm::cl::Option * NextRegistered 32 | const char * ArgStr 40 | const char * HelpStr 48 | const char * ValueStr sizeof=56, dsize=56, align=8 nvsize=56, nvalign=8 Now it looks like: *** Dumping AST Record Layout 0 | class llvm::cl::Option 0 | (Option vtable pointer) 8 | int NumOccurrences 12 | enum NumOccurrencesFlag Occurrences 12 | unsigned int Value 12 | enum OptionHidden HiddenFlag 12 | enum FormattingFlags Formatting 13 | unsigned int Misc 16 | unsigned int Position 20 | unsigned int AdditionalVals 24 | class llvm::cl::Option * NextRegistered 32 | const char * ArgStr 40 | const char * HelpStr 48 | const char * ValueStr sizeof=56, dsize=56, align=8 nvsize=56, nvalign=8 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148736 91177308-0d34-0410-b5e6-96231b3b80d8
* Add some missing anchors.David Blaikie2011-12-011-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145578 91177308-0d34-0410-b5e6-96231b3b80d8
* CommandLine: Add support for 64 bit unsigned integer options.Benjamin Kramer2011-09-151-0/+22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139848 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an extension point to the CommandLine library where clients canChandler Carruth2011-07-221-0/+9
| | | | | | | | | | | | register extra version information to be printed. This is designed to allow those tools which link in various targets to also print those registered targets under --version. Currently this printing logic is embedded into the Support library directly; a huge layering violation. This is the first step to hoisting it out into the tools without adding lots of duplicated code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135755 91177308-0d34-0410-b5e6-96231b3b80d8
* Comment out some unused parameter names to silence out-of-tree -Wunused ↵Frits van Bommel2011-04-221-8/+8
| | | | | | warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129988 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a typo.Andrew Trick2011-04-051-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128912 91177308-0d34-0410-b5e6-96231b3b80d8
* Added *hidden* flags -print-options and -print-all-options soAndrew Trick2011-04-051-15/+280
| | | | | | | | | | | | | | | | | | | | developers can see if their driver changed any cl::Option's. The current implementation isn't perfect but handles most kinds of options. This is nice to have when decomposing the stages of compilation and moving between different drivers. It's also a good sanity check when comparing results produced by different command line invocations that are expected to produce the comparable results. Note: This is not an attempt to prolong the life of cl::Option. On the contrary, it's a placeholder for a feature that must exist when cl::Option is replaced by a more appropriate framework. A new framework needs: a central option registry, dynamic name lookup, non-global containers of option values (e.g. per-module, per-function), *and* the ability to print options values and their defaults at any point during compilation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128910 91177308-0d34-0410-b5e6-96231b3b80d8
* Trailing whitespace.Mikhail Glushenkov2010-08-101-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110679 91177308-0d34-0410-b5e6-96231b3b80d8
* Some cleanup. Use a class (OptionInfo) instead of a pair of a pair and removeRafael Espindola2010-08-061-8/+15
| | | | | | some default values that are not used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110485 91177308-0d34-0410-b5e6-96231b3b80d8
* Refer to -help instead of --help since this is what tools themselves say.Duncan Sands2010-02-181-8/+8
| | | | | | | | | Also, have tools output -help-hidden rather than refer to --help-hidden, for consistency, and likewise adjust documentation. This doesn't change every mention of --help, only those which seemed clearly safe. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96578 91177308-0d34-0410-b5e6-96231b3b80d8
* enhance bits_storage to work with enums by using a c-styleChris Lattner2010-02-091-1/+1
| | | | | | | | cast instead of reinterpret_cast, fixing PR6243. Apparently reinterpret_cast and I aren't getting along today. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95622 91177308-0d34-0410-b5e6-96231b3b80d8
* Add qualifiers for calls to member functions in dependent bases.Anders Carlsson2009-12-111-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91087 91177308-0d34-0410-b5e6-96231b3b80d8
* Move llvm::cl::opt's conversion function into the base classes thatDouglas Gregor2009-11-051-2/+4
| | | | | | | actually need that conversion function. Silences a Clang++ warning. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86148 91177308-0d34-0410-b5e6-96231b3b80d8
* Declare classes with matched tags, pointed out by a clang++ warning.Chris Lattner2009-11-051-2/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86144 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove a bunch of unused arguments from functions, silencing aEric Christopher2009-10-141-2/+2
| | | | | | | warning. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84130 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename enum NumOccurrences to NumOccurrencesFlag since there is a member ↵Evan Cheng2009-10-041-6/+8
| | | | | | named NumOccurrences. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83273 91177308-0d34-0410-b5e6-96231b3b80d8
* smallvectorize getExtraOptionNamesChris Lattner2009-09-201-6/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82377 91177308-0d34-0410-b5e6-96231b3b80d8
* convert a bunch more stuff to use StringRef. The ArgName arguments are nowChris Lattner2009-09-201-19/+17
| | | | | | | | | | stringref because they may not be nul terminated. For options like -Lfoo this now avoids a O(n) temporary std::strings where N is the length of the string after -L. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82345 91177308-0d34-0410-b5e6-96231b3b80d8
* convert a bunch of std::strings to use StringRef. This should eliminateChris Lattner2009-09-191-28/+22
| | | | | | | | a massive number of temporary strings created when parsing a command line. More still left to eliminate. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82318 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix some comments referring to std::cerr.Daniel Dunbar2009-08-031-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77931 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove duplicated colons and spaces.Benjamin Kramer2009-08-021-7/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77892 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix comment.Mikhail Glushenkov2009-06-171-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73601 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for a character after a command line option. Like '-Os'.Bill Wendling2009-04-291-0/+23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70437 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove AllowInverse: it leaks memory and is not the rightChris Lattner2009-04-081-5/+1
| | | | | | | abstraction for CommandLine. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68588 91177308-0d34-0410-b5e6-96231b3b80d8