v8/test/mjsunit/strong
rossberg cb1bf4af3c [es6] Implement for-of iterator finalization
Implements iterator finalisation by desugaring for-of loops with an additional try-finally wrapper. See comment in parser.cc for details.

Also improved some AST printing facilities while there.

@Ross, I had to disable the bytecode generation test for for-of, because it got completely out of hand after this change (the new bytecode has 150+ lines). See the TODO that I assigned to you.

Patch set 1 is WIP patch by Georg (http://crrev.com/1695583003), patch set 2 relative changes.

@Georg, FYI, I changed the following:

- Moved try-finally out of the loop body, for performance, and in order to be able to handle `continue` correctly.
- Fixed scope management in ParseForStatement, which was the cause for the variable allocation failure.
- Fixed pre-existing zone initialisation bug in rewriter, which caused the crashes.
- Enabled all tests, adjusted a few others, added a couple more.

BUG=v8:2214
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#34111}
2016-02-18 10:49:55 +00:00
..
arrays.js [strong] Deprecate ellisions 2015-02-24 12:51:08 +00:00
class-extend-null.js [strong] Strong classes can't extend null 2015-07-13 12:40:38 +00:00
class-literals.js [strong] Implement revised strong class semantics 2015-09-22 16:34:52 +00:00
class-object-frozen.js [strong] Implement revised strong class semantics 2015-09-22 16:34:52 +00:00
classes.js Remove --harmony-arrow-functions flag 2015-09-30 19:50:40 +00:00
declaration-after-use.js Remove always-on --harmony-rest-parameters flag 2015-12-12 00:00:38 +00:00
delete.js [strong] deprecate empty sub-statements 2015-02-17 16:26:06 +00:00
destructuring.js Rename destructuring flag to "--harmony-destructuring-bind" 2015-11-18 23:30:09 +00:00
empty-statement.js [strong] Deprecate for-in 2015-02-19 13:50:41 +00:00
equality.js [strong] deprecate empty sub-statements 2015-02-17 16:26:06 +00:00
eval-direct.js [proxies] Make Object.{freeze,seal} behave correctly for proxies. 2015-12-07 11:01:35 +00:00
for-in.js [es6] Implement for-of iterator finalization 2016-02-18 10:49:55 +00:00
function-arity.js Remove always-on --harmony-rest-parameters flag 2015-12-12 00:00:38 +00:00
functions.js [strong] Implement strong property access semantics 2015-06-30 15:24:43 +00:00
implicit-conversions-constants.js [strong] Implement strong mode semantics for the count operation. 2015-06-30 14:22:08 +00:00
implicit-conversions-count.js [strong] Implement strong mode semantics for the count operation. 2015-06-30 14:22:08 +00:00
implicit-conversions-inlining.js [strong] Disallow implicit conversions for comparison 2015-05-12 15:23:50 +00:00
implicit-conversions.js [strong] Implement strong mode semantics for the count operation. 2015-06-30 14:22:08 +00:00
literals.js Remove always-on --harmony-rest-parameters flag 2015-12-12 00:00:38 +00:00
load-builtins.js [strong] Add tests for loading from super, loading with access checks 2015-07-02 15:23:48 +00:00
load-element-mutate-backing-store.js [strong] Implement strong property access semantics 2015-06-30 15:24:43 +00:00
load-element.js [strong] Implement strong property access semantics 2015-06-30 15:24:43 +00:00
load-property-mutate-backing-store.js [strong] Implement strong property access semantics 2015-06-30 15:24:43 +00:00
load-property.js [strong] Implement strong property access semantics 2015-06-30 15:24:43 +00:00
load-proxy.js [runtime] support new Proxy() instead of Proxy.create and install getPrototypeOf trap 2015-11-13 14:14:07 +00:00
load-super.js [strong] Add tests for loading from super, loading with access checks 2015-07-02 15:23:48 +00:00
mutually-recursive-classes.js Remove --harmony-arrow-functions flag 2015-09-30 19:50:40 +00:00
mutually-recursive-funcs.js [strong] Adding regression cases which should always continue working. 2015-02-16 17:57:43 +00:00
object-delete.js [strong] Implement per-object restrictions behaviour of delete operator 2015-06-01 11:39:16 +00:00
object-freeze-property.js [strong] Implement per-object restrictions behaviour of property freezing 2015-05-29 11:33:29 +00:00
object-set-prototype.js [strong] Implement per-object restrictions behaviour for prototype setting 2015-05-27 17:06:43 +00:00
super.js [es6] Remove harmony-classes flag 2015-06-26 21:16:58 +00:00
switch.js [strong] Implement static restrictions on switch statement 2015-04-16 13:29:20 +00:00
undefined.js Remove --harmony-arrow-functions flag 2015-09-30 19:50:40 +00:00
use-strong.js [strong] Implement static restrictions on direct eval 2015-04-13 17:25:15 +00:00
var-let-const.js [strong] Forbid var. 2015-02-17 15:41:25 +00:00