diff options
author | Justin Lebar <jlebar@google.com> | 2017-09-07 18:37:16 +0000 |
---|---|---|
committer | Justin Lebar <jlebar@google.com> | 2017-09-07 18:37:16 +0000 |
commit | 78137ec8686555d6fecc7914ce52a444df133f8b (patch) | |
tree | 8da154f820f8189766cd47090668359b17e1e73e /clang/lib/Frontend/CompilerInstance.cpp | |
parent | 8fe23bc5200b7963deaa6ab89fa4a54b81f6fd47 (diff) | |
download | bcm5719-llvm-78137ec8686555d6fecc7914ce52a444df133f8b.tar.gz bcm5719-llvm-78137ec8686555d6fecc7914ce52a444df133f8b.zip |
[CUDA] When compilation fails, print the compilation mode.
Summary:
That is, instead of "1 error generated", we now say "1 error generated
when compiling for sm_35".
This (partially) solves a usability foogtun wherein e.g. users call a
function that's only defined on sm_60 when compiling for sm_35, and they
get an unhelpful error message.
Reviewers: tra
Subscribers: sanjoy, cfe-commits
Differential Revision: https://reviews.llvm.org/D37548
llvm-svn: 312736
Diffstat (limited to 'clang/lib/Frontend/CompilerInstance.cpp')
-rw-r--r-- | clang/lib/Frontend/CompilerInstance.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/clang/lib/Frontend/CompilerInstance.cpp b/clang/lib/Frontend/CompilerInstance.cpp index 9a4bcc2722e..128de2840e4 100644 --- a/clang/lib/Frontend/CompilerInstance.cpp +++ b/clang/lib/Frontend/CompilerInstance.cpp @@ -1003,8 +1003,17 @@ bool CompilerInstance::ExecuteAction(FrontendAction &Act) { OS << " and "; if (NumErrors) OS << NumErrors << " error" << (NumErrors == 1 ? "" : "s"); - if (NumWarnings || NumErrors) - OS << " generated.\n"; + if (NumWarnings || NumErrors) { + OS << " generated"; + if (getLangOpts().CUDA) { + if (!getLangOpts().CUDAIsDevice) { + OS << " when compiling for host"; + } else { + OS << " when compiling for " << getTargetOpts().CPU; + } + } + OS << ".\n"; + } } if (getFrontendOpts().ShowStats) { |