Make closures optimizable by Crankshaft compiler.
authorantonm@chromium.org <antonm@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Mon, 17 Jan 2011 08:11:03 +0000 (08:11 +0000)
committerantonm@chromium.org <antonm@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Mon, 17 Jan 2011 08:11:03 +0000 (08:11 +0000)
commitfae90d4f3248df6fe5f5af929994582b4a99502a
treef5b14da7e08c6a5a94abffd800518d4cde205ae6
parent0819ac76f622be65cd8943dcb1dc0efa72a8541a
Make closures optimizable by Crankshaft compiler.

Currently only closures which only read from the context are supported.

Review URL: http://codereview.chromium.org/5753005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6340 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
33 files changed:
src/arm/lithium-arm.cc
src/arm/lithium-arm.h
src/arm/lithium-codegen-arm.cc
src/arm/lithium-codegen-arm.h
src/ast.cc
src/ast.h
src/compiler.cc
src/compiler.h
src/flag-definitions.h
src/hydrogen-instructions.cc
src/hydrogen-instructions.h
src/hydrogen.cc
src/ia32/lithium-codegen-ia32.cc
src/ia32/lithium-codegen-ia32.h
src/ia32/lithium-ia32.cc
src/ia32/lithium-ia32.h
src/objects-inl.h
src/objects.cc
src/rewriter.cc
src/runtime-profiler.cc
src/runtime.cc
src/scopes.cc
src/scopes.h
src/variables.cc
src/variables.h
src/x64/lithium-codegen-x64.cc
src/x64/lithium-codegen-x64.h
src/x64/lithium-x64.cc
src/x64/lithium-x64.h
test/cctest/cctest.status
test/mjsunit/closures.js [new file with mode: 0644]
test/mjsunit/compiler/regress-closures-with-eval.js [new file with mode: 0644]
test/mjsunit/regress/regress-create-exception.js