aboutsummaryrefslogtreecommitdiff
path: root/lib/Driver/Driver.cpp
AgeCommit message (Collapse)Author
2009-04-07Driver: Add 'q' flag for options which shouldn't be reported as unused.Daniel Dunbar
- <rdar://problem/6756295> warning about '-dynamic' argument unused during compilation seems incorrect git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68535 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-04Driver: Handle -dumpversion, this is used by some configurationDaniel Dunbar
scripts. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68418 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-04Driver: Automatically suppress warnings for duplicate versions ofDaniel Dunbar
flags which were used for something. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68416 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-03Driver: Add -Qunused-arguments option to suppress driver "unusedDaniel Dunbar
arguments" warning. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68410 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-02Wire --version to normal -v version text.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68316 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-01Driver: Allow -ccc-gcc-name to specify the name/path to use whenDaniel Dunbar
calling gcc in generic configurations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68260 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-01Quick and dirty (!) fix to make sure we use powerpc in triples.Daniel Dunbar
- 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68241 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-31Driver: Implement basic --help text.Daniel Dunbar
- PR3875. - <rdar://problem/6615249> [driver] ccc should support some form of --help git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68148 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-30Driver: Sketch FreeBSD tool chain.Daniel Dunbar
- Patch by Ed Schouten! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68061 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-30Driver: Support -M and -MM.Daniel Dunbar
- Not particularly elegant, but my hand is forced by gcc. Also, tweak -ccc-print-bindings output. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68027 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-29Driver: Make sure to claim -### before emitting "unused argument"Daniel Dunbar
warnings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68018 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-27Driver: -print-libgcc-file-name was searching wrong path list.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67837 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-27Fix searching for gcc, we only want executable files.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67806 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-26Driver: Fix a number of option definition mismatches (flags instead ofDaniel Dunbar
separate, or vice versa). Also, fix initialization of LinkingOutput variable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67757 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-26Driver: Print the correct target when printing the version.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67756 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-26Driver: Move GetReleaseVersion to static Driver::GetReleaseVersion method.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67754 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-26hopefully fix VC++ build error.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67741 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-25Driver: Prep for tool chain specific argument translation.Daniel Dunbar
- 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
2009-03-24Driver: Handle -flto, -O4, and tweak -emit-llvm to match llvm-gcc.Daniel Dunbar
- -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 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67645 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-24Driver: Warn when 'clang' is used to compile a source file we couldDaniel Dunbar
conceivably handle, but are defaulting to not using clang for. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67641 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-24Driver: Change default use of "clang" compiler.Daniel Dunbar
- 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67640 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-24Move ToolChain::ShouldUseClangCompiler toDaniel Dunbar
Driver::ShouldUseClangCompiler. - No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67639 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-23Driver: Setup file and program search paths in tool chains.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67529 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-22Driver: Implement 'missing argument' error.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67490 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-20ccc/Driver: .s defaults to 'assembler-with-cpp' on Darwin.Daniel Dunbar
- <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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67418 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-20Driver: Add Arg::getAsString and use when dumping arguments toDaniel Dunbar
diagnostics. - This ensures that the whole argument and values are printed, instead of just the option name. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67366 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-20Driver: Implement -print-search-dirs.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67362 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-20Driver: Temporary hack to allow -ccc-print-bindings to work (forDaniel Dunbar
testing) even with -pipe on. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67348 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-19Driver: Claim unused input arguments when emitting "input file unused"Daniel Dunbar
diagnostic (to suppress more generic unused warning). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67294 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-19Driver: Claim -arch options when pipelining, and claim arguments thatDaniel Dunbar
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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67293 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-19Driver: Handle "linker input" arguments.Daniel Dunbar
- Make InputInfo a variant of filename, pipe, input argument, nothing. - Leave a FIXME in InputInfo that this should be revisited. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67292 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Forcibly disable pipe support until we can execute them, theDaniel Dunbar
driver is functional without them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67254 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Delete the temporary files llvm::sys::Path::makeUniqueDaniel Dunbar
sometimes leaves around. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67253 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Cleanup temporary/result files.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67248 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Lookup program names using llvm::sys::Program::FindProgramByName Daniel Dunbar
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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67243 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18The eventual name of this will be clang, might as well start now.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67241 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Support ToolChain specific path lists to search for files andDaniel Dunbar
programs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67229 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Construct temporary file names.Daniel Dunbar
- This is still suboptimal, but should at least be workable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67223 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Add revision information.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67220 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Don't warn about unused arguments if there are Driver errorsDaniel Dunbar
(brings code in line with diagnostic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67217 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Fix URL trimming for version information.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67206 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Improve version number.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67204 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Bug fix, derived .gch names sometimes started with "/".Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67192 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Add assert and FIXME; arguments which act as linker inputsDaniel Dunbar
(e.g., -filelist) are currently broken. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67183 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: ConstructJob also needs to know the destination (where to putDaniel Dunbar
its commands). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67179 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Print version on stderr to match [gc]cc.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67178 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Claim inputs when we bind the InputAction.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67174 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Don't claim inputs when pipelining, a tool should eventuallyDaniel Dunbar
claim these. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67171 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Add a dash of const.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67170 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Stub out Tool::ConstructJob.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67169 91177308-0d34-0410-b5e6-96231b3b80d8