Go to file
mstarzinger@chromium.org b6efbd79de Force context allocation for variables in generator scopes.
* src/scopes.h (ForceContextAllocation, has_forced_context_allocation):
  New interface to force context allocation for an entire function's
  scope.

* src/scopes.cc: Unless a new scope is a function scope, if its outer
  scope has forced context allocation, it should also force context
  allocation.
  (MustAllocateInContext): Return true if the scope as a whole has
  forced context allocation.
  (CollectStackAndContextLocals): Allow temporaries to be
  context-allocated.

* src/parser.cc (ParseFunctionLiteral): Force context allocation for
  generator scopes.

* src/v8globals.h (VariableMode): Update comment on TEMPORARY.

* src/arm/full-codegen-arm.cc (Generate):
* src/ia32/full-codegen-ia32.cc (Generate):
* src/x64/full-codegen-x64.cc (Generate): Assert that generators have no
  stack slots.

* test/mjsunit/harmony/generators-instantiation.js: New test.

BUG=v8:2355
TEST=mjsunit/harmony/generators-instantiation

Review URL: https://codereview.chromium.org/13408005
Patch from Andy Wingo <wingo@igalia.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14152 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-04-05 13:19:31 +00:00
benchmarks More fixes for V8 benchmark version 7. 2012-03-15 17:13:50 +00:00
build Disable zapping of global handles in release mode. 2013-03-21 14:18:16 +00:00
include Pass an isolate to GetCurrent() 2013-04-05 02:17:56 +00:00
preparser Fix a bunch of implicit casts detected by the Win64 compiler 2012-06-19 13:45:30 +00:00
samples Added a version of the v8::HandleScope constructor with an Isolate and use that consistently. 2013-03-15 12:06:53 +00:00
src Force context allocation for variables in generator scopes. 2013-04-05 13:19:31 +00:00
test Force context allocation for variables in generator scopes. 2013-04-05 13:19:31 +00:00
tools First steps towards implementing ArrayBuffer &co in V8 2013-03-28 12:50:18 +00:00
.gitignore git should ignore .d8_history (d8 readline history) 2012-11-13 21:43:38 +00:00
AUTHORS Maintain API compatibility with older versions of V8. 2013-03-21 14:42:17 +00:00
ChangeLog Prepare push to trunk. Now working on version 3.17.17. 2013-04-04 11:37:01 +00:00
DEPS Pull more recent gyp. 2012-09-26 09:12:45 +00:00
LICENSE Update LICENSE file 2012-01-03 16:38:42 +00:00
LICENSE.strongtalk Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 2011-02-03 07:10:06 +00:00
LICENSE.v8 Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 2011-02-03 07:10:06 +00:00
LICENSE.valgrind Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 2011-02-03 07:10:06 +00:00
Makefile MIPS: Add android build support for mips in gyp. 2013-02-25 16:39:03 +00:00
Makefile.android MIPS: Add android build support for mips in gyp. 2013-02-25 16:39:03 +00:00
OWNERS Added Hannes and Dmitry to OWNERS 2013-03-21 12:09:53 +00:00
PRESUBMIT.py Add PRESUBMIT script to V8 2012-10-08 13:49:57 +00:00
SConstruct Remove support for Live Object List and inspector module. 2013-01-16 15:44:26 +00:00