Daniel Dunbar
72e90d7fb0
ccc: Suffix for PCH files is appended, not replaced. (Test case)
...
llvm-svn: 64467
2009-02-13 17:42:52 +00:00
Daniel Dunbar
b903a072b1
ccc: Suffix for PCH files is appended, not replaced.
...
llvm-svn: 64466
2009-02-13 17:42:34 +00:00
Daniel Dunbar
7ae70391f0
ccc: Test case for transparent PTH support.
...
llvm-svn: 64420
2009-02-13 00:49:50 +00:00
Daniel Dunbar
391fc04b02
ccc: Stop patching output file name when using transparent PTH support.
...
<rdar://problem/6515236> [ccc] generate expected output files when used with PCH
llvm-svn: 64419
2009-02-13 00:49:01 +00:00
Daniel Dunbar
e21993fa98
Always pass -disable-free to clang when compiling.
...
llvm-svn: 64416
2009-02-13 00:29:22 +00:00
Mike Stump
f9cf4fa08c
One more tweak to account for gluing together llvm and clang into one.
...
llvm-svn: 64276
2009-02-11 01:11:36 +00:00
Mike Stump
9d5d3b9de5
More version experimentation.
...
llvm-svn: 64271
2009-02-11 01:01:17 +00:00
Mike Stump
081e354f11
Run a little experiment with version numbers.
...
llvm-svn: 64268
2009-02-11 00:36:04 +00:00
Daniel Dunbar
8a1ca06456
ccc: -dM wasn't being passed to Darwin/CC1 correctly.
...
llvm-svn: 64169
2009-02-09 21:22:38 +00:00
Daniel Dunbar
1a5f04dc66
ccc: Forward -dM to clang.
...
llvm-svn: 63955
2009-02-06 19:26:48 +00:00
Daniel Dunbar
421d40c22b
ccc/Darwin: Add a missing Darwin argument translation, -shared becomes
...
-dynamiclib. Re-audited translations to make sure I didn't miss
something else.
llvm-svn: 63953
2009-02-06 19:18:58 +00:00
Daniel Dunbar
ba3325af7b
ccc: Give explicit error on @ style argument lists (not yet supported).
...
llvm-svn: 63903
2009-02-06 01:28:59 +00:00
Daniel Dunbar
724167c280
ccc: Implement special language recognition handling for -.
...
- <rdar://problem/6551577> [ccc] require -x with -
llvm-svn: 63901
2009-02-05 23:44:44 +00:00
Daniel Dunbar
e7dffe39ff
ccc: Translate -O to -O1 for clang, and only pass last -O option.
...
llvm-svn: 63816
2009-02-05 02:43:38 +00:00
Daniel Dunbar
ed9309ef46
ccc: Forward -femit-all-decls to clang and use an option group to
...
simplify handling of -f options clang recognizes.
llvm-svn: 63778
2009-02-04 21:21:08 +00:00
Daniel Dunbar
3ba943ed7a
ccc: -ObjC and -ObjC++ change default language, but only for "source
...
files".
llvm-svn: 63727
2009-02-04 08:01:01 +00:00
Daniel Dunbar
ed1ba4fc12
Use /usr/bin/env to run Python for increased portability. Patch by
...
David Chisnall.
llvm-svn: 63661
2009-02-03 21:25:26 +00:00
Mike Stump
c99d003b25
Add -fno-blocks support. This fixes block-no-block-def.c.
...
llvm-svn: 63385
2009-01-30 08:22:07 +00:00
Daniel Dunbar
6d6d01f254
ccc: Forward -fobjc-nonfragile-abi to clang.
...
llvm-svn: 63378
2009-01-30 04:43:19 +00:00
Daniel Dunbar
3fc8ea64c9
ccc: Add -Xclang option, rename -WA, to -Xanalyzer.
...
- -Xclang always forwards to clang
- -Xanalyzer replaces -WA,; it seems like the cleaner mechanism and
is more readable.
llvm-svn: 63349
2009-01-30 00:24:16 +00:00
Daniel Dunbar
b6e6a513c2
ccc: Mark -combine option as unsupported.
...
llvm-svn: 63348
2009-01-30 00:12:29 +00:00
Daniel Dunbar
711e882c1b
ccc: Embrace destiny as a clang compiler driver.
...
This redoes the default mode that ccc runs in w.r.t. using clang. Now
ccc defaults to always using clang for any task clang can
handle. However, the following options exist to tweak this behavior:
-ccc-no-clang: Don't use clang at all for compilation (still used for
static analysis).
-ccc-no-clang-cxx: Don't use clang for C++ and Objective-C++ inputs.
-ccc-no-clang-cpp: Don't use clang as a preprocessor.
-ccc-clang-archs <archs>: If present, only use clang for the given
comma separated list of architectures. This only works on Darwin for
now.
Note that all -ccc options must be first on the command line.
llvm-svn: 63346
2009-01-29 23:54:06 +00:00
Daniel Dunbar
df49b7cf2f
ccc: Honor -ccc-clang for generic GCC toolchain.
...
llvm-svn: 63277
2009-01-29 06:12:22 +00:00
Daniel Dunbar
ad0d48d372
Fix test case (for -### printing version)
...
llvm-svn: 63223
2009-01-28 19:30:43 +00:00
Daniel Dunbar
36ccb30a35
ccc: Support -v; invent a version number for ccc for now, will be
...
shared with clang eventually.
llvm-svn: 63220
2009-01-28 19:26:20 +00:00
Daniel Dunbar
f4a0cba545
ccc/Darwin/clang: Fix a mistranslation for the llvm-backend; llvm-gcc
...
doesn't set the relocation model when -mdynamic-no-pic is present.
llvm-svn: 63129
2009-01-27 20:42:58 +00:00
Daniel Dunbar
2ad3ff0bd6
ccc: Normalize machine name to i386 for platforms which report the
...
machine as x86_64.
llvm-svn: 63122
2009-01-27 19:29:51 +00:00
Daniel Dunbar
a7ff032643
ccc: -o should not be automatically forwarded to generic gcc tools.
...
llvm-svn: 63015
2009-01-26 18:00:14 +00:00
Daniel Dunbar
f3a06113c7
ccc: Recognize -emit-llvm [-S].
...
- Unlike llvm-gcc, this doesn't yet treat -emit-llvm output as a
linker input.
llvm-svn: 63014
2009-01-26 17:09:15 +00:00
Daniel Dunbar
3d5d14ea15
ccc: Finish definition of long argument translations.
...
- However, these last ones do not actually work; the issue is that
they translate to batches of options and need to be reparsed. For
now we just give an unsupported error on them.
llvm-svn: 62872
2009-01-23 20:08:16 +00:00
Daniel Dunbar
505f751451
ccc: Another batch of long argument translations.
...
- Again turned up a few which don't do anything sensible.
llvm-svn: 62870
2009-01-23 19:40:54 +00:00
Daniel Dunbar
8fb96605f8
ccc: Implement long options which take joined & separate forms.
...
llvm-svn: 62841
2009-01-23 08:16:41 +00:00
Daniel Dunbar
8fa972a55b
ccc: Support long ('--...') flag arguments.
...
- Curiously, a number of the current translations gcc does appear to
be useless?
llvm-svn: 62831
2009-01-23 02:00:46 +00:00
Daniel Dunbar
e2c430b317
ccc: Organize long options together.
...
llvm-svn: 62829
2009-01-23 01:31:44 +00:00
Daniel Dunbar
eff67fa33b
ccc: Add support for several more aliases (--ansi, --assemble,
...
--assert, --classpath).
- Requires providing some option parameters to over-ride rendering in
order to match gcc. There may be a cleaner way to do this (probably
by introducing a new option type for long JoinedOrSeparate forms).
llvm-svn: 62825
2009-01-23 00:54:03 +00:00
Daniel Dunbar
58645d0285
ccc: Darwin/x86/link: Fix a few incompatibilities with gcc (missed
...
forwarding -s to linker, and was only taking last arg in some cases
when should have been taking all).
llvm-svn: 62824
2009-01-23 00:39:52 +00:00
Daniel Dunbar
4bb6a2fcd3
ccc: Add support for "alias" options.
...
- Unlike groups (which gather distinct but related options), aliases
are for options like '--all-warnings' which are effectively treated
like some other option ('-Wall') both in the driver logic and when
passing to tools.
llvm-svn: 62820
2009-01-23 00:14:46 +00:00
Daniel Dunbar
ccabd0f01a
ccc: Fix typo; isn't dynamic typing fun!
...
llvm-svn: 62817
2009-01-23 00:04:43 +00:00
Daniel Dunbar
2e1cfd0267
ccc: Bug fix, driver logic was allowing child jobs to pipe output when
...
parent wasn't expecting it.
llvm-svn: 62811
2009-01-22 23:19:32 +00:00
Daniel Dunbar
d89187696f
ccc/clang: Mimic llvm-gcc initialization of LLVM backend based on gcc
...
options (for example, to set relocation model or enable unwind table generation).
llvm-svn: 62740
2009-01-22 01:55:46 +00:00
Daniel Dunbar
d00bca3572
ccc: Handle a few long argument form (--) translations using option
...
groups, and fix misdeclaration of some -W options.
llvm-svn: 62702
2009-01-21 18:49:34 +00:00
Daniel Dunbar
f2e3d81cb4
ccc: Add appropriate file search prefixes when on x86_64 Darwin, and
...
look for crt3.o appropriately.
llvm-svn: 62694
2009-01-21 17:18:19 +00:00
Daniel Dunbar
a184754570
ccc: Implement file & path searching.
...
- Toolchain is responsible for providing list of prefixes to search.
- Implement -print-file-name=xxx and -print-prog-name=xxx driver options.
llvm-svn: 62659
2009-01-21 02:03:52 +00:00
Daniel Dunbar
309052a84c
ccc: Add --analyze test case.
...
llvm-svn: 62654
2009-01-21 01:22:37 +00:00
Daniel Dunbar
989ab477d2
ccc: Add --analyze driver mode (for running static analyzer).
...
- For now forces generation of plist files, need to think about the
right interface.
- Changed -fsyntax-only mode to be its own phase (more consistent).
- Add -WA, for passing options verbatim to analyzer.
llvm-svn: 62649
2009-01-21 01:07:49 +00:00
Daniel Dunbar
47d16e53fe
ccc: Unbreak -pipe handling broken in previous refactoring.
...
llvm-svn: 62637
2009-01-21 00:05:15 +00:00
Mike Stump
c1b44ce610
Fix ccclib building when building in a separate build tree.
...
llvm-svn: 62621
2009-01-20 21:54:36 +00:00
Daniel Dunbar
de46097847
ccc: Allow downstream tools to be aware of final output name.
...
- This is a hack to allow the Darwin linker to get -final_output when
doing universal builds; the mechanism should be generalized.
- Handle multiple redundant -arch arguments correctly.
- Forward -arch_multiple and -final_output to gcc when necessary.
- Simplified implementation of derived gcc tools.
llvm-svn: 62618
2009-01-20 21:29:14 +00:00
Daniel Dunbar
7966091399
ccc: Darwin/x86: Teach compile tool how to build .pch files. xcc is
...
now fully independent of the gcc driver when targetting Darwin/x86.
llvm-svn: 62570
2009-01-20 05:51:52 +00:00
Daniel Dunbar
8bc09f4085
ccc: PCH generation doesn't strip the path when generating a derived
...
filename from the input path.
llvm-svn: 62569
2009-01-20 05:49:32 +00:00