Displaying 2 results from an estimated 2 matches for "coroutine_switch".
2011 Jul 28
4
[LLVMdev] [RFC] Coroutines
...// block of memory with at least as many bytes as returned by
// llvm.coroutine_descriptor_size().
void llvm.coroutine_new(i8 *descriptor, i8 *function, i8 *baton, i32
stack_size)
// Store the state of the current coroutine in `this' and switch to
// the one described by `new'.
void llvm.coroutine_switch(i8 *this, i8 *new)
It should be possible to have the LLVM register allocator correctly
handle persisting the registers by replacing llvm.coroutine_switch with
a pseudo instruction which has every register in its Def list. This will
also have the advantage of not saving unneeded registers.
One iss...
2011 Aug 04
0
[LLVMdev] [RFC] Coroutines
...any bytes as returned by
> // llvm.coroutine_descriptor_size().
>
> void llvm.coroutine_new(i8 *descriptor, i8 *function, i8 *baton, i32
> stack_size)
>
> // Store the state of the current coroutine in `this' and switch to
> // the one described by `new'.
> void llvm.coroutine_switch(i8 *this, i8 *new)
>
> It should be possible to have the LLVM register allocator correctly
> handle persisting the registers by replacing llvm.coroutine_switch with
> a pseudo instruction which has every register in its Def list. This will
> also have the advantage of not saving unne...