[parrot/parrot] e32f1a: coro: WIP refactor reset

GitHub noreply at github.com
Fri Oct 24 13:47:55 UTC 2014


  Branch: refs/heads/smoke-me/coro-return-gh1106
  Home:   https://github.com/parrot/parrot
  Commit: e32f1a16bb2343000152ef1c6c4a4d6af4c85c61
      https://github.com/parrot/parrot/commit/e32f1a16bb2343000152ef1c6c4a4d6af4c85c61
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2014-10-23 (Thu, 23 Oct 2014)

  Changed paths:
    M src/pmc/continuation.pmc
    M src/pmc/coroutine.pmc
    M t/pmc/coroutine.t

  Log Message:
  -----------
  coro: WIP refactor reset

do not delete the ctx on reset, just reset the pc and yield to 0.
does not work yet


  Commit: 2f9527962b9ced737274e962a0cdc0a44bbdc330
      https://github.com/parrot/parrot/commit/2f9527962b9ced737274e962a0cdc0a44bbdc330
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2014-10-24 (Fri, 24 Oct 2014)

  Changed paths:
    M src/pmc/continuation.pmc

  Log Message:
  -----------
  coro WIP


  Commit: 5ef3de3ab488d7ac83126fb38161d11e85a2f6bd
      https://github.com/parrot/parrot/commit/5ef3de3ab488d7ac83126fb38161d11e85a2f6bd
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2014-10-24 (Fri, 24 Oct 2014)

  Changed paths:
    M src/pmc/continuation.pmc
    M src/pmc/coroutine.pmc
    M t/pmc/coroutine.t

  Log Message:
  -----------
  coro: refactor WIP, cheaper reset

do not delete the ctx for a reset. an empty ctx is for the case
calling a coro.
but autoreset is performed when returning from a coro.
so change the reset method to just turn back the adress to its
original, and handle autoreset with an inlined variant thereof.
But we still need to switch segments/ctx when returning from a
autoreset (returncc) coro.


Compare: https://github.com/parrot/parrot/compare/fa581d1fb71f...5ef3de3ab488


More information about the parrot-commits mailing list