ef8225444452a1486bd721f3285301fe84643b00 |
|
21-Jul-2014 |
Stephen Hines <srhines@google.com> |
Update Clang for rebase to r212749. This also fixes a small issue with arm_neon.h not being generated always. Includes a cherry-pick of: r213450 - fixes mac-specific header issue r213126 - removes a default -Bsymbolic on Android Change-Id: I2a790a0f5d3b2aab11de596fc3a74e7cbc99081d
/external/clang/lib/Driver/ToolChains.h
|
6bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89 |
|
29-May-2014 |
Stephen Hines <srhines@google.com> |
Update Clang for 3.5 rebase (r209713). Change-Id: I8c9133b0f8f776dc915f270b60f94962e771bc83
/external/clang/lib/Driver/ToolChains.h
|
651f13cea278ec967336033dd032faef0e9fc2ec |
|
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Updated to Clang 3.5a. Change-Id: I8127eb568f674c2e72635b639a3295381fe8af82
/external/clang/lib/Driver/ToolChains.h
|
2dcdc5beed983fb95617a9449fd7420bd7fd7753 |
|
17-Nov-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove two unused #ifdefs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194983 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
db33419ecf2c608f1024366364fe64220ec4a057 |
|
10-Nov-2013 |
Roman Divacky <rdivacky@freebsd.org> |
Add gold plugin support to the FreeBSD link driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194350 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
1cc766fb3e62fedc5d99b103bcd0ec4aa3146859 |
|
09-Nov-2013 |
David Chisnall <csdavec@swan.ac.uk> |
Commit the changes to make libc++ the default on FreeBSD >= 10, rather than just the test... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194333 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
f4ad5adac038bf0ecddd5111485d47e8756e2b15 |
|
29-Oct-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Clean up the deeply misleading name of the "MultiLibSuffix". This is actually a MIPS-only hack to shim in random ABI directory suffixes in numerous places throughout the toolchain's path search. It shouldn't appear to be anything more general or useful. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193595 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
4e490e271ce3f0d4289b5115e000b55333c1b829 |
|
11-Oct-2013 |
Robert Lytton <robert@xmos.com> |
XCore target: add an xcore toolchain implementation git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192437 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
4e30cdf93fec46a6ceb326e57ceb46ad7e9c2c6c |
|
10-Oct-2013 |
Simon Atanasyan <simon@atanasyan.com> |
[Mips] Support FSF Mips toolchain directories tree in the Clang driver. The patch reviewed by Rafael Espindola. http://llvm-reviews.chandlerc.com/D1843 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192343 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
ab5df7503abd0df6b815d11ebf271fa7650d83ae |
|
05-Oct-2013 |
Simon Atanasyan <simon@atanasyan.com> |
Remove unused param from Linux::computeSysRoot(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192034 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
5c805e92a5f70a913bc3bfcd15c44875974c2111 |
|
28-Sep-2013 |
Simon Atanasyan <simon@atanasyan.com> |
Separate construction of bi-arch path suffix from construction of multi-library path suffix. The code calculates MIPS toolchain specific multi-lib path suffixes like mips16/soft-float/el is moved to the separate function findMultiLibSuffix(). This function called during GCC installation detection and result is stored for the future using. The patch reviewed by Rafael Espindola. http://llvm-reviews.chandlerc.com/D1738 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191612 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
0affc67389171834adf113e3a0422a32218a6192 |
|
26-Aug-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Teach the Linux toolchain about more modern Gentoo installations of GCC which add another wrinkle to the installation of the libstdc++ headers. Add at least some basic testing of the weirdnesses of Gentoo's layout. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189212 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
1b8f12d46c10169bb949372ec5fc4c58afc2ced1 |
|
19-Aug-2013 |
Alexey Samsonov <samsonov@google.com> |
Move SanitizerArgs to the clang Driver Summary: This change turns SanitizerArgs into high-level options stored in the Driver, which are parsed lazily. This fixes an issue of multiple copies of the same diagnostic message produced by sanitizer arguments parser. Reviewers: rsmith Reviewed By: rsmith CC: chandlerc, eugenis, cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1341 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188660 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
ba7fd42d78f67d085f90c307a013dc37ef8e791a |
|
15-Aug-2013 |
Joerg Sonnenberger <joerg@bec.de> |
Build unwind tables by default on NetBSD. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188463 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
14605ff6affc04191a0064f688c56082b1c93791 |
|
15-Aug-2013 |
Joerg Sonnenberger <joerg@bec.de> |
Use the integrated assembler on NetBSD/powerpc by default. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188462 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
f15b26cf378ac4706a861444fccb177f6116087e |
|
14-Aug-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Enhance the clang -v gcc debug printing to skip obviously bad and duplicate paths. Otherwise it lists all files (e.g. shared libraries) that happen to be in the same paths the GCC installations usually reside in. On a x86_64 Debian 7 system with i386 multilibs. before: clang -v 2>&1|wc -l 3059 after: clang -v 2>&1|wc -l 10 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188400 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
ed5f28fd8bdb0ea39a28f4ade6b3ab57f0c8f780 |
|
09-Aug-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add a convenient way to compare GCCVersions without creating temporary objects. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188084 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
6365ab91a0cf2f20c73ea9c39b55c14ab438018e |
|
30-Jul-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Start keeping track of what work was done to detect a GCC installation on the system, and report it when running the driver in verbose mode. Without this it is essentially impossible to understand why a particular GCC toolchain is used by Clang for libstdc++, libgcc, etc. This also required threading a hook through the toolchain layers for a specific toolchain implementation to print custom information under 'clang -v'. The naming here isn't spectacular. Suggestions welcome. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187427 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
d79486a19298af172dfa085d536e178e7b5ff20b |
|
22-Jun-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Reword and reformat some of the "Multiarch" code in the toolchain setup. There are fundamentally two different things that were getting conflated here. 1) A bi-arch GCC toolchain install. This is not a full blown cross compiler, but it supports targetting both 32-bit and 64-bit variants of the same architecture using multilib OS installs and runtimes. 2) A "multiarch" Debian OS/runtime layout that lays out the libraries, headers, etc as-if there were going to be a full blown cross compiler even when in reality it is just a bi-arch GCC targeting two variants. Also, these tend to use oddly "canonicalized" triples without the vendor in them unlike the typical cross compiler runtime library search that vanilla GCC cross compilers perform. Now, when we mean the bi-arch nature of GCC accomplished with just a suffix or tweak to the GCC paths, we say 'Biarch' or something related. When we mean the Debian layout of includes and libraries, we say multiarch or reference the multiarch triple. In the process of reading and often renaming stuff in all these places, also reformat with clang-format. No functionality change should be going on here, this is just tidying up. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184632 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
dd0b3c4c72464af92e2c27dd5a67e29f91ba7b28 |
|
17-Jun-2013 |
Reid Kleckner <reid@kleckner.net> |
[Driver] Remove the using namespace directives from headers This adds a bunch of llvm::opt name specifiers to all the uses of types from that namespace. Reviewers: espindola Differential Revision: http://llvm-reviews.chandlerc.com/D983 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184079 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
a265461d113ced2e6f0db684ed6f6cb0c66c0f24 |
|
11-Jun-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Try to fix the windows build. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183783 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
9adba39460dfa5282b75dbd27db44ccfb4d1f511 |
|
05-Jun-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Default to PIE and using stack protection on OpenBSD. Patch by Matthew Dempsky. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183295 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
a7efaf99ac662af11890aae74d84da8d31ab2fe0 |
|
30-Apr-2013 |
Joerg Sonnenberger <joerg@bec.de> |
Add support for -stdlib=libc++ in the NetBSD toolchain. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180766 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
8e8e95c57c310bbc52cdc8d32df23c95afc77916 |
|
20-Apr-2013 |
Simon Atanasyan <simon@atanasyan.com> |
Supports Sourcery CodeBench Mips toolchain directories tree. 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
/external/clang/lib/Driver/ToolChains.h
|
52ca70dc304c694923ac804630d88b1d95bfa941 |
|
09-Apr-2013 |
Peter Collingbourne <peter@pcc.me.uk> |
If the user requested a zero-base-shadow sanitizer, infer -pie and -fPIC 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
/external/clang/lib/Driver/ToolChains.h
|
f48b93cb2054e83e43ca4391b8ec70be89fa2e30 |
|
20-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove the Tools DensMap from the toolchain. Each toolchain has a set of tools, but they are all of known types. It can have a linker, an assembler, a "clang" (compile, analyze, ...) a non-clang compiler, etc. Instead of keeping a map, just have member variable for each type of tool. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177479 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
c0a55d12caff98504eace18b553bb111160a8131 |
|
19-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Finish refactoring the tool selection logic. The general pattern now is that Foobar::constructTool only creates tools defined in the tools::foobar namespace and then delegates to the parent. The remaining duplicated code is now in the tools themselves. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177368 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
5b222059399ec9cccba7a393dc470adfb8a3db0f |
|
18-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Centralize the recording of which tools have been constructed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177319 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
f3260565f46491a0d99e41d47a13767218242ce5 |
|
18-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Use early returns when checking if we already constructed a tool and when delegating to Generic_GCC::SelectTool (it already updates the tool map). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177305 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
26adbe42d1fecd135dea6739ec2801f02473218f |
|
18-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove unused argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177303 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
af370e6e051e505016637e23418354db625dc796 |
|
18-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Pass an ArgList to every toolchain constructor. Remove the useIntegratedAs argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177301 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
e5dce308870cd7d6b5156640af3724433bc1c575 |
|
18-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove unused argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177293 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
f2e7c35ade3d28ef1c5ad91f757a7993b0006bbe |
|
06-Mar-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
Driver: add support for new style multiarch in Ubuntu 13.04 Patch by Sanne Wouda. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176557 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
5b9f5cc7c4310aec110f315df6fc6d6366b24b08 |
|
03-Mar-2013 |
David Chisnall <csdavec@swan.ac.uk> |
Default to enabling default-synthesized ivars on all platforms git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176419 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
c264e16a42b3f6c36521857a29ea0949d9781c22 |
|
31-Jan-2013 |
Tim Northover <Tim.Northover@arm.com> |
Add support for AArch64 target. In cooperation with the LLVM patch, this should implement all scalar front-end parts of the C and C++ ABIs for AArch64. This patch excludes the NEON support also reviewed due to an outbreak of batshit insanity in our legal department. That will be committed soon bringing the changes to precisely what has been approved. Further reviews would be gratefully received. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174055 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
27fa2364b05ab26138c2ecf0eac1937b7fc6c037 |
|
13-Dec-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Initial support for FreeBSD on ARM. Patch by Andrew Turner. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170096 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
5fdf350e39c6e260602dbbd709101a9bb55e75f1 |
|
06-Dec-2012 |
Matthew Curtis <mcurtis@codeaurora.org> |
Hexagon TC: Reimplement Link::ConstructJob to call linker directly Rather than calling gcc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169512 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
6781415fa6d98aed548e84a70f1cd3ec31bba7d3 |
|
06-Dec-2012 |
Matthew Curtis <mcurtis@codeaurora.org> |
Hexagon TC: Move getHexagonTargetCPU from Tools.cpp to ToolChains.cpp This is in anticipation of forthcoming library path changes. Also ... - Fixes some inconsistencies in how the arch is passed to tools. - Add test cases for various forms of arch flags git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169505 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
b3489a0d355128f1cc96fdde2a6b11a8361d6740 |
|
06-Dec-2012 |
Matthew Curtis <mcurtis@codeaurora.org> |
Hexagon TC: Update toolchain to add appropriate include paths - Inherit from Linux rather than ToolChain - Override AddClangSystemIncludeArgs and AddClangCXXStdlibIncludeArgs to properly set include paths. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169495 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
55fc873017f10f6f566b182b70f6fc22aefa3464 |
|
04-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Sort all of Clang's files under 'lib', and fix up the broken headers uncovered. This required manually correcting all of the incorrect main-module headers I could find, and running the new llvm/utils/sort_includes.py script over the files. I also manually added quite a few missing headers that were uncovered by shuffling the order or moving headers up to be main-module-headers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169237 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
f8fc6273ed33386f5081f5cd5d30abd339eec030 |
|
27-Nov-2012 |
Chad Rosier <mcrosier@apple.com> |
Remove an extra semicolon. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168707 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
a6b2581f9595fb803fe7e2ef1d9f25e75b26d2fb |
|
22-Nov-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Fix the '-fuse-init-array' option to actually be an option. Previously, this flag to CC1 was never exposed at the clang driver layer, and if you happened to enable it (by being on Android or GCC 4.7 platform), you couldn't *disable* it, because there was no 'no' variant. The whole thing was confusingly implemented. Now, the target-specific flag processing gets the driver arg list, and we use standard hasFlag with a default based on the GCC version and/or Android platform. The user can still pass the 'no-' variant to forcibly disable the flag, or pass the positive variant to clang itself to enable the flag. The test has also been substantially cleaned up and extended to cover these use cases. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168473 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
69b77d7fb3265e0e18c91badd50b4cb23dddf3e7 |
|
21-Nov-2012 |
Alexey Samsonov <samsonov@google.com> |
[Sanitizer] force linking with static sanitizer runtimes on Darwin even if they are not found in resource directory. Add test checking sanitizer linker flags on Darwin. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168428 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
7ce816a77dc79f71950e9e96185e3523ee08994b |
|
19-Nov-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Completely re-work how the Clang driver interprets PIC and PIE options. There were numerous issues here that were all entangled, and so I've tried to do a general simplification of the logic. 1) The logic was mimicing actual GCC bugs, rather than "features". These have been fixed in trunk GCC, and this fixes Clang as well. Notably, the logic was always intended to be last-match-wins like any other flag. 2) The logic for handling '-mdynamic-no-pic' was preposterously unclear. It also allowed the use of this flag on non-Darwin platforms where it has no actual meaning. Now this option is handled directly based on tests of how llvm-gcc behaves, and it is only supported on Darwin. 3) The APIs for the Driver's ToolChains had the implementation ugliness of dynamic-no-pic leaking through them. They also had the implementation details of the LLVM relocation model flag names leaking through. 4) The actual results of passing these flags was incorrect on Darwin in many cases. For example, Darwin *always* uses PIC level 2 if it uses in PIC level, and Darwin *always* uses PIC on 64-bit regardless of the flags specified, including -fPIE. Darwin never compiles in PIE mode, but it can *link* in PIE mode. 5) Also, PIC was not always being enabled even when PIE was. This isn't a supported mode at all and may have caused some fallout in builds with complex PIC and PIE interactions. The result is (I hope) cleaner and clearer for readers. I've also left comments and tests about some of the truly strage behavior that is observed on Darwin platforms. We have no real testing of Windows platforms and PIC, but I don't have the tools handy to figure that out. Hopefully others can beef up our testing here. Unfortunately, I can't test this for every platform. =/ If folks have dependencies on these flags that aren't covered by tests, they may break. I've audited and ensured that all the changes in behavior of the existing tests are intentional and good. In particular I've tried to make sure the Darwin behavior (which is more suprising than the Linux behavior) also matches that of 'gcc' on my mac. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168297 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
3d145f660a23d5bdabdd1ead83c51f3df1489b09 |
|
15-Nov-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
block extended signatur option. Change previous option to a cc1 -fencode-extended-block-signature and pass it to cc1 and recognize this option to produce extended block type signature. // rdar://12109031 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168063 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
377e5c108bd299930ca8e8cb6ebce1d22dfe35f9 |
|
09-Nov-2012 |
Bob Wilson <bob.wilson@apple.com> |
Remove old driver code to grab the iOS simulator version from the -D option. We can now rely on the -mios-simulator-version-min command line option and remove the awful hack. <rdar://problem/10304510> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167603 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
458871a13c9f07bb46b4a32e3add0c9cb730f26e |
|
09-Nov-2012 |
Bob Wilson <bob.wilson@apple.com> |
Remove more code related to invoking llvm-gcc. <rdar://problem/11991320> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167598 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
f4bd32957c686891cbdb7e2124630f6686343a2a |
|
21-Oct-2012 |
Simon Atanasyan <satanasyan@mips.com> |
Add support of MIPS n32 ABI to the Clang driver. The fix builds correct library/object files paths and passes appropriate command line options to the linker if user provides -mabi=n32 option. The patch reviewed by Rafael Espindola. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166389 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
03a86385d6628398e1671db1d1970eb83ef0f8b3 |
|
23-Sep-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Implement ToolChain::IsUnwindTablesDefault to reduce code duplication a bit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164473 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
0a7dd788dbef975f35f273c7ab913f480f7edd60 |
|
21-Aug-2012 |
John McCall <rjmccall@apple.com> |
Screw around with ObjCRuntime some more, changing the diagnostics for bad deployment targets and adding a few more predicates. Includes a patch by Jonathan Schleifer to enable ARC for ObjFW. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162252 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
42f74f21ece01dc8573d5377859d327fbb23b26c |
|
09-Aug-2012 |
Eli Friedman <eli.friedman@gmail.com> |
clang support for Bitrig (an OpenBSD fork); patch by David Hill. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161546 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
51a0a94b841e64814e63f9f172c6c4ae5d8ff286 |
|
03-Aug-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
Make property synthesis the default on Windows. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161266 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
2c7886ddec1e2cee68daee9866637d2e02f434ef |
|
04-Jul-2012 |
David Chisnall <csdavec@swan.ac.uk> |
Hoist the logic for selecting the Objective-C dispatch method into the runtime class, from the target. No functionality change, just less duplicated logic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159710 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
260611a32535c851237926bfcf78869b13c07d5b |
|
20-Jun-2012 |
John McCall <rjmccall@apple.com> |
Restructure how the driver communicates information about the target Objective-C runtime down to the frontend: break this down into a single target runtime kind and version, and compute all the relevant information from that. This makes it relatively painless to add support for new runtimes to the compiler. Make the new -cc1 flag, -fobjc-runtime=blah-x.y.z, available at the driver level as a better and more general alternative to -fgnu-runtime and -fnext-runtime. This new concept of an Objective-C runtime also encompasses what we were previously separating out as the "Objective-C ABI", so fragile vs. non-fragile runtimes are now really modelled as different kinds of runtime, paving the way for better overall differentiation. As a sort of special case, continue to accept the -cc1 flag -fobjc-runtime-has-weak, as a sop to PLCompatibilityWeak. I won't go so far as to say "no functionality change", even ignoring the new driver flag, but subtle changes in driver semantics are almost certainly not intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158793 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
8af669f2f1d92436fe6dc43144bb084a620e7516 |
|
19-Jun-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add a -fuse-init-array option to cc1 and map to the UseInitArray target option. On the driver, check if we are using libraries from gcc 4.7 or newer and if so pass -fuse-init-array to the frontend. The crtbegin*.o files in gcc 4.7 no longer call the constructors listed in .ctors, so we have to use .init_array. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158694 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
4ec2678021a4621228321958b3641540f27a834a |
|
09-May-2012 |
Chad Rosier <mcrosier@apple.com> |
Move the iOSVersionMin string to a header so as to avoid a dangling pointer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156497 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
4206c27768e15865f936a9bdb8ea082087118b78 |
|
03-May-2012 |
Bob Wilson <bob.wilson@apple.com> |
Rip out old code for finding libraries in GCC's directories. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156058 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
769aa2d46fa5dc0bee5285c95a80ad8749cb79cf |
|
02-May-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Driver: Turn the default value for -fmath-errno into a proper target hook 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
/external/clang/lib/Driver/ToolChains.h
|
c3cb07205a18d51b0cfff5d431579d5930277ee0 |
|
09-Apr-2012 |
David Chisnall <csdavec@swan.ac.uk> |
Make a modern Objective-C runtime the default target for *BSD. Don't yet change this on GNU/Linux, where the GCC runtime still tends to be used. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154315 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
09c9a5635f10a7dfa3373ef0941597c16b048362 |
|
10-Mar-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Use VersionTuple to manage macosx versions in the driver. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152504 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
2a253960f0312c9759965a1defb9326d6b2764a4 |
|
06-Mar-2012 |
Ted Kremenek <kremenek@apple.com> |
Enable default @synthesize by default. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152140 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
ebcb57a8d298862c65043e88b2429591ab3c58d3 |
|
06-Mar-2012 |
Ted Kremenek <kremenek@apple.com> |
Add clang support for new Objective-C literal syntax for NSDictionary, NSArray, NSNumber, and boolean literals. This includes both Sema and Codegen support. Included is also support for new Objective-C container subscripting. My apologies for the large patch. It was very difficult to break apart. The patch introduces changes to the driver as well to cause clang to link in additional runtime support when needed to support the new language features. Docs are forthcoming to document the implementation and behavior of these features. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152137 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
5840dd9a09c458ef894e7d47caab1d90dc4c1112 |
|
29-Feb-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[driver] Emit an error when trying to use ARC on macosx earlier than 10.6 rdar://10459258 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151706 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
033d3007b16d7f6c0f0eafd06c7096cfd22d89f5 |
|
28-Feb-2012 |
Jim Grosbach <grosbach@apple.com> |
Re-enable the Darwin ARM integrated assembler. All known nightly-test failures are fixed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151595 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
f1868793bfb3ffcb6f569cf362f7c5db1f52525c |
|
25-Feb-2012 |
Chad Rosier <mcrosier@apple.com> |
Temporarily revert r151288: ARM: enable the integrated assembler by default for Darwin. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151454 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
d649586a10465b3e8f7e38ef0a428daf7464aa49 |
|
23-Feb-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM: enable the integrated assembler by default for Darwin. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151288 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
0e65959196b45d8afc89e9102c4fc4ec0d642066 |
|
19-Feb-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Implement a -gcc-toolchain command line option that does the same as configure's --with-gcc-toolchain. The configure option is now just a default value for the command line one. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150898 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
31c4690047f5f362ecf886f1586844b1aef0c4d2 |
|
15-Feb-2012 |
David Chisnall <csdavec@swan.ac.uk> |
First pass at Solaris toolchain support. This version compiles and links hello world on Solaris 11 for both x86 and x86-64 using the built-in assembler and Solaris (not GNU) ld, however it currently relies on a hard-coded GCC location to find crtbegin.o and crtend.o, as well as libgcc and libgcc_eh. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150580 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
d747efaad80117799ff7e2ab10608f18ee1348c1 |
|
11-Feb-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Begin refactoring to use the newly added triple predicates for simplicity. Also addresses a FIXME, although not one that could be observed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150294 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
1d16f0f805c2a3e2198a87154990347b2759f6bd |
|
31-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Revert r149083 which is not the direction we're going in the Clang driver based on discussions with Doug Gregor. There are several issues: 1) The patch was not reviewed prior to commit and there were review comments. 2) The design of the functionality (triple-prefixed tool invocation) isn't the design we want for Clang going forward: it focuses on the "user triple" rather than on the "toolchain triple", and forces that bit of state into the API of every single toolchain instead of handling it automatically in the common base classes. 3) The tests provided are not stable. They fail on a few Linux variants (Gentoo among them) and on mingw32 and some other environments. I *am* interested in the Clang driver being able to invoke triple-prefixed tools, but we need to design that feature the right way. This patch just extends the previous hack without fixing the underlying problems with it. I'm working on a new design for this that I will mail for review by tomorrow. I am aware that this removes functionality that NetBSD relies on, but this is ToT, not a release. This functionality hasn't been properly designed, implemented, and tested yet. We can't "regress" until we get something that really works, both with the immediate use cases and with long term maintenance of the Clang driver. For reference, the original commit log: Keep track of the original target the user specified before normalization. This used to be captured in DefaultTargetTriple and is used for the (optional) $triple-$tool lookup for cross-compilation. Do this properly by making it an attribute of the toolchain and use it in combination with the computed triple as index for the toolchain lookup. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149337 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
34144f67610be0ac6cb0d85d77bd57662b9232b9 |
|
26-Jan-2012 |
Joerg Sonnenberger <joerg@bec.de> |
Keep track of the original target the user specified before normalization. This used to be captured in DefaultTargetTriple and is used for the (optional) $triple-$tool lookup for cross-compilation. Do this properly by making it an attribute of the toolchain and use it in combination with the computed triple as index for the toolchain lookup. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149083 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
32f88be6e2dbd950861858fb75b0a37b685d6267 |
|
25-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Remove the 'ToolTriple' concept from the NetBSD toolchain along with my gross hack to provide it from my previous patch removing HostInfo. This was enshrining (and hiding from my searches) the concept of storing and diff-ing the host and target triples. We don't have the host triple reliably available, so we need to merely inspect the target system. I've changed the logic in selecting library search paths for NetBSD to match what I provided for FreeBSD -- we include both search paths, but put the 32-bit-on-64-bit-host path first so it trumps. NetBSD maintainers, you may want to tweak this, or feel free to ask me to tweak it. I've left a FIXME here about the challeng I see in fixing this properly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148952 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
4d7ff6e8639bdce74e39b90370729ad0179ebcca |
|
25-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Switch the ToolChain types to all store a Driver reference rather than a HostInfo reference. Nothing about the HostInfo was used by any toolchain except digging out the driver from it. This just makes that a lot more direct. The change was accomplished entirely mechanically. It's one step closer to removing the shim full of buggy copy/paste code that is HostInfo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148945 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
1c6f04a28d8a8e3eca966385815305b13e0a6a05 |
|
25-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Make a major refactoring to how the GCC installation detection works. The fundamental shift here is to stop making *any* assumptions about the *host* triple. Where these assumptions you ask? Why, they were in one of the two target triples referenced of course. This was the single biggest place where the previously named "host triple" was actually used as such. ;] The reason we were reasoning about the host is in order to detect the use of '-m32' or '-m64' flags to change the target. These flags shift the default target only slightly, which typically means a slight deviation from the host. When using these flags, the GCC installation is under a different triple from the one actually targeted in the compilation, and we used the host triple to find it. Too bad that wasn't even correct. Consider an x86 Linux host which has a PPC64 cross-compiling GCC toolchain installed. This toolchain is also configured for multiarch compiling and can target PPC32 with eth '-m32' flag. When targeting 'powerpc-linux-gnu' or some other PPC32 triple, we have to look for the PPC64 variant of the triple to find the GCC install, and that triple is neither the host nor target. The new logic computes the multiarch's alternate triple from the target triple, and looks under both sides. It also looks more aggressively for the correct subdirectory of the GCC installation, and exposes the subdirectory in a nice programmatic way. This '/32' or '/64' suffix is something we can reuse in many other parts of the toolchain. An important note -- while this likely fixes a large category of cross-compile use cases, that's not my primary goal, and I've not done testing (or added test cases) for scenarios that may now work. If someone else wants to try more interesting PPC cross compiles, I'd love to have reports. But my focus is on factoring away the references to the "host" triple. The refactoring is my goal, and so I'm mostly relying on the existing (pretty good) test coverage we have here. Future patches will leverage this new functionality to factor out more and more of the toolchain's triple manipulation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148935 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
fa5be916273be4d2e0ef8db050c8bdd404b95555 |
|
24-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Address one part of the FIXME I introduced my switching the triple inside of GCCInstallation to be a proper llvm::Triple. This is still a touch ugly because we have to use it as a string in so many places, but I think on the whole the more structured representation is better. Comments of course welcome if this tradeoff isn't working for folks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148843 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
5d84bb418405e1256020a66895d163756886b102 |
|
24-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
At least within these classes, consistently spell 'GCC' as 'GCC'. I can't read Java-style 'Gcc' acronyms. ;] No functionality changed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148840 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
99ba9e3bd70671f3441fb974895f226a83ce0e66 |
|
20-Dec-2011 |
David Blaikie <dblaikie@gmail.com> |
Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146959 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
79cbbdc8affe52591f7ee487a789639aa38331ec |
|
18-Dec-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Split the Windows toolchain definition into its own file. This is 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. ;] git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146840 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
dfba0278ce3b9cd86f5a050163ccb998aeb74aa6 |
|
14-Dec-2011 |
Bob Wilson <bob.wilson@apple.com> |
Enable stack protectors by default for iOS. <rdar://problem/8836680> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146552 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
9631939f82c0eaa6fb3936a0ce58a41adfbc9011 |
|
12-Dec-2011 |
Tony Linthicum <tlinth@codeaurora.org> |
Hexagon backend support git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146413 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
6d402dc963aa32194f3604af4463b113858291ae |
|
09-Dec-2011 |
Eli Friedman <eli.friedman@gmail.com> |
Misc Minix-specific changes to clang: . 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146206 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
c24767c9dd869ba0e78c2d4c86d86ed24b8e401e |
|
08-Dec-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add a --rtlib={compiler-rt,libgcc} argument which I plan to use to allow dual support for compiler-rt on Linux, during bringup. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146094 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
d936d9d9abae0e5018fa0233aa51ac8390a6778f |
|
09-Nov-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Fix an issue that Duncan discovered on a specific (no longer current) 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144165 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
b37fe61e661453800f826897706b1d75f98dd7c1 |
|
07-Nov-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Begin lifting some of the one-off checking logic into generic helper routines on the base toolchain class. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143900 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
19347edf7809866350750a1997ec4db009832fa4 |
|
07-Nov-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Move the GCC installation detection logic down into the Generic_GCC toolchain. The logic is mostly generic already, and where possible should be made more generic. Also, it has no impact other than to expose a set of methods which each toolchain can then query to setup their desired configuration. These should be available to toolchains beyond just Linux. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143899 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
7902d766dea6366b84bf65c671f1cbd7b31b9388 |
|
06-Nov-2011 |
Chandler Carruth <chandlerc@gmail.com> |
The version objects need to actually store the version strings; they aren't guaranteed to live long enough otherwise. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143875 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
0e29dbb96121386c2e6d03b59eebf2c329a2a578 |
|
06-Nov-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Lift the GCCVersion type into the header file and start persisting it in the detected GCC installation. This allows us to expose another aspect of what we detected: the GCC version. This will be used shortly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143871 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
fa13459725b7a8c414ddf3742ffb7eab8314388d |
|
06-Nov-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Switch some of these interfaces from std::string to StringRef and Twine. This will facilitate further use and recombinations of them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143869 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
69cd4aaefe075ede31d81cbf7141d697243fb4f7 |
|
05-Nov-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Remove a pointless member. I have no idea why I made this not a local variable to begin with... As I'm planning to add include root information to this object, this would have caused confusion. It didn't even *actually* hold the include root by the time we were done with it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143840 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
f13b13e85bedf91bde90a2c902fed99581e70f7a |
|
05-Nov-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Move the GCC installation detection helper a member of the Linux toolchain instead of merely using it in the constructor. This will allow us to query it when building include paths as well as the file search paths built in the constructor. I've lifted as little of it as I could into the header file. Eventually this will likely sink down into some of the Generic toolchains and be used on more platforms, but I'm starting on Linux so I can work out all the APIs needed there, where it is easiest to test and we have the most pressing need. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143838 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
7d7e9f963a4977e36efb90fd9c369f33ced1a95a |
|
05-Nov-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Move the Linux header searching from the Frontend to the Driver. This is the first (and diff-noisiest) step to making Linux header searching tremendously more principled and less brittle. Note that this step should have essentially no functional impact. We still search the exact same set of paths in the exact same order. The only change here is where the code implementing such a search lives. This has one obvious negative impact -- we now pass a ludicrous number of flags to the CC1 layer. That should go away as I re-base this logic on the logic to detect a GCC installation. I want to do this in two phases so the bots can tell me if this step alone breaks something, and so that the diffs of the refactoring make more sense. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143822 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
ca23419b8214654d185d595956e9ddf24984750a |
|
05-Nov-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Begin the migration of header search logic to the driver, starting with Windows. There are still FIXMEs and lots of problems with this code. Some of them will be addressed shortly by my follow-up patches, but most are going to wait until we isolate this code and can fix it properly. This version should be no worse than what we had before. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143752 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
163b151809beef8f917fd16c546016e83ae3e361 |
|
07-Oct-2011 |
Bob Wilson <bob.wilson@apple.com> |
Clang driver changes for iOS 5.0 and OS X Lion support. Check whether the libc++ library is available when using -stdlib=libc++, and also adjust the check for whether to link with -lgcc_s.1. Patch by Ted Kremenek and Daniel Dunbar. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141374 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
8aa76ea4472349e081d046f7b21dc1e54014f335 |
|
21-Sep-2011 |
Bob Wilson <bob.wilson@apple.com> |
For i386 kext fallback to llvm-gcc, search paths for several Darwin versions. This replaces the hack to read UNAME_RELEASE from the environment when identifying the OS version on Darwin, and it's more flexible. It's also horribly ugly, but at least this consolidates the ugliness to touch less of the code so that it will be easier to rip out later. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140187 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
61ab80a8b35e6fe9363e8ef1b3d27209b0e89349 |
|
20-Sep-2011 |
Chad Rosier <mcrosier@apple.com> |
[driver] Default to arm mode when using the integrated assembler. rdar://10125227 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140179 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
13db5cfc4e5f03eb70efe0d227b53b8280f16161 |
|
09-Sep-2011 |
John McCall <rjmccall@apple.com> |
Treat the weak export of block runtime symbols as a deployment-target feature akin to the ARC runtime checks. Removes a terrible hack where IR gen needed to find the declarations of those symbols in the translation unit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139404 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
e3685fd4c2546cfd450de6484ed4125adc1476c0 |
|
01-Sep-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
default property synthesis is off by default for now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138958 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
4a04247099d51321be99cf3f06bb872b3c5757fa |
|
01-Sep-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c: Make auto synthesis of properties the default. This concludes //rdar://8843851 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138947 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
2fef11164cbe804f7b808c07757c6f900c08d765 |
|
23-Aug-2011 |
Nico Weber <nicolasweber@gmx.de> |
enable -fstack-protector on 10.5 for usermode binaries by default. This matches gcc's behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138324 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
686775deca8b8685eb90801495880e3abdd844c2 |
|
20-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
now that we have a centralized place to do so, add some using declarations for some common llvm types: stringref and smallvector. This cleans up the codebase quite a bit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135576 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
9f084a3166b684573ba49df28fc5792bc37d92e1 |
|
06-Jul-2011 |
John McCall <rjmccall@apple.com> |
Change the driver's logic about Objective-C runtimes: abstract out a structure to hold inferred information, then propagate each invididual bit down to -cc1. Separate the bits of "supports weak" and "has a native ARC runtime"; make the latter a CodeGenOption. The tool chain is still driving this decision, because it's the place that has the required deployment target information on Darwin, but at least it's better-factored now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134453 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
3404fe7105ecc3baa58b7ea725773de4112259d6 |
|
22-Jun-2011 |
Eric Christopher <echristo@apple.com> |
Build and use libcompiler_rt whenever possible. Patch by Jean-Daniel Dupas! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133624 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
f85e193739c953358c865005855253af4f68a497 |
|
16-Jun-2011 |
John McCall <rjmccall@apple.com> |
Automatic Reference Counting. Language-design credit goes to a lot of people, but I particularly want to single out Blaine Garst and Patrick Beard for their contributions. Compiler implementation credit goes to Argyrios, Doug, Fariborz, and myself, in no particular order. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133103 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
182564cd14a2105fff05fd52f5940eff96161d57 |
|
16-May-2011 |
Joerg Sonnenberger <joerg@bec.de> |
Make the triple an explicit argument of FindTargetProgramPath. Preserve the original triple in the NetBSD toolchain when using -m32 or -m64 and the resulting effective target is different from the triple it started with. This allows -m32 to use the same assembler/linking in cross-compiling mode and avoids confusion about passing down target specific flags in that case like --32. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131404 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
5f5c37b1234e6ebb6c17e084bc4e2cce92e31585 |
|
30-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Change Darwin toolchain to explicitly track is-ios-sim bit, and update -mios-simulator-version-min to set it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130592 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
fc8f0e14ad142ed811e90fbd9a30e419e301c717 |
|
15-Apr-2011 |
Chris Lattner <sabre@nondot.org> |
fix a bunch of comment typos found by codespell. Patch by Luis Felipe Strano Moraes! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129559 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
4035580e3475db9013f335ce2b8a49dd1988a79a |
|
31-Mar-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Tweak link logic for simulator. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128641 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
ac0659ae4124156915eddf70e78065df224d34c8 |
|
18-Mar-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Give SelectTool access to the action inputs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127902 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
79be940271c69082344ea4e3d5a867e925a46d96 |
|
18-Mar-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Kill the DarwinGCC toolchain. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127896 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
bbe8e3eff56ac1d79f3668d706536e3cebe28c18 |
|
01-Mar-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Be bug compatible with GCC and ignore -pg on ARM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126767 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
2fb468dcf86d306ba8557b4914a0d09fe946d1fa |
|
17-Feb-2011 |
Ted Kremenek <kremenek@apple.com> |
Disable default synthesized properties until we can properly re-evaluate the feature. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125708 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
398c610b16728b4398214367dd0effd9d2e61340 |
|
04-Feb-2011 |
Daniel Dunbar <daniel@zuster.org> |
build: Add support for DISABLE_DEFAULT_STRICT_ALIASING, which does what one might expect. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124848 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
8e50a96b387dca7525caa8a6add31420dd82a2cd |
|
02-Feb-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add NetBSD target support. Patch by Joerg Sonnenberger. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124736 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
c32647d111e516593b9ba242cad7b8ff4016c155 |
|
23-Dec-2010 |
Ted Kremenek <kremenek@apple.com> |
Add -fobjc-default-synthesized-properties flag to allow us to explicitly control whether or not Objective-C properties are default synthesized. Currently this feature only works when using the -fobjc-non-fragile-abi2 flag (so there is no functionality change), but we can now turn off this feature without turning off all the features coupled with -fobjc-non-fragile-abi2. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122519 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
c1da981bba867681004004b2d54ec2fdf3c08913 |
|
07-Nov-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Use ld directly on linux. Changes from the previous try: *) Try to detect as much as possible from the system itself, not the distro. This should make it easier to port to a new distro and more likely to work on a unknown one. *) The distro enum now doesn't include the arch. Just use the existing host detection support in LLVM. *) Correctly handle --sysroot. A small regression is that now clang will pass bitcode file to the linker. This is necessary for the gold plugin support to work. It might be better to detect this at configure/cmake time, but doing it in c++ first is a lot easier. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118382 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
138e66ffa8008b95121580f5459af45487df9803 |
|
03-Nov-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Revert while I debug test failures :-( git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118150 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
29a88f441fb9d82cfa898774cf6711e54bcba2ff |
|
03-Nov-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Switch clang to run ld directly on linux. I tested this on all the linux distros listed by running gcc main.o -o main g++ main.o -o main gcc main.o -o main -static g++ main.o -o main -static gcc f.o -o f.so -shared g++ f.o -o f.so -shared and comparing the ld line with the one created by clang. I also added -m32/m64 in distros that support it. While I tested many distros, there will always be more. If you are hit by this it should be somewhat easy to add your distro. If you are in a hurry, do revert this, but please inform how to detect you distro and the ld command lines produced by the above gcc invocations. Most distros have some patches on gcc :-( git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118149 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
e43cfa1fdbf5b404a76e31f31b1505c7852a1967 |
|
29-Oct-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Switch to using the integrated assembler by default on x86 and x86-64 ELF systems. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117697 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
7433fedce98a58341d0f30c2e12e8d53f3bba575 |
|
17-Sep-2010 |
Shantonu Sen <ssen@apple.com> |
Driver: implement driver automagic support for -lcc_kext Rewrite linker arguments to use libclang_rt.cc_kext.a instead of gcc-specific libcc_kext.a Resolves Radar 7808495 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114193 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
132e35d2f87895d20e7ea146c8c00404b80221a1 |
|
17-Sep-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Fix spelling of AddCXXStdlibLibArgs, which I copy-n-pasto'd. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114147 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
efe91ea6bb6f45aaf663a43a1960998bc1eb9378 |
|
17-Sep-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/DarwinClang: The new toolchain definition is going to drop the -L inside the GCC dir. Unfortunately, this breaks -lstdc++ on SnowLeopard, etc. because the libstdc++ dylib was hiding there. Workaround this by providing the path to the right -lstdc++.6 (the only version used in recent memory) if we can't see an obvious -lstdc++, but can find = -lstdc++.6. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114146 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
b993f5d93b994b9b0aac6aebae669621744bbed7 |
|
17-Sep-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add a toolchain hook for whether the system has native LLVM support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114137 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
00577ada44c889fbe311d61c51a8da89e65c7c9a |
|
24-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Move Clang "triple" computation routines to method on the ToolChain. This fixes a potenial bad cast when running Clang on PPC code, since the tool chain in effect is not a subclass of the Darwin one, but we were treating it like it was. - This introduces some gross code duplication, but the right fix for it is to just move the Driver to start depending on the targets in libBasic, so I am not planning on fixing it immediately. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111856 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
ff58e3610f4e12094def69eb2d6dcb4330378d8f |
|
21-Aug-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Visual Studio tools used on win32 hosts when targeting win32. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111748 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
ba30bbe4e36a30a274da809a11a42f9cdc168e92 |
|
10-Aug-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Run the assembler instead of gcc on Linux. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110635 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
25b58eb7998ed947bc1c07e70de0b5d8f6aff857 |
|
02-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Change where Darwin computes the host version, to normalize tool chain construction. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110028 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
c2bda62f0ccbfc22651d9d986282c497afc9be1d |
|
02-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Inline some constants. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110026 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
214afe96b4210ca36d99621dd930225e6bf5b9b3 |
|
02-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/FreeBSD: Change how FreeBSD derives the Lib32 variable, to normalize tool chain construction. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110025 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
4180011fb8cef06adec04d30486b1bf3b99aa8b8 |
|
02-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Move HostInfo::lookupTypeForExtension to ToolChain::LookupTypeForExtension. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110024 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
ef44a5d65c48b92802aac02126d36c03d818e847 |
|
22-Jul-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Always allow blocks on Darwin, so that users can conditionally use blocks even when targetting older systems (using runtime checks and weak linking). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109072 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
60baf0f6d54376805168d49fa68628f801f95ef9 |
|
19-Jul-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Add deployment target after doing argument translation, so that -mmacosx-version-min works inside a -Xarch_ flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108712 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
c0e665eb705762f95cd4f722ad7ecbdcde3f4527 |
|
19-Jul-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Factor out Darwin::AddDeploymentTarget. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108711 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
38e317d6dce161b249508686cc67eb7176958762 |
|
07-Jul-2010 |
Chris Lattner <sabre@nondot.org> |
add driver support for minix, patch by Kees van Reeuwijk from PR7583 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107788 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
71a6cbc5a101899f54e0a76aece82c01b48ad089 |
|
23-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add make variable to allow disabling default integrated assembler, till all the kinks are worked out. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106641 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
279c1dbebf37cd128f3c73c70741a6b8c35ad025 |
|
12-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add an explicit argument translation phase to the driver itself. We are going to need this to handle things like -Xassembler, -Xpreprocessor, and -Xlinker which we might have to introspect. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105842 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
eb840bd0e473ee11622e084a0d6ff276ee7aa5c6 |
|
14-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Enable -integrated-as by default, at least for Darwin/x86 without -static. - How else will we figure out what is broken, eh? git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103759 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
92dd1915842410005c68d32c43bb3b3cf5a4a702 |
|
11-May-2010 |
Duncan Sands <baldrick@free.fr> |
VISIBILITY_HIDDEN was renamed LLVM_LIBRARY_VISIBILITY. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103494 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
f645aaaf274c2f32c9ace457b9e69f041b565c17 |
|
24-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Fix Objective-C non-fragile ABI and dispatch method defaults, which were wrong in numerous places. - <rdar://problem/7903449> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102257 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
f643b9b338b797a824447207d7eab5f1187f4f34 |
|
24-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
NeXT: Clean up dispatch method policy selection. - Replace -cc1 level -fobjc-legacy-dispatch with -fobjc-dispatch-method={legacy,non-legacy,mixed}. - Lift "mixed" vs "non-mixed" policy choice up to driver level, instead of being buried in CGObjCMac.cpp. - No intended functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102255 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
43a9b3263cb0bcb050cc75c15b3e6a8951e6b97a |
|
10-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Ignore -fobjc-gc and -fobjc-gc-only for platforms which don't support them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100930 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
03d87ee556f9e11ab83f6d2f80c9ee92e3667301 |
|
20-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Fix possible crash when targetting an unknown (unsupported) Darwin platform, e.g. ppc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99016 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
3a47c4e0a3e8d13ee4fb06cc3a98f9cfa9982400 |
|
04-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
add TCE target support, patch by Pekka J! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97746 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
b2987d159a88ab0ee2e40c884eb4d77b42ab89b6 |
|
10-Feb-2010 |
Daniel Dunbar <daniel@zuster.org> |
Switch to using -fsjlj-exceptions instead of hard-coding it. Notably, this fixes calls to the UnwindResumeOrRethrow function for C++/Obj-C exception handling, for Darwin ARM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95787 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
609508ce95732e7e7010f79c5207613eced7c9cb |
|
01-Feb-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Darwin uses -fobjc-legacy-dispatch on ARM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95006 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
5435fc9739e9ac4baede460cf5e7489886948af5 |
|
27-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Eliminate invalid uses of DarwinVersion -- this fixes a number of defaults when targetting iPhoneOS (blocks, non-fragile ABI, stack protector). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94642 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
ce3fdf233353b10f20d74dceda3d77a82285de17 |
|
27-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Simplify target version checks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94641 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
cacb0f007001f7463d44ebd5dde7bfaecf876a71 |
|
27-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Fix a few link arguments when targetting different iPhoneOS versions to match gcc (which is matching linker changes). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94640 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
cc8e1894109b7c02258b7f4be5624d3d8d1523ce |
|
27-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Eliminate confusing IsIPhoneOS parameter -- this was actually just indicating whether the default target should be iPhoneOS. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94638 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
2603137cb91e1d143b36fb71a72189884fbde5b5 |
|
27-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Track target platform more explicitly in tool chain, eventually this should just be part of the tool chain itself once we have eliminated argument translation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94635 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
314cba02728c451c783b38bf6c00f220afb193c8 |
|
26-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
Simplify. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94503 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
816bc31ed45002de2547d6679b44f31eb85ec491 |
|
26-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Honor IPHONEOS_DEPLOYMENT_TARGET. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94488 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
eeff406730f50afd973f005a8d501a19af4785e5 |
|
22-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin/ld: Factor out getDarwinArchName, for getting the "Darwin" arch name being used in an driver invocation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94139 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
c31176d5ebbcd407aa512bbd5f717e35da629e7d |
|
08-Jan-2010 |
Dan Gohman <gohman@apple.com> |
Use -fno-math-errno by default, and remove the IsMathErrnoDefault targethook, which is no longer being used. This fixes PR5971. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92987 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
f2d8b9f967a1ab53ee9fdbcc3ac0a4ee0a83a26e |
|
18-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add -dwarf-debug-flags, which provides a way to embed the cc1 level options used to compile a translation unit into the debug info for that file. - Used by parts of Darwin build process to check compiler flags, etc. - <rdar://problem/7256886> clang does not emit AT_APPLE_flags git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91661 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
9e5cc6b703b2d0013f13800c2ffbeb3cf85fcfad |
|
17-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add -fblocks, -stack-protector, and -fobjc-nonfragile-abi defaulting to driver, instead of using getDefaultLangOptions. - Remove unused -fobjc-tight-layout while at it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89065 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
55bac5339154cedc7541b5648f9c3486e547b45c |
|
07-Oct-2009 |
Ted Kremenek <kremenek@apple.com> |
Revert r83443. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83451 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
44da821078a5f09127a01f9aa01dd9dd9af9de86 |
|
07-Oct-2009 |
Mike Stump <mrs@apple.com> |
Fixup pathnames. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83443 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
1d4612b829500cbe04a2eafca74afac703e34934 |
|
18-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Split Darwin toolchain into Clang and GCC Darwin toolchains with a common base. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82213 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
6cd4154b9088fa18ae05d11c0f3140fafd76c734 |
|
18-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Lift AddLinkRuntimeLibArgs into Darwin tool chain. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82212 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
608d04cb7bee2db28c8689f6626bf9e0b114c473 |
|
18-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Move isMacosxVersionLT helpers to Darwin tool chain. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82211 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
48d5aae4387f07aef99dbe03f4047d709e9f4d35 |
|
18-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Lift getMacosxVersionMin out into Darwin ToolChain. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82210 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
6b200b2b698b6ac9e310f2225c69c85d28ae4fb0 |
|
18-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Lift AddLinkerSearchPaths() into Darwin tool chain. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82209 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
0dcb9a3705743ec972af37f48ead81a0939e3958 |
|
09-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Push bound architecture name into TranslateArgs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
1eb4433ac451dc16f4133a88af2d002ac26c58ef |
|
09-Sep-2009 |
Mike Stump <mrs@apple.com> |
Remove tabs, and whitespace cleanups. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81346 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
30392de4681602f1aabc61b0184b1de53bc172f0 |
|
04-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Darwin: Pass -iphoneos-version-min to ld when building for ARM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81019 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
f395528158379e7ea9f6ff4bbb791abadca15aab |
|
04-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Rename Darwin_X86 toolchain to just Darwin, this can support all platforms. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81016 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
e7925a075f110ab21afeae084670a155dea568e3 |
|
22-Aug-2009 |
Edward O'Callaghan <eocallaghan@auroraux.org> |
Second half of, clang, AuroraUX toolchain support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79713 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
f7b8eec37c8c8012fa525c71fb29a58c9f29beef |
|
29-Jun-2009 |
Daniel Dunbar <daniel@zuster.org> |
OpenBSD support. - Patch by Jonathan Gray! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74453 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
6b3454a219cee5ef36c4668961f93a5c32deab61 |
|
26-May-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Fix for PR4140: Add the start of a Linux toolchain (basically, just barely enough to get the given usage of -print-file-name working). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72412 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
cb8ab23f7c800b041aeb6fc38c341d1aa0da86bf |
|
22-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
(llvm up) Use llvm::Triple for storing target triples. - This commit has some messy stuff in it to extend string lifetimes, but that will go away once we switch to using the enum'd Triple interfaces. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72243 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
11e1b40d759a643086f590f6ffbd9d68360bad46 |
|
02-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
DragonFly ToolChain definition for driver. - Patch by Alex Hornung! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70635 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
75358d267256022475371416654b056ad8531cb3 |
|
30-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Sketch FreeBSD tool chain. - Patch by Ed Schouten! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68061 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
02633b541b04ad5ffc1c70f4c2feeeb13e607057 |
|
26-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add darwin::Link tool. - <rdar://problem/6717381> [driver] implement ld argument translation in new driver git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67760 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
ec069ed8a6647d84cc3a58d46d5b2a3c9f000704 |
|
25-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Implement Darwin_X86 tool chain level argument translation. - This is really gross, but its the easiest way to match gcc. Once we are confident in the driver, we can try and push these translations down into tools. - No test cases for this yet, it's hard to see the effects of these translations before the gcc tool argument translation is pulled over. - Interaction with "unused argument" warning hasn't been worked out yet. - <rdar://problem/6717359> [driver] implement toolchain specific argument translation. "It's horrible in here." git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67683 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
f3cad36e59a41b5767fe662b5ac8911ee174b801 |
|
25-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Prep for tool chain specific argument translation. - Lift ArgList to a base class for InputArgList and DerivedArgList. - This is not a great decomposition, but it does embed the translation into the type system, and keep things efficient for tool chains that don't want to do any translation. - No intended functionality change. Eventually I hope to get rid of tool chain specific translation and have each tool do the right thing, but for now this is the easiest way to match gcc precisely (which is good for testing). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67676 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
c50b00dbd843cd929b5f220d4a8699852249f64c |
|
23-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Setup file and program search paths in tool chains. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67529 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
8eddb3fb6ff3dd20e3920380e1ce56df105b8a98 |
|
20-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Sketch Darwin tool chains. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67356 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
3917608370583fa30c466b6c3893448229aea9ad |
|
20-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Move tool chain implementations into ToolChains.cpp. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67350 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
7e4534d9c14febcdea30c057bb2a36e245776865 |
|
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Release Host, ToolChain, and Tool implementations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67146 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
31b1e5437e7435879fc044afb77ff27096008e72 |
|
17-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add name to Tool (for testing/debugging) and move GCC_* tools into gcc:: namespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67120 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
985b825eea7387be10478de0430815ed6a673326 |
|
17-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: GCC 4.0 isn't happy with VISIBILITY_HIDDEN on a namespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67110 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
670b7f4fe6720e91520ec5a993b33c00058ed77a |
|
17-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Stub out generic GCC tool selection. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67108 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|
83b08eb6d2a7f71328db51baa79c654bb9dcc55d |
|
17-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Stub out generic GCC tool chain implementation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67107 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Driver/ToolChains.h
|