summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbjorn3 <bjorn3@users.noreply.github.com>2021-04-18 10:37:02 +0200
committerbjorn3 <bjorn3@users.noreply.github.com>2021-04-18 10:37:02 +0200
commite01de0f58df96c09d6b9da53e913af6bdb0142c0 (patch)
tree499d091e87e2ab99a6016c72e3ed9a8332de6ab3
parenta569cb4022182b6b9c2985190ff88f7622fc8528 (diff)
downloadrust-e01de0f58df96c09d6b9da53e913af6bdb0142c0.tar.gz
Avoid .to_string() for symbol names where possible
-rw-r--r--src/abi/mod.rs6
-rw-r--r--src/driver/jit.rs8
-rw-r--r--src/driver/mod.rs4
-rw-r--r--src/main_shim.rs4
4 files changed, 11 insertions, 11 deletions
diff --git a/src/abi/mod.rs b/src/abi/mod.rs
index f450f366787..54c8fb0e7b8 100644
--- a/src/abi/mod.rs
+++ b/src/abi/mod.rs
@@ -63,9 +63,9 @@ pub(crate) fn import_function<'tcx>(
module: &mut dyn Module,
inst: Instance<'tcx>,
) -> FuncId {
- let name = tcx.symbol_name(inst).name.to_string();
+ let name = tcx.symbol_name(inst).name;
let sig = get_function_sig(tcx, module.isa().triple(), inst);
- module.declare_function(&name, Linkage::Import, &sig).unwrap()
+ module.declare_function(name, Linkage::Import, &sig).unwrap()
}
impl<'tcx> FunctionCx<'_, '_, 'tcx> {
@@ -89,7 +89,7 @@ impl<'tcx> FunctionCx<'_, '_, 'tcx> {
args: &[Value],
) -> &[Value] {
let sig = Signature { params, returns, call_conv: CallConv::triple_default(self.triple()) };
- let func_id = self.module.declare_function(&name, Linkage::Import, &sig).unwrap();
+ let func_id = self.module.declare_function(name, Linkage::Import, &sig).unwrap();
let func_ref = self.module.declare_func_in_func(func_id, &mut self.bcx.func);
let call_inst = self.bcx.ins().call(func_ref, args);
if self.clif_comments.enabled() {
diff --git a/src/driver/jit.rs b/src/driver/jit.rs
index 63ac02f83b9..526caeb4f03 100644
--- a/src/driver/jit.rs
+++ b/src/driver/jit.rs
@@ -156,9 +156,9 @@ extern "C" fn __clif_jit_fn(instance_ptr: *const Instance<'static>) -> *const u8
let jit_module = &mut lazy_jit_state.jit_module;
let backend_config = lazy_jit_state.backend_config.clone();
- let name = tcx.symbol_name(instance).name.to_string();
+ let name = tcx.symbol_name(instance).name;
let sig = crate::abi::get_function_sig(tcx, jit_module.isa().triple(), instance);
- let func_id = jit_module.declare_function(&name, Linkage::Export, &sig).unwrap();
+ let func_id = jit_module.declare_function(name, Linkage::Export, &sig).unwrap();
jit_module.prepare_for_function_redefine(func_id).unwrap();
let mut cx = crate::CodegenCx::new(tcx, backend_config, jit_module.isa(), false);
@@ -241,9 +241,9 @@ fn codegen_shim<'tcx>(cx: &mut CodegenCx<'tcx>, module: &mut JITModule, inst: In
let pointer_type = module.target_config().pointer_type();
- let name = tcx.symbol_name(inst).name.to_string();
+ let name = tcx.symbol_name(inst).name;
let sig = crate::abi::get_function_sig(tcx, module.isa().triple(), inst);
- let func_id = module.declare_function(&name, Linkage::Export, &sig).unwrap();
+ let func_id = module.declare_function(name, Linkage::Export, &sig).unwrap();
let instance_ptr = Box::into_raw(Box::new(inst));
diff --git a/src/driver/mod.rs b/src/driver/mod.rs
index 393cde3e9ad..8f5714ecb41 100644
--- a/src/driver/mod.rs
+++ b/src/driver/mod.rs
@@ -22,7 +22,7 @@ fn predefine_mono_items<'tcx>(
for &(mono_item, (linkage, visibility)) in mono_items {
match mono_item {
MonoItem::Fn(instance) => {
- let name = tcx.symbol_name(instance).name.to_string();
+ let name = tcx.symbol_name(instance).name;
let _inst_guard = crate::PrintOnPanic(|| format!("{:?} {}", instance, name));
let sig = get_function_sig(tcx, module.isa().triple(), instance);
let linkage = crate::linkage::get_clif_linkage(
@@ -31,7 +31,7 @@ fn predefine_mono_items<'tcx>(
visibility,
is_compiler_builtins,
);
- module.declare_function(&name, linkage, &sig).unwrap();
+ module.declare_function(name, linkage, &sig).unwrap();
}
MonoItem::Static(_) | MonoItem::GlobalAsm(_) => {}
}
diff --git a/src/main_shim.rs b/src/main_shim.rs
index 4924c4e8923..3305ca6f6eb 100644
--- a/src/main_shim.rs
+++ b/src/main_shim.rs
@@ -62,9 +62,9 @@ pub(crate) fn maybe_create_entry_wrapper(
let instance = Instance::mono(tcx, rust_main_def_id).polymorphize(tcx);
- let main_name = tcx.symbol_name(instance).name.to_string();
+ let main_name = tcx.symbol_name(instance).name;
let main_sig = get_function_sig(tcx, m.isa().triple(), instance);
- let main_func_id = m.declare_function(&main_name, Linkage::Import, &main_sig).unwrap();
+ let main_func_id = m.declare_function(main_name, Linkage::Import, &main_sig).unwrap();
let mut ctx = Context::new();
ctx.func = Function::with_name_signature(ExternalName::user(0, 0), cmain_sig);