summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver/Tools.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Handle -ffunction-sections and -fdata-sections in the driver.Rafael Espindola2010-05-061-0/+3
| | | | llvm-svn: 103197
* Remove a dependency on Frontend headers in the Driver library. Also savesChandler Carruth2010-05-061-13/+8
| | | | | | | building and passing arguments to cc1 layer when setting values to their defaults. llvm-svn: 103162
* add a new -fdiagnostics-show-category=none/id/name option, giving controlChris Lattner2010-05-041-0/+6
| | | | | | | | | | | | over choice of: t.c:3:11: warning: conversion specifies type 'char *' but the argument has type 'int' [-Wformat] t.c:3:11: warning: conversion specifies type 'char *' but the argument has type 'int' [-Wformat,1] t.c:3:11: warning: conversion specifies type 'char *' but the argument has type 'int' [-Wformat,Format String] dox to come. llvm-svn: 103056
* Introduce a limit on the depth of the macro instantiation backtraceDouglas Gregor2010-05-041-1/+10
| | | | | | | | | | | | | | printed in a diagnostic, similar to the limit we already have on the depth of the template instantiation backtrace. The macro instantiation backtrace is limited to 10 "instantiated from:" diagnostics; when it's longer than that, we'll show the first half, then say how many were suppressed, then show the second half. The limit can be changed with -fmacro-instantiation-limit=N, and turned off with N=0. This eliminates a lot of note spew with libraries making use of the Boost.Preprocess library. llvm-svn: 103014
* Do not enable '-analyze-check-security-syntactic' by default when using ↵Ted Kremenek2010-04-291-1/+3
| | | | | | | | '--analyze'. There are several known issues to address for it should be turned on by default. llvm-svn: 102664
* Driver: Add support for -fobjc-abi-version=.Daniel Dunbar2010-04-281-1/+13
| | | | | | - <rdar://problem/7919678> llvm-svn: 102559
* Simplify.Daniel Dunbar2010-04-271-4/+2
| | | | llvm-svn: 102432
* Add Driver support for -fno-constant-cfstrings.Daniel Dunbar2010-04-271-0/+8
| | | | llvm-svn: 102431
* NeXT: Clean up dispatch method policy selection.Daniel Dunbar2010-04-241-7/+11
| | | | | | | | | | - Replace -cc1 level -fobjc-legacy-dispatch with -fobjc-dispatch-method={legacy,non-legacy,mixed}. - Lift "mixed" vs "non-mixed" policy choice up to driver level, instead of being buried in CGObjCMac.cpp. - No intended functionality change. llvm-svn: 102255
* Simplify.Daniel Dunbar2010-04-241-6/+2
| | | | llvm-svn: 102254
* Introduce a limit on the depth of the template instantiation backtraceDouglas Gregor2010-04-201-0/+6
| | | | | | | | | | | | | | | | we will print with each error that occurs during template instantiation. When the backtrace is longer than that, we will print N/2 of the innermost backtrace entries and N/2 of the outermost backtrace entries, then skip the middle entries with a note such as: note: suppressed 2 template instantiation contexts; use -ftemplate-backtrace-limit=N to change the number of template instantiation entries shown This should eliminate some excessively long backtraces that aren't providing any value. llvm-svn: 101882
* Add support for '-fgnu-keywords' and '-fasm' to Clang's driver. They are notChandler Carruth2010-04-171-0/+10
| | | | | | | | implemented precisely the same as GCC, but the distinction GCC makes isn't useful to represent. This allows parsing code which uses GCC-specific keywords ('asm', etc.) without parsing in a fully GNU mode. llvm-svn: 101667
* Driver: Add missing claim() for -mllvm options.Daniel Dunbar2010-04-171-0/+2
| | | | llvm-svn: 101618
* Tidy up comment.Daniel Dunbar2010-04-151-4/+3
| | | | llvm-svn: 101357
* Driver/Frontend: Add support for -mllvm, which forwards options to the LLVM ↵Daniel Dunbar2010-04-151-1/+11
| | | | | | | | option parser. - Note that this is a behavior change, previously -mllvm at the driver level forwarded to clang -cc1. The driver does a little magic to make sure that '-mllvm -disable-llvm-optzns' works correctly, but other users will need to be updated to use -Xclang. llvm-svn: 101354
* add haiku support, patch by Paul Davey!Chris Lattner2010-04-111-0/+5
| | | | llvm-svn: 100982
* Driver: Ignore -fobjc-gc and -fobjc-gc-only for platforms which don't ↵Daniel Dunbar2010-04-101-2/+15
| | | | | | support them. llvm-svn: 100930
* Turn access control on by default in the driver.John McCall2010-04-091-2/+2
| | | | llvm-svn: 100882
* Turn access control on by default in -cc1.John McCall2010-04-091-4/+4
| | | | | | | | Remove -faccess-control from -cc1; add -fno-access-control. Make the driver pass -fno-access-control by default. Update a bunch of tests to be correct under access control. llvm-svn: 100880
* Remove caseless switch.Benjamin Kramer2010-04-081-7/+3
| | | | llvm-svn: 100770
* add a new driver-level -ferror-limit=412 option, which causes clang to stopChris Lattner2010-04-071-0/+6
| | | | | | | | | | | | | | | | | emitting diagnostics after it has produced that many errors. Give this a default value of 20 which produces plenty of errors for people to fix before recompiling but not so many that their entire console scrolls away when the compiler gets confused. The experience looks like this: $ clang foo.c <tons of crap> foo.c:102:3: error: unknown type name 'somethingbad' somethingbad x; ^ fatal error: too many errors emitted, stopping now 36 warnings and 20 errors generated. llvm-svn: 100689
* add support for -MQ flag to quote targets in dependency file,Chris Lattner2010-03-291-6/+52
| | | | | | PR6661, patch by Ori Avtalion! llvm-svn: 99821
* Implement support for -nostdc++. Fixes PR6446.Douglas Gregor2010-03-241-0/+2
| | | | llvm-svn: 99417
* Disable the emission of frontend warnings (not errors) under --analyze.Ted Kremenek2010-03-221-0/+5
| | | | | | Fixes <rdar://problem/7405601>. llvm-svn: 99222
* Driver: Fix a number of -fapple-kext issues:Daniel Dunbar2010-03-201-5/+13
| | | | | | | | | | | | | - Disable RTTI. - Disable use of __cxa_atexit. - Disable unwind tables. - Enable freestanding mode. Also, honor -fhosted correctly. <rdar://problem/7515383> C++ support: -fapple-kext not honored llvm-svn: 99041
* C++: Add support for -fno-use-cxa-atexit.Daniel Dunbar2010-03-201-0/+5
| | | | | | | | - So much typing, so little gain... Also, rename the __cxx_global_initialization function just to match llvm-gcc. llvm-svn: 99039
* Driver: Fix possible crash when targetting an unknown (unsupported) DarwinDaniel Dunbar2010-03-201-0/+6
| | | | | | platform, e.g. ppc. llvm-svn: 99016
* Make -faccess-control and -fno-access-control driver options.John McCall2010-03-171-0/+6
| | | | llvm-svn: 98703
* Driver: Fix forwarding of -fno-lax-vector-conversions.Daniel Dunbar2010-03-161-1/+6
| | | | llvm-svn: 98639
* Don't produce debug info when given -g. Fixes PR6529.Rafael Espindola2010-03-071-1/+3
| | | | llvm-svn: 97897
* Add in some more MIPS command line options.Eric Christopher2010-03-021-0/+71
| | | | | | Patch by Oleksandr Tymoshenko! llvm-svn: 97544
* Unconditionally support block introspection data in a new field at the endBlaine Garst2010-02-231-1/+0
| | | | | | | | | | | | | | | of the block descriptor field. This field is the ObjC style @encode signature of the implementation function, and was to this point conditionally provided in the block literal data structure. That provisional support is removed. Additionally, eliminate unused enumerations for the block literal flags field. The first shipping ABI unconditionally set (1<<29) but this bit is unused by the runtime, so the second ABI will unconditionally have (1<<30) set so that the runtime can in fact distinguish whether the additional data is present or not. llvm-svn: 96989
* Enable -mconstructor-aliases by default on non-darwin platforms.John McCall2010-02-191-0/+5
| | | | | | The linker bug holding this back is Darwin-specific. llvm-svn: 96655
* Driver: Tweak freebsd::Link, by Roman Divacky.Daniel Dunbar2010-02-171-2/+4
| | | | llvm-svn: 96469
* Raise the responsibility for passing -disable-llvm-verifier in NDEBUG buildsJohn McCall2010-02-131-0/+5
| | | | | | | to the driver, and support it in CodeGenOptsToArgs(). Note that this changes the default behavior of clang -cc1 to always run the verifier. llvm-svn: 96077
* Driver: Fix clang -ccc-no-clang -x c++-header foo.h on Darwin.Daniel Dunbar2010-02-111-1/+2
| | | | llvm-svn: 95876
* Driver: Add -rewrite-objc, which is an interface to clang -cc1 -rewrite-objc.Daniel Dunbar2010-02-111-1/+16
| | | | llvm-svn: 95849
* Switch to using -fsjlj-exceptions instead of hard-coding it. Notably, this fixesDaniel Dunbar2010-02-101-0/+3
| | | | | | | calls to the UnwindResumeOrRethrow function for C++/Obj-C exception handling, for Darwin ARM. llvm-svn: 95787
* Add support for threadsafe statics, and make them the default (matching gcc).Anders Carlsson2010-02-061-0/+5
| | | | | | Daniel, I'd appreciate a review of the driver/cc1 parts. llvm-svn: 95508
* Rename -cc1 option '-checker-cfref' to '-analyzer-check-objc-mem'.Ted Kremenek2010-02-051-1/+1
| | | | llvm-svn: 95348
* Rename -cc1 option '-warn-objc-missing-dealloc' to ↵Ted Kremenek2010-02-051-1/+1
| | | | | | '-analyzer-check-objc-missing-dealloc'. llvm-svn: 95347
* Rename -cc1 option '-warn-objc-methodsigs' to '-analyzer-check-objc-methodsigs'.Ted Kremenek2010-02-051-1/+1
| | | | llvm-svn: 95346
* Rename -cc1 option '-warn-objc-unused-ivars' to ↵Ted Kremenek2010-02-051-1/+1
| | | | | | '-analyzer-check-objc-unused-ivars'. llvm-svn: 95345
* Rename -cc1 option '-warn-dead-stores' to '-analyzer-check-dead-stores'.Ted Kremenek2010-02-051-1/+1
| | | | llvm-svn: 95343
* Rename -cc1 option '-warn-security-syntactic' to ↵Ted Kremenek2010-02-051-1/+1
| | | | | | '-analyzer-check-security-syntactic'. llvm-svn: 95342
* Driver: Add -[no-]integrated-as for clang.Daniel Dunbar2010-02-031-0/+2
| | | | | | | | | | | | | | | | | | | | - Requires backend support, which only exists for i386--darwin currently. No 'as' required: -- ddunbar@ozzy:tmp$ cat t.c int main() { return 42; } ddunbar@ozzy:tmp$ clang -m32 -integrated-as t.c ddunbar@ozzy:tmp$ ./a.out; echo $? 42 ddunbar@ozzy:tmp$ -- The random extra whitespace is how you know its working! :) llvm-svn: 95194
* Driver/Darwin: Darwin uses -fobjc-legacy-dispatch on ARM.Daniel Dunbar2010-02-011-1/+1
| | | | llvm-svn: 95006
* Driver/Frontend: Add support for -fobjc-legacy-dispatch, not yet used.Daniel Dunbar2010-02-011-1/+13
| | | | llvm-svn: 95004
* Simplify.Daniel Dunbar2010-01-301-2/+1
| | | | llvm-svn: 94929
* Use StringRef instead of returning a temporary std::string.Benjamin Kramer2010-01-301-1/+1
| | | | | | | | | | | This fixes a really nasty bug in Darwin::getDarwinArchName where we were going StringRef -> temporary std::string -> StringRef (and return the dead StringRef). The StringRefs from Triple live as long as the Triple itself, that should be long enough. Hopefully 2 of 4 MSVC buildbot failures are gone now. llvm-svn: 94892
OpenPOWER on IntegriCloud