Reviewers: ulan,

Message:
Patch Set 1: That's just a reland of previously reviewed CLs.
Patch Set 2: That's the regression test for the layout test failure.
Patch Set 3: That's the actual fix.

Description:
Enable lazy compilation for non-trivial outer contexts.

This changes the compiler to be more aggressive about lazy compilation
of closures with non-trivial outer context. Compilation can only be
triggered with a valid outer context now. One exception is the debugger,
which can request compilation of arbitrary shared code, but it ensures
to trigger compilation only at points where no context is needed.

This relands r11782, r11783, r11790 and a minor fix.

[email protected]
TEST=mjsunit/debug-script-breakpoints-nested


Please review this at https://chromiumcodereview.appspot.com/10543141/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files:
  M src/ast.h
  M src/ast.cc
  M src/compiler.cc
  M src/debug.h
  M src/debug.cc
  M src/full-codegen.cc
  M src/objects-inl.h
  M src/objects.h
  M src/objects.cc
  M src/parser.cc
  M src/runtime.cc
  M src/scopes.h
  M src/scopes.cc
  M test/cctest/test-debug.cc
  M test/cctest/test-heap.cc
  A + test/mjsunit/debug-script-breakpoints-closure.js
  A + test/mjsunit/debug-script-breakpoints-nested.js


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to