summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver/Tools.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Pass -fmodule-cache-path along to -cc1 properlyDouglas Gregor2011-09-171-1/+0
| | | | llvm-svn: 139977
* Add an experimental flag -fauto-module-import that automatically turnsDouglas Gregor2011-09-151-0/+2
| | | | | | | #include or #import direcctives of framework headers into module imports of the corresponding framework module. llvm-svn: 139860
* Teach the driver to always pass down a module cache path. If none isDouglas Gregor2011-09-141-0/+15
| | | | | | | supplied, use something derived from the system's temporary directory. Depends on LLVM r139725. llvm-svn: 139726
* Treat the weak export of block runtime symbols as a deployment-targetJohn McCall2011-09-091-0/+4
| | | | | | | | feature akin to the ARC runtime checks. Removes a terrible hack where IR gen needed to find the declarations of those symbols in the translation unit. llvm-svn: 139404
* [driver] i386 kext preprocessor jobs also need their unsupported options Chad Rosier2011-09-081-0/+2
| | | | | | | filtered. This happenis when -save-temps is specified. <rdar://problem/10088387> llvm-svn: 139269
* Enable -fdelayed-template-parsing by default on Win32.Francois Pichet2011-09-011-2/+3
| | | | | | I had to force -fno-delayed-template-parsing on some Index tests because delayed template parsing will change the output of some tests. llvm-svn: 138942
* objective-c: this patch (re)introduces objective-c's default propertyFariborz Jahanian2011-08-311-6/+0
| | | | | | | | | | synthesis. This new feature is currently placed under -fobjc-default-synthesize-properties option and is off by default pending further testing. It will become the default feature soon. // rdar://8843851 llvm-svn: 138913
* [driver] When generating temporary files allow a prefix to be added. In manyChad Rosier2011-08-261-2/+2
| | | | | | | | cases we want the prefix to be the original file name less the suffix. For an input such as test.c to named temporary would be something like test-3O4Clq.o Part of <rdar://problem/8314451> llvm-svn: 138662
* [driver] Remove a few more options when clang invokes cc1plus for i386 kexts.Chad Rosier2011-08-261-93/+111
| | | | | | <rdar://problem/10027287> llvm-svn: 138637
* [driver] Add -mglobal-merge/-mno-global-merge machine options to ↵Chad Rosier2011-08-261-0/+8
| | | | | | | | | enable/disable merging of globals during codegen. Fixes <rdar://problem/10017909>. llvm-svn: 138612
* revert 138610, accidental commit.Francois Pichet2011-08-261-12/+2
| | | | llvm-svn: 138611
* (no commit message)Francois Pichet2011-08-261-2/+12
| | | | llvm-svn: 138610
* Add support for a verifier to the driver. Currently only verifies debugEric Christopher2011-08-231-0/+20
| | | | | | | | | | | output on darwin so is hard coded there. As a note this will need a little bit of refactoring in the class hierarchy to separate it out for different verifiers based on input type. Fixes rdar://8256258. llvm-svn: 138343
* enable -fstack-protector on 10.5 for usermode binaries by default.Nico Weber2011-08-231-2/+4
| | | | | | This matches gcc's behavior. llvm-svn: 138324
* Add a completely hacky workaround for pch kext files with different extensionsEric Christopher2011-08-191-18/+24
| | | | | | | | when falling back to cc1plus for our compile. rdar://9963920 llvm-svn: 138017
* Use StringRef, rather than C string APIs.Chad Rosier2011-08-181-5/+6
| | | | llvm-svn: 137958
* No seriously, remove the unsupported warning options.Chad Rosier2011-08-181-1/+1
| | | | llvm-svn: 137918
* Fix off by one.Chad Rosier2011-08-181-1/+1
| | | | llvm-svn: 137915
* [driver] Implement in a more table-like manner and add many more warning optionsChad Rosier2011-08-181-5/+99
| | | | | | | that aren't handled by llvm-gcc on fallback. Enhancement to rdar://9964354 llvm-svn: 137912
* Add some more options that aren't handled by llvm-gcc on fallback.Eric Christopher2011-08-181-1/+5
| | | | | | This is going to be made a table. llvm-svn: 137907
* Fix else style. No functionality change intended.Chad Rosier2011-08-171-5/+4
| | | | llvm-svn: 137896
* Fix iterator end for r137842.Chad Rosier2011-08-171-1/+1
| | | | llvm-svn: 137849
* [driver] Clang doesn't support -mkernel/-fapple-kext for i386, so it's Chad Rosier2011-08-171-0/+14
| | | | | | | | automatically invoking llvm-gcc's cc1plus, which doesn't support all options supported by Clang. Therefore, filter out unsupported options. rdar://9964354 llvm-svn: 137842
* Reject -mkernel for i386/Darwin C++ code; fall back to llvm-gcc instead.Bob Wilson2011-08-131-1/+2
| | | | | | | Since -mkernel implies -fapple-kext, this just extends the current behavior for -fapple-kext to apply for -mkernel as well. Radar 9933387. llvm-svn: 137566
* Add support of -x objc-cpp-output, -x objc++-cpp-output to the Driver.Nico Weber2011-08-131-2/+4
| | | | | | Matches gcc, and is also required for using ccache with clang. llvm-svn: 137563
* When the compiler crashes, the compiler driver now produces diagnostic Chad Rosier2011-08-021-2/+2
| | | | | | | | | information including the fully preprocessed source file(s) and command line arguments. The developer is asked to attach this diagnostic information to a bug report. rdar://9575623 llvm-svn: 136702
* Driver: When compiling i386 -fapple-kext code, we fallback to llvmgcc.Chad Rosier2011-08-011-1/+4
| | | | | | | | Unfortunately, llvmgcc doesn't always work when writing temporary output to /dev/null. Therefore, create a temp file that is later deleted. rdar://9837692 llvm-svn: 136644
* Introduce the "-index-header-map" option, to give special semanticsDouglas Gregor2011-07-281-1/+2
| | | | | | | for quoted header lookup when dealing with not-yet-installed frameworks. Fixes <rdar://problem/9824020>. llvm-svn: 136331
* remove unneeded llvm:: namespace qualifiers on some core types now that ↵Chris Lattner2011-07-231-71/+72
| | | | | | | | LLVM.h imports them into the clang namespace. llvm-svn: 135852
* Avoid warning on "clang -c -Dfoo test.i". Lines like these are createdRafael Espindola2011-07-211-0/+6
| | | | | | | when using ccache and libtool.m4 assumes that the compiler cannot print warnings about options it knows about. llvm-svn: 135723
* Temporarily revert r135614 while I fix the cmake build.Chad Rosier2011-07-201-2/+2
| | | | llvm-svn: 135621
* When the compiler crashes, the compiler driver now produces diagnostic ↵Chad Rosier2011-07-201-2/+2
| | | | | | | | | information including the fully preprocessed source file(s) and command line arguments. The developer is asked to attach this diagnostic information to a bug report. llvm-svn: 135614
* introduce a centralized place to introduce and inject llvm types into theChris Lattner2011-07-201-1/+1
| | | | | | | | clang namespace. There are a number of LLVM types that are used pervasively and it doesn't make sense to keep qualifying them. Start with casting operators. llvm-svn: 135574
* [arcmt] Add some additional driver flags to optionally emit or save the ↵Argyrios Kyrtzidis2011-07-191-0/+3
| | | | | | | | | | | pre-migration ARC errors. -arcmt-migrate-emit-errors : Emits the pre-migration ARC errors but it doesn't affect anything else -arcmt-migrate-report-output : Writes out the pre-migration ARC errors to the provided plist file rdar://9791454 llvm-svn: 135491
* Implement -MG. Fixes PR9613Peter Collingbourne2011-07-121-2/+8
| | | | llvm-svn: 134996
* [arcmt] Introduce new '-ccc-arcmt-migrate <path>' ARC migration driver option.Argyrios Kyrtzidis2011-07-091-1/+7
| | | | | | | | | | | | | | | | | | | | This is a new mode of migration, where we avoid modifying the original files but we emit temporary files instead. <path> will be used to keep migration process metadata. Currently the temporary files that are produced are put in the system's temp directory but we can put them in the <path> if is necessary. Also introduce new ARC migration functions in libclang whose only purpose, currently, is to accept <path> and provide pairs of original file/transformed file to map from the originals to the files after transformations are applied. Finally introduce the c-arcmt-test utility that exercises the new libclang functions, update arcmt-test, and add tests for the whole process. rdar://9735086. llvm-svn: 134844
* [arcmt] Add -ccc-arcmt-check/-ccc-arcmt-modify driver option aliases.Argyrios Kyrtzidis2011-07-071-4/+4
| | | | llvm-svn: 134591
* Somehow the -fgnu-runtime option itself got lost in all that shuffling.John McCall2011-07-061-2/+4
| | | | | | Restore it. llvm-svn: 134459
* Call objc_terminate() instead of abort() when a cleanup throws anJohn McCall2011-07-061-0/+2
| | | | | | | exception in Objective-C; in Objective-C++ we still use std::terminate(). This is only available in very recent runtimes. llvm-svn: 134456
* Change the driver's logic about Objective-C runtimes: abstract out aJohn McCall2011-07-061-51/+58
| | | | | | | | | | | | structure to hold inferred information, then propagate each invididual bit down to -cc1. Separate the bits of "supports weak" and "has a native ARC runtime"; make the latter a CodeGenOption. The tool chain is still driving this decision, because it's the place that has the required deployment target information on Darwin, but at least it's better-factored now. llvm-svn: 134453
* Drop "soft" argument that would be considered as file argument by cc1.Joerg Sonnenberger2011-07-051-1/+0
| | | | llvm-svn: 134438
* Make clang behave in a gcc-compatible way in the presence of multiple flags ↵Eli Friedman2011-07-021-2/+19
| | | | | | | | for the same x86 target feature (e.g. -mno-sse -msse). gcc uses a somewhat unintuitive algorithm here in that the enabled SSE instructions is based on the order of the *last* flag for *each* feature-level, so that "-mno-sse -msse2" only enables SSE2, but "-mno-sse -msse2 -msse" enables all SSE levels. Issue reported on cfe-dev. llvm-svn: 134296
* Update for llvm commit r134291.Eric Christopher2011-07-021-1/+1
| | | | | | Fixes rdar://9714064 llvm-svn: 134292
* Use existing -fcatch-undefined-behavior option,Fariborz Jahanian2011-06-291-2/+0
| | | | | | replacing -freset-local-blocks. // rdar://9227352 llvm-svn: 134082
* Under a compiler flag, -freset-local-blocks,Fariborz Jahanian2011-06-281-0/+2
| | | | | | | wipe out stack blocks when they go out of scope. // rdar://9227352 llvm-svn: 134045
* Driver/Darwin: -force_load can be specified multiple times.Daniel Dunbar2011-06-281-1/+1
| | | | llvm-svn: 134025
* libprofile_rt may be installed as a dylib on Darwin.Bill Wendling2011-06-271-19/+30
| | | | | | If we cannot find the static library, use the dylib instead. llvm-svn: 133926
* It is possible to request the nonfragile ABI with -fobjc-abi-version=2;John McCall2011-06-221-17/+20
| | | | | | | respect that when deciding whether -objc-exceptions implies the -fexceptions -cc1 option. llvm-svn: 133590
* Driver/Darwin: Fixup version check for -object_path_lto support.Daniel Dunbar2011-06-211-1/+1
| | | | llvm-svn: 133548
* Fix the default libc++ header search path to be sysrooted. Radar 9639692.Bob Wilson2011-06-211-0/+1
| | | | | | | | | The -cxx-isystem path is not prefixed with the sysroot directory, so it's not a good way for the driver to set the system default C++ search path. Instead, add -stdlib as a cc1 option and teach the frontend how to find the headers. The driver can then just pass -stdlib through to "cc1". llvm-svn: 133547
OpenPOWER on IntegriCloud