Generators save and restore stack handlers
authorwingo@igalia.com <wingo@igalia.com@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 8 May 2013 08:08:23 +0000 (08:08 +0000)
committerwingo@igalia.com <wingo@igalia.com@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 8 May 2013 08:08:23 +0000 (08:08 +0000)
commit75d939aceba3973a1e9ccf01cdc7ca076f53eaf1
tree02fbd6577ce136ac2c3cc2d060016fcbe2ec8591
parentd4fd9db34233e5d84ba7e640a6486d4c70e728d8
Generators save and restore stack handlers

This CL adds machinery to unwind stack handlers from the stack and store
them into a generator's operand array.  It also includes routines to
reinstate them.  Together this allows generators to yield within
try/catch and try/finally blocks.

BUG=v8:2355
R=mstarzinger@chromium.org
TEST=mjsunit/harmony/generators-iteration

Review URL: https://codereview.chromium.org/14031028

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14586 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
src/frames-inl.h
src/frames.cc
src/frames.h
src/objects-debug.cc
src/objects-inl.h
src/objects.h
src/runtime.cc
src/v8memory.h
test/mjsunit/harmony/generators-iteration.js