X87: [es6] Introduce a dedicated JSIteratorResult type.
authorchunyang.dai <chunyang.dai@intel.com>
Mon, 7 Sep 2015 08:10:22 +0000 (01:10 -0700)
committerCommit bot <commit-bot@chromium.org>
Mon, 7 Sep 2015 08:10:37 +0000 (08:10 +0000)
commit691f796f7297ec3076dc23a7d79bb7da7f1d10e1
tree1432c82a32370b129c5dcc80c36fbc4a6d9e3478
parent57d16cf417b7301e9d45417fcae81d00588f74ac
X87: [es6] Introduce a dedicated JSIteratorResult type.

port 72bc4b5c8a5c4279bcb8b340edbc8aa1c46d75a1 (r30557)

original commit message:

    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.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#30610}
src/full-codegen/x87/full-codegen-x87.cc