Reviewers: Kasper Lund, Description: Speed up access to global variables from eval scopes. Traverse the surrounding context to figure out if the variable could be global. If the variable could be global we check context extension objects at runtime and use a global LoadIC if no variables have been introduced by eval.
Fix crash bug when loading function arguments from inside eval. The shadowed variable in the DYNAMIC_LOCAL case does not rewrite to a slot in that case. Please review this at http://codereview.chromium.org/28027 SVN Base: http://v8.googlecode.com/svn/branches/bleeding_edge/ Affected files: M src/codegen-arm.cc M src/codegen-ia32.cc M src/compilation-cache.h M src/compilation-cache.cc M src/compiler.h M src/compiler.cc M src/contexts.h M src/contexts.cc M src/objects.h M src/objects.cc M src/runtime.cc M src/scopeinfo.h M src/scopeinfo.cc M src/scopes.h M src/scopes.cc A test/mjsunit/global-load-from-eval.js A test/mjsunit/global-load-from-nested-eval.js --~--~---------~--~----~------------~-------~--~----~ v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev -~----------~----~----~----~------~----~------~--~---
