forked from OSchip/llvm-project
Allow ToolChain to decide if Clang is not the right C compiler.
Removed comment in Driver::ShouldUseClangCompiler implying that there was an opt-out ability at that point - there isn't. Differential Revision: http://reviews.llvm.org/D10246 llvm-svn: 239608
This commit is contained in:
parent
f367dd90cc
commit
0024909c68
|
@ -164,7 +164,10 @@ public:
|
|||
}
|
||||
|
||||
/// Choose a tool to use to handle the action \p JA.
|
||||
Tool *SelectTool(const JobAction &JA) const;
|
||||
///
|
||||
/// This can be overridden when a particular ToolChain needs to use
|
||||
/// a C compiler other than Clang.
|
||||
virtual Tool *SelectTool(const JobAction &JA) const;
|
||||
|
||||
// Helper methods
|
||||
|
||||
|
|
|
@ -2117,13 +2117,12 @@ const ToolChain &Driver::getToolChain(const ArgList &Args,
|
|||
}
|
||||
|
||||
bool Driver::ShouldUseClangCompiler(const JobAction &JA) const {
|
||||
// Check if user requested no clang, or clang doesn't understand this type (we
|
||||
// only handle single inputs for now).
|
||||
// Say "no" if there is not exactly one input of a type clang understands.
|
||||
if (JA.size() != 1 ||
|
||||
!types::isAcceptedByClang((*JA.begin())->getType()))
|
||||
return false;
|
||||
|
||||
// Otherwise make sure this is an action clang understands.
|
||||
// And say "no" if this is not a kind of action clang understands.
|
||||
if (!isa<PreprocessJobAction>(JA) && !isa<PrecompileJobAction>(JA) &&
|
||||
!isa<CompileJobAction>(JA) && !isa<BackendJobAction>(JA))
|
||||
return false;
|
||||
|
|
Loading…
Reference in New Issue