v8/test/inspector
Caitlin Potter 2d889aa9a4 Reland "[esnext] load iterator.next only once at beginning of iteration"
https://github.com/tc39/ecma262/pull/988 gained concensus during the
september 2017 TC39 meetings. This moves the load of the "next" method
to the very beginning of the iteration protocol, rather than during
each iteration step.

This impacts:

- yield*
- for-of loops
- spread arguments
- array spreads

In the v8 implementation, this also affects async iteration versions of
these things (the sole exception being the Async-From-Sync iterator,
which requires a few more changes to work with this, likely done in a
followup patch).

This change introduces a new AST node, ResolvedProperty, which can be used
as a callee by Call nodes to produce the same bytecode as Property calls,
without observably re-loading the property. This is used in several
AST-desugarings involving the iteration protocol.

BUG=v8:6861, v8:5699
R=rmcilroy@chromium.org
TBR=neis@chromium.org, adamk@chromium.org

Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
Change-Id: I9685db6e85315ba8a2df87a4537c2bf491e1e35b
Reviewed-on: https://chromium-review.googlesource.com/857593
Commit-Queue: Caitlin Potter <caitp@igalia.com>
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50518}
2018-01-11 20:27:13 +00:00
..
console [inspector] rewritten test/inspector/let-const-with-api.js 2017-08-01 15:36:02 +00:00
cpu-profiler [coverage] Include operators in Conditional ranges 2017-11-20 12:09:30 +00:00
debugger Reland "[esnext] load iterator.next only once at beginning of iteration" 2018-01-11 20:27:13 +00:00
heap-profiler [heap-profiler] Allow intermediate sampling heap profile retrieval during recording. 2017-11-06 22:22:55 +00:00
runtime [proxy] Set [[ProxyTarget]] to null during revocation 2018-01-10 11:23:54 +00:00
sessions [inspector] split DebuggerAgent::breakpointsCookie 2017-10-06 22:01:16 +00:00
type-profiler [type-profile] Use vector list from isolate 2017-10-17 14:10:52 +00:00
BUILD.gn [inspector] Merge InspectorClientImpl into IsolateData 2017-05-22 00:48:27 +00:00
DEPS [inspector] introduce limit for amount of stored async stacks 2016-12-18 17:04:40 +00:00
inspector-test.cc [inspector] fixed dcheck in stack trace 2017-12-14 20:41:09 +00:00
inspector.gyp [inspector] Merge InspectorClientImpl into IsolateData 2017-05-22 00:48:27 +00:00
inspector.isolate [type-profile] Incorporate into inspector protocol. 2017-09-08 09:46:12 +00:00
inspector.status [test] Rebaseline inspector test. 2017-08-11 08:28:30 +00:00
isolate-data.cc Reland [inspector] introduced stackTraceId and externalAsyncTask API 2017-11-22 20:56:10 +00:00
isolate-data.h Reland [inspector] introduced stackTraceId and externalAsyncTask API 2017-11-22 20:56:10 +00:00
json-parse-expected.txt [inspector] Refactor protocol-test.js 2017-05-19 00:35:45 +00:00
json-parse.js [inspector] Refactor protocol-test.js 2017-05-19 00:35:45 +00:00
OWNERS Add COMPONENT tags to OWNERS files where appropriate 2017-05-22 10:15:28 +00:00
protocol-test.js [inspector] fixed dcheck in stack trace 2017-12-14 20:41:09 +00:00
task-runner.cc [cleanup] Fix (D)CHECK macros in src/{debug,inspector} 2017-09-25 12:20:59 +00:00
task-runner.h [inspector] Cleanup inspector test 2017-05-22 20:46:42 +00:00
testcfg.py [test] Check output on the worker process. 2018-01-04 14:12:31 +00:00