| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
While there make getOption return a const reference so we don't have to put it
on the stack when calling methods on it. No functionality change.
llvm-svn: 209088
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It could even be made non-virtual if it weren't for bad compiler
warnings.
This demonstrates that ArgList objects aren't destroyed polymorphically
and possibly that they aren't even used polymorphically. If that's the
case, it might be possible to refactor the two ArgList types more
separately and simplify the Arg ownership model. *continues
experimenting*
llvm-svn: 206727
|
|
|
|
|
|
|
|
| |
This might be able to be simplified further by using Arg as a value type
in a linked list (to maintain pointer validity), but here's something
simple to start with.
llvm-svn: 206724
|
|
|
|
|
|
| |
instead of comparing to nullptr.
llvm-svn: 206252
|
|
|
|
| |
llvm-svn: 196301
|
|
|
|
| |
llvm-svn: 194007
|
|
|
|
|
|
| |
Sorry about that; I'll try to be more careful about DEBUG mode.
llvm-svn: 190449
|
|
|
|
| |
llvm-svn: 190442
|
|
|
|
|
|
| |
Re-submitting r189416 with fix for Windows build on where strcasecmp is not defined.
llvm-svn: 189501
|
|
|
|
|
|
|
|
| |
broke Windows buildbot.
This reverts r189416.
llvm-svn: 189424
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Link.exe's command line options are case-insensitive. This patch
adds a new attribute to OptTable to let the option parser to compare
options, ignoring case.
Command lines are generally case-insensitive on Windows. CL.exe is an
exception. So this new attribute should be useful for other commands
running on Windows.
Differential Revision: http://llvm-reviews.chandlerc.com/D1485
llvm-svn: 189416
|
|
|
|
|
|
|
|
|
|
|
| |
Clients of the option parsing library should handle it explicitly
using a KIND_REMAINING_ARGS option.
Clang and lld have been updated in r188316 and r188318, respectively.
Also fix -Wsign-compare warning in the option parsing test.
llvm-svn: 188323
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds KIND_REMAINING_ARGS, a class of options that consume
all remaining arguments on the command line.
This will be used to support /link in clang-cl, which is used
to forward all remaining arguments to the linker.
It also allows us to remove the hard-coded handling of "--",
allowing clients (clang and lld) to implement that functionality
themselves with this new option class.
Differential Revision: http://llvm-reviews.chandlerc.com/D1387
llvm-svn: 188314
|
|
|
|
|
|
| |
dependencies.
llvm-svn: 187777
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Everything that comes after -- should be treated as a filename. This
enables passing in filenames that would otherwise be conflated with
command-line options.
This is especially important for clang-cl which supports options
starting with /, which are easily conflatable with Unix-style
path names.
Differential Revision: http://llvm-reviews.chandlerc.com/D1274
llvm-svn: 187675
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This makes option aliases more powerful by enabling them to
pass along arguments to the option they're aliasing.
For example, if we have a joined option "-foo=", we can now
specify a flag option "-bar" to be an alias of that, with the
argument "baz".
This is especially useful for the cl.exe compatible clang driver,
where many options are aliases. For example, this patch enables
us to alias "/Ox" to "-O3" (-O is a joined option), and "/WX" to
"-Werror" (again, -W is a joined option).
Differential Revision: http://llvm-reviews.chandlerc.com/D1245
llvm-svn: 187537
|
|
|
|
| |
llvm-svn: 186879
|
|
|
|
|
|
|
|
|
| |
Option aliases in option groups were previously disallowed by an assert.
As far as I can tell, there was no technical reason for this, and I would
like to be able to put cl.exe compatible options in their own group for Clang,
so let's change the assert.
llvm-svn: 186838
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This allows the clang driver to put MSVC compatible options in the same
enumerator space as its normal options but exclude them from normal
option parsing.
Also changes the standard ParseArgs() method to consider unknown
arguments with a leading slash as being inputs rather than flags.
High level discussion for clang-cl is here:
http://lists.cs.uiuc.edu/pipermail/cfe-dev/2013-June/030404.html
CC: llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D1049
llvm-svn: 186703
|
|
|
|
|
|
|
|
|
| |
This broke clang's crash-report.c test, and I haven't been able to
figure it out yet.
This reverts commit r186319.
llvm-svn: 186329
|
|
|
|
|
|
|
|
|
|
|
| |
No functionality change.
This is preparing to move response file parsing into lib/Option so it
can be shared between clang and lld. This change isn't just a
micro-optimization. Clang's driver uses a std::set<std::string> to
unique arguments while parsing response files, so this matches that.
llvm-svn: 186319
|
|
|
|
|
|
|
|
| |
Option groups don't have prefixes. Option dumping is basically dead
code unless there is something wrong with the option table, so this
isn't an important crasher.
llvm-svn: 185031
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is in preparation for switching the clang driver over to using LLVM's
Option library. Richard Smith introduced most of these changes to the clang
driver in r167638.
Reviewers: espindola on IRC
Differential Revision: http://llvm-reviews.chandlerc.com/D970
llvm-svn: 183925
|
|
|
|
|
|
|
|
|
|
| |
utils/sort_includes.py script.
Most of these are updating the new R600 target and fixing up a few
regressions that have creeped in since the last time I sorted the
includes.
llvm-svn: 171362
|
|
llvm-svn: 169344
|