diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2021-02-16 20:13:02 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2021-02-16 20:13:02 +0000 |
commit | b60736ec1405bb0a8dd40989f67ef4c93da068ab (patch) | |
tree | 5c43fbb7c9fc45f0f87e0e6795a86267dbd12f9d /clang/lib/Driver/ToolChains/AMDGPU.h | |
parent | cfca06d7963fa0909f90483b42a6d7d194d01e08 (diff) | |
download | src-b60736ec1405bb0a8dd40989f67ef4c93da068ab.tar.gz src-b60736ec1405bb0a8dd40989f67ef4c93da068ab.zip |
Diffstat (limited to 'clang/lib/Driver/ToolChains/AMDGPU.h')
-rw-r--r-- | clang/lib/Driver/ToolChains/AMDGPU.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/clang/lib/Driver/ToolChains/AMDGPU.h b/clang/lib/Driver/ToolChains/AMDGPU.h index 5d44faf28b05..55ef6e01967e 100644 --- a/clang/lib/Driver/ToolChains/AMDGPU.h +++ b/clang/lib/Driver/ToolChains/AMDGPU.h @@ -11,6 +11,7 @@ #include "Gnu.h" #include "ROCm.h" +#include "clang/Basic/TargetID.h" #include "clang/Driver/Options.h" #include "clang/Driver/Tool.h" #include "clang/Driver/ToolChain.h" @@ -36,7 +37,8 @@ public: const char *LinkingOutput) const override; }; -void getAMDGPUTargetFeatures(const Driver &D, const llvm::opt::ArgList &Args, +void getAMDGPUTargetFeatures(const Driver &D, const llvm::Triple &Triple, + const llvm::opt::ArgList &Args, std::vector<StringRef> &Features); } // end namespace amdgpu @@ -87,6 +89,16 @@ public: /// Needed for translating LTO options. const char *getDefaultLinker() const override { return "ld.lld"; } + + /// Should skip argument. + bool shouldSkipArgument(const llvm::opt::Arg *Arg) const; + +protected: + /// Check and diagnose invalid target ID specified by -mcpu. + void checkTargetID(const llvm::opt::ArgList &DriverArgs) const; + + /// Get GPU arch from -mcpu without checking. + StringRef getGPUArch(const llvm::opt::ArgList &DriverArgs) const; }; class LLVM_LIBRARY_VISIBILITY ROCMToolChain : public AMDGPUToolChain { |