- 15 Feb, 2018 1 commit
-
-
Toon Verwaest authored
instance_class_name takes up space unnecessarily, and %_ClassOf and class_name implement [[Class]] which isn't part of ES2015+ anymore. Bug: Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I3a73f732ad83a616817fde9992f4e4d584638fa8 Reviewed-on: https://chromium-review.googlesource.com/776683Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#51309}
-
- 11 Mar, 2016 1 commit
-
-
adamk authored
ES2015 Object.prototype.toString semantics were enabled in version 4.9, which has been in stable Chrome for nearly two weeks at this point. R=littledan@chromium.org Review URL: https://codereview.chromium.org/1784033002 Cr-Commit-Position: refs/heads/master@{#34732}
-
- 24 Apr, 2015 1 commit
-
-
arv authored
This reverts commit d5565c1f. Getter and setter function names in ES6 are defined as "get foo" and "set foo". This also moves the logic for handling symbols from runtime-function.cc to v8natives.js. BUG=None LOG=N R=adamk@chromium.org Review URL: https://codereview.chromium.org/1093183006 Cr-Commit-Position: refs/heads/master@{#28050}
-
- 23 Apr, 2015 2 commits
-
-
arv authored
Revert of [es6] Map/Set size getter should have "get size" name (patchset #4 id:80001 of https://codereview.chromium.org/1094323005/) Reason for revert: Breaks GCMole ia32 http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20gcmole/builds/1685/steps/GCMole%20ia32/logs/stdio src/runtime/runtime-function.cc:96:3: warning: Possible problem with evaluation order. f->shared()->set_name(*NameToFunctionName(name)); ^ src/runtime/runtime-function.cc:96:3: warning: Possible problem with evaluation order. 2 warnings generated. Original issue's description: > [es6] Map/Set size getter should have "get size" name > > Getter and setter function names in ES6 are defined as "get foo" and > "set foo". > > BUG=None > LOG=N > R=adamk@chromium.org > > Committed: https://crrev.com/83c89a2e71a363afb35595f903423e650d788e42 > Cr-Commit-Position: refs/heads/master@{#28034} TBR=adamk@chromium.org,caitpotter88@gmail.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=None Review URL: https://codereview.chromium.org/1106713002 Cr-Commit-Position: refs/heads/master@{#28035}
-
arv authored
Getter and setter function names in ES6 are defined as "get foo" and "set foo". BUG=None LOG=N R=adamk@chromium.org Review URL: https://codereview.chromium.org/1094323005 Cr-Commit-Position: refs/heads/master@{#28034}
-
- 13 Apr, 2015 1 commit
-
-
arv authored
{Map, Set, WeakMap, WeakSet}.length should be 0. BUG=v8:4021 LOG=N R=adamk@chromium.org Review URL: https://codereview.chromium.org/1073233002 Cr-Commit-Position: refs/heads/master@{#27798}
-
- 18 Mar, 2015 1 commit
-
-
rossberg authored
R=dslomov@chromium.org BUG=460083,v8:3970,v8:3971 LOG=Y Review URL: https://codereview.chromium.org/1018923002 Cr-Commit-Position: refs/heads/master@{#27272}
-
- 23 Feb, 2015 1 commit
-
-
arv authored
The adder should be gotten before the iterator. Motivation: Once this is done we should be able to use a for-of loop instead which leads to cleaner code and correct behavior once the for-of loop correctly supports abrupt completion. BUG=None LOG=N R=adamk Review URL: https://codereview.chromium.org/949933002 Cr-Commit-Position: refs/heads/master@{#26803}
-
- 20 Feb, 2015 1 commit
-
-
arv authored
After further spec reading it turns out that we should not do ToObject on the iterable. BUG=None LOG=N R=adamk Review URL: https://codereview.chromium.org/941313003 Cr-Commit-Position: refs/heads/master@{#26786}
-
- 19 Feb, 2015 1 commit
-
-
arv authored
BUG=None LOG=N R=adamk Review URL: https://codereview.chromium.org/936793003 Cr-Commit-Position: refs/heads/master@{#26759}
-
- 19 Nov, 2014 1 commit
-
-
dslomov authored
Per Nov 2014 TC39 decision. R=adamk@chromium.org LOG=Y Review URL: https://codereview.chromium.org/739303002 Cr-Commit-Position: refs/heads/master@{#25429}
-
- 21 Oct, 2014 1 commit
-
-
dslomov@chromium.org authored
Updates Object.prototype.toString() to use algorithm described in harmony drafts. Currently, the behaviour is essentially the same as ES262's version, however this changes when internal structures such as Promise make use of symbolToStringTag (as they are supposed to, see v8:3241), and changes further once Symbol.toStringTag is exposed publicly. BUG=v8:3241, v8:3502 LOG=N R=dslomov@chromium.org Review URL: https://codereview.chromium.org/546803003 Patch from Caitlin Potter <caitpotter88@gmail.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24783 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 15 Oct, 2014 1 commit
-
-
svenpanne@chromium.org authored
Array.prototype.{every, filter, find, findIndex, forEach, map, some}: Use fresh primitive wrapper for calls. When the receiver is a primitive value, it's cast to an Object before entering the loop. Instead, it should be cast to an Object for each function call while in the loop. BUG=v8:3536 LOG=Y R=arv@chromium.org, svenpanne@chromium.org, wingo@igalia.com Review URL: https://codereview.chromium.org/553413002 Patch from Diego Pino <dpino@igalia.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24620 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 Aug, 2014 1 commit
-
-
arv@chromium.org authored
BUG=v8:3515 LOG=Y R=adamk@chromium.org, dslomov@chromium.org Review URL: https://codereview.chromium.org/478683002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23204 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Aug, 2014 1 commit
-
-
arv@chromium.org authored
Same for WeakMap/WeakSet https://bugs.ecmascript.org/show_bug.cgi?id=3111 The change from the reverted version is that LoadIC_Miss now uses Name instead of String. BUG=v8:3508 LOG=Y R=adamk@chromium.org, dslomov@chromium.org Review URL: https://codereview.chromium.org/464093002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23108 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Aug, 2014 3 commits
-
-
arv@chromium.org authored
Reason for revert: TestSetConstructorIterableValue(WeakSet) fails on x64.debug TBR=adamk@chromium.org,dslomov@chromium.org LOG=Y BUG= Review URL: https://codereview.chromium.org/461193002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23093 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
arv@chromium.org authored
Same for WeakMap/WeakSet https://bugs.ecmascript.org/show_bug.cgi?id=3111 BUG=v8:3508 LOG=Y R=dslomov@chromium.org Review URL: https://codereview.chromium.org/466003002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23091 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
arv@chromium.org authored
Add test for non object keys in the iterable passed to the constructor. BUG=v8:3399 LOG=Y R=rossberg@chromium.org Review URL: https://codereview.chromium.org/451033003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23090 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Aug, 2014 1 commit
-
-
rossberg@chromium.org authored
Now that iterators are enabled by default we need to correctly handle the parameter for WeakMap and WeakSet. If provided then the argument is iterated over to add entries to the WeakMap and WeakSet. BUG=v8:3399 LOG=Y R=adamk@chromium.org, rossberg@chromium.org Review URL: https://codereview.chromium.org/448013005 Patch from Erik Arvidsson <arv@chromium.org>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22999 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 Aug, 2014 1 commit
-
-
adamk@chromium.org authored
In doing so also remove all references to the --harmony-collections flag. Due to the way context snapshotting works, it's not possible to simply enable the flag by default. Depends on ES6 Symbols: https://codereview.chromium.org/421313004 BUG=v8:1622 LOG=Y R=arv@chromium.org, rossberg@chromium.org Review URL: https://codereview.chromium.org/427723002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22889 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 01 Jul, 2014 1 commit
-
-
rossberg@chromium.org authored
From the Harmony draft: https://people.mozilla.org/~jorendorff/es6-draft.html#sec-map.prototype.set https://people.mozilla.org/~jorendorff/es6-draft.html#sec-weakmap.prototype.set https://people.mozilla.org/~jorendorff/es6-draft.html#sec-set.prototype.add https://people.mozilla.org/~jorendorff/es6-draft.html#sec-weakset.prototype.add BUG=v8:3410 R=arv@chromium.org, rossberg@chromium.org Review URL: https://codereview.chromium.org/359173002 Patch from caitp <caitpotter88@gmail.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22111 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Jun, 2014 1 commit
-
-
adamk@chromium.org authored
When an iterable object is passed in as the argument to the Map and Set constructor the elements of the iterable object are used to populate the Map and Set. http://people.mozilla.org/~jorendorff/es6-draft.html#sec-map-iterable http://people.mozilla.org/~jorendorff/es6-draft.html#sec-set-iterable BUG=v8:3398 LOG=Y R=rossberg@chromium.org Review URL: https://codereview.chromium.org/345613003 Patch from Erik Arvidsson <arv@chromium.org>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21950 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 May, 2014 1 commit
-
-
adamk@chromium.org authored
This changes how Map/Set interacts with its iterators. When the underlying table is rehashed or cleared, we create a new table (like before) but we add a reference from the old table to the new table. We also add an array describing how to transition the iterator from the old table to the new table. When Next is called on the iterator it checks if there is a newer table that it should transition to. If there is, it updates the index based on the previously recorded changes and finally changes itself to point at the new table. With these changes Map/Set no longer keeps the iterators alive. Also, as before, the iterators keep the underlying table(s) alive but not the actual Map/Set. BUG=v8:1793 LOG=Y R=mstarzinger@chromium.org, rossberg@chromium.org Review URL: https://codereview.chromium.org/289503002 Patch from Erik Arvidsson <arv@chromium.org>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21389 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 06 May, 2014 1 commit
-
-
rossberg@chromium.org authored
R=jochen@chromium.org BUG= Review URL: https://codereview.chromium.org/266243003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21173 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 Apr, 2014 1 commit
-
-
adamk@chromium.org authored
This implements MapIterator and SetIterator which matches the same constructs in the ES6 spec. However, these 2 iterators are not exposed to user code yet. They are only used internally to implement Map.prototype.forEach and Set.prototype.forEach. Each iterator has a reference to the OrderedHashTable where it directly accesses the hash table's entries. The OrderedHashTable has a reference to the newest iterator and each iterator has a reference to the next and previous iterator, effectively creating a double linked list. When the OrderedHashTable is mutated (or replaced) all the iterators are updated. When the iterator iterates passed the end of the data table it closes itself. Closed iterators no longer have a reference to the OrderedHashTable and they are removed from the double linked list. In the case of Map/Set forEach, we manually call Close on the iterator in case an exception was thrown so that the iterator never reached the end. At this point the OrderedHashTable keeps all the non finished iterators alive but since the only thing we currently expose is forEach there are no unfinished iterators outside a forEach call. Once we expose the iterators to user code we will need to make the references from the OrderedHashTable to the iterators weak and have some mechanism to close an iterator when it is garbage collected. BUG=1793, 2323 LOG=Y R=adamk@chromium.org TBR=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/238063009 Patch from Erik Arvidsson <arv@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20857 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 Apr, 2014 4 commits
-
-
adamk@chromium.org authored
This reverts https://code.google.com/p/v8/source/detail?r=20823 It broke Windows builds. Will need to find a Windows try bot to figure out why. TBR=mstarzinger@chromium.org,arv@chromium.org Review URL: https://codereview.chromium.org/238973011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20824 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
adamk@chromium.org authored
This implements MapIterator and SetIterator which matches the same constructs in the ES6 spec. However, these 2 iterators are not exposed to user code yet. They are only used internally to implement Map.prototype.forEach and Set.prototype.forEach. Each iterator has a reference to the OrderedHashTable where it directly accesses the hash table's entries. The OrderedHashTable has a reference to the newest iterator and each iterator has a reference to the next and previous iterator, effectively creating a double linked list. When the OrderedHashTable is mutated (or replaced) all the iterators are updated. When the iterator iterates passed the end of the data table it closes itself. Closed iterators no longer have a reference to the OrderedHashTable and they are removed from the double linked list. In the case of Map/Set forEach, we manually call Close on the iterator in case an exception was thrown so that the iterator never reached the end. At this point the OrderedHashTable keeps all the non finished iterators alive but since the only thing we currently expose is forEach there are no unfinished iterators outside a forEach call. Once we expose the iterators to user code we will need to make the references from the OrderedHashTable to the iterators weak and have some mechanism to close an iterator when it is garbage collected. BUG=1793,2323 LOG=Y TBR=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/240323003 Patch from Erik Arvidsson <arv@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20823 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
adamk@chromium.org authored
This reverts commit https://code.google.com/p/v8/source/detail?r=20781. It broke the Win32 builders. TBR=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/239163012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20782 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
adamk@chromium.org authored
This implements MapIterator and SetIterator which matches the same constructs in the ES6 spec. However, these 2 iterators are not exposed to user code yet. They are only used internally to implement Map.prototype.forEach and Set.prototype.forEach. Each iterator has a reference to the OrderedHashTable where it directly accesses the hash table's entries. The OrderedHashTable has a reference to the newest iterator and each iterator has a reference to the next and previous iterator, effectively creating a double linked list. When the OrderedHashTable is mutated (or replaced) all the iterators are updated. When the iterator iterates passed the end of the data table it closes itself. Closed iterators no longer have a reference to the OrderedHashTable and they are removed from the double linked list. In the case of Map/Set forEach, we manually call Close on the iterator in case an exception was thrown so that the iterator never reached the end. At this point the OrderedHashTable keeps all the non finished iterators alive but since the only thing we currently expose is forEach there are no unfinished iterators outside a forEach call. Once we expose the iterators to user code we will need to make the references from the OrderedHashTable to the iterators weak and have some mechanism to close an iterator when it is garbage collected. BUG=1793,2323 LOG=Y R=adamk@chromium.org, mstarzinger@chromium.org Review URL: https://codereview.chromium.org/236143002 Patch from Erik Arvidsson <arv@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20781 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 31 Mar, 2014 1 commit
-
-
jochen@chromium.org authored
> R=mstarzinger@chromium.org > BUG= > > Committed: https://code.google.com/p/v8/source/detail?r=20211 > > Review URL: https://codereview.chromium.org/206163004 R=rossberg@chromium.org TBR=rossberg@chromium.org LOG=y BUG=n Review URL: https://codereview.chromium.org/219303002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20353 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 27 Mar, 2014 1 commit
-
-
rossberg@chromium.org authored
R=mstarzinger@chromium.org BUG= Committed: https://code.google.com/p/v8/source/detail?r=20211 Review URL: https://codereview.chromium.org/206163004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20313 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Mar, 2014 1 commit
-
-
rossberg@chromium.org authored
Reason: breaks Blink layout tests. R=machenbach@chromium.org BUG= Review URL: https://codereview.chromium.org/210853003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20233 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 Mar, 2014 1 commit
-
-
rossberg@chromium.org authored
R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/206163004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20211 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 Mar, 2014 1 commit
-
-
rossberg@chromium.org authored
Split collections flag into weak and non-weak. R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/201593004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20019 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Jan, 2014 1 commit
-
-
svenpanne@chromium.org authored
BUG=v8:3069 LOG=Y R=rossberg@chromium.org Review URL: https://codereview.chromium.org/147143003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18892 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Nov, 2013 1 commit
-
-
yangguo@chromium.org authored
The changes are (excluding presubmit.py) mechanical. I added the following lines after the check and iterated the presubmit script until all errors went away: f = open(name, "w"); if contents.endswith('\n\n'): f.write(contents[0:-1]) else: f.write(contents + '\n') R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/82803005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18017 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 01 Aug, 2013 1 commit
-
-
dslomov@chromium.org authored
Even though we do not yet allow Map, Set, WeakMap and WeakSet to be subclassed we need to ensure that we do not allow them to be [[Call]]ed to allow them to be subclassed in the future. BUG=v8:2819 R=dslomov@chromium.org, mstarzinger@chromium.org Review URL: https://codereview.chromium.org/21400002 Patch from Erik Arvidsson <arv@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16006 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Jul, 2013 2 commits
-
-
mstarzinger@chromium.org authored
R=yangguo@chromium.org BUG=v8:2793 Review URL: https://codereview.chromium.org/19948002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15810 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
WeakSets work similar to ordinary Sets but the value (which must be an object) is held weakly. This is available under --harmony-collections BUG=v8:2785 R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/19678023 Patch from Erik Arvidsson <arv@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15792 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 01 Jul, 2013 1 commit
-
-
mstarzinger@chromium.org authored
R=rossberg@chromium.org BUG=v8:2753 TEST=mjsunit/harmony/collections Review URL: https://codereview.chromium.org/18352002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15421 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-