9 #ifndef LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_HEXAGON_H 10 #define LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_HEXAGON_H 26 :
GnuTool(
"hexagon::Assembler",
"hexagon-as", TC) {}
30 void RenderExtraToolArgs(
const JobAction &JA,
31 llvm::opt::ArgStringList &CmdArgs)
const;
34 const llvm::opt::ArgList &TCArgs,
35 const char *LinkingOutput)
const override;
45 virtual void RenderExtraToolArgs(
const JobAction &JA,
46 llvm::opt::ArgStringList &CmdArgs)
const;
49 const llvm::opt::ArgList &TCArgs,
50 const char *LinkingOutput)
const override;
54 std::vector<StringRef> &Features);
59 namespace toolchains {
64 Tool *buildAssembler()
const override;
65 Tool *buildLinker()
const override;
71 const llvm::opt::ArgList &Args);
74 void addClangTargetOptions(
const llvm::opt::ArgList &DriverArgs,
75 llvm::opt::ArgStringList &CC1Args,
78 AddClangSystemIncludeArgs(
const llvm::opt::ArgList &DriverArgs,
79 llvm::opt::ArgStringList &CC1Args)
const override;
80 void addLibStdCxxIncludePaths(
81 const llvm::opt::ArgList &DriverArgs,
82 llvm::opt::ArgStringList &CC1Args)
const override;
86 CXXStdlibType GetCXXStdlibType(
const llvm::opt::ArgList &Args)
const override;
93 std::string getHexagonTargetDir(
94 const std::string &InstalledDir,
96 void getHexagonLibraryPaths(
const llvm::opt::ArgList &Args,
99 static bool isAutoHVXEnabled(
const llvm::opt::ArgList &Args);
100 static const StringRef GetDefaultCPU();
101 static const StringRef GetTargetCPUVersion(
const llvm::opt::ArgList &Args);
104 const llvm::opt::ArgList &Args);
111 #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.