10 #ifndef LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_MINGW_H 11 #define LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_MINGW_H 32 const llvm::opt::ArgList &TCArgs,
33 const char *LinkingOutput)
const override;
45 const llvm::opt::ArgList &TCArgs,
46 const char *LinkingOutput)
const override;
49 void AddLibGCC(
const llvm::opt::ArgList &Args,
50 llvm::opt::ArgStringList &CmdArgs)
const;
55 namespace toolchains {
60 const llvm::opt::ArgList &Args);
62 bool HasNativeLLVMSupport()
const override;
64 bool IsIntegratedAssemblerDefault()
const override;
65 bool IsUnwindTablesDefault(
const llvm::opt::ArgList &Args)
const override;
66 bool isPICDefault()
const override;
67 bool isPIEDefault()
const override;
68 bool isPICDefaultForced()
const override;
72 llvm::ExceptionHandling GetExceptionModel(
73 const llvm::opt::ArgList &Args)
const override;
76 AddClangSystemIncludeArgs(
const llvm::opt::ArgList &DriverArgs,
77 llvm::opt::ArgStringList &CC1Args)
const override;
78 void AddClangCXXStdlibIncludeArgs(
79 const llvm::opt::ArgList &DriverArgs,
80 llvm::opt::ArgStringList &CC1Args)
const override;
82 void AddCudaIncludeArgs(
const llvm::opt::ArgList &DriverArgs,
83 llvm::opt::ArgStringList &CC1Args)
const override;
85 void printVerboseInfo(raw_ostream &OS)
const override;
89 Tool *buildLinker()
const override;
90 Tool *buildAssembler()
const override;
96 std::string GccLibDir;
99 mutable std::unique_ptr<tools::gcc::Preprocessor>
Preprocessor;
100 mutable std::unique_ptr<tools::gcc::Compiler> Compiler;
101 void findGccLibDir();
102 llvm::ErrorOr<std::string> findGcc();
103 llvm::ErrorOr<std::string> findClangRelativeSysroot();
105 bool NativeLLVMSupport;
112 #endif // LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_MINGW_H
A class to find a viable CUDA installation.
Driver - Encapsulate logic for constructing compilation processes from a set of gcc-driver-like comma...
Dataflow Directional Tag Classes.
Compilation - A set of tasks to perform for a single driver invocation.
Engages in a tight little dance with the lexer to efficiently preprocess tokens.