diff options
| author | Marijn Haverbeke <marijnh@gmail.com> | 2012-03-15 17:34:57 +0100 |
|---|---|---|
| committer | Marijn Haverbeke <marijnh@gmail.com> | 2012-03-16 00:44:06 +0100 |
| commit | 76d07f405675ab8eb636bdb9cb1fbfec6f3ed805 (patch) | |
| tree | 82ce909be5ff62aa63299ba022fcf500ba41d6b2 /src/rt/rust_upcall.cpp | |
| parent | 146b61189a5c206d744a09b9336c26e3dc1637c4 (diff) | |
| download | rust-76d07f405675ab8eb636bdb9cb1fbfec6f3ed805.tar.gz rust-76d07f405675ab8eb636bdb9cb1fbfec6f3ed805.zip | |
Remove dynastack support from runtime
Issue #1982
Diffstat (limited to 'src/rt/rust_upcall.cpp')
| -rw-r--r-- | src/rt/rust_upcall.cpp | 89 |
1 files changed, 0 insertions, 89 deletions
diff --git a/src/rt/rust_upcall.cpp b/src/rt/rust_upcall.cpp index f7e6f51b6b2..28a8e0a4716 100644 --- a/src/rt/rust_upcall.cpp +++ b/src/rt/rust_upcall.cpp @@ -382,95 +382,6 @@ upcall_vec_grow(rust_vec** vp, size_t new_sz) { UPCALL_SWITCH_STACK(&args, upcall_s_vec_grow); } - -/********************************************************************** - * Returns a token that can be used to deallocate all of the allocated space - * space in the dynamic stack. - */ - -struct s_dynastack_mark_args { - void *retval; -}; - -extern "C" CDECL void -upcall_s_dynastack_mark(s_dynastack_mark_args *args) { - args->retval = rust_task_thread::get_task()->dynastack.mark(); -} - -extern "C" CDECL void * -upcall_dynastack_mark() { - s_dynastack_mark_args args = {0}; - UPCALL_SWITCH_STACK(&args, upcall_s_dynastack_mark); - return args.retval; -} - -/********************************************************************** - * Allocates space in the dynamic stack and returns it. - * - * FIXME: Deprecated since dynamic stacks need to be self-describing for GC. - */ - -struct s_dynastack_alloc_args { - void *retval; - size_t sz; -}; - -extern "C" CDECL void -upcall_s_dynastack_alloc(s_dynastack_alloc_args *args) { - size_t sz = args->sz; - args->retval = sz ? - rust_task_thread::get_task()->dynastack.alloc(sz, NULL) : NULL; -} - -extern "C" CDECL void * -upcall_dynastack_alloc(size_t sz) { - s_dynastack_alloc_args args = {0, sz}; - UPCALL_SWITCH_STACK(&args, upcall_s_dynastack_alloc); - return args.retval; -} - -/********************************************************************** - * Allocates space associated with a type descriptor in the dynamic stack and - * returns it. - */ - -struct s_dynastack_alloc_2_args { - void *retval; - size_t sz; - type_desc *ty; -}; - -extern "C" CDECL void -upcall_s_dynastack_alloc_2(s_dynastack_alloc_2_args *args) { - size_t sz = args->sz; - type_desc *ty = args->ty; - args->retval = sz ? - rust_task_thread::get_task()->dynastack.alloc(sz, ty) : NULL; -} - -extern "C" CDECL void * -upcall_dynastack_alloc_2(size_t sz, type_desc *ty) { - s_dynastack_alloc_2_args args = {0, sz, ty}; - UPCALL_SWITCH_STACK(&args, upcall_s_dynastack_alloc_2); - return args.retval; -} - -struct s_dynastack_free_args { - void *ptr; -}; - -extern "C" CDECL void -upcall_s_dynastack_free(s_dynastack_free_args *args) { - return rust_task_thread::get_task()->dynastack.free(args->ptr); -} - -/** Frees space in the dynamic stack. */ -extern "C" CDECL void -upcall_dynastack_free(void *ptr) { - s_dynastack_free_args args = {ptr}; - UPCALL_SWITCH_STACK(&args, upcall_s_dynastack_free); -} - extern "C" _Unwind_Reason_Code __gxx_personality_v0(int version, _Unwind_Action actions, |
