v8/test
dslomov@chromium.org 1a64b02dcf harmony_scoping: Implement lexical bindings at top level
This implements correct semantics for "extensible" top level lexical scope.
The entire lexical scope is represented at runtime by GlobalContextTable, reachable from native context and accumulating global contexts from every script loaded into the context.

When the new script starts executing, it does the following validation:
- checks the GlobalContextTable and global object (non-configurable own) properties against the set of declarations it introduces and reports potential conflicts.
- invalidates the conflicting PropertyCells on global object, so that any code depending on them will miss/deopt causing any contextual lookups to be reexecuted under the new bindings
- adds the lexical bindings it introduces to the GlobalContextTable

Loads and stores for contextual lookups are modified so that they check the GlobalContextTable before looking up properties on global object, thus implementing the shadowing of global object properties by lexical declarations.

R=adamk@chromium.org, rossberg@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#25220}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25220 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-07 16:29:45 +00:00
..
benchmarks Revert "Enable turbofan deoptimization by default." 2014-10-27 14:37:10 +00:00
cctest harmony_scoping: Implement lexical bindings at top level 2014-11-07 16:29:45 +00:00
intl Allow identifier code points from supplementary multilingual planes. 2014-10-10 07:13:46 +00:00
js-perf-test Add performance tests for Map/Set with String and Object keys 2014-10-29 10:18:38 +00:00
message Enable access check tests that no longer fail with TF. 2014-08-14 13:24:57 +00:00
mjsunit Scanner: disallow unicode escapes in regexp flags. 2014-11-07 14:32:19 +00:00
mozilla Skipt tests with TF on windows. 2014-10-30 09:48:42 +00:00
preparser ES6: Duplicate properties are no longer an error 2014-08-20 14:25:48 +00:00
promises-aplus Enable access check tests that no longer fail with TF. 2014-08-14 13:24:57 +00:00
test262 Convert argument toObject() in Object.getOwnPropertyNames/Descriptors 2014-10-15 14:01:20 +00:00
test262-es6 Adjust test262-es6 following --harmony flag change 2014-11-04 18:38:08 +00:00
unittests Remove heap size filter for context disposal garbage collection. 2014-11-07 13:07:47 +00:00
webkit Skip tests with TF. 2014-10-30 12:38:48 +00:00