aboutsummaryrefslogtreecommitdiff
path: root/lib/Driver
AgeCommit message (Collapse)Author
2012-05-29Make Clang driver pass the last option from -g group to the compiler.Alexey Samsonov
Leave a better fixme for different debug info flags git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157602 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-23[driver] Have the crash diagnostics print the clang version information.Chad Rosier
rdar://11518308 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157346 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-21[driver] When creating the compiler invocation out of command-lineArgyrios Kyrtzidis
arguments, force use of clang frontend for the driver. Fixes rdar://11356765. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157205 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-20Tell the driver that CUDA is a C++-like language, so that we get C++Peter Collingbourne
header searches with CUDA. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157172 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-16[driver] Remove obsolete support for -A link option. The standard -A option isChad Rosier
used by the preprocessor. Apple's GCC also supported a -A option for linking. The ld man page has the following: -A basefile - Obsolete incremental load format. This option is obsolete. Nick Kledzik confirms this option is no longer needed/supported. rdar://11455614 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156965 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-16Rename the driver option to -mno-implicit-float, per Eli's suggestion.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156950 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-16Pulls diagnostics for temp file handling into the common diagnostic kinds.Manuel Klimek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156947 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-16[driver] Allow the driver to directly accept the -no-implicit-float option, ↵Chad Rosier
so that the generation of implicit floating point instructions can be disable for ARM. rdar://11409142 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156942 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-16[tsan] add ThreadSanitizer linker flags on Linux and also copy the tsan-rt ↵Kostya Serebryany
into the appropriate place at build time git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156906 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-15Add the Objective-C runtime linking arguments after user-specifiedDouglas Gregor
linker arguments. Fixes <rdar://problem/11417441>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156853 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-15Do not link with Objective-C libraries with -nostdlib or -nodefaultlibs.Bob Wilson
<rdar://problem/11433499> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156841 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-15add embedded linux variants that occur in the fieldGabor Greif
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156813 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-14Teach the driver on Linux to respect -nodefaultlibs.Chandler Carruth
Patch from Andrew C. Morrow. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156771 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-10Hexagon V5 FP support.Sirish Pande
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156567 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-09Roll logic into a single if statement, per David's suggestion.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156502 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-09Use the triple directly, rather then getTriple().Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156501 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-09Now the proper fix for r156497. Sorry for the churn.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156498 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-09Move the iOSVersionMin string to a header so as to avoid a dangling pointer.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156497 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-09[driver] Use the iOS target triple to infer the deployment target.Chad Rosier
rdar://11409204 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156489 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-09Ignore a "generic" return value from getHostCPUName. <rdar://problem/11314502>Bob Wilson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156487 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-08add -fbounds-checking option.Nuno Lopes
When enabled, clang generates bounds checks for array and pointers dereferences. Work to follow in LLVM's backend. OK'ed by Chad; thanks for the review. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156431 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-04StringRefize code because we're good even when we crash.Chad Rosier
Patch by Jordy Rose. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156172 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-04Fix -Wlarge-by-value-copy option handling in the driver.Jean-Daniel Dupas
CC1 supports only the joined format. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156161 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-04This patch adds a new Clang compiler flag "-gline-tables-only".Alexey Samsonov
It reduces the amount of emitted debug information: 1) DIEs in .debug_info have types DW_TAG_compile_unit, DW_TAG_subprogram, DW_TAG_inlined_subroutine (for opt builds) and DW_TAG_lexical_block only. 2) .debug_str contains only function names. 3) No debug data for types/namespaces/variables is emitted. 4) The data in .debug_line is enough to produce valid stack traces with function names and line numbers. Reviewed by Eric Christopher. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156160 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-04Remove obsolete code for finding a fallback iOS SDK. <rdar://problem/11378535>Bob Wilson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156149 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-03[driver - crash diagnostics] Convert the flags back to an array of strings ↵Chad Rosier
and use array_lengthof. Also, append the new filename with correct preprocessed suffix. Last part of rdar://11285725 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156117 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-03Use array_lengthof instead of sizeof trickery.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156104 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-03[driver - crash diagnostics] Only write the failing command in the script.Chad Rosier
Part of rdar://11285725 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156096 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-03Canonicalize loop.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156093 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-03[driver crash diagnostics] Remove more flags that reference absolute paths thatChad Rosier
aren't necessary to reproduce the clang crash. Part of rdar://11285725 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156079 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-03Rip out old code for finding libraries in GCC's directories.Bob Wilson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156058 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-02Driver: Turn the default value for -fmath-errno into a proper target hook ↵Benjamin Kramer
and disable it by default on more platforms. For now -fno-math-errno is the default on BSD-derived platforms (Darwin, DragonFlyBSD, FreeBSD, NetBSD, OpenBSD). If the default is not right for your platform, please yell. I only verified the result with the default compilers on Darwin and FreeBSD. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155990 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-02Fix forwarding of -fpack-struct from driver to CC1, and add a test.James Molloy
-fpack-struct's handling has changed in CC1 (one of only two flags that needed changing) because the driver treats "-fpack-struct" as a boolean flag, and CC1 (did) treat it as an option with a separated value. This change causes -fpack-struct=X to be forwarded correctly to -fpack-struct=X instead of erroneously to "-fpack-struct X" git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155981 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-02Speculatively fix windows cmake builders.Andrew Trick
Really just a wild stab in the dark. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155974 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-01Unify Options.td and CC1Options.td, in a first step towards unifying the ↵James Molloy
serialization logic in Frontend and Driver. Reviewed by Eric, Doug and Chandler, and here: http://llvm.org/reviews/r/7/ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155916 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-30Add support for openSUSE 12.2, from Ismail Donmez!Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155860 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-27[driver] Don't try to set the deployment target when there is no boundChad Rosier
architecture; this was happening for tools such as lipo and dsymutil. Also, if no -arch option has been specified, set the architecture based on the TC default. rdar://11329656 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155730 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-27Fix logic such that we only call getToolChain once. No functional changeChad Rosier
intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155719 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-27Remove redundant calls to BAA->getArchName(). No functional changeChad Rosier
intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155718 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-27Revert 155679; Not a typo.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155708 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-27Typo.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155679 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-26MIPS: Add support for 64-bit MIPS targets: mips64 / mips64el.Simon Atanasyan
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155656 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-26Fix a long-standing bug where Clang had a different default from GCC onChandler Carruth
Linux and other (non-Darwin) platforms and have it use -fmath-errno by default (for better or worse). Darwin has seen the light here and uses -fno-math-errno by default, this patch preserves that. If any maintainers for a non-Linux platform would also like to opt-in to -fno-math-errno by default, I'm happy to add folks, but we're currently getting buts and misleading comparisons with GCC due to this difference in behavior on Linux at least. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155607 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-25Clang driver support for linking on Android.Evgeniy Stepanov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155541 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-25Fix default cpu for -march=armv5e.Evgeniy Stepanov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155540 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-24Only pass -mcpu, -march, -mfpu to linux-as on ARM.Evgeniy Stepanov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155431 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23Revert r155363, due to the underlying patches in LLVM causing regressionChandler Carruth
test suite failures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155371 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23Hexagon V5 (floating point) support in cfe.Sirish Pande
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155363 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-21Link with Foundation whenever -fobjc-link-runtime is used. <rdar://10976177>Bob Wilson
The check for excluding libarclite on i386 MacOSX should not apply to Foundation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155263 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-20In r135308, -save-temps was modified to prevent a temporary file fromChad Rosier
overwriting the input file. For example, clang -c foo.s -o foo.o -save-temps Unfortunately, the original patch didn't compare the paths of the input and output files. Thus, something like the following would fail to create foo.s. cd /tmp/obj clang -c ../src/foo.s -o foo.o -save-temps rdar://11252615 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155224 91177308-0d34-0410-b5e6-96231b3b80d8