9 #ifndef LLVM_CLANG_DRIVER_TOOL_H 10 #define LLVM_CLANG_DRIVER_TOOL_H 13 #include "llvm/Support/Program.h" 56 const char *ShortName;
65 const llvm::sys::WindowsEncodingMethod ResponseEncoding;
68 const char *
const ResponseFlag;
71 Tool(
const char *Name,
const char *ShortName,
const ToolChain &TC,
73 llvm::sys::WindowsEncodingMethod ResponseEncoding = llvm::sys::WEM_UTF8,
74 const char *ResponseFlag =
"@");
79 const char *
getName()
const {
return Name; }
87 virtual bool hasIntegratedCPP()
const = 0;
93 return ResponseSupport;
108 return ResponseEncoding;
128 const InputInfoList &Inputs,
129 const llvm::opt::ArgList &TCArgs,
130 const char *LinkingOutput)
const = 0;
141 const InputInfoList &Outputs,
142 const InputInfoList &Inputs,
143 const llvm::opt::ArgList &TCArgs,
144 const char *LinkingOutput)
const;
Specialize PointerLikeTypeTraits to allow LazyGenerationalUpdatePtr to be placed into a PointerUnion...
Forward-declares and imports various common LLVM datatypes that clang wants to use unqualified...
SmallVector< InputInfo, 4 > InputInfoList
Dataflow Directional Tag Classes.
Compilation - A set of tasks to perform for a single driver invocation.