Граф коммитов

820 Коммитов

Автор SHA1 Сообщение Дата
Michael J. Spencer 5a7f34958c CMake: Update to use standard CMake dependency tracking facilities instead
of whatever we were using before...

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113631 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-10 21:13:16 +00:00
Daniel Dunbar 748de8eda2 Driver/Darwin: Make the compilation object available in AddLinkArgs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113549 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-09 21:51:05 +00:00
Daniel Dunbar fee1add2ee Driver: Mark function as nounwind when -mkernel or -fapple-kext is present.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113541 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-09 21:17:44 +00:00
Douglas Gregor ec9bf47565 Clean up CMake dependencies
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113489 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-09 15:44:58 +00:00
Daniel Dunbar 9ced7049ca Driver/Darwin: Catch another case where ld ends up using ld_classic.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113226 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-07 17:50:41 +00:00
Daniel Dunbar bcf1da8ff6 Driver/Darwin: Don't pass -demangle to the linker when we know it is going to
use ld_classic. This is a temporary workaround, the linkr itself should handle
this.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113212 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-07 17:07:49 +00:00
Rafael Espindola 79e9e9dd53 Make "-ccc-cxx" option work on Linux.
Patch by nobled.

I also took the opportunity to make the field private since now it is only ready from the
outside.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113138 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-06 02:36:23 +00:00
Douglas Gregor 34916dbb10 Add missing #include
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112974 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03 17:16:03 +00:00
Chris Lattner 3f2cc6f42b fix a hard coded version number, PR8031. Patch by 'nobled'.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112970 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03 16:47:03 +00:00
Dawn Perchik 400b607546 Add support for Borland extensions via option -fborland-extensions
(original patch r112791 was reverted due to a bug).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112915 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02 23:59:25 +00:00
Dawn Perchik d0b4e7c872 Reverting rev 112791 - apparently -fborland-extensions is on all the time?!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112797 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02 02:18:55 +00:00
Dawn Perchik 621a2f36af Add support for Borland extensions via option -fborland-extensions
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112791 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02 01:12:01 +00:00
Daniel Dunbar 2dc70ad391 Driver/Darwin: Switch back to old toolchain, looks like new one isn't quite
ready yet.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112138 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-26 01:41:44 +00:00
Daniel Dunbar 5edbd23c2a Driver: Fix thinko where I switched to always using the old toolchain, instead
of always using the new toolchain.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112125 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-26 00:55:55 +00:00
Daniel Dunbar 3a0e3926b8 Driver/Darwin: Pass the right arch specific dir for ARM, when linking.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112124 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-26 00:55:52 +00:00
Daniel Dunbar f7c16d903f Frontend: Add basic -H support.
- I didn't implement the GCC "multiple include guard" detection parts, because
   it doesn't seem useful or obvious.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111983 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-24 22:44:13 +00:00
Daniel Dunbar ca0e0545c2 Driver/Clang: Forward -Wa, and -Xassembler to clang -cc1 when using the
integrated assembler. For now this mostly just means that we will error out if
someone tries to use this mechanism to send an argument to the assembler.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111921 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-24 16:47:49 +00:00
Daniel Dunbar 00577ada44 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
2010-08-23 22:35:37 +00:00
Daniel Dunbar 673745ff71 Driver/Darwin: Switch to using simplified tool chain by default -- what better
way to see what will break! :)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111840 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-23 20:58:55 +00:00
Daniel Dunbar eab3bc4f0b Driver/Darwin: When using the simplified Clang toolchain, make sure to also pass
the arch specific gcc lib path.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111839 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-23 20:58:52 +00:00
Daniel Dunbar c4ab3493bb Driver: Update -ccc-install-dir to also set the installed dir. Totally
non-obvious.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111838 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-23 20:58:50 +00:00
Chandler Carruth e97673f10f Add two new enumerations to the unsupported list for Windows so that all cases
are handled.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111773 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-22 06:56:37 +00:00
Michael J. Spencer ff58e3610f 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
2010-08-21 21:55:07 +00:00
Douglas Gregor 4786c15f49 Add machine-parseable Fix-It output as part of diagnostics, under the
flag -fdiagnostics-parseable-fixits, from Eelis van der Weegen!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111557 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-19 20:24:43 +00:00
Daniel Dunbar c326b64a4d Driver: Claim the -mlinker-version synthesized argument, it shouldn't be
reported as unused.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111310 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-17 22:32:45 +00:00
David Chisnall c736377543 Pass some things to the linker that gcc passes. -r is the only one of these that I'm sure about, but the others seem to be listed on FreeBSD by gcc -dumpspecs, so I hope they're right. Apparently -r is also not passed on GNU/Linux (and should be), but I can't see where the toolchain definition for this platform live.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111114 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-15 22:58:12 +00:00
Daniel Dunbar caeed1d3a5 Driver/OptParser: Add a NoForward flag to prevent forwarding certain options to
GCC.
 - Mark -Xclang and -mlinker-version= with it for now, although I am sure there
   are more.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111005 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-13 04:44:20 +00:00
Daniel Dunbar a77a723489 Driver: Use the compile time linker version as the default for -mlinker-version,
if detected.
 - This is a hack, we really want the linker version at execution time, but we
   don't have any infrastructure for getting that. Yet.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110886 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-12 00:05:12 +00:00
Argyrios Kyrtzidis e5c3537702 Switch on PCH for C++. C++ fans all over the world rejoice.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110879 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-11 23:27:58 +00:00
Daniel Dunbar b18dc5b837 Driver/Darwin: Pass -demangle when linking, if the linker supports it.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110873 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-11 23:07:50 +00:00
Daniel Dunbar c176bc6be6 Driver: Add -mlinker-version=, which forwards to -target-linker-version.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110872 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-11 23:07:47 +00:00
Ted Kremenek 79a79f5d32 Turn on idempotent operations checker when using --analyze.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110695 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-10 18:03:13 +00:00
Daniel Dunbar 9d5600a834 Driver/FreeBSD: Infer the right arch name in the presence of -m32,-m64, for the
cases we care about.
 - This is eventually going to be unified outside the host specific code.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110693 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-10 17:39:05 +00:00
Rafael Espindola ba30bbe4e3 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
2010-08-10 00:25:48 +00:00
Eric Christopher f84d409903 Make -funroll-loops turn on loop unrolling in the optimizer instead
of just ignoring it.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110525 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-07 23:08:14 +00:00
Daniel Dunbar 2dffe2d9d6 Driver: Don't forward any -g options to GCC, when using it to drive the
assembler.
 - Fixes PR6218, hopefully.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110111 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-03 16:14:14 +00:00
Daniel Dunbar 25b58eb799 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
2010-08-02 05:44:07 +00:00
Daniel Dunbar 6699877c45 Driver: Have -ccc-host-triple simply override the default in the driver, for
now.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110027 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-02 05:44:04 +00:00
Daniel Dunbar c2bda62f0c Driver/Darwin: Inline some constants.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110026 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-02 05:44:01 +00:00
Daniel Dunbar 214afe96b4 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
2010-08-02 05:43:59 +00:00
Daniel Dunbar 4180011fb8 Driver: Move HostInfo::lookupTypeForExtension to ToolChain::LookupTypeForExtension.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110024 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-02 05:43:56 +00:00
Daniel Dunbar 74edcea3db Driver: Give Build{Universal,}Actions access to the default host tool chain. I
avoided this originally to enforce that the driver actions aren't toolchain
dependent, but it isn't worth the cumbersone additional hostinfo split.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110023 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-02 05:43:51 +00:00
Daniel Dunbar 2fe238ed29 Driver: Add Compilation::addCommand and switch tools to using it, now that we
don't have to deal with nested jobs.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110015 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-02 02:38:28 +00:00
Daniel Dunbar d0b77e1a47 Driver: Eliminate PipedJob, which is now unused.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110014 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-02 02:38:25 +00:00
Daniel Dunbar 7c1e46533c Driver: Eliminate special InputInfo kind for pipes, it is now unused.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110013 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-02 02:38:21 +00:00
Daniel Dunbar 8c631e3b6f Driver: Eliminate now unnecessary tool hooks for whether they accept piped input/output.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110012 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-02 02:38:18 +00:00
Daniel Dunbar 9b18cca611 Driver: Simplify.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110011 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-02 02:38:15 +00:00
Daniel Dunbar e4341253cc Driver: Eliminate now unused argument.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110010 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-02 02:38:12 +00:00
Daniel Dunbar defcda7ea6 Driver: Simplify logic for sending 'clang -E t.c' output to stdout.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110009 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-02 02:38:08 +00:00
Daniel Dunbar 58e12fd6df Driver: Never try to use piped inputs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110008 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-02 02:38:06 +00:00