Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(35)

Issue 1302173007: [es6] Introduce a dedicated JSIteratorResult type. (Closed)

Created:
5 years, 3 months ago by Benedikt Meurer
Modified:
5 years, 3 months ago
CC:
v8-dev
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[es6] Introduce a dedicated JSIteratorResult type. Use a single JSIteratorResult type for all implementation provided iterator results (i.e. the String, Array and collection iterators, and also for generators). This removes one source of unnecessary polymorphism in for-of loops. It is accomplished by a new intrinsic %_CreateIterResultObject() that should be used to create iterator result objects from JavaScript builtins (there's a matching factory method for C++ code). Also restructure the %StringIteratorPrototype%.next() and %ArrayIteratorPrototype%.next() functions to be a bit more friendly to optimizing compilers. R=ishell@chromium.org Committed: https://crrev.com/72bc4b5c8a5c4279bcb8b340edbc8aa1c46d75a1 Cr-Commit-Position: refs/heads/master@{#30557}

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+494 lines, -262 lines) Patch
M src/array-iterator.js View 3 chunks +25 lines, -35 lines 0 comments Download
M src/bootstrapper.cc View 1 chunk +20 lines, -26 lines 0 comments Download
M src/collection-iterator.js View 2 chunks +11 lines, -11 lines 0 comments Download
M src/contexts.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/factory.h View 1 chunk +5 lines, -0 lines 0 comments Download
M src/factory.cc View 1 chunk +10 lines, -0 lines 0 comments Download
M src/full-codegen/arm/full-codegen-arm.cc View 2 chunks +42 lines, -24 lines 0 comments Download
M src/full-codegen/arm64/full-codegen-arm64.cc View 3 chunks +56 lines, -24 lines 0 comments Download
M src/full-codegen/full-codegen.h View 1 chunk +2 lines, -1 line 0 comments Download
M src/full-codegen/ia32/full-codegen-ia32.cc View 2 chunks +41 lines, -23 lines 0 comments Download
M src/full-codegen/mips/full-codegen-mips.cc View 3 chunks +40 lines, -22 lines 0 comments Download
M src/full-codegen/mips64/full-codegen-mips64.cc View 2 chunks +43 lines, -25 lines 0 comments Download
M src/full-codegen/x64/full-codegen-x64.cc View 2 chunks +43 lines, -29 lines 0 comments Download
M src/heap/objects-visiting.cc View 2 chunks +2 lines, -0 lines 0 comments Download
M src/hydrogen.h View 2 chunks +5 lines, -0 lines 0 comments Download
M src/hydrogen.cc View 2 chunks +42 lines, -0 lines 0 comments Download
M src/objects.h View 5 chunks +37 lines, -11 lines 0 comments Download
M src/objects-debug.cc View 2 chunks +11 lines, -0 lines 0 comments Download
M src/objects-inl.h View 4 chunks +8 lines, -0 lines 0 comments Download
M src/objects-printer.cc View 2 chunks +12 lines, -0 lines 0 comments Download
M src/runtime/runtime.h View 1 chunk +2 lines, -1 line 0 comments Download
M src/runtime/runtime-object.cc View 1 chunk +10 lines, -0 lines 0 comments Download
M src/string-iterator.js View 4 chunks +22 lines, -30 lines 0 comments Download
M src/x64/macro-assembler-x64.h View 1 chunk +4 lines, -0 lines 0 comments Download

Messages

Total messages: 18 (7 generated)
Benedikt Meurer
5 years, 3 months ago (2015-09-03 10:40:02 UTC) #1
Benedikt Meurer
Hey Igor, This is a first step towards faster iterators for ES6 for-of loops. With ...
5 years, 3 months ago (2015-09-03 10:41:28 UTC) #2
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1302173007/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1302173007/1
5 years, 3 months ago (2015-09-03 11:27:43 UTC) #4
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 3 months ago (2015-09-03 11:29:26 UTC) #6
Jarin
lgtm
5 years, 3 months ago (2015-09-03 12:05:35 UTC) #8
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1302173007/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1302173007/1
5 years, 3 months ago (2015-09-03 12:05:51 UTC) #10
commit-bot: I haz the power
Try jobs failed on following builders: v8_presubmit on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_presubmit/builds/5509)
5 years, 3 months ago (2015-09-03 12:09:18 UTC) #12
Michael Starzinger
LGTM (rubber-stamp for "heap", didn't look at the rest at all).
5 years, 3 months ago (2015-09-03 12:13:39 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1302173007/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1302173007/1
5 years, 3 months ago (2015-09-03 12:14:01 UTC) #16
commit-bot: I haz the power
Committed patchset #1 (id:1)
5 years, 3 months ago (2015-09-03 12:16:21 UTC) #17
commit-bot: I haz the power
5 years, 3 months ago (2015-09-03 12:16:35 UTC) #18
Message was sent while issue was closed.
Patchset 1 (id:??) landed as
https://crrev.com/72bc4b5c8a5c4279bcb8b340edbc8aa1c46d75a1
Cr-Commit-Position: refs/heads/master@{#30557}

Powered by Google App Engine
This is Rietveld 408576698