Douglas Gregor
56930a4b81
Trying turning on PCH by default yet again. We might actually a chance at success now
...
llvm-svn: 70164
2009-04-26 22:21:26 +00:00
Douglas Gregor
8bdbf3628f
Turn off PCH by default, again
...
llvm-svn: 70113
2009-04-26 05:09:50 +00:00
Douglas Gregor
5b21e96c56
One more crazy try with PCH-by-default
...
llvm-svn: 70112
2009-04-26 03:59:49 +00:00
Douglas Gregor
58d23997c8
Turn of PCH by default. I got the info I was looking for
...
llvm-svn: 70106
2009-04-26 01:34:47 +00:00
Douglas Gregor
06ccf7a463
Another shot at switching PCH on by default, now that we've cleaned up some bugs and improved performance. Will be reverted after Mr. Speedy gets done with it
...
llvm-svn: 70099
2009-04-26 00:37:38 +00:00
Douglas Gregor
25d85bcada
Revert my PCH change. I'm happy now
...
llvm-svn: 70018
2009-04-25 07:18:06 +00:00
Douglas Gregor
9e17c07741
Temporarily try to build with PCH by default. Revert this change once
...
we see what trouble it causes.
llvm-svn: 70017
2009-04-25 06:28:32 +00:00
Daniel Dunbar
712e4dee26
Look at the TMP environment variable as well.
...
llvm-svn: 69638
2009-04-21 00:25:10 +00:00
Daniel Dunbar
c35694da21
Also look at the TEMP environment variable as a place to put temporary
...
files.
llvm-svn: 69622
2009-04-20 20:28:21 +00:00
Daniel Dunbar
ab8ce7cddb
If defined, use TMPDIR environment variable as location for temporary files.
...
llvm-svn: 69609
2009-04-20 17:32:49 +00:00
Douglas Gregor
111af7d7b4
Preliminary PCH support in the driver
...
llvm-svn: 69410
2009-04-18 00:34:01 +00:00
Daniel Dunbar
f2df7c283f
Driver: Allow using clang as a precompiler, even if it is an
...
unsupported arch.
llvm-svn: 69322
2009-04-16 23:10:13 +00:00
Daniel Dunbar
a7b5e219bb
Driver: Add --help-hidden
...
llvm-svn: 69171
2009-04-15 16:34:29 +00:00
Daniel Dunbar
8b723e299c
Driver: CCC_ADD_ARGS could end up using dangling pointers.
...
llvm-svn: 68805
2009-04-10 18:32:59 +00:00
Daniel Dunbar
a3cfbe33da
Driver: Add 'q' flag for options which shouldn't be reported as unused.
...
- <rdar://problem/6756295> warning about '-dynamic' argument unused
during compilation seems incorrect
llvm-svn: 68535
2009-04-07 19:04:18 +00:00
Daniel Dunbar
a9bbcfa130
Driver: Handle -dumpversion, this is used by some configuration
...
scripts.
llvm-svn: 68418
2009-04-04 05:17:38 +00:00
Daniel Dunbar
90dd6f45cc
Driver: Automatically suppress warnings for duplicate versions of
...
flags which were used for something.
llvm-svn: 68416
2009-04-04 00:52:26 +00:00
Daniel Dunbar
f69985511d
Driver: Add -Qunused-arguments option to suppress driver "unused
...
arguments" warning.
llvm-svn: 68410
2009-04-03 22:09:23 +00:00
Daniel Dunbar
b0006ae76d
Wire --version to normal -v version text.
...
llvm-svn: 68316
2009-04-02 15:05:41 +00:00
Daniel Dunbar
7803c9546b
Driver: Allow -ccc-gcc-name to specify the name/path to use when
...
calling gcc in generic configurations.
llvm-svn: 68260
2009-04-01 23:34:41 +00:00
Daniel Dunbar
0a05d93ed6
Quick and dirty (!) fix to make sure we use powerpc in triples.
...
- PR3922
- I have a clean solution for this in flight, but it may take a while
to come to fruition so we'll take a quick fix for now.
llvm-svn: 68241
2009-04-01 20:33:11 +00:00
Daniel Dunbar
7c92528530
Driver: Implement basic --help text.
...
- PR3875.
- <rdar://problem/6615249> [driver] ccc should support some form of
--help
llvm-svn: 68148
2009-03-31 21:38:17 +00:00
Daniel Dunbar
e24297c6b5
Driver: Sketch FreeBSD tool chain.
...
- Patch by Ed Schouten!
llvm-svn: 68061
2009-03-30 21:06:03 +00:00
Daniel Dunbar
d67a32252c
Driver: Support -M and -MM.
...
- Not particularly elegant, but my hand is forced by gcc.
Also, tweak -ccc-print-bindings output.
llvm-svn: 68027
2009-03-30 06:36:42 +00:00
Daniel Dunbar
58399aecc1
Driver: Make sure to claim -### before emitting "unused argument"
...
warnings.
llvm-svn: 68018
2009-03-29 22:24:54 +00:00
Daniel Dunbar
565eefd4ab
Driver: -print-libgcc-file-name was searching wrong path list.
...
llvm-svn: 67837
2009-03-27 14:26:33 +00:00
Mike Stump
db65737b1c
Fix searching for gcc, we only want executable files.
...
llvm-svn: 67806
2009-03-27 00:40:20 +00:00
Daniel Dunbar
dd76524d76
Driver: Fix a number of option definition mismatches (flags instead of
...
separate, or vice versa).
Also, fix initialization of LinkingOutput variable.
llvm-svn: 67757
2009-03-26 16:12:09 +00:00
Daniel Dunbar
b1024880f1
Driver: Print the correct target when printing the version.
...
llvm-svn: 67756
2009-03-26 16:09:13 +00:00
Daniel Dunbar
c7fd57a2f3
Driver: Move GetReleaseVersion to static Driver::GetReleaseVersion method.
...
llvm-svn: 67754
2009-03-26 15:58:36 +00:00
Chris Lattner
ada1c91537
hopefully fix VC++ build error.
...
llvm-svn: 67741
2009-03-26 05:56:24 +00:00
Daniel Dunbar
dac54a81df
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).
llvm-svn: 67676
2009-03-25 04:13:45 +00:00
Daniel Dunbar
1386495406
Driver: Handle -flto, -O4, and tweak -emit-llvm to match llvm-gcc.
...
- -emit-llvm no longer changes what compilation steps are done.
- -emit-llvm and -emit-llvm -S write output files with .o and .s
suffixes, respectively.
- <rdar://problem/6714125> clang-driver should support -O4 and -flto,
like llvm-gcc
llvm-svn: 67645
2009-03-24 20:17:30 +00:00
Daniel Dunbar
6b5244d600
Driver: Warn when 'clang' is used to compile a source file we could
...
conceivably handle, but are defaulting to not using clang for.
llvm-svn: 67641
2009-03-24 19:14:56 +00:00
Daniel Dunbar
88f356e16b
Driver: Change default use of "clang" compiler.
...
- Don't default to using clang for C++ (use -ccc-clang-cxx to
override).
- Default to only using clang on i386 and x86_64 (use
-ccc-clang-archs "" to override).
- <rdar://problem/6712350> [driver] clang should not be used on
powerpc by default
- <rdar://problem/6705767> driver should default to -ccc-no-clang-cxx
I plan to add a warning that we are not using the clang compiler for
the given compilation so that users do not think clang is being used
in situations it isn't.
This change is motivated by the desire to be able to drop clang into a
build and have things "just work", even if it happens to get used to
compile C++ code or code for an architecture we don't support yet.
llvm-svn: 67640
2009-03-24 19:02:31 +00:00
Daniel Dunbar
8fa879d39f
Move ToolChain::ShouldUseClangCompiler to
...
Driver::ShouldUseClangCompiler.
- No functionality change.
llvm-svn: 67639
2009-03-24 18:57:02 +00:00
Daniel Dunbar
76ce7416ae
Driver: Setup file and program search paths in tool chains.
...
llvm-svn: 67529
2009-03-23 16:15:50 +00:00
Daniel Dunbar
d8500f3b0f
Driver: Implement 'missing argument' error.
...
llvm-svn: 67490
2009-03-22 23:26:43 +00:00
Daniel Dunbar
ea9f032613
ccc/Driver: .s defaults to 'assembler-with-cpp' on Darwin.
...
- <rdar://problem/6669441> ccc doesn't handle assembler-with-cpp
semantics correctly (but clang supports it)
- This is sad, because it requires a fairly useless target
hook. C'est la vie.
llvm-svn: 67418
2009-03-20 23:39:23 +00:00
Daniel Dunbar
0e75994e8b
Driver: Add Arg::getAsString and use when dumping arguments to
...
diagnostics.
- This ensures that the whole argument and values are printed,
instead of just the option name.
llvm-svn: 67366
2009-03-20 06:14:23 +00:00
Daniel Dunbar
d972e2247b
Driver: Implement -print-search-dirs.
...
llvm-svn: 67362
2009-03-20 04:37:21 +00:00
Daniel Dunbar
1fc898c40a
Driver: Temporary hack to allow -ccc-print-bindings to work (for
...
testing) even with -pipe on.
llvm-svn: 67348
2009-03-20 00:11:04 +00:00
Daniel Dunbar
adc5c7c2fd
Driver: Claim unused input arguments when emitting "input file unused"
...
diagnostic (to suppress more generic unused warning).
llvm-svn: 67294
2009-03-19 07:57:08 +00:00
Daniel Dunbar
2da027244d
Driver: Claim -arch options when pipelining, and claim arguments that
...
are forwarded to GCC.
- The later is unfortunate, as it prevents us from generally warning
about anything interesting on platforms that use a generic
toolchain. However, we can't do much better without significantly
complicating things, and generally we should have proper tool chain
definitions.
llvm-svn: 67293
2009-03-19 07:55:12 +00:00
Daniel Dunbar
5cdf3e0fb9
Driver: Handle "linker input" arguments.
...
- Make InputInfo a variant of filename, pipe, input argument,
nothing.
- Leave a FIXME in InputInfo that this should be revisited.
llvm-svn: 67292
2009-03-19 07:29:38 +00:00
Daniel Dunbar
c4acf9d516
Driver: Forcibly disable pipe support until we can execute them, the
...
driver is functional without them.
llvm-svn: 67254
2009-03-18 23:18:19 +00:00
Daniel Dunbar
18d69de523
Driver: Delete the temporary files llvm::sys::Path::makeUnique
...
sometimes leaves around.
llvm-svn: 67253
2009-03-18 23:08:52 +00:00
Daniel Dunbar
6c17bfd99b
Driver: Cleanup temporary/result files.
...
llvm-svn: 67248
2009-03-18 22:16:03 +00:00
Daniel Dunbar
6f66877ebf
Driver: Lookup program names using llvm::sys::Program::FindProgramByName
...
if our usual methods fail. This isn't necessary for running the tool,
but improves the accuracy of logging output.
Also, have GCC tools lookup gcc program path.
llvm-svn: 67243
2009-03-18 21:34:08 +00:00
Mike Stump
fc17674d6b
The eventual name of this will be clang, might as well start now.
...
llvm-svn: 67241
2009-03-18 21:19:11 +00:00