Early return from inject_profiler_runtime
This commit is contained in:
parent
93c636211c
commit
872839eb49
@ -769,32 +769,32 @@ impl<'a> CrateLoader<'a> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn inject_profiler_runtime(&mut self, krate: &ast::Crate) {
|
fn inject_profiler_runtime(&mut self, krate: &ast::Crate) {
|
||||||
if self.sess.instrument_coverage()
|
let profiler_runtime = &self.sess.opts.debugging_opts.profiler_runtime;
|
||||||
|| self.sess.opts.debugging_opts.profile
|
|
||||||
|| self.sess.opts.cg.profile_generate.enabled()
|
if !(profiler_runtime.is_some()
|
||||||
|
&& (self.sess.instrument_coverage()
|
||||||
|
|| self.sess.opts.debugging_opts.profile
|
||||||
|
|| self.sess.opts.cg.profile_generate.enabled()))
|
||||||
{
|
{
|
||||||
if let Some(name) =
|
return;
|
||||||
self.sess.opts.debugging_opts.profiler_runtime.as_deref().map(Symbol::intern)
|
}
|
||||||
{
|
|
||||||
info!("loading profiler");
|
|
||||||
|
|
||||||
if name == sym::profiler_builtins
|
info!("loading profiler");
|
||||||
&& self.sess.contains_name(&krate.attrs, sym::no_core)
|
|
||||||
{
|
|
||||||
self.sess.err(
|
|
||||||
"`profiler_builtins` crate (required by compiler options) \
|
|
||||||
is not compatible with crate attribute `#![no_core]`",
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
let cnum = self.resolve_crate(name, DUMMY_SP, CrateDepKind::Implicit, None);
|
let name = Symbol::intern(profiler_runtime.as_ref().unwrap());
|
||||||
let data = self.cstore.get_crate_data(cnum);
|
if name == sym::profiler_builtins && self.sess.contains_name(&krate.attrs, sym::no_core) {
|
||||||
|
self.sess.err(
|
||||||
|
"`profiler_builtins` crate (required by compiler options) \
|
||||||
|
is not compatible with crate attribute `#![no_core]`",
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
// Sanity check the loaded crate to ensure it is indeed a profiler runtime
|
let cnum = self.resolve_crate(name, DUMMY_SP, CrateDepKind::Implicit, None);
|
||||||
if !data.is_profiler_runtime() {
|
let data = self.cstore.get_crate_data(cnum);
|
||||||
self.sess.err(&format!("the crate `{}` is not a profiler runtime", name));
|
|
||||||
}
|
// Sanity check the loaded crate to ensure it is indeed a profiler runtime
|
||||||
}
|
if !data.is_profiler_runtime() {
|
||||||
|
self.sess.err(&format!("the crate `{}` is not a profiler runtime", name));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user