Ignore:
Timestamp:
May 9, 2019, 4:47:28 PM (5 years ago)
Author:
Thierry Delisle <tdelisle@…>
Branches:
ADT, arm-eh, ast-experimental, cleanup-dtors, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, pthread-emulation, qualifiedEnum
Children:
b038fe4
Parents:
f019069
Message:

Removed suspend_then since I believe it cannot be made correct

File:
1 edited

Legend:

Unmodified
Added
Removed
  • libcfa/src/concurrency/coroutine.cfa

    rf019069 r63364d8  
    205205                CoroutineCtxSwitch( src, starter );
    206206        }
    207 
    208         __attribute__((noreturn)) void __suspend_callback( struct __stack_context_t *, fptr_t call ) {
    209                 call();
    210 
    211                 coroutine_desc * src = TL_GET( this_thread )->curr_cor;
    212                 // set state of current coroutine to inactive
    213                 src->state = src->state == Halted ? Halted : Inactive;
    214 
    215                 TL_GET( this_thread )->curr_cor = src->last;
    216 
    217                 // context switch to specified coroutine
    218                 assert( src->last->context.SP );
    219                 CtxRet( &src->last->context );
    220 
    221                 abort();
    222         }
    223207}
    224208
Note: See TracChangeset for help on using the changeset viewer.