summary refs log tree commit diff
path: root/src/rt/arch
diff options
context:
space:
mode:
authorBrian Anderson <banderson@mozilla.com>2011-11-30 17:54:11 -0800
committerBrian Anderson <banderson@mozilla.com>2011-11-30 20:31:33 -0800
commitf2de42c39ac5e2ff3bc916b4bbff1db91181d9fa (patch)
tree249765cf6b484ce6d3575fac9160b07d0632ba15 /src/rt/arch
parentdd48a1af58260eb68d87a08cc6dd1b0a589a0eae (diff)
downloadrust-f2de42c39ac5e2ff3bc916b4bbff1db91181d9fa.tar.gz
rust-f2de42c39ac5e2ff3bc916b4bbff1db91181d9fa.zip
rt: Reorganize stack growth code
Diffstat (limited to 'src/rt/arch')
-rw-r--r--src/rt/arch/i386/morestack.S18
-rw-r--r--src/rt/arch/x86_64/morestack.S24
2 files changed, 20 insertions, 22 deletions
diff --git a/src/rt/arch/i386/morestack.S b/src/rt/arch/i386/morestack.S
index 2805fc2b10e..7162f859a72 100644
--- a/src/rt/arch/i386/morestack.S
+++ b/src/rt/arch/i386/morestack.S
@@ -6,14 +6,14 @@
 // prolog when we run out.
 
 #if defined(__APPLE__) || defined(_WIN32)
-#define RUST_NEW_STACK2         _rust_new_stack2
-#define RUST_DEL_STACK          _rust_del_stack
+#define UPCALL_NEW_STACK        _upcall_new_stack
+#define UPCALL_DEL_STACK        _upcall_del_stack
 #define RUST_GET_TASK           _rust_get_task
 #define UPCALL_CALL_C           _upcall_call_shim_on_c_stack
 #define MORESTACK               ___morestack
 #else
-#define RUST_NEW_STACK2         rust_new_stack2
-#define RUST_DEL_STACK          rust_del_stack
+#define UPCALL_NEW_STACK        upcall_new_stack
+#define UPCALL_DEL_STACK        upcall_del_stack
 #define RUST_GET_TASK           rust_get_task
 #define UPCALL_CALL_C           upcall_call_shim_on_c_stack
 #define MORESTACK               __morestack
@@ -22,11 +22,9 @@
 #define ALIGNMENT 8
 #define RETURN_OFFSET   7
 
-.globl RUST_NEW_STACK
-.globl RUST_DEL_STACK
-.globl RUST_GET_PREV_STACK
+.globl UPCALL_NEW_STACK
+.globl UPCALL_DEL_STACK
 .globl RUST_GET_TASK
-.globl UPCALL_ALLOC_C_STACK
 .globl UPCALL_CALL_C_STACK
 .globl MORESTACK
 
@@ -64,7 +62,7 @@ MORESTACK:
 	movl 32(%esp),%eax // The amount of stack needed
 	movl %eax,8(%esp)
 
-	movl $RUST_NEW_STACK2,4(%esp)
+	movl $UPCALL_NEW_STACK,4(%esp)
 	leal 8(%esp), %eax
 	movl %eax,(%esp)
 	call UPCALL_CALL_C
@@ -81,7 +79,7 @@ MORESTACK:
 	// Switch back to the rust stack
 	movl %ebp, %esp
 
-	pushl $RUST_DEL_STACK
+	pushl $UPCALL_DEL_STACK
 	pushl $0
 	call UPCALL_CALL_C
 
diff --git a/src/rt/arch/x86_64/morestack.S b/src/rt/arch/x86_64/morestack.S
index ea35992a3f5..556a12b4ecb 100644
--- a/src/rt/arch/x86_64/morestack.S
+++ b/src/rt/arch/x86_64/morestack.S
@@ -6,15 +6,15 @@
 // prolog when we run out.
 
 #if defined(__APPLE__) || defined(_WIN32)
-#define RUST_NEW_STACK2     _rust_new_stack2
-#define RUST_DEL_STACK      _rust_del_stack
-#define UPCALL_CALL_C       _upcall_call_shim_on_c_stack
-#define MORESTACK           ___morestack
+#define UPCALL_NEW_STACK        _upcall_new_stack
+#define UPCALL_DEL_STACK        _upcall_del_stack
+#define UPCALL_CALL_C           _upcall_call_shim_on_c_stack
+#define MORESTACK               ___morestack
 #else
-#define RUST_NEW_STACK2     rust_new_stack2
-#define RUST_DEL_STACK      rust_del_stack
-#define UPCALL_CALL_C       upcall_call_shim_on_c_stack
-#define MORESTACK           __morestack
+#define UPCALL_NEW_STACK        upcall_new_stack
+#define UPCALL_DEL_STACK        upcall_del_stack
+#define UPCALL_CALL_C           upcall_call_shim_on_c_stack
+#define MORESTACK               __morestack
 #endif
 
         // Naturally, nobody can agree as to
@@ -30,8 +30,8 @@
 #  define ARG2 %rdx
 #endif
 
-.globl RUST_NEW_STACK2
-.globl RUST_DEL_STACK
+.globl UPCALL_NEW_STACK
+.globl UPCALL_DEL_STACK
 .globl UPCALL_CALL_C
 .globl MORESTACK
 
@@ -79,7 +79,7 @@ MORESTACK:
 	pushq %rcx // Address of stack arguments
 	pushq %r10 // The amount of stack needed
 
-	leaq RUST_NEW_STACK2@PLT(%rip), %rsi
+	leaq UPCALL_NEW_STACK@PLT(%rip), %rsi
 	movq %rsp, %rdi
 	call UPCALL_CALL_C@PLT
 
@@ -106,7 +106,7 @@ MORESTACK:
 	// Align the stack again
 	pushq $0
 	
-	leaq RUST_DEL_STACK@PLT(%rip), %rsi
+	leaq UPCALL_DEL_STACK@PLT(%rip), %rsi
 	movq $0, %rdi
 	call UPCALL_CALL_C@PLT