From 0977133cc991379465a9bc01073ad7a13e9a68e6 Mon Sep 17 00:00:00 2001 From: oddcoder Date: Sat, 20 Jun 2020 14:57:04 +0200 Subject: [PATCH] Get rid of assembly code in call_inits_finis --- src/ld_so/linker.rs | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/src/ld_so/linker.rs b/src/ld_so/linker.rs index a835a2e917..0f42d79eb4 100644 --- a/src/ld_so/linker.rs +++ b/src/ld_so/linker.rs @@ -865,16 +865,6 @@ impl Linker { } unsafe extern "C" fn call_inits_finis(addr: usize) { - #[cfg(target_arch = "x86_64")] - asm!(" - cmp qword ptr [rdi], 0 - je end - call [rdi] -end: nop - " - : - : - : - : "intel", "volatile" - ); + let func = transmute::>(addr); + (*func).map(|x| x()); }