Stage ES2015 iterator finalization

This patch moves for-of closing to staging. There are a couple of
minor semantics bugs remaining in finalization along edge cases, but
we don't know of any stability issues.

BUG=v8:3566
R=rossberg
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#34254}
This commit is contained in:
littledan 2016-02-24 08:20:33 -08:00 committed by Commit bot
parent 906db74487
commit cc6d938444
2 changed files with 3 additions and 15 deletions

View File

@ -211,7 +211,6 @@ DEFINE_IMPLICATION(es_staging, harmony_tailcalls)
V(harmony_sharedarraybuffer, "harmony sharedarraybuffer") \
V(harmony_simd, "harmony simd") \
V(harmony_do_expressions, "harmony do-expressions") \
V(harmony_iterator_close, "harmony iterator finalization") \
V(harmony_tailcalls, "harmony tail calls") \
V(harmony_object_values_entries, "harmony Object.values / Object.entries") \
V(harmony_object_own_property_descriptors, \
@ -222,6 +221,7 @@ DEFINE_IMPLICATION(es_staging, harmony_tailcalls)
#define HARMONY_STAGED(V) \
V(harmony_function_name, "harmony Function name inference") \
V(harmony_regexp_lookbehind, "harmony regexp lookbehind") \
V(harmony_iterator_close, "harmony iterator finalization") \
V(harmony_instanceof, "harmony instanceof support")
// Features that are shipping (turned on by default, but internal flag remains).

View File

@ -55,20 +55,16 @@
# https://code.google.com/p/v8/issues/detail?id=4163
'built-ins/GeneratorPrototype/next/context-constructor-invocation': [FAIL],
# https://code.google.com/p/v8/issues/detail?id=3566
# https://bugs.chromium.org/p/v8/issues/detail?id=4775
'built-ins/Array/from/iter-map-fn-err': [FAIL],
'built-ins/Array/from/iter-set-elem-prop-err': [FAIL],
'built-ins/Map/iterator-close-after-set-failure': [FAIL],
'built-ins/Map/iterator-item-first-entry-returns-abrupt': [FAIL],
'built-ins/Map/iterator-item-second-entry-returns-abrupt': [FAIL],
'built-ins/Map/iterator-items-are-not-object-close-iterator': [FAIL],
'built-ins/Promise/all/iter-close': [FAIL],
'built-ins/Promise/race/iter-close': [PASS, FAIL],
'built-ins/Set/set-iterator-close-after-add-failure': [FAIL],
'built-ins/WeakMap/iterator-close-after-set-failure': [FAIL],
'built-ins/WeakMap/iterator-item-first-entry-returns-abrupt': [FAIL],
'built-ins/WeakMap/iterator-item-second-entry-returns-abrupt': [FAIL],
'built-ins/WeakMap/iterator-items-are-not-object-close-iterator': [FAIL],
'built-ins/WeakSet/iterator-close-after-add-failure': [FAIL],
# https://code.google.com/p/v8/issues/detail?id=4348
@ -80,17 +76,9 @@
'language/computed-property-names/class/static/method-symbol': [FAIL, FAIL_SLOPPY],
'language/computed-property-names/class/static/method-string': [FAIL, FAIL_SLOPPY],
# https://code.google.com/p/v8/issues/detail?id=3566
# https://bugs.chromium.org/p/v8/issues/detail?id=4776
'language/statements/for-of/body-dstr-assign-error': [FAIL],
'language/statements/for-of/body-put-error': [FAIL],
'language/statements/for-of/generator-close-via-break': [FAIL],
'language/statements/for-of/generator-close-via-return': [FAIL],
'language/statements/for-of/generator-close-via-throw': [FAIL],
'language/statements/for-of/iterator-close-get-method-error': [FAIL],
'language/statements/for-of/iterator-close-non-object': [FAIL],
'language/statements/for-of/iterator-close-via-break': [FAIL],
'language/statements/for-of/iterator-close-via-return': [FAIL],
'language/statements/for-of/iterator-close-via-throw': [FAIL],
# We do not expose Array.prototype.values
# https://code.google.com/p/v8/issues/detail?id=4247