summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver
Commit message (Collapse)AuthorAgeFilesLines
* Implement -fno-dwarf2-cfi-asm on linux too.Rafael Espindola2012-03-081-10/+7
| | | | llvm-svn: 152316
* [driver] Don't try to generate diagnostic information for linker crashes.Chad Rosier2012-03-072-0/+16
| | | | | | rdar://10993648 llvm-svn: 152180
* Whitespace.Chad Rosier2012-03-061-1/+1
| | | | llvm-svn: 152159
* [driver] What was implemented in r152130 was actually -fno-inline-functions, notChad Rosier2012-03-061-2/+2
| | | | | | | -fno-inline. Part of rdar://10972766 llvm-svn: 152145
* Add new code migrator support for migrating existing Objective-C code to useTed Kremenek2012-03-066-1/+39
| | | | | | | | | | | the new Objective-C NSArray/NSDictionary/NSNumber literal syntax. This introduces a new library, libEdit, which provides a new way to support migration of code that improves on the original ARC migrator. We now believe that most of its functionality can be refactored into the existing libraries, and thus this new library may shortly disappear. llvm-svn: 152141
* Enable default @synthesize by default.Ted Kremenek2012-03-061-1/+1
| | | | llvm-svn: 152140
* Add clang support for new Objective-C literal syntax for NSDictionary, NSArray,Ted Kremenek2012-03-063-9/+38
| | | | | | | | | | | | | NSNumber, and boolean literals. This includes both Sema and Codegen support. Included is also support for new Objective-C container subscripting. My apologies for the large patch. It was very difficult to break apart. The patch introduces changes to the driver as well to cause clang to link in additional runtime support when needed to support the new language features. Docs are forthcoming to document the implementation and behavior of these features. llvm-svn: 152137
* [driver] Add support for -fno-inline.Chad Rosier2012-03-061-0/+3
| | | | | | rdar://10972766 llvm-svn: 152130
* [analyzer] Turn inlining on by default for better testing exposure.Anna Zaks2012-03-011-0/+2
| | | | | | Fix a test, which was most likely an unintended recursive call. llvm-svn: 151848
* Add a flag -fthread-sanitizer.Kostya Serebryany2012-03-011-0/+4
| | | | | | | | | | This flag enables ThreadSanitizer instrumentation committed to llvm as r150423. The patch includes one test for -fthread-sanitizer and one similar test for -faddress-sanitizer. This patch does not modify the linker flags (as we do it for -faddress-sanitizer) because the run-time library is not yet committed and it's structure in compiler-rt is not 100% clear. The users manual wil be changed in a separate commit. llvm-svn: 151846
* Add -C when linking on Solaris so that the error messages are understandable ↵David Chisnall2012-02-291-0/+3
| | | | | | by actual humans. llvm-svn: 151726
* [driver] Emit an error when trying to use ARC on macosx earlier than 10.6Argyrios Kyrtzidis2012-02-293-0/+9
| | | | | | rdar://10459258 llvm-svn: 151706
* Add -lm by default on Solaris.David Chisnall2012-02-281-0/+1
| | | | llvm-svn: 151653
* It turns out -fno-cxa-atexit just produces broken code, so disable it on ↵David Chisnall2012-02-281-1/+1
| | | | | | Solaris and we'll ship a __cxa_atexit implementation... llvm-svn: 151648
* Some more Solaris fixes. Now successfully building libc++ on Solaris with ↵David Chisnall2012-02-281-5/+10
| | | | | | clang (and linking clang against it). llvm-svn: 151632
* Re-enable the Darwin ARM integrated assembler.Jim Grosbach2012-02-271-3/+2
| | | | | | All known nightly-test failures are fixed. llvm-svn: 151595
* A follow-up to r151482 which added support for powerpc and powerpc64Chandler Carruth2012-02-261-0/+10
| | | | | | | | | | | | | | | | | Debian multiarch libraries, this should in theory add support for those platform's header search rules. I don't have a system to check this with, so review appreciated. I've added the corresponding tests referring to the debian multiarch tree. We are starting to have a relatively completely tested Linux platform for header search and library search, with several interesting peculiarities. We should point people at the debian_multiarch_tree when suggesting new tests. Folks with Debian systems that can check this for correctness, it would be much appreciated. The missing chunks I know of are testing bi-arch peudo-cross-compiling toolchains betwen 32-bit and 64-bit variants of platforms, and the MIPS and ARM Debian toolchains. llvm-svn: 151484
* Add support for PPC and PPC64 multiarch toolchains on Debain.Chandler Carruth2012-02-261-0/+9
| | | | | | | | | | | | | | | | | Patch from Michel Dänzer, sent our way via Jeremy Huddleston who added 64-bit support. I just added one other place where powerpc64-linux-gnu was missing (we only had powerpc64-unknown-linux-gnu). I've also added a tree to test out the debian multiarch stuff. I don't use debian regularly, so I'm not certain this is entirely accurate. If anyone wants to check it against a debian system and fix any inaccuracies, fire away. This way at least folks can see how this is *supposed* to be tested. It'd be particularly good to get the Debian MIPS toolchains tested in this way. llvm-svn: 151482
* Temporarily revert r151288:Chad Rosier2012-02-251-2/+3
| | | | | | ARM: enable the integrated assembler by default for Darwin. llvm-svn: 151454
* ARM: enable the integrated assembler by default for Darwin.Jim Grosbach2012-02-231-3/+2
| | | | llvm-svn: 151288
* Revert part of r148839 and keep DefaultTargetTriple in the form adjustedJoerg Sonnenberger2012-02-221-0/+6
| | | | | | | | | | by -target and similar options. As discussed in PR 12026, the change broke support for target-prefixed tools, i.e. calling x86_64--linux-ld when compiling for x86_64--linux. Improve the test cases added originally in r149083 to not require execution, just executable files. Document the hack with appropiate FIXME comments. llvm-svn: 151185
* [driver] Add a warning for when -mcpu= is specified without an argument. ThereChad Rosier2012-02-221-0/+6
| | | | | | | are likely many other OPT_xxxx_EQ options that could/should be added here. rdar://10704648 llvm-svn: 151174
* Provide a way to disable auto-generation of preprocessed files during clang Chad Rosier2012-02-221-0/+3
| | | | | | | crash. This can speedup the process of generating a delta reduced test case. rdar://10905465 llvm-svn: 151109
* Fixing the working-directory option so that it stores the proper directory.Aaron Ballman2012-02-201-5/+7
| | | | llvm-svn: 150960
* Implement a -gcc-toolchain command line option that does the same asRafael Espindola2012-02-193-48/+60
| | | | | | | configure's --with-gcc-toolchain. The configure option is now just a default value for the command line one. llvm-svn: 150898
* Default to not using __cxa_atexit on Solaris.David Chisnall2012-02-181-0/+1
| | | | llvm-svn: 150883
* Tweak link order on Solaris so that global ctors work.David Chisnall2012-02-161-1/+1
| | | | llvm-svn: 150696
* Remove the unuseful -fdiagnostics-show-nameDavid Blaikie2012-02-151-5/+0
| | | | | | | | | | | | | | This option was added in r129614 and doesn't have any use case that I'm aware of. It's possible that external tools are using these names - and if that's the case we can certainly reassess the functionality, but for now it lets us shave out a few unneeded bits from clang. Move the "StaticDiagNameIndex" table into the only remaining consumer, diagtool. This removes the actual diagnostic name strings from clang entirely. Reviewed by Chris Lattner & Ted Kremenek. llvm-svn: 150612
* Add some Solaris include paths and fix a -lgcc_eh that apparently should be ↵David Chisnall2012-02-151-1/+1
| | | | | | -lgcc_s. llvm-svn: 150602
* Fix copy-and-paste error in commentDavid Chisnall2012-02-151-1/+1
| | | | llvm-svn: 150587
* First pass at Solaris toolchain support. This version compiles and links helloDavid Chisnall2012-02-155-0/+198
| | | | | | | | world on Solaris 11 for both x86 and x86-64 using the built-in assembler and Solaris (not GNU) ld, however it currently relies on a hard-coded GCC location to find crtbegin.o and crtend.o, as well as libgcc and libgcc_eh. llvm-svn: 150580
* include clang's config.h unconditionally (v2)Dylan Noblesmith2012-02-142-10/+3
| | | | | | | | | | And remove HAVE_CLANG_CONFIG_H, now that the header is generated in the autoconf build, too. Reverts r149571/restores r149504, now that config.h is generated correctly by LLVM's configure in all build configurations. llvm-svn: 150487
* When generating diagnostic information due to a clang failure, allow multipleChad Rosier2012-02-131-9/+10
| | | | | | | | | -arch options if the're all the same. Patch by Jeremy Huddleston. rdar://10849701 llvm-svn: 150403
* Delete a simplistic helper function now that llvm::Triple can provideChandler Carruth2012-02-131-13/+3
| | | | | | this functionality. llvm-svn: 150358
* Begin refactoring to use the newly added triple predicates forChandler Carruth2012-02-112-12/+4
| | | | | | | simplicity. Also addresses a FIXME, although not one that could be observed. llvm-svn: 150294
* Have the driver pass CPU and target feature information to cc1as.Jim Grosbach2012-02-102-0/+62
| | | | | | | | | | When creating the MCSubtargetInfo, the assembler driver uses the CPU and feature string to construct a more accurate model of what instructions are and are not legal. rdar://10840476 llvm-svn: 150273
* Correct comment Clang C++ use in production.David Blaikie2012-02-091-1/+1
| | | | | | | | | | This was from way-back-when (r82583) when Clang's C++ support wasn't prime-time yet. Production quality C++ was tested experimentally from r100119 and turned on by default in r141063. Patch by Justin Bogner. llvm-svn: 150148
* Filter a few more options not recognized by gcc. <rdar://problem/10814020>Bob Wilson2012-02-071-3/+17
| | | | | | | These are new options that gcc doesn't recognize so the clang driver needs to remove them when it falls back to invoking gcc. llvm-svn: 149951
* Rewrite the debug action handling to take -verify into account.Eric Christopher2012-02-062-18/+17
| | | | | | | Add a quiet option for dwarfdump and move it out of NDEBUG only. Still requires an option as we don't want this on by default. llvm-svn: 149894
* Update the command line here and update the comment, we're just goingEric Christopher2012-02-062-3/+4
| | | | | | to leave this as a debug only option for now. llvm-svn: 149890
* - Turn the other distribution checks into range compares.Benjamin Kramer2012-02-061-18/+14
| | | | | | | - Turn openSUSE version parsing into a StringSwitch - Add an entry for Fedora release 16 (Verne) llvm-svn: 149872
* Consolidate the ubuntu detection logic a bit, add an entry for Ubuntu 12.04 ↵Benjamin Kramer2012-02-061-28/+20
| | | | | | aka precise pangolin. llvm-svn: 149869
* Basic: import SmallString<> into clang namespaceDylan Noblesmith2012-02-055-15/+15
| | | | | | | (I was going to fix the TODO about DenseMap too, but that would break self-host right now. See PR11922.) llvm-svn: 149799
* Basic: import OwningPtr<> into clang namespaceDylan Noblesmith2012-02-052-2/+2
| | | | llvm-svn: 149798
* Fix -ftrap-function fallout from llvm r145714. <rdar://problem/10799325>Bob Wilson2012-02-031-6/+1
| | | | | | | | | That llvm change removed the -trap-func backend option, so that using -ftrap-function with clang would cause the backend to complain. Fix it by adding the trap function name to the CodeGenOptions and passing it through to the TargetOptions. llvm-svn: 149679
* Replace the old --with-cxx-* configure options with a single ↵Rafael Espindola2012-02-031-48/+13
| | | | | | | | | --with-gcc-toolchain that just uses the new toolchain probing logic. This fixes linking with -m32 on 64 bit systems (the /32 dir was not being added to the search). llvm-svn: 149652
* back out r149504Dylan Noblesmith2012-02-022-3/+10
| | | | | | Too many weird build failures. llvm-svn: 149571
* include clang's config.h unconditionallyDylan Noblesmith2012-02-013-14/+3
| | | | | | | | | | | | | And remove HAVE_CLANG_CONFIG_H, now that the header is generated in the autoconf build, too. (clang r149497 / llvm r149498) Also include the config.h header after all other headers, per the LLVM coding standards. It also turns out WindowsToolChain.cpp wasn't using the config header at all, so that include's just deleted now. llvm-svn: 149504
* Use new Triple::getMacOSXVersion function.Bob Wilson2012-01-311-31/+6
| | | | llvm-svn: 149439
* Fix more fallout from the introduction of "macosx" and "ios" triples.Bob Wilson2012-01-311-10/+37
| | | | | | | | | | | | The Darwin toolchain constructor was assuming that all Darwin triples would have an OS string starting with "darwin". Triples starting with "macosx" would misinterpret the version number, and "ios" triples would completely miss the version number (or worse) because the OS name is not 6 characters long. We lose some sanity checking of triple strings here, since the Triple.getOSVersion function doesn't do all the checking that the previous code did, but this still seems like a step in the right direction. llvm-svn: 149422
OpenPOWER on IntegriCloud