aboutsummaryrefslogtreecommitdiff
path: root/lib/Driver
AgeCommit message (Collapse)Author
2010-06-15Driver: Support -Wp,-MMD,FOO, which I found an instance of. :(Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106039 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-15Implement -fvisibility-inlines-hidden. <rdar://problem/7819834>Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106003 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-15Driver/FreeBSD: Add libexec to program search paths, to workaround some buildDaniel Dunbar
problem; patch by Ed Schouten. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105996 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-14Driver: Fix PR4062 by dissecting one particular -Wp, form.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105966 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-14Driver: Dissect -Wl, and -Xlinker arguments to remove --no-demangle, which was aDaniel Dunbar
collect2 option that is passed by some projects (notably WebKit). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105964 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-14Driver: Eliminate uses of Arg::getIndex.Daniel Dunbar
Also, fix a memory leak. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105963 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-14Driver: Fix refacto in DerivedArgList::MakeSeparateArg.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105958 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-14Driver: Add DerivedArgList::AddFOOArg helper functions, and switch to using ↵Daniel Dunbar
them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105957 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-11Driver: Switch Compilation to return the translated arguments by default.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105844 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-11Driver: Add an explicit argument translation phase to the driver itself. We ↵Daniel Dunbar
are going to need this to handle things like -Xassembler, -Xpreprocessor, and -Xlinker which we might have to introspect. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105842 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-11Driver: Get rid of the proxy support in DerivedArgList.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105841 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-11Fix a couple comments.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105840 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-11Driver: Change OptTable::ParseArg to take any ArgList.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105839 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-11Driver: Fix arg_iterator typing to reflect that it is really an iterator ↵Daniel Dunbar
over Arg*s. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105838 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-11Add an option -fshow-overloads=best|all to limit the number of overloadJeffrey Yasskin
candidates printed. We default to 'all'. At the moment, 'best' prints only the first 4 overloads, but we'll improve that over time. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105815 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-09Driver: Change Option parsing to always create arguments referring to unaliasedDaniel Dunbar
options. - This matches the intent of the .td files, and will simplify alias handling. - PR7321. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105763 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-09Driver: Eliminate Arg subclasses, which are now unnecessary.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105762 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-09Driver: Keep the rendering style in the option, instead of as part of the Arg.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105761 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-09Driver: Change Arg to just hold the values directly, instead of implicitlyDaniel Dunbar
deriving them from the Arg type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105760 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-09Revert "Driver: Change Option parsing to always create arguments referring toDaniel Dunbar
unaliased", this isn't quite right yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105747 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-09Driver: Change Option parsing to always create arguments referring to unaliasedDaniel Dunbar
options. - This matches the intent of the .td files, and will simplify alias handling. - PR7321. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105744 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-09Driver: Add an explicit offset to JoinedArg and JoinedAndSeparateArg, so thatDaniel Dunbar
they can be independent of the exact option that created them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105739 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-09Driver: Change Arg::render methods to use option name instead of string whereDaniel Dunbar
possible. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105738 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-08Makefiles: Set Clang CPP compiler flags in a single location, instead of ↵Daniel Dunbar
scattered throughout the project Makefiles. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105638 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-08Makefile: Switch Clang Makefiles to always include the top-level Clang Makefile.Daniel Dunbar
- This eliminates most dependencies on how Clang is installed relative to LLVM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105637 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-08Implement -fcaret-diagnostics to undo -fno-caret-diagnostics.Jeffrey Yasskin
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105597 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-07Driver: Support invoking Clang on .ll or .bc inputs.Daniel Dunbar
- We actually pretend that we have two separate types for LLVM assembly/bitcode because we need to use the standard suffixes with LTO ('clang -O4 -c t.c' should generate 't.o'). It is now possible to do something like: $ clang -emit-llvm -S t.c -o t.ll ... assorted other compile flags ... $ clang -c t.ll -o t.o ... assorted other compile flags ... and expect that the output will be almost* identical to: $ clang -c t.c -o t.o ... assorted other compile flags ... because all the target settings (default CPU, target features, etc.) will all be initialized properly by the driver/frontend. *: This isn't perfect yet, because in practice we will end up running the optimization passes twice. It's possible to get something equivalent out with a well placed -mllvm -disable-llvm-optzns, but I'm still thinking about the cleanest way to solve this problem more generally. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105584 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-04Driver: Change -dwarf-debug-flags option to pass the original command lineDaniel Dunbar
arguments after translation, instead of the -cc1 level arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105476 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-04Driver/Darwin: Model dsymutil properly, as a separate action/tool kind which isDaniel Dunbar
added as the last output step, instead of just hacking it into the link step. - Among other things, this fixes dSYM generation when using multiple -arch options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105475 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-04Driver: Add an explicit dsymutil action.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105474 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-28Driver: Spell -relax-all correctly when calling the cc1as tool.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104955 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-27Driver: Update -O -> -O2 replacement for addition of -O0 option.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104823 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-27Driver: Add support for -m[no-]relax-all, and make it the default at -O0.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104815 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-22Attempt to make MSVC happy.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104432 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-22Daniel re-educated me about what Alias does and does not do. Turn that off forChandler Carruth
'-fasm' and explicitly map from that flag to -fgnu-keywords in the driver. Turn off the driver in the lexer test for this madness and add a test to the driver that the translation actually works. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104428 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-22Driver: When printing a "command was signalled" type of diagnostic, use theDaniel Dunbar
short name of the tool in use, instead of the name of the action that created the command. The practical impact is we now get: clang: error: clang frontend command failed due to signal 6 (use -v to see invocation) instead of: clang: error: assembler command failed due to signal 6 (use -v to see invocation) when clang crashes on a job that uses the integrated assembler. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104417 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-22Driver: Add Tool::ShortName, intended to be a human readable name for the tool.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104416 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-21Try to fix MSVC build.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104371 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-20Driver: Switch to using the integrated assembler for standalone assembly jobsDaniel Dunbar
(or -save-temps), when the integrated assembler is enabled. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104282 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-20Driver: Add a tool definition for the Clang integrated assembler.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104280 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-20Driver/MC: Add 'clang -cc1as' integrated assembler tool, currently accepts ↵Daniel Dunbar
approximately the same interface as 'llvm-mc'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104239 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-20Driver: Move some argument lookup utilities into driver::ArgList.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104237 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-20Expose -fobjc-nonfragile-abi2 as a top-level clang driver option. Fixes ↵Ted Kremenek
<rdar://problem/8007063>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104205 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-14Driver: Make -fverbose-asm the default for platforms where the integratedDaniel Dunbar
assembler defaults to on. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103825 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-14Driver: Enable -integrated-as by default, at least for Darwin/x86 without ↵Daniel Dunbar
-static. - How else will we figure out what is broken, eh? git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103759 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-12Driver/Darwin/i386: Don't allow compiling C++ with -fapple-kext, we don't ↵Daniel Dunbar
support the necessary ABI yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103632 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-12Simplify.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103631 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-11VISIBILITY_HIDDEN was renamed LLVM_LIBRARY_VISIBILITY.Duncan Sands
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103494 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-06Handle -ffunction-sections and -fdata-sections in the driver.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103197 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-06Remove a dependency on Frontend headers in the Driver library. Also savesChandler Carruth
building and passing arguments to cc1 layer when setting values to their defaults. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103162 91177308-0d34-0410-b5e6-96231b3b80d8