summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver
Commit message (Collapse)AuthorAgeFilesLines
* Silence GCC warnings.Jakub Staszak2012-01-061-1/+1
| | | | llvm-svn: 147664
* Driver/Darwin: Remove a hack that avoided passing -demangle to iOS linkers.Daniel Dunbar2012-01-041-7/+1
| | | | llvm-svn: 147552
* Fixed by Chandler in r147434.Chad Rosier2012-01-031-1/+0
| | | | llvm-svn: 147489
* Add -fno-modules to the driver, to turn off modules (although they're off by ↵Douglas Gregor2012-01-031-2/+3
| | | | | | default anyway). llvm-svn: 147449
* Rename the command-line option for mapping #include/#import over toDouglas Gregor2012-01-031-1/+1
| | | | | | | | module imports from -fauto-module-import to -fmodules. The new name will eventually be used to enable modules, and the #include/#import mapping is a crucial part of the feature. llvm-svn: 147447
* Fix PR11685 by implementing -ffast-math and its various friends in theChandler Carruth2012-01-022-18/+102
| | | | | | | | | | | | | | | | | | | | | | | | | Clang driver. This involves a bunch of silly option parsing code to try to carefully emulate GCC's options. Currently, this takes a conservative approach, and unless all of the unsafe optimizations are enabled, none of them are. The fine grained control doesn't seem particularly useful. If it ever becomes useful, we can add that to LLVM first, and then expose it here. This also fixes a few tiny bugs in the flag management around -fhonor-infinities and -fhonor-nans; the flags now form proper sets both for enabling and disabling, with the last flag winning. I've also implemented a moderately terrifying GCC feature where a language change is also provided by the '-ffast-math' flag by defining the __FAST_MATH__ preprocessor macro. This feature is tracked and serialized in the frontend but it isn't used yet. A subsequent patch will add the preprocessor macro and tests for it. I've manually tested that codegen appears to respect this, but I've not dug in enough to see if there is an easy way to test codegen options w/o relying on the particulars of LLVM's optimizations. llvm-svn: 147434
* Handle a /etc/debian_version with a version number instead of a codename.Rafael Espindola2011-12-281-2/+2
| | | | | | Patch by Sylvestre Ledru. Fixes PR11673. llvm-svn: 147313
* Fix potential use after free.Benjamin Kramer2011-12-261-2/+1
| | | | llvm-svn: 147277
* fix for PR11634Anton Yartsev2011-12-231-0/+1
| | | | llvm-svn: 147224
* Last part of support for generating dwarf for assembly source files. This getsKevin Enderby2011-12-221-1/+26
| | | | | | the clang driver to enable this when assembling a .s file. rdar://9275556 llvm-svn: 147167
* Unweaken vtables as per ↵David Blaikie2011-12-206-1/+36
| | | | | | http://llvm.org/docs/CodingStandards.html#ll_virtual_anch llvm-svn: 146959
* Split the Windows toolchain definition into its own file. This isChandler Carruth2011-12-175-363/+400
| | | | | | | | | | | | | | | especially nice as the Windows toolchain needs the windows header files, and has lots of platform specific hooks in it. To facilitate the split, hoist a bunch of file-level static helpers into class-level static helpers. Spiff up their doxygen comments while there as they're now more likely to be looked up via docs. Hopefully, this will be followed by further breaking apart of the toolchain definitions. Most of the large and complex ones should likely live on their own. I'm looking at you Darwin. ;] llvm-svn: 146840
* Fix an abiguous-else warning from GCC. I have no idea why Clang doesn'tChandler Carruth2011-12-171-1/+2
| | | | | | have this warning. llvm-svn: 146839
* C++11 constexpr: Add note stacks containing backtraces if constant evaluationRichard Smith2011-12-161-0/+5
| | | | | | | | | | fails within a call to a constexpr function. Add -fconstexpr-backtrace-limit argument to driver and frontend, to control the maximum number of notes so produced (default 10). Fix APValue printing to be able to pretty-print all APValue types, and move the testing for this functionality from a unittest to a -verify test now that it's visible in clang's output. llvm-svn: 146749
* gcov-style profiling support for OpenBSD. Patch by Jonathan Gray.Eli Friedman2011-12-151-4/+14
| | | | llvm-svn: 146631
* Fix typos.Rafael Espindola2011-12-141-1/+1
| | | | llvm-svn: 146595
* Don't use the frame pointer on linux x86 and x86_64 if optimizing. ThisRafael Espindola2011-12-141-2/+19
| | | | | | | | matches gcc's behavior. Fixes PR8186. llvm-svn: 146586
* Enable stack protectors by default for iOS. <rdar://problem/8836680>Bob Wilson2011-12-141-1/+1
| | | | llvm-svn: 146552
* Fix "control may reach end of non-void function" warning.Nick Lewycky2011-12-121-2/+1
| | | | llvm-svn: 146448
* Hexagon backend supportTony Linthicum2011-12-125-5/+379
| | | | llvm-svn: 146413
* Driver: Handle -f{no-}honor-infinities, -f{no-}honor-nans, andDaniel Dunbar2011-12-091-0/+12
| | | | | | | | -ffinite-math-only. - No test case yet, I don't know how to construct a situation where this matters. llvm-svn: 146297
* Fix the --hash-style option when the target is MIPS as it isChandler Carruth2011-12-091-7/+18
| | | | | | | | incompatible with the MIPS ABI. Patch by Simon Atanasyan. llvm-svn: 146243
* Misc Minix-specific changes to clang:Eli Friedman2011-12-083-23/+19
| | | | | | | | | | | . move compiler-rt to a separate directory so the -L argument only includes compiler-rt (thanks joerg) . build all clang subdirs . switches the Minix platform to ELF . normalizes toolchain invocation Patch by Ben Gras. llvm-svn: 146206
* Allow clang to find gcc libs on suse ppc64Hal Finkel2011-12-081-1/+14
| | | | llvm-svn: 146142
* Minor cleanup. Avoid redundant getTriple() calls.Bob Wilson2011-12-081-2/+1
| | | | llvm-svn: 146122
* Driver/Linux: Fix the ASAN library path to match current compiler-rtDaniel Dunbar2011-12-071-5/+7
| | | | | | integration. llvm-svn: 146098
* Driver: Add a --rtlib={compiler-rt,libgcc} argument which I plan to use to allowDaniel Dunbar2011-12-073-0/+29
| | | | | | dual support for compiler-rt on Linux, during bringup. llvm-svn: 146094
* Fix multilib library paths on ppc64 Linux. Patch by Michael Kostylev. PR11472.Eli Friedman2011-12-071-2/+9
| | | | llvm-svn: 146016
* [asan] Mac: do not link dynamic libs with the asan-rt, use -undefined ↵Kostya Serebryany2011-12-062-3/+18
| | | | | | dynamic_lookup for dynamic libs. Style fixes. Patch by glider@google.com llvm-svn: 145955
* Stack realignment is a tristate. Add -mno-stackrealign to turn off all stackNick Lewycky2011-12-061-2/+11
| | | | | | realignment, even with locals with alignment exceeding the ABI guarantee. llvm-svn: 145909
* Add -mstack-alignment=X and fix -mstackrealign handling now that theJoerg Sonnenberger2011-12-051-4/+5
| | | | | | backend options are gone. llvm-svn: 145868
* [asan] don't require libstdc++ for asan on linux. Mac fix will go separatelyKostya Serebryany2011-12-051-1/+0
| | | | llvm-svn: 145823
* Driver/Darwin: Add ASAN runtime library link support.Daniel Dunbar2011-12-011-0/+16
| | | | llvm-svn: 145651
* Get the -march argument based on the target MIPS architecture or cpu and passAkira Hatanaka2011-11-301-7/+32
| | | | | | | | | it to GNU assembler. In addition, change function getMipsArchFromCPU() so that it can be reused in ConstructJob(). Patch by Simon Atanasyan. llvm-svn: 145509
* when -faddress-sanitizer is present, add required flags to the linker ↵Kostya Serebryany2011-11-301-0/+24
| | | | | | command (linux-only) llvm-svn: 145467
* Change processor names. Patch by Simon Atanasyan.Akira Hatanaka2011-11-291-4/+4
| | | | llvm-svn: 145453
* [Win32] Catch exceptions (eg. segfault) on waiting for invoked clang from ↵NAKAMURA Takumi2011-11-291-1/+7
| | | | | | | | | | | | the driver. clang/lib/Driver/Driver.cpp: Don't pass through negative exit status, or parent would be confused. llvm::sys::Program::Wait(): Suppose 0x8000XXXX and 0xC000XXXX as abnormal exit code and pass it as negative value. Win32 Exception Handler: Exit with ExceptionCode on an unhandle exception. llvm-svn: 145389
* A couple driver fixes for PPC Linux. Patches by Michael Kostylev. ↵Eli Friedman2011-11-282-1/+10
| | | | | | PR11444/PR11445. llvm-svn: 145321
* Add driver arguments -ftemplate-depth=N and -fconstexpr-depth=N, with the sameRichard Smith2011-11-211-1/+7
| | | | | | | | | | | | | semantics and defaults as the corresponding g++ arguments. The historical g++ argument -ftemplate-depth-N is kept for compatibility, but modern g++ versions no longer document that option. Add -cc1 argument -fconstexpr-depth N to implement the corresponding functionality. The -ftemplate-depth=N part of this fixes PR9890. llvm-svn: 145045
* Change the linker emulation name for FreeBSD/PPC32.Roman Divacky2011-11-211-1/+1
| | | | | | Submitted by Andreas Tobler! llvm-svn: 145041
* Teach the driver about failure result files, which are compilationPeter Collingbourne2011-11-212-1/+8
| | | | | | | | output files that are valid regardless of whether the compilation succeeded or failed (but not if we crash). Add depfiles to the failure result file list. llvm-svn: 145018
* Driver: Remove the signal number from the "command failed" diagnostic.Benjamin Kramer2011-11-191-1/+1
| | | | | | | - With the current implementation of sys::Program this always printed "2". - The command execution code will output the right number anyway (including the signal name). llvm-svn: 144993
* clang/Darwin: Use the compiler-rt provided profile library.Daniel Dunbar2011-11-172-9/+13
| | | | llvm-svn: 144869
* Add -f[no-]address-sanitizer flagKostya Serebryany2011-11-161-0/+4
| | | | llvm-svn: 144800
* Don't track depfiles as result files which need to be cleaned up on failure.Matt Beaumont-Gay2011-11-141-2/+0
| | | | | | | | | This is a partial revert of r143846. While cleaning up after a crash is probably a good idea, we were also deleting .d files if the compilation failed due to invalid input, which is not the desired behavior. The test is XFAIL'd until the cleanup code can be reworked to do the right thing. llvm-svn: 144590
* Search for libstdc++.dylib in llvm-gcc's files on darwin10. rdar://10419079Bob Wilson2011-11-111-0/+5
| | | | llvm-svn: 144381
* Add Linux multiarch include directories for mips/mipsel. Patch from Simon ↵Eli Friedman2011-11-111-0/+10
| | | | | | Atanasyan. llvm-svn: 144358
* Add top-level driver option '--serialize-diagnostics' for serialize compiler ↵Ted Kremenek2011-11-111-0/+6
| | | | | | diagnostics to a file. llvm-svn: 144339
* Fix an issue that Duncan discovered on a specific (no longer current)Chandler Carruth2011-11-092-9/+8
| | | | | | | | | | | | version of Ubuntu. It has a very broken multiarch configuration, and so we need special logic to handle it correctly. Fixing and testing this uncovered a few other trivial issues with the logic that are fixed as well. I added tests to cover this as it is hard to notice if you install recent versions of the OS. llvm-svn: 144165
* Misc fixes for clang driver on Mips Linux. Patch by Simon Atanasyan.Eli Friedman2011-11-082-0/+35
| | | | llvm-svn: 144108
OpenPOWER on IntegriCloud