From ac836dd79c2d7c631ca601dc468de13cb5c785da Mon Sep 17 00:00:00 2001 From: Rafael Ávila de Espíndola Date: Tue, 24 May 2011 18:23:39 -0400 Subject: There is only one yield glue. --- src/rt/rust_task.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/rt/rust_task.cpp') diff --git a/src/rt/rust_task.cpp b/src/rt/rust_task.cpp index db72be6d12d..bd57eb89cca 100644 --- a/src/rt/rust_task.cpp +++ b/src/rt/rust_task.cpp @@ -317,12 +317,14 @@ rust_task::yield(size_t nargs) { yield(nargs, 0); } +extern "C" void new_rust_yield_glue(void) asm("new_rust_yield_glue"); + void rust_task::yield(size_t nargs, size_t time_in_us) { LOG(this, task, "task %s @0x%" PRIxPTR " yielding for %d us", name, this, time_in_us); yield_timer.reset(time_in_us); - run_after_return(nargs, dom->root_crate->get_yield_glue()); + run_after_return(nargs, (uintptr_t) new_rust_yield_glue); } static inline uintptr_t -- cgit 1.4.1-3-g733a5