diff options
author | Mikhail Glushenkov <foldr@codedgers.com> | 2010-02-23 09:04:44 +0000 |
---|---|---|
committer | Mikhail Glushenkov <foldr@codedgers.com> | 2010-02-23 09:04:44 +0000 |
commit | a34f97ab22d55b38423d25663cc26408ac34a721 (patch) | |
tree | 0579d1e6e25177b71043e6d569185240e9281d1a /include/llvm/CompilerDriver | |
parent | c6e0dbf1ddb767e6587bbf340b8dc66a20b7cfea (diff) |
Correct option forwarding: initial implementation.
Does not work, but the infrastructure changes are in place.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96920 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/CompilerDriver')
-rw-r--r-- | include/llvm/CompilerDriver/Common.td | 5 | ||||
-rw-r--r-- | include/llvm/CompilerDriver/Tool.h | 6 |
2 files changed, 10 insertions, 1 deletions
diff --git a/include/llvm/CompilerDriver/Common.td b/include/llvm/CompilerDriver/Common.td index aa15482cfa..479bd6e12f 100644 --- a/include/llvm/CompilerDriver/Common.td +++ b/include/llvm/CompilerDriver/Common.td @@ -20,7 +20,9 @@ class Tool<list<dag> l> { def in_language; def out_language; def output_suffix; -def cmd_line; +def command; +def out_file_option; +def in_file_option; def join; def sink; def works_on_empty; @@ -83,6 +85,7 @@ def forward_as; def forward_value; def forward_transformed_value; def stop_compilation; +def no_out_file; def unpack_values; def warning; def error; diff --git a/include/llvm/CompilerDriver/Tool.h b/include/llvm/CompilerDriver/Tool.h index 6fc0ae6391..85d1690bcf 100644 --- a/include/llvm/CompilerDriver/Tool.h +++ b/include/llvm/CompilerDriver/Tool.h @@ -20,12 +20,16 @@ #include "llvm/ADT/StringSet.h" #include "llvm/System/Path.h" +#include <string> #include <vector> +#include <utility> namespace llvmc { class LanguageMap; + typedef std::vector<std::pair<unsigned, std::string> > ArgsVector; typedef std::vector<llvm::sys::Path> PathVector; + typedef std::vector<std::string> StrVector; typedef llvm::StringSet<> InputLanguagesSet; /// Tool - Represents a single tool. @@ -59,6 +63,8 @@ namespace llvmc { const llvm::sys::Path& TempDir, bool StopCompilation, const char* OutputSuffix) const; + + StrVector SortArgs(ArgsVector& Args) const; }; /// JoinTool - A Tool that has an associated input file list. |