10 #ifndef LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_HEXAGON_H
11 #define LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_HEXAGON_H
27 :
GnuTool(
"hexagon::Assembler",
"hexagon-as", TC) {}
31 void RenderExtraToolArgs(
const JobAction &JA,
32 llvm::opt::ArgStringList &CmdArgs)
const;
35 const llvm::opt::ArgList &TCArgs,
36 const char *LinkingOutput)
const override;
46 virtual void RenderExtraToolArgs(
const JobAction &JA,
47 llvm::opt::ArgStringList &CmdArgs)
const;
50 const llvm::opt::ArgList &TCArgs,
51 const char *LinkingOutput)
const override;
56 namespace toolchains {
61 Tool *buildAssembler()
const override;
62 Tool *buildLinker()
const override;
68 const llvm::opt::ArgList &Args);
71 void addClangTargetOptions(
const llvm::opt::ArgList &DriverArgs,
72 llvm::opt::ArgStringList &CC1Args,
75 AddClangSystemIncludeArgs(
const llvm::opt::ArgList &DriverArgs,
76 llvm::opt::ArgStringList &CC1Args)
const override;
77 void addLibStdCxxIncludePaths(
78 const llvm::opt::ArgList &DriverArgs,
79 llvm::opt::ArgStringList &CC1Args)
const override;
80 CXXStdlibType GetCXXStdlibType(
const llvm::opt::ArgList &Args)
const override;
87 std::string getHexagonTargetDir(
88 const std::string &InstalledDir,
90 void getHexagonLibraryPaths(
const llvm::opt::ArgList &Args,
93 static const StringRef GetDefaultCPU();
94 static const StringRef GetTargetCPUVersion(
const llvm::opt::ArgList &Args);
97 const llvm::opt::ArgList &Args);
104 #endif // LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_HEXAGON_H
static unsigned getOptimizationLevel(ArgList &Args, InputKind IK, DiagnosticsEngine &Diags)
Driver - Encapsulate logic for constructing compilation processes from a set of gcc-driver-like comma...
Compilation - A set of tasks to perform for a single driver invocation.