aboutsummaryrefslogtreecommitdiff
path: root/test/Driver
AgeCommit message (Collapse)Author
2013-04-25Add "-no-canonical-prefixes" to a test case.Richard Trieu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180239 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-24[driver] Test that last option wins between -Ofast and -O2.Chad Rosier
Part of rdar://13622687 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180207 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-24[driver] Put -fvectorize under the -Ofast umbrella flag.Chad Rosier
Part of rdar://13622687 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180206 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-24[driver] Improve the implementation of the -Ofast option.Chad Rosier
Specifically, allow the flags that fall under this umbrella (i.e., -O3, -ffast-math, and -fstrict-aliasing) to be overridden/disabled with the individual -O[0|1|2|s|z]/-fno- flags. This also fixes the handling of various floating point optimization flags that are modified by -ffast-math (and thus -Ofast as well). Part of rdar://13622687 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180204 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-22[Mips] Remove "REQUIRES: mips-registered-target" from some MIPS-relatedSimon Atanasyan
driver tests. These tests check the driver only and do not require mips target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180042 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-21[Mips] Convert a GNU style Mips ABI name to the name accepted by LLVMSimon Atanasyan
Mips backend. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179981 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-21[Mips] Do not add unnecessary Mips toolchain path to the listSimon Atanasyan
of system include directories with extern "C" semantics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179979 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-20Supports Sourcery CodeBench Mips toolchain directories tree.Simon Atanasyan
Sourcery CodeBench and modern FSF Mips toolchains require a bit more complicated algorithm to calculate headers, libraries and sysroot paths than implemented by Clang driver now. The main problem is that all these paths depend on a set of command line arguments additionally to a target triple value. For example, let $TC is a toolchain installation directory. If we compile big-endian 32-bit mips code, crtbegin.o is in the $TC/lib/gcc/mips-linux-gnu/4.7.2 folder and the toolchain's linker requires --sysroot=$TC/mips-linux-gnu/libc argument. If we compile little-endian 32-bit soft-float mips code, crtbegin.o is in the $TC/lib/gcc/mips-linux-gnu/4.7.2/soft-float/el folder and the toolchain's linker requires --sysroot=$TC/mips-linux-gnu/libc/soft-float/el argument. 1. Calculate MultiarchSuffix using all necessary command line options and use this MultiarchSuffix to detect crtbegin.o location in the GCCInstallationDetector::ScanLibDirForGCCTriple() routine. 2. If a user does not provide --sysroot argument to the driver explicitly, calculate new sysroot value based on command line options. Then use this calculated sysroot path: a. To populate a file search paths list in the Linux::Linux() constructor. b. To find Mips toolchain specific include headers directories in the Linux::AddClangSystemIncludeArgs() routine. c. To provide -–sysroot argument for a linker. Note: - The FSF's tree slightly differs (folder names) and is not supported yet. - New addExternCSystemIncludeIfExits() routine is a temporary solution. I plan to move path existence check to the addExternCSystemInclude() routine by a separate commit. The patch reviewed by Rafael Espindola. http://llvm-reviews.chandlerc.com/D644 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179934 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-17Add support for gcc's spelling of -fcolor-diagnostics.Nico Weber
See http://gcc.gnu.org/onlinedocs/gcc/Language-Independent-Options.html git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179728 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-16[Modules] Convert module specific -fno-modules-autolink into -fno-autolink.Daniel Dunbar
- There is no reason to have a modules specific flag for disabling autolinking. Instead, convert the existing flag into -fno-autolink (which should cover other autolinking code generation paths like #pragmas if and when we support them). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179612 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-16Use -emit-llvm for the following tests to stop them from failing for Hexagon:Jyotsna Verma
CodeGenCXX/vtable-debug-info.cpp Driver/objc++-cpp-output.mm Driver/objc-cpp-output.m git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179602 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-15Add a new flag -vectorize-slp-aggressive to enable Hals BB vectorizer.Nadav Rotem
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179507 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-15Rename the slp-vectorizer clang/llvm flags. No functionality change.Nadav Rotem
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179506 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-14[Mips] Support -mmicromips / -mno-micromips command line options.Simon Atanasyan
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179489 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-14Add driver support for fedora 18 on ARM.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179484 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-14[Mips] Remove "single" from the list of valid MIPS float ABI names. AddSimon Atanasyan
two new options –msingle-float and –mdouble-float. These options can be used simultaneously with float ABI selection options (-mfloat-abi, -mhard-float, -msoft-float). They mark whether a floating-point coprocessor supports double-precision operations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179481 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-13Simplify test so that it is more portable.Rafael Espindola
I have checked that the test still fails when the "|| !P.isRegularFile()" from the original patch is removed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179464 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-12Disable following tests for Hexagon:Jyotsna Verma
1) Driver/output-file-is-dir.c - Checks for object file which can't be created for Hexagon since assembler is unavailable. 2) PCH/cxx-typeid.cpp - 'typeinfo' include file is unavailable for Hexagon. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179385 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-11Flail at trying to appease various linuxy buildbots.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179338 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-11Fix the driver logic for recent versions of DragonFly.John McCall
Patch by John Marino. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179334 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-11Add a new -mimplicit-float option for symmetry with -mno-implicit-float.Bob Wilson
This new option is the default, but it is useful to have a flag to override -mno-implicit-float by putting -mimplicit-float later on the command line. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179309 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-11Hexagon: Remove -g option from the assembler command line.Jyotsna Verma
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179299 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-11FileCheck-ify more grep tests with quoted double quotesReid Kleckner
This required some tedious reordering to match clang's order. Presumably these ObjC tests were generated based on llvm-gcc's output ordering. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179282 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-10For split dwarf we should also run the objcopy action if we'reEric Christopher
just assembling a file and have passed the option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179218 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-10FileCheck-ify some clang grep tests that use double quotesReid Kleckner
The escaping interaction between Python and grep doesn't work on my system. This change fixes the tests for me. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179214 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-10Add testcases for -fparse-all-commentsDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179181 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-09One more follow-up to r179082 - parse PIC/PIE arguments even on platfroms ↵Alexey Samsonov
that force default PIC (like Darwin x86-64), otherwise specifying -fPIC will produce bogus unused argument warning git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179092 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-09Follow-up for r179082: more careful handling of ↵Alexey Samsonov
-f(no-)sanitize-address-zero-base-shadow on Android git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179089 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-09If the user requested a zero-base-shadow sanitizer, infer -pie and -fPIC ↵Peter Collingbourne
when appropriate. Differential Revision: http://llvm-reviews.chandlerc.com/D502 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179082 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-04Plumb through the -fsplit-stack option using the existing backendEric Christopher
support. Caveat: Other than the existing segmented stacks support, no claims are made of this working. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178744 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-03Test Hexagon tool-chain when configured as OSless target.Jyotsna Verma
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178669 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-03Move this file into the correct directory.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178607 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-01Fix typo in testMatt Beaumont-Gay
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178510 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-01R600: Handle -mcpu option v3Tom Stellard
v2: - Add a test case v3: - Use the -### clang option in the tests git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178499 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-30Add support for gcc-compatible -mfprnd -mno-fprnd PPC optionsHal Finkel
gcc provides -mfprnd and -mno-fprnd for controlling the fprnd target feature; support these options as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178414 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-28Add support for gcc-compatible -mpopcntd -mno-popcntd PPC optionsHal Finkel
gcc provides -mpopcntd and -mno-popcntd for controlling the popcntd target feature; support these options as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178235 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-28[Mips] Handle pseudo-target flags '-EL' and '-EB' and properly adjustSimon Atanasyan
toolchain flags for MIPS targets. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178232 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-28Add support for gcc-compatible -mmfcrf -mno-mfcrf PPC optionsHal Finkel
gcc provides -mmfcrf and -mno-mfcrf for controlling what we call the mfocrf target feature. Also, PPC is now making use of the static function AddTargetFeature used by the Mips Driver code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178227 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-24Reject -no-integrated-as on windows.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177840 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-24Don't actually invoke codegen in driver test.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177838 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-23Revert svn r176894 and r177658.Bob Wilson
Changing -ccc-install-dir to affect cc1's resource-dir setting broke our internal LNT tests. After discussing the situation with Jim, we've decided to pursue an alternate approach. We really want the resource-dir to be located relative to clang, even when using -ccc-install-dir, but we're going to add a fallback setting for the libc++ headers if they don't exist alongside the compiler. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177815 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-23If a .syms file is available alongside a sanitizer runtime, pass it to theRichard Smith
linker via --dynamic-list instead of using --export-dynamic. This reduces the size of the dynamic symbol table, and thus of the binary (in some cases by up to ~30%). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177783 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-21This ugly regex is required because on Windows, the paths come out as \\ ↵Aaron Ballman
delimited instead of / delimited. Fixes a test breakage since r176894. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177658 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-20Split ubsan runtime into three pieces (clang part):Richard Smith
* libclang_rt-san-* is sanitizer_common, and is linked in only if no other sanitizer runtime is present. * libclang_rt-ubsan-* is the piece of the runtime which doesn't depend on a C++ ABI library, and is always linked in. * libclang_rt-ubsan_cxx-* is the piece of the runtime which depends on a C++ ABI library, and is only linked in when linking a C++ binary. This change also switches us to using -whole-archive for the ubsan runtime (which is made possible by the above split), and switches us to only linking the sanitizer runtime into the main binary and not into DSOs (which is made possible by using -whole-archive). The motivation for this is to only link a single copy of sanitizer_common into any binary. This is becoming important now because we want to share more state between multiple sanitizers in the same process (for instance, we want a single shared output mutex). The Darwin ubsan runtime is unchanged; because we use a DSO there, we don't need this complexity. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177605 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-20Fix redundant comparison in gcc::Common::ConstructJob.Hans Wennborg
We were checking "Arch == llvm::Triple::x86_64 || Arch == llvm::Triple::x86_64", but the rhs should actually check for powerpc64. Found while experimenting with a potential new Clang warning. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177496 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-19Go back to using the integrated assembler on windows ever when passedRafael Espindola
-no-integrated-as. It is the only assembler we have there. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177398 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-19[ASan] Make -fsanitize=address always imply -fsanitize=init-orderAlexey Samsonov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177391 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-18Make sure to use same EABI version for external assembler as for integrated as.Anton Korobeynikov
Patch by Andrew Turner! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177252 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-14[ASan] Make -fsanitize=address imply -fsanitize=init-order (if the latter is ↵Alexey Samsonov
not explicitly disabled). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177061 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-12Make modules.m test portable, now that autolinking is dependent on whether ↵Ted Kremenek
or not the target uses the integrated assembler. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176902 91177308-0d34-0410-b5e6-96231b3b80d8