summaryrefslogtreecommitdiffstats
path: root/clang/test/Driver/Inputs
Commit message (Collapse)AuthorAgeFilesLines
...
* [CUDA] Added CUDA installation detector class.Artem Belevich2015-09-234-0/+0
| | | | | | | | | | | Added new option --cuda-path=<path> which allows overriding default search paths. If it's not specified we look for CUDA installation in /usr/include/cuda and /usr/include/cuda-7.0. Differential Revision: http://reviews.llvm.org/D12989 llvm-svn: 248433
* Reverted r248408 "[CUDA] Added CUDA installation detector class."Artem Belevich2015-09-234-0/+0
| | | | | | because included test fails on some platforms. llvm-svn: 248413
* [CUDA] Added CUDA installation detector class.Artem Belevich2015-09-234-0/+0
| | | | | | | | | | | Added new option --cuda-path=<path> which allows overriding default search paths. If it's not specified we look for CUDA installation in /usr/include/cuda and /usr/include/cuda-7.0. Differential Revision: http://reviews.llvm.org/D12989 llvm-svn: 248408
* [Shave]: Drive sparc-myriad-elf-ld directly rather than via gcc.Douglas Katzman2015-09-171-0/+0
| | | | | | Differential Revision: http://reviews.llvm.org/D12541 llvm-svn: 247924
* Do not include default sanitizer blacklists into -M/-MM/-MD/-MMD output.Ivan Krasin2015-09-021-0/+0
| | | | | | | | | | | | | | | | | Summary: Do not include default sanitizer blacklists into -M/-MM/-MD/-MMD output. Introduce a frontend option -fdepfile-entry, and only insert them for the user-defined sanitizer blacklists. In frontend, grab ExtraDeps from -fdepfile-entry, instead of -fsanitize-blacklist. Reviewers: rsmith, pcc Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D12544 llvm-svn: 246700
* Stop hardcoding GCC paths in crt/ld.so lookup.Rafael Espindola2015-08-316-0/+0
| | | | | | | | | | This patch refactors the code to use the GCC installation detector (modified so that it works in Solaris), and uses ToolChain::GetFilePath everywhere once it works. Patch by Xan López <xan@igalia.com>! llvm-svn: 246473
* Revert "broken test. uses system ld.gold"Derek Schuff2015-08-242-0/+0
| | | | | | We should check in a basic_nacl_tree that works and also fix --sysroot llvm-svn: 245910
* broken test. uses system ld.goldDerek Schuff2015-08-242-0/+0
| | | | llvm-svn: 245909
* Driver: Fix include directories when not using libgcc under mingwMartell Malone2015-08-132-0/+0
| | | | | | | | | | | | | | | Summary: When we want to use mingw-w64 and clang with compiler-rt we should not need to have libgcc installed. This fixes finding includes when libgcc is not installed Reviewers: yaron.keren Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D11808 llvm-svn: 244902
* Add extensive tests for the mingw toolchain and remove trailing slash from Arch.Yaron Keren2015-07-2427-0/+0
| | | | | | | | Address Richard Smith comments: remove the trailing seperator from the Arch variable, implement six mingw_* trees under tools/clangtest/Driver/Inputs and merge linux and Windows tests into a universal test that uses these trees. llvm-svn: 243098
* [PPC]: Fix bug in getMultiarchTriple.Douglas Katzman2015-06-263-0/+0
| | | | | | | | And generally prefer not to restate TargetTriple.str() over and over. Differential Revision: http://reviews.llvm.org/D10605 llvm-svn: 240808
* [SPARC] Add multiarch include paths.James Y Knight2015-06-0523-0/+0
| | | | | | | | | | | Adds tests verifying the proper dirs are found in the Debian 8/GCC4.9 layout for sparc (32bit), sparc (32bit) with lib64 multilib, and sparc64. The test cases added here also cover r239047, which fixed the linker paths. llvm-svn: 239154
* Introduce tsan_cxx and msan_cxx libraries (Clang part).Alexey Samsonov2015-04-272-0/+0
| | | | | | | | For now tsan_cxx and msan_cxx contain only operator new/delete replacements. In the future, when we add support for running UBSan+TSan and UBSan+MSan, they will also contain bits ubsan_cxx runtime. llvm-svn: 235924
* [Mips] Support mips-r6 path suffix for Adnroid MIPS toolchainSimon Atanasyan2015-02-255-0/+0
| | | | | | | This path suffix is used if user provides the -mips32r6 command line options. llvm-svn: 230469
* test: attempt to make test more hermeticSaleem Abdulrasool2014-10-251-0/+0
| | | | | | | | Add a fake linker in to a sysroot to use for testing the driver's tool invocation. Should make the test behave similarly on all platforms. Addresses review comments from Reid Kleckner from SVN r220546. llvm-svn: 220625
* Teach Clang how to use response files when calling other toolsReid Kleckner2014-09-151-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Patch by Rafael Auler! This patch addresses PR15171 and teaches Clang how to call other tools with response files, when the command line exceeds system limits. This is a problem for Windows systems, whose maximum command-line length is 32kb. I introduce the concept of "response file support" for each Tool object. A given Tool may have full support for response files (e.g. MSVC's link.exe) or only support file names inside response files, but no flags (e.g. Apple's ld64, as commented in PR15171), or no support at all (the default case). Therefore, if you implement a toolchain in the clang driver and you want clang to be able to use response files in your tools, you must override a method (getReponseFileSupport()) to tell so. I designed it to support different kinds of tools and internationalisation needs: - VS response files ( UTF-16 ) - GNU tools ( uses system's current code page, windows' legacy intl. support, with escaped backslashes. On unix, fallback to UTF-8 ) - Clang itself ( UTF-16 on windows, UTF-8 on unix ) - ld64 response files ( only a limited file list, UTF-8 on unix ) With this design, I was able to test input file names with spaces and international characters for Windows. When the linker input is large enough, it creates a response file with the correct encoding. On a Mac, to test ld64, I temporarily changed Clang's behavior to always use response files regardless of the command size limit (avoiding using huge command line inputs). I tested clang with the LLVM test suite (compiling benchmarks) and it did fine. Test Plan: A LIT test that tests proper response files support. This is tricky, since, for Unix systems, we need a 2MB response file, otherwise Clang will simply use regular arguments instead of a response file. To do this, my LIT test generate the file on the fly by cloning many -DTEST parameters until we have a 2MB file. I found out that processing 2MB of arguments is pretty slow, it takes 1 minute using my notebook in a debug build, or 10s in a Release build. Therefore, I also added "REQUIRES: long_tests", so it will only run when the user wants to run long tests. In the full discussion in http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20130408/171463.html, Rafael Espindola discusses a proper way to test llvm::sys::argumentsFitWithinSystemLimits(), and, there, Chandler suggests to use 10 times the current system limit (20MB resp file), so we guarantee that the system will always use response file, even if a new linux comes up that can handle a few more bytes of arguments. However, by testing with a 20MB resp file, the test takes long 8 minutes just to perform a silly check to see if the driver will use a response file. I found it to be unreasonable. Thus, I discarded this approach and uses a 2MB response file, which should be enough. Reviewers: asl, rafael, silvas Reviewed By: silvas Subscribers: silvas, rnk, thakis, cfe-commits Differential Revision: http://reviews.llvm.org/D4897 llvm-svn: 217792
* Fix PR20773 which I introduced with a silly edit mistake in r216531.Chandler Carruth2014-08-272-0/+0
| | | | | | | Trivial fix, and I've made the gentoo tests more representative. With the changes, they would have caught this failure. llvm-svn: 216572
* Significantly fix Clang's header search for Ubuntu (and possibly otherChandler Carruth2014-08-2710-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | modern Debian-based distributions) due to on-going multiarch madness. It appears that when the multiarch heeader search support went into the clang driver, it went in in a quite bad state. The order of includes completely failed to match the order exhibited by GCC, and in a specific case -- when the GCC triple and the multiarch triple don't match as with i686-linux-gnu and i386-linux-gnu -- we would absolutely fail to find the libstdc++ target-specific header files. I assume that folks who have been using Clang on Ubuntu 32-bit systems have been applying weird patches to hack around this. I can't imagine how else it could have worked. This was originally reported by a 64-bit operating system user who had a 32-bit crosscompiler installed. We tried to use that rather than the bi-arch support of the 64-bit compiler, but failed due to the triple differences. I've corrected all the wrong orderings in the existing tests and added a specific test for the multiarch triple strings that are different in a significant way. This should significantly improve the usability of Clang when checked out vanilla from upstream onto Ubuntu machines with an i686 GCC installation for whatever reason. llvm-svn: 216531
* Fix PR17239 by changing the semantics of the RemainingArgsClass Option kindReid Kleckner2014-08-221-0/+4
| | | | | | | | | | | | | | | | | | | | | | | This patch aims at fixing PR17239. This bug happens because the /link (clang-cl.exe argument) is marked as "consume all remaining arguments". However, when inside a response file, /link should only consume all remaining arguments inside the response file where it is located, not the entire command line after expansion. The LLVM side of the patch will change the semantics of the RemainingArgsClass kind to always consume only until the end of the response file when the option originally came from a response file. There are only two options in this class: dash dash (--) and /link. This is the Clang side of the patch in http://reviews.llvm.org/D4899 Reviewered By: rafael, rnk Differential Revision: http://reviews.llvm.org/D4900 Patch by Rafael Auler! llvm-svn: 216281
* [Driver] Support -muclibc / -mglibc command line options for a coupleSimon Atanasyan2014-08-1392-0/+0
| | | | | | | | | | | | | of MIPS toolchains. The uCLibc implemented for multiple architectures. A couple of MIPS toolchains contains both uCLibc and glibc implementation so these options allow to select used C library. Initially -muclibc / -mglibc (as well as -mbionic) have been implemented in gcc for various architectures so they are not MIPS specific. llvm-svn: 215552
* For NetBSD, use the same settings for PPC64 as for PPC when it comes toJoerg Sonnenberger2014-08-131-0/+0
| | | | | | | integrated assembler, libc++ and libgcc. Set emulation for ld for both platforms for correct -m32 handling. llvm-svn: 215551
* Actually add the object file, skipped by the directory add.Joerg Sonnenberger2014-08-091-0/+0
| | | | llvm-svn: 215297
* [Driver][Mips] Remove "fp64" directories from the mips-mti-linux-gnu toolchainSimon Atanasyan2014-07-25214-0/+0
| | | | | | | directories description. Released version of this toolchain has not separate libraries for -mfp64 command line option. llvm-svn: 213937
* Add a test for wildcard expansion on WindowsHans Wennborg2014-07-162-0/+0
| | | | | | This depends on LLVM r213114 llvm-svn: 213115
* [x32] Adding X32 target support to driver, including ↵Zinovy Nis2014-07-1014-0/+0
| | | | | | | | | | TargetInfo,DescriptionString, flags, paths lookup, etc. Cover changes with new tests. The author of the patch is Pavel Chupin (@pavel.v.chupin). The changes enable "hello world" on x32 target (x86_64-*-linux-gnux32). s/isX32/IsX32/ also fixed. Differential Revision: http://reviews.llvm.org/D4180 llvm-svn: 212725
* [mips][mips64r6] Add support for mips-img-linux-gnu GCC toolchainsDaniel Sanders2014-07-1053-0/+0
| | | | | | | | | | | | | | Summary: * Support the multilib layout used by the mips-img-linux-gnu * Recognize mips{,64}{,el}-img-linux-gnu as being aliases of mips-img-linux-gnu * Use the correct dynamic linker for mips-img-linux-gnu * Make mips32r6/mips64r6 the default CPU for mips-img-linux-gnu Subscribers: mpf Differential Revision: http://reviews.llvm.org/D4436 llvm-svn: 212719
* Propset the executables for GetProgramPath().Logan Chien2014-06-268-0/+0
| | | | llvm-svn: 211786
* Implement the -fuse-ld= option.Logan Chien2014-06-268-0/+0
| | | | | | | | | | | | | | This commit implements the -fuse-ld= option, so that the user can specify -fuse-ld=bfd to use ld.bfd. This commit re-applies r194328 with some test case changes. It seems that r194328 was breaking macosx or mingw build because clang can't find ld.bfd or ld.gold in the given sysroot. We should use -B to specify the executable search path instead. Patch originally by David Chisnall. llvm-svn: 211785
* [Driver][Mips] Support mips64-linux-gnuabi64 / mips64el-linux-gnuabi64 ↵Simon Atanasyan2014-06-2417-0/+0
| | | | | | | | | target triples. The patch fixes the bug #19869. http://llvm.org/bugs/show_bug.cgi?id=19869 llvm-svn: 211619
* Driver: In crashdumps with -fmodule, dump the module dependenciesJustin Bogner2014-06-202-0/+5
| | | | llvm-svn: 211421
* Add file missed in r211360 commitUlrich Weigand2014-06-201-0/+0
| | | | llvm-svn: 211361
* [PowerPC] Fix ELF interpreter name for powerpc64le-linuxUlrich Weigand2014-06-203-0/+0
| | | | | | | | | | On PowerPC LE the system uses the /lib64/ld64.so.2 dynamic linker name instead of /lib64/ld64.so.1 (to indicate the ELFv2 ABI version). This fixes the clang driver to pass the appropriate -dynamic-linker setting, and adds some more tests to linux-ld.c. llvm-svn: 211360
* [PowerPC] Add MultiarchIncludeDirs for powerpc64leUlrich Weigand2014-06-204-0/+0
| | | | | | | | | | There was already partial support for multi-arch on powerpc64le, but the MultiarchIncludeDirs setting was missing. This patch adds the appropriate definition, and also extends the linux-header-search.cpp test case to verify an Ubuntu 14.04 powerpc64le tree. llvm-svn: 211359
* Make clang-cl accept .lib inputs (PR20065)Hans Wennborg2014-06-181-0/+0
| | | | | | | | | | Patch by Ehsan Akhgari! (Tiny tweak by me: renamed PathSegment to LibDir.) Differential Revision: http://reviews.llvm.org/D4192 llvm-svn: 211189
* [Driver] Do not lose already detected set of toolchain's multilibs whileSimon Atanasyan2014-05-126-0/+0
| | | | | | | | | | | | | | | | | iterating over different library path suffixes and different library versions. To find the most appropriate library for the given command line flags we iterate over a set of disk paths. Before probe each path the already detected set of multilibs are cleared. If the set of paths contains existing paths which do not satisfy command line flags or do not contain necessary libraries and object files at all we might lose found multilibs. The patch updates variables which hold detected multilibs if we really find a new multilib matches command line flags. The patch reviewed by Jon Roelofs. llvm-svn: 208523
* Add driver support for AArch64 Fedora.Tilmann Scheller2014-05-065-0/+0
| | | | | | Reviewed by Eric Christopher. llvm-svn: 208105
* clang-cl: /fallback only applies to C or C++ filesHans Wennborg2014-04-251-0/+0
| | | | | | We would previously hit an assert if using /fallback with an .ll file. llvm-svn: 207234
* Add missing test input for r206979.Logan Chien2014-04-235-0/+0
| | | | llvm-svn: 206992
* Add aarch64-linux-android triple for Android.Logan Chien2014-04-233-0/+0
| | | | llvm-svn: 206979
* Handle -m32 for NetBSD/sparc64 correctly. Extend test case to also checkJoerg Sonnenberger2014-04-166-0/+0
| | | | | | ARM, MIPS and i386 ABIs. llvm-svn: 206416
* [Mips] Check all MIPS toolchains to find the one that best meets commandSimon Atanasyan2014-03-0415-0/+0
| | | | | | | | | | line arguments and directories tree. The old toolchain selection heuristics worked incorrectly when user has a reduced MIPS toolchain supports the O32 ABI only. Patch reviewed by Jonathan Roelofs, David Majnemer. llvm-svn: 202873
* Macho-embedded: fix tests after last renameTim Northover2014-01-214-0/+0
| | | | | | Very sorry, I managed to completely forget "make check". llvm-svn: 199739
* Add the test trees that were supposed to be part of r199632.Chandler Carruth2014-01-203-0/+0
| | | | llvm-svn: 199633
* Darwin-embedded: find correct libclang_rt for embedded targets.Tim Northover2013-12-124-0/+0
| | | | | | | | | | | | This refactors some of the Darwin toolchain classification to give a more solid distinction between the three primary Darwin platforms (OS X, IOS and IOS simulator) so that a 4th choice can be added temporarily: embedded MachO targets. Longer term, this support will be factored out into a separate class and no longer classified as "darwin-eabi", but the refactoring should still be useful. llvm-svn: 197148
* [Mips] Add support for nan2008 libraries and headers look up for CodeSimon Atanasyan2013-11-2614-0/+0
| | | | | | Sourcery MIPS toolchain. llvm-svn: 195753
* [Mips] Take in account the -mfp64 command line option when build pathsSimon Atanasyan2013-11-20214-0/+0
| | | | | | to the crt*.o files, libraries and headers for the MIPS FSFS toolchain. llvm-svn: 195249
* Ignore test Inputs globally and remove redundant lit.local.cfg filesAlp Toker2013-11-151-1/+0
| | | | | | | | | | By adding a default config.excludes pattern we can avoid individual suppressions in subdirectories. This matches LLVM's lit.cfg which also excludes a few other common non-test filenames for consistency. llvm-svn: 194814
* Add -fprofile-sample-use to Clang's driver.Diego Novillo2013-11-131-0/+0
| | | | | | | | This adds a new option -fprofile-sample-use=filename to Clang. It tells the driver to schedule the SampleProfileLoader pass and passes on the name of the profile file to use. llvm-svn: 194567
* This reverts commit r194330, r194329 and r194328.Rafael Espindola2013-11-092-0/+0
| | | | | | The test was still failing on OS X and mingw. llvm-svn: 194334
* Add support for -fuse-ld=.David Chisnall2013-11-092-0/+0
| | | | llvm-svn: 194328
OpenPOWER on IntegriCloud