From e075412a920562acc3603e872486747915b87b01 Mon Sep 17 00:00:00 2001 From: Brian Anderson Date: Mon, 28 Nov 2011 16:27:32 -0800 Subject: [PATCH] build: Stop linking morestack.S to rt __morestack has to be linked statically. The odd calling convention on x86_64 results in the arguments to __morestack (r10 & r11) being clobbered by the dynamic linker. gcc links all the __morestack functions statically. --- mk/rt.mk | 1 - src/rt/rustrt.def.in | 1 - 2 files changed, 2 deletions(-) diff --git a/mk/rt.mk b/mk/rt.mk index 1d6634557d0..ac4ebb842cb 100644 --- a/mk/rt.mk +++ b/mk/rt.mk @@ -67,7 +67,6 @@ RUNTIME_CS_$(1) := \ RUNTIME_S_$(1) := rt/arch/$$(HOST_$(1))/_context.S \ rt/arch/$$(HOST_$(1))/ccall.S \ - rt/arch/$$(HOST_$(1))/morestack.S \ rt/arch/$$(HOST_$(1))/record_sp.S RUNTIME_HDR_$(1) := rt/globals.h \ diff --git a/src/rt/rustrt.def.in b/src/rt/rustrt.def.in index c0a9a92ba1b..8d78ba16e9c 100644 --- a/src/rt/rustrt.def.in +++ b/src/rt/rustrt.def.in @@ -1,4 +1,3 @@ -__morestack chan_id_send check_claims debug_box