Skip to content
Snippets Groups Projects
  • Damien George's avatar
    cc2bd63c
    py/emitnative: Implement yield and yield-from in native emitter. · cc2bd63c
    Damien George authored
    This commit adds first class support for yield and yield-from in the native
    emitter, including send and throw support, and yields enclosed in exception
    handlers (which requires pulling down the NLR stack before yielding, then
    rebuilding it when resuming).
    
    This has been fully tested and is working on unix x86 and x86-64, and
    stm32.  Also basic tests have been done with the esp8266 port.  Performance
    of existing native code is unchanged.
    cc2bd63c
    History
    py/emitnative: Implement yield and yield-from in native emitter.
    Damien George authored
    This commit adds first class support for yield and yield-from in the native
    emitter, including send and throw support, and yields enclosed in exception
    handlers (which requires pulling down the NLR stack before yielding, then
    rebuilding it when resuming).
    
    This has been fully tested and is working on unix x86 and x86-64, and
    stm32.  Also basic tests have been done with the esp8266 port.  Performance
    of existing native code is unchanged.