aboutsummaryrefslogtreecommitdiff
path: root/test/Driver
AgeCommit message (Collapse)Author
2012-05-09Update test case for new default of 3.0Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156493 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-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-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-03Test case Clang::Driver/debug-options-as.c depends on the integrated ↵Simon Atanasyan
assembler. Turn it on explicitly on all platforms by the "-integrated-as" option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156063 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-01Revert r155874.Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155878 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-01Move a non portable test to FileCheck, from Jonathan Gray!Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155874 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-27test/Driver/fast-math.c: Mark this as XFAIL:cygming. They use gcc driver for as.NAKAMURA Takumi
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155691 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-26MIPS: Add tests to check the debian multiarch stuff for mips and mipsel targets.Simon Atanasyan
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155628 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-25Make asan-ld test windows-safe.Evgeniy Stepanov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155543 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-23Add a test for svn r155263.Bob Wilson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155353 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-20Pass -mfloat-abi= to linuxtools assembler.Evgeniy Stepanov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155191 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-10Pass -march, -mcpu, -mfpu to linuxtools assembler.Evgeniy Stepanov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154389 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-10Fix the testcase :-(Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154363 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-09Fix an annoying little bug I found while debugging another LTO issue. GoldRafael Espindola
requires the -plugin to come before any -plugin-opt options, we were passing them the other way around. With this one can run (for example): clang -o foo foo.c -O4 -Wl,-plugin-opt=generate-api-file git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154357 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-09Author: Daniel Dunbar <daniel@zuster.org>Daniel Dunbar
--- log message follows this test --- [tests] Fixup some tests to work in "CLANG_IS_PRODUCTION" mode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154342 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-09objective-c: remove -fobjc-default-synthesize-properties from the driver.Fariborz Jahanian
cc1 option remains though to invoke default property synthesis. // rdar://11209719 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154334 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-09objective-c: Remove -fno-objc-default-synthesize-propertiesFariborz Jahanian
as the driver option. // rdar://11209719 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154331 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-08Teach Clang about PIE compilations. This is the first step of PR12380.Chandler Carruth
First, this patch cleans up the parsing of the PIC and PIE family of options in the driver. The existing logic failed to claim arguments all over the place resulting in kludges that marked the options as unused. Instead actually walk all of the arguments and claim them properly. We now treat -f{,no-}{pic,PIC,pie,PIE} as a single set, accepting the last one on the commandline. Previously there were lots of ordering bugs that could creep in due to the nature of the parsing. Let me know if folks would like weird things such as "-fPIE -fno-pic" to turn on PIE, but disable full PIC. This doesn't make any sense to me, but we could in theory support it. Options that seem to have intentional "trump" status (-static, -mkernel, etc) continue to do so and are commented as such. Next, a -pie-level flag is threaded into the frontend, rigged to a language option, and handled preprocessor, setting up the appropriate defines. We'll now have the correct defines when compiling with -fpie. The one place outside of the preprocessor that was inspecting the PIC level (as opposed to the relocation model, which is set and handled separately, yay!) is in the GNU ObjC runtime. I changed it to exactly preserve existing behavior. If folks want to change its behavior in the face of PIE, they can do that in a separate patch. Essentially the only functionality changed here is the preprocessor defines and bug-fixes to the argument management. Tests have been updated and extended to test all of this a bit more thoroughly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154291 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-07MIPS: Pass -mabi option to the assmbler when compile MIPS targets.Simon Atanasyan
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154270 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-07[driver] In general, the driver claims redundant args and uses the last arg.Chad Rosier
However, the '-x' option has special handling and wasn't following this paradigm. Fix it to do so by claiming the arg as we parse the '-x' option. rdar://11203340 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154231 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-06MIPS: Provide a correct path to the dynamic linker when build for MIPS ↵Simon Atanasyan
64-bit targets. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154200 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-06MIPS: Pass -EB/-EL argument to the assembler according to selected endian ↵Simon Atanasyan
when compile for MIPS targets. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154195 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-06MIPS: Move tests check float ABI macros definitions to the more appropriate ↵Simon Atanasyan
place. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154184 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-06Fix using Clang as a cross compiler installed on a host machine and notChandler Carruth
inside of a sysroot targeting a system+sysroot which is "similar" or "compatible" with the host system. This shows up when trying to build system images on largely compatible hardware as-if fully cross compiled. The problem is that previously we *perfectly* mimiced GCC here, and it turns out GCC has a bug that no one has really stumbled across. GCC will try to look in thy system prefix ('/usr/local' f.ex.) into which it is instaled to find libraries installed along side GCC that should be preferred to the base system libraries ('/usr' f.ex.). This seems not unreasonable, but it has a very unfortunate consequence when combined with a '--sysroot' which does *not* contain the GCC installation we're using to complete the toolchain. That results in some of the host system's library directories being searched during the link. Now, it so happens that most folks doing stuff like this use '--with-sysroot' and '--disable-multilib' when configuring GCC. Even better, they're usually not cross-compiling to a target that is similar to the host. As a result, searching the host for libraries doesn't really matter -- most of the time weird directories get appended that don't exist (no arm triple lib directory, etc). Even if you're cross-compiling from 32-bit to 64-bit x86 or vice-versa, disabling multilib makes it less likely that you'll actually find viable libraries on the host. But that's just luck. We shouldn't rely on this, and this patch disables looking in the system prefix containing the GCC installation if that system prefix is *outside* of the sysroot. For empty sysroots, this has no effect. Similarly, when using the GCC *inside* of the sysroot, we still track wherever it is installed within the sysroot and look there for libraries. But now we can use a cross compiler GCC installation outside the system root, and only look for the crtbegin.o in the GCC installation, and look for all the other libraries inside the system root. This should fix PR12478, allowing Clang to be used when building a ChromiumOS image without polluting the image with libraries from the host system. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154176 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-04Honor -fno-pic, -fno-PIC, -fno-pie, -fno-PIE.Nico Weber
Review at http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20120402/055759.html git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154064 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-04[driver] When using the -mfpmath= option, add an error message when trying to Chad Rosier
enable neonfp on a CPU that doesn't support NEON. rdar://11108618 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154061 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-04[driver] Create a new -mfpmath= option, which is used to control whether clangChad Rosier
uses Neon instructions for single-precision FP. -mfpmath=neon is analogous to passing llc -mattr=+neonfp. -mfpmath=[vfp|vfp2|vfp3|vfp4] is analogous to passing llc -mattr=-neonfp. rdar://11108618 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154046 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-04modern objc translator. Add moreFariborz Jahanian
rewriter specific option to cc1 with -rewrite-objc. // rdar://11143173 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154037 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-04Simplify test a bit now that it's not actually running cc1plus.Bob Wilson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154018 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-04Don't actually execute gcc during testing.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154005 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-04Add a testcase for svn r153854.Bob Wilson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154001 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-02Use -rewrite-legacy-objc as clang argument for translating Fariborz Jahanian
objective-c's fragile abi, Use -rewrite-objc for translating objective-c's modern abi. // rdar://11143173 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153877 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-29Define __LITTLE_ENDIAN__ for le32, since "le" stands for little endian.Jan Wen Voung
Add a test for this too. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153616 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-26[driver] Put -cpp-precomp and -no-cpp-precomp under the clang_ignored_f_group.Chad Rosier
We don't currently support these options. rdar://11120518 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153485 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-26[driver] Testcase for r153469, r153470, and r153478.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153481 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-26Test case for r153348.Akira Hatanaka
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153449 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-25test/Driver/cpath.c: Escape a few args that contain %{pathsep}.NAKAMURA Takumi
On msys bash, with %pathsep==os.pathsep==';', I can see lines like below in this script; env DIR=X:/foo%{pathsep}X:/bar Then it is expanded to; env DIR=X:/foo;X:/bar It should be with quote; env "DIR=X:/foo;X:/bar" git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153402 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-21Try to get cpath.c passing on windows, using lit's new ${pathsep} variable.Nico Weber
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153214 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-19test/Driver/cpath.c: Mark this as XFAIL:mingw32,win32 for now.NAKAMURA Takumi
On Win32 hosts, ';' is used for path separator. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153037 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-19Fix a regression where ':' in CPLUS_INCLUDE_PATH and friends would no longer ↵Nico Weber
separate paths. This regressed in r152583. Also add a test to make sure it doesn't regress again. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153034 91177308-0d34-0410-b5e6-96231b3b80d8