aboutsummaryrefslogtreecommitdiff
path: root/lib/Driver/Driver.cpp
AgeCommit message (Collapse)Author
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
2009-03-18Driver: Add two normalizations for powerpc.Daniel Dunbar
- PR3830 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67166 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Ditch Driver::DefaultToolChain, this can vary between compilations.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67162 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Move actions into Compilation, and construct the compilationDaniel Dunbar
earlier. - This gives us a simple ownership model, and allows clients access to more information should they ever want it. - We now free Actions correctly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67158 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Add test for binding of precompile; exposed bug due to myDaniel Dunbar
flawed idea that llvm::sys::Path::getBasename was a version of basename(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67153 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Use PrettyStackTrace.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67149 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Driver: Release Host, ToolChain, and Tool implementations.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67146 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: Add -ccc-print-bindings option (for testing); the PythonDaniel Dunbar
driver has no corresponding option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67125 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: Make sure to get the default arch name from the tool chain, not the Daniel Dunbar
host; the toolchain may differ based on command line arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67106 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: Pass Driver reference down into Host info, which will need itDaniel Dunbar
to pass to ToolChains, which may need Driver specific information (for example, to form search paths). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67102 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: Hide HostInfo implementations.Daniel Dunbar
- Also, normalize arch names a tad and stub out getToolChain implementations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67091 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Driver: Add logic for computing where to put job outputs (pipe,Daniel Dunbar
temporary file, user provided name, derived name). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67088 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-17Fix unused variable warning in -Asserts mode.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67073 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-16Driver: Implement majority tool binding logic.Daniel Dunbar
- Still need code for determining proper output location. - Doesn't work yet, of course, as the host isn't providing real tool chains. - Interface still has a few warts, but has gotten a nice bit of polish during the rewrite. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67038 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-16Driver: Migrate some data into the Compilation; after pipeliningDaniel Dunbar
access to most data should go through the current Compilation, not the Driver (which shouldn't be specialized on variables for a single compilation). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67037 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-16Driver: Sketch Tool and ToolChain classes.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67036 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-15Driver: claim input arguments when building phases.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67016 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-15Driver: Start warning about unused arguments.Daniel Dunbar
- This has a number of current flaws, enabling now to flush out problems while bringing up other parts. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67015 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-15Driver: Update ArgList::{hasArg,getLastArg} to optionally claim theDaniel Dunbar
arguments if they exist. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67014 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-13Driver: Sprinkle some consts in, stub out BuildJobs method.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66968 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-13Driver: For universal builds, handle archs in the order they were seen.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66939 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-13Driver: Fix '-x none' handling.Daniel Dunbar
- Enough stuff works now we can test argument parsing & pipelining. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66913 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-13Driver: Some minor bug fixes.Daniel Dunbar
- language recognition was recognizing prefixes incorrectly. - -x none wasn't working. - test for "can lipo" was backwords. - missed a '"' in -ccc-print-phases git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66911 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-13Driver: Return 0 from BuildCompilation on -ccc-print-phases,Daniel Dunbar
-ccc-print-options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66907 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-13Driver: Print -ccc-print-phases on stderr.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66906 91177308-0d34-0410-b5e6-96231b3b80d8