diff options
| author | Erich Keane <erich.keane@intel.com> | 2018-02-08 23:16:00 +0000 | 
|---|---|---|
| committer | Erich Keane <erich.keane@intel.com> | 2018-02-08 23:16:00 +0000 | 
| commit | d45879d8add0c2d831f89bc638f75e23b75e9a72 (patch) | |
| tree | 516e488bb84b5b60a2e6d9c156b7475e7a3fd167 /clang/lib/Basic/Targets | |
| parent | d1d85f50d01a03740d2b2295c897a310f5d3d910 (diff) | |
| download | bcm5719-llvm-d45879d8add0c2d831f89bc638f75e23b75e9a72.tar.gz bcm5719-llvm-d45879d8add0c2d831f89bc638f75e23b75e9a72.zip | |
Add NVPTX Support to ValidCPUList (enabling march notes)
A followup to: https://reviews.llvm.org/D42978
This patch adds NVPTX support for
enabling the march notes.
Differential Revision: https://reviews.llvm.org/D43045
llvm-svn: 324675
Diffstat (limited to 'clang/lib/Basic/Targets')
| -rw-r--r-- | clang/lib/Basic/Targets/NVPTX.cpp | 2 | ||||
| -rw-r--r-- | clang/lib/Basic/Targets/NVPTX.h | 6 | 
2 files changed, 8 insertions, 0 deletions
| diff --git a/clang/lib/Basic/Targets/NVPTX.cpp b/clang/lib/Basic/Targets/NVPTX.cpp index 762a6b7aa79..e8e6d2f2f74 100644 --- a/clang/lib/Basic/Targets/NVPTX.cpp +++ b/clang/lib/Basic/Targets/NVPTX.cpp @@ -157,6 +157,8 @@ void NVPTXTargetInfo::getTargetDefines(const LangOptions &Opts,      // Set __CUDA_ARCH__ for the GPU specified.      std::string CUDAArchCode = [this] {        switch (GPU) { +      case CudaArch::LAST: +        break;        case CudaArch::UNKNOWN:          assert(false && "No GPU arch when compiling CUDA device code.");          return ""; diff --git a/clang/lib/Basic/Targets/NVPTX.h b/clang/lib/Basic/Targets/NVPTX.h index a84870763f5..83d7dfb6e89 100644 --- a/clang/lib/Basic/Targets/NVPTX.h +++ b/clang/lib/Basic/Targets/NVPTX.h @@ -98,6 +98,12 @@ public:      return StringToCudaArch(Name) != CudaArch::UNKNOWN;    } +  void fillValidCPUList(SmallVectorImpl<StringRef> &Values) const override { +    for (int i = static_cast<int>(CudaArch::SM_20); +         i < static_cast<int>(CudaArch::LAST); ++i) +      Values.emplace_back(CudaArchToString(static_cast<CudaArch>(i))); +  } +    bool setCPU(const std::string &Name) override {      GPU = StringToCudaArch(Name);      return GPU != CudaArch::UNKNOWN; | 

