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;
55 std::vector<StringRef> &Features);
60 namespace toolchains {
65 Tool *buildAssembler()
const override;
66 Tool *buildLinker()
const override;
72 const llvm::opt::ArgList &Args);
75 void addClangTargetOptions(
const llvm::opt::ArgList &DriverArgs,
76 llvm::opt::ArgStringList &CC1Args,
79 AddClangSystemIncludeArgs(
const llvm::opt::ArgList &DriverArgs,
80 llvm::opt::ArgStringList &CC1Args)
const override;
81 void addLibStdCxxIncludePaths(
82 const llvm::opt::ArgList &DriverArgs,
83 llvm::opt::ArgStringList &CC1Args)
const override;
84 CXXStdlibType GetCXXStdlibType(
const llvm::opt::ArgList &Args)
const override;
91 std::string getHexagonTargetDir(
92 const std::string &InstalledDir,
94 void getHexagonLibraryPaths(
const llvm::opt::ArgList &Args,
97 static const StringRef GetDefaultCPU();
98 static const StringRef GetTargetCPUVersion(
const llvm::opt::ArgList &Args);
101 const llvm::opt::ArgList &Args);
108 #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...
Dataflow Directional Tag Classes.
Compilation - A set of tasks to perform for a single driver invocation.