- 17 Aug, 2016 2 commits
-
-
bakkot authored
Reland of Amends the TypedArray constructor to use the path for primitives for all (patchset #1 id:1 of https://codereview.chromium.org/2120763002/ ) Reason for revert: WebGL tests have been updated and rolled (at https://codereview.chromium.org/2227023002), so this should no longer fail outdated tests. Original issue's description: > Revert of Amends the TypedArray constructor to use the path for primitives for all (patchset #4 id:60001 of https://codereview.chromium.org/2096873002/ ) > > Reason for revert: > Speculative revert to unblock roll https://codereview.chromium.org/2114113002/ > > Original issue's description: > > Amends the TypedArray constructor to use the path for primitives for all > > types of primitives, not just undefined, booleans, numbers, and strings. > > (The missing cases were null and Symbol.) This is required by the > > specification, and there are test262 tests which we were failing due to > > this bug. > > > > BUG=v8:5124 > > > > Committed: https://crrev.com/f788bd9cce19815cba746e47bb65abfe25c16208 > > Committed: https://crrev.com/f772c22cd1c492aa0235a8e6012d0386146d2eb2 > > Cr-Original-Commit-Position: refs/heads/master@{#37234} > > Cr-Commit-Position: refs/heads/master@{#37407} > > TBR=littledan@chromium.org,bakkot@google.com > NOTREECHECKS=true > BUG=v8:5124 > > Committed: https://crrev.com/9c0aef52fa672db856ebfac7f4bdcd7d7b103663 > Cr-Commit-Position: refs/heads/master@{#37487} TBR=littledan@chromium.org,hablich@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=v8:5124 Review-Url: https://codereview.chromium.org/2255543002 Cr-Commit-Position: refs/heads/master@{#38691}
-
bakkot authored
Reland of Amend DataView, ArrayBuffer, and TypedArray methods to use ToIndex. (patchset #2 id:170001 of https://codereview.chromium.org/2113593002/ ) Reason for revert: WebGL tests have been updated and rolled (at https://codereview.chromium.org/2227023002), so this should no longer fail outdated tests. Original issue's description: > Revert of Amend DataView, ArrayBuffer, and TypedArray methods to use ToIndex. (patchset #8 id:140001 of https://codereview.chromium.org/2090353003/ ) > > Reason for revert: > Speculative revert to unblock roll: https://codereview.chromium.org/2107223003/ > > Original issue's description: > > Amend DataView, ArrayBuffer, and TypedArray methods to use ToIndex. > > > > The spec was modified to relax some requirements which implementors had not been > > enforcing. Part of this process involved introducing a new abstract operation > > ToIndex, which had partial overlap with our existing semantics as well as some > > differences (most notably treating undefined as 0). Test262 tests were introduced to > > check for the new semantics, some of which we were failing. This patch amends the > > parts of our implementation corresponding to specification algorithms which use > > ToIndex to follow its semantics precisely. > > > > BUG=v8:4784,v8:5120 > > > > Committed: https://crrev.com/09720349ea058d178521ec58d0a5676443a5a132 > > Cr-Commit-Position: refs/heads/master@{#37406} > > TBR=littledan@chromium.org,adamk@chromium.org,bakkot@google.com > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=v8:4784,v8:5120 > > Committed: https://crrev.com/b1f7f1f4e41a723d5f997738a07e35a031713b8f > Cr-Commit-Position: refs/heads/master@{#37417} TBR=littledan@chromium.org,adamk@chromium.org,hablich@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=v8:4784,v8:5120 Review-Url: https://codereview.chromium.org/2247073004 Cr-Commit-Position: refs/heads/master@{#38689}
-
- 15 Aug, 2016 1 commit
-
-
mattloring authored
Removes dependence on InnerArrayIndexOf/InnerArrayLastIndexOf and reduces type polution caused by sharing these functions between standard and typed arrays. BUG= Review-Url: https://codereview.chromium.org/2243523002 Cr-Commit-Position: refs/heads/master@{#38637}
-
- 09 Aug, 2016 1 commit
-
-
jgruber authored
These were the final remnants of error code written in JavaScript. BUG= Review-Url: https://codereview.chromium.org/2222893002 Cr-Commit-Position: refs/heads/master@{#38475}
-
- 03 Aug, 2016 1 commit
-
-
caitp authored
BUG=v8:5162 R=bmeurer@chromium.org, cbruni@chromium.org Review-Url: https://codereview.chromium.org/2205883003 Cr-Commit-Position: refs/heads/master@{#38266}
-
- 02 Aug, 2016 1 commit
-
-
machenbach authored
Revert of [builtins] implement Array.prototype.includes in TurboFan (patchset #20 id:380001 of https://codereview.chromium.org/2146293003/ ) Reason for revert: [Sheriff] Breaks: https://build.chromium.org/p/client.v8.ports/builders/V8%20Arm%20-%20builder/builds/2592 Original issue's description: > [builtins] implement Array.prototype.includes in TurboFan > > BUG=v8:5162 > R=bmeurer@chromium.org, ishell@chromium.org > > Committed: https://crrev.com/a488b5d8eb111a4883dc400bd826d079420edd68 > Cr-Commit-Position: refs/heads/master@{#38223} TBR=adamk@chromium.org,bmeurer@chromium.org,cbruni@chromium.org,danno@chromium.org,ishell@chromium.org,littledan@chromium.org,caitp@igalia.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5162 Review-Url: https://codereview.chromium.org/2202163002 Cr-Commit-Position: refs/heads/master@{#38226}
-
- 01 Aug, 2016 1 commit
-
-
caitp authored
BUG=v8:5162 R=bmeurer@chromium.org, ishell@chromium.org Review-Url: https://codereview.chromium.org/2146293003 Cr-Commit-Position: refs/heads/master@{#38223}
-
- 02 Jul, 2016 1 commit
-
-
hablich authored
Revert of Amends the TypedArray constructor to use the path for primitives for all (patchset #4 id:60001 of https://codereview.chromium.org/2096873002/ ) Reason for revert: Speculative revert to unblock roll https://codereview.chromium.org/2114113002/ Original issue's description: > Amends the TypedArray constructor to use the path for primitives for all > types of primitives, not just undefined, booleans, numbers, and strings. > (The missing cases were null and Symbol.) This is required by the > specification, and there are test262 tests which we were failing due to > this bug. > > BUG=v8:5124 > > Committed: https://crrev.com/f788bd9cce19815cba746e47bb65abfe25c16208 > Committed: https://crrev.com/f772c22cd1c492aa0235a8e6012d0386146d2eb2 > Cr-Original-Commit-Position: refs/heads/master@{#37234} > Cr-Commit-Position: refs/heads/master@{#37407} TBR=littledan@chromium.org,bakkot@google.com NOTREECHECKS=true BUG=v8:5124 Review-Url: https://codereview.chromium.org/2120763002 Cr-Commit-Position: refs/heads/master@{#37487}
-
- 30 Jun, 2016 1 commit
-
-
hablich authored
Revert of Amend DataView, ArrayBuffer, and TypedArray methods to use ToIndex. (patchset #8 id:140001 of https://codereview.chromium.org/2090353003/ ) Reason for revert: Speculative revert to unblock roll: https://codereview.chromium.org/2107223003/ Original issue's description: > Amend DataView, ArrayBuffer, and TypedArray methods to use ToIndex. > > The spec was modified to relax some requirements which implementors had not been > enforcing. Part of this process involved introducing a new abstract operation > ToIndex, which had partial overlap with our existing semantics as well as some > differences (most notably treating undefined as 0). Test262 tests were introduced to > check for the new semantics, some of which we were failing. This patch amends the > parts of our implementation corresponding to specification algorithms which use > ToIndex to follow its semantics precisely. > > BUG=v8:4784,v8:5120 > > Committed: https://crrev.com/09720349ea058d178521ec58d0a5676443a5a132 > Cr-Commit-Position: refs/heads/master@{#37406} TBR=littledan@chromium.org,adamk@chromium.org,bakkot@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4784,v8:5120 Review-Url: https://codereview.chromium.org/2113593002 Cr-Commit-Position: refs/heads/master@{#37417}
-
- 29 Jun, 2016 2 commits
-
-
bakkot authored
types of primitives, not just undefined, booleans, numbers, and strings. (The missing cases were null and Symbol.) This is required by the specification, and there are test262 tests which we were failing due to this bug. BUG=v8:5124 Committed: https://crrev.com/f788bd9cce19815cba746e47bb65abfe25c16208 Review-Url: https://codereview.chromium.org/2096873002 Cr-Original-Commit-Position: refs/heads/master@{#37234} Cr-Commit-Position: refs/heads/master@{#37407}
-
bakkot authored
The spec was modified to relax some requirements which implementors had not been enforcing. Part of this process involved introducing a new abstract operation ToIndex, which had partial overlap with our existing semantics as well as some differences (most notably treating undefined as 0). Test262 tests were introduced to check for the new semantics, some of which we were failing. This patch amends the parts of our implementation corresponding to specification algorithms which use ToIndex to follow its semantics precisely. BUG=v8:4784,v8:5120 Review-Url: https://codereview.chromium.org/2090353003 Cr-Commit-Position: refs/heads/master@{#37406}
-
- 24 Jun, 2016 3 commits
-
-
machenbach authored
Revert of Amends the TypedArray constructor to use the path for primitives for all (patchset #3 id:40001 of https://codereview.chromium.org/2096873002/ ) Reason for revert: [Sheriff] Breaks layout tests. Please rebase upstream if intended: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/7691 Original issue's description: > Amends the TypedArray constructor to use the path for primitives for all > types of primitives, not just undefined, booleans, numbers, and strings. > (The missing cases were null and Symbol.) This is required by the > specification, and there are test262 tests which we were failing due to > this bug. > > BUG=v8:5124 > > Committed: https://crrev.com/f788bd9cce19815cba746e47bb65abfe25c16208 > Cr-Commit-Position: refs/heads/master@{#37234} TBR=littledan@chromium.org,bakkot@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5124 Review-Url: https://codereview.chromium.org/2091693004 Cr-Commit-Position: refs/heads/master@{#37236}
-
adamk authored
Flags removed (all begin with "harmony-"): function-name instanceof iterator-close unicode-regexps regexp-exec regexp-subclass species BUG=v8:3566, v8:3648, v8:3699, v8:4093, v8:4447, v8:4602 Review-Url: https://codereview.chromium.org/2096933002 Cr-Commit-Position: refs/heads/master@{#37235}
-
bakkot authored
types of primitives, not just undefined, booleans, numbers, and strings. (The missing cases were null and Symbol.) This is required by the specification, and there are test262 tests which we were failing due to this bug. BUG=v8:5124 Review-Url: https://codereview.chromium.org/2096873002 Cr-Commit-Position: refs/heads/master@{#37234}
-
- 23 Jun, 2016 1 commit
-
-
bakkot authored
TypedArrays store their true length in an internal slot. This is normally reflected in the .length property, but that property is configurable. Algorithms which need the length of a typed array are to use the internal slot, not the property; TypedArray.prototype.set was not doing this. BUG=v8:5133 Review-Url: https://codereview.chromium.org/2091153002 Cr-Commit-Position: refs/heads/master@{#37232}
-
- 08 Jun, 2016 1 commit
-
-
gsathya authored
Revert "Revert of [builtins] Properly optimize TypedArray/DataView accessors. (patchset #3 id:40001 of https://codereview.chromium.org/2042013003/ )" This reverts commit d3a43e47. This patch also adds typed_array_fun and typed_array_protoype to the native context. These are used in InstallTypedArray to set up the prototype chain correctly for each typed array sub class. This removes the need to later monkey patch them prototype chain in typedarray.js. This mechanism is also used to get hold of the TypedArray in typedarray.js, removing the need for a global TypedArray. This patch updates CallRuntime.golden to account for the two extra native runtime calls. This patch also fixes some formatting issues (by running git cl format). BUG=chromium:579905, chromium:593634, v8:4085, v8:5073 Review-Url: https://codereview.chromium.org/2046333002 Cr-Commit-Position: refs/heads/master@{#36811}
-
- 07 Jun, 2016 2 commits
-
-
machenbach authored
Revert of [builtins] Properly optimize TypedArray/DataView accessors. (patchset #3 id:40001 of https://codereview.chromium.org/2042013003/ ) Reason for revert: Blink: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/7296 Original issue's description: > [builtins] Properly optimize TypedArray/DataView accessors. > > The following getters were moved to the TypedArray/DataView prototype > chain with ES2015, and hence need different treatment now: > > - DataView.prototype.buffer > - DataView.prototype.byteLength > - DataView.prototype.byteOffset > - TypedArray.prototype.buffer > - TypedArray.prototype.byteLength > - TypedArray.prototype.byteOffset > - TypedArray.prototype.length > > Instead of having special magic on the LoadIC in the IC system and the > optimizing compilers, as we used to do before (and which we got rid of > already), we just treat those as normal accessors and make them > recognizable via the BuiltinFunctionId mechanism. This allows us to > remove some of the additional magic from the IC subsystem, and just > extend the BuiltinFunctionId mechanism in Crankshaft slightly to cover > these cases too (TurboFan doesn't yet support accessors, but that will > be fixed soonish anyways). > > This addresses most of the 15-20% regression we saw on the Octane > GameBoy emulator benchmark. > > BUG=chromium:579905,chromium:593634,v8:4085,v8:5073 > R=yangguo@chromium.org > > Committed: https://crrev.com/1ef737026565ea2becc84f30cfd432e581d50c6b > Cr-Commit-Position: refs/heads/master@{#36782} TBR=yangguo@chromium.org,bmeurer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:579905,chromium:593634,v8:4085,v8:5073 Review-Url: https://codereview.chromium.org/2039093005 Cr-Commit-Position: refs/heads/master@{#36783}
-
bmeurer authored
The following getters were moved to the TypedArray/DataView prototype chain with ES2015, and hence need different treatment now: - DataView.prototype.buffer - DataView.prototype.byteLength - DataView.prototype.byteOffset - TypedArray.prototype.buffer - TypedArray.prototype.byteLength - TypedArray.prototype.byteOffset - TypedArray.prototype.length Instead of having special magic on the LoadIC in the IC system and the optimizing compilers, as we used to do before (and which we got rid of already), we just treat those as normal accessors and make them recognizable via the BuiltinFunctionId mechanism. This allows us to remove some of the additional magic from the IC subsystem, and just extend the BuiltinFunctionId mechanism in Crankshaft slightly to cover these cases too (TurboFan doesn't yet support accessors, but that will be fixed soonish anyways). This addresses most of the 15-20% regression we saw on the Octane GameBoy emulator benchmark. BUG=chromium:579905,chromium:593634,v8:4085,v8:5073 R=yangguo@chromium.org Review-Url: https://codereview.chromium.org/2042013003 Cr-Commit-Position: refs/heads/master@{#36782}
-
- 25 May, 2016 1 commit
-
-
gsathya authored
Removes the DONT_DELETE enum bit from the properties to make them configurable. Also, updates the regress-typedarray-length test to -- - Check for true boolean return value on deletion of these properties. - Check for undefined return value on trying to access these properties after deletion. BUG=v8:4902 LOG=Y Review-Url: https://codereview.chromium.org/2001393004 Cr-Commit-Position: refs/heads/master@{#36528}
-
- 13 May, 2016 1 commit
-
-
gsathya authored
This reverts commit 41d571df. Reason for revert: This patch breaks the correctness of the typedarray properties such as length, byteOffset, byteLength. The accessor check optimization code is dead code eliminated. A follow up patch will fix this optimization correctly. BUG=chromium:593634 Review-Url: https://codereview.chromium.org/1977983002 Cr-Commit-Position: refs/heads/master@{#36254}
-
- 09 May, 2016 1 commit
-
-
gsathya authored
This patch installs %TypedArray% and its prototype on the native context, and wires them up to each TypedArray subclass. This is later used to check the holder of length, byteLength and byteOffset is %Typedarray% and apply the appropriate optimizations. BUG=chromium:593634 LOG=Y Review-Url: https://codereview.chromium.org/1949863002 Cr-Commit-Position: refs/heads/master@{#36116}
-
- 02 May, 2016 1 commit
-
-
littledan authored
The ECMA 402 implementation previously pushed directly to real Arrays, which risks having observably incorrect behavior in the presence of monkey patching. This patch uses InternalArrays instead to avoid that hazard. R=jshin@chromium.org,yangguo@chromium.org BUG=chromium:604299 LOG=N Review-Url: https://codereview.chromium.org/1923803002 Cr-Commit-Position: refs/heads/master@{#35949}
-
- 14 Apr, 2016 1 commit
-
-
verwaest authored
This should bring back the performance of speedometer-backbone at least very close to the performance before @@species. BUG=chromium:596825 LOG=n Review URL: https://codereview.chromium.org/1879053003 Cr-Commit-Position: refs/heads/master@{#35468}
-
- 18 Mar, 2016 1 commit
-
-
littledan authored
Revert of Restore per-TypedArray-class length accessors as a perf workaround (patchset #2 id:20001 of https://codereview.chromium.org/1624383003/ ) Reason for revert: This patch actually seemed to cause a further GameBoy regression! Reverting it seems to address the regression. Original issue's description: > Restore per-TypedArray-class length accessors as a perf workaround > > This patch is a workaround to the performance regression caused by > implementing the ES2015 TypedArray prototype chain: Include a > per-TypedArray-subclass length getter so that the superclass getter does > not become polymorphic. The patch appears to fix a regression in the > Gameboy Octane benchmark. > > BUG=chromium:579905 > R=adamk > LOG=Y > > Committed: https://crrev.com/03ce7711e474a0ef74f723b30ae1527c89dec010 > Cr-Commit-Position: refs/heads/master@{#33501} R=adamk@chromium.org BUG=chromium:579905,chromium:593634 LOG=Y Review URL: https://codereview.chromium.org/1812143004 Cr-Commit-Position: refs/heads/master@{#34906}
-
- 10 Mar, 2016 2 commits
-
-
littledan authored
- Make separate iterator functions for TypedArrays which do a type check (and in the future should check for detached TypedArrays) - Share the toString method with Arrays BUG=v8:4785 R=adamk LOG=Y Review URL: https://codereview.chromium.org/1780113002 Cr-Commit-Position: refs/heads/master@{#34698}
-
littledan authored
When the TypedArray iterator constructor code path was added, a technically incorrect optimization was added which uses the arraylike code path on array arguments, even though the %ArrayIterator% could have been monkey-patched to give different behavior. A previous patch removed this optimization, and this patch restores it due to the huge performance regression that resulted. The optimization was previously removed in https://codereview.chromium.org/1767893002 BUG=chromium:593644 R=adamk LOG=Y Review URL: https://codereview.chromium.org/1779373002 Cr-Commit-Position: refs/heads/master@{#34697}
-
- 08 Mar, 2016 1 commit
-
-
littledan authored
A previous spec compliance fix for TypedArrays caused a ~4x performance regression. This patch removes the regression by calling out to a path within the runtime which implements array copying more efficiently. BUG=chromium:592007 R=adamk LOG=Y Review URL: https://codereview.chromium.org/1767893002 Cr-Commit-Position: refs/heads/master@{#34601}
-
- 02 Mar, 2016 1 commit
-
-
littledan authored
The ES2016 draft spec defines a sort of fast path for constructing a TypedArray based on another TypedArray. This patch implements that alternative path in TypedArray construction. It is verified by test262 tests, which now pass. This patch also has a slight cleanup of TypedArray code by using a macro for TypedArray type checks, as is done for other types. This patch includes a minor spec violation: In the same-type case, the spec indicates that the underlying ArrayBuffer should be copied until the end, and this is fixed up by making the [[ArrayLength]] shorter. This is observable with the buffer getter. This patch just copies the used part of the underlying ArrayBuffer. R=adamk BUG=v8:4726 LOG=Y Review URL: https://codereview.chromium.org/1754593003 Cr-Commit-Position: refs/heads/master@{#34443}
-
- 01 Mar, 2016 1 commit
-
-
littledan authored
This patch fixes %TypedArray%.from to follow the ES2016 draft spec more precisely. Specifically, the input is first converted to an ArrayLike, and then afterwards, the mapping function is run and the results written into the TypedArray. This fixes a test262 test. R=adamk LOG=Y BUG=v8:4782 Review URL: https://codereview.chromium.org/1743463004 Cr-Commit-Position: refs/heads/master@{#34373}
-
- 26 Feb, 2016 4 commits
-
-
littledan authored
Reland of Test262 roll, 2016-2-23 (patchset #1 id:1 of https://codereview.chromium.org/1736223002/ ) Reason for revert: Intl change relanded https://codereview.chromium.org/1745483002/ Original issue's description: > Revert of Test262 roll, 2016-2-23 (patchset #2 id:20001 of https://codereview.chromium.org/1738033002/ ) > > Reason for revert: > An Intl change that this depends on breaks a bot > > Original issue's description: > > Test262 roll, 2016-2-23 > > > > R=adamk > > > > Committed: https://crrev.com/34492040fbfb04fead21416245c8696b9847e751 > > Cr-Commit-Position: refs/heads/master@{#34312} > > TBR=adamk@chromium.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > > Committed: https://crrev.com/3b829ad80628bf521aa78255c2e5e20040a57b5f > Cr-Commit-Position: refs/heads/master@{#34313} TBR=adamk@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1739533006 Cr-Commit-Position: refs/heads/master@{#34338}
-
littledan authored
Revert of Test262 roll, 2016-2-23 (patchset #2 id:20001 of https://codereview.chromium.org/1738033002/ ) Reason for revert: An Intl change that this depends on breaks a bot Original issue's description: > Test262 roll, 2016-2-23 > > R=adamk > > Committed: https://crrev.com/34492040fbfb04fead21416245c8696b9847e751 > Cr-Commit-Position: refs/heads/master@{#34312} TBR=adamk@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1736223002 Cr-Commit-Position: refs/heads/master@{#34313}
-
littledan authored
R=adamk Review URL: https://codereview.chromium.org/1738033002 Cr-Commit-Position: refs/heads/master@{#34312}
-
littledan authored
BUG=v8:4315 R=adamk LOG=Y Review URL: https://codereview.chromium.org/1734223004 Cr-Commit-Position: refs/heads/master@{#34310}
-
- 19 Feb, 2016 1 commit
-
-
bmeurer authored
The DataView constructor calls into C++ anyway, and is easier to deal with this way, especially since we don't have the half initialized object floating through JavaScript. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1712163002 Cr-Commit-Position: refs/heads/master@{#34145}
-
- 11 Feb, 2016 1 commit
-
-
bmeurer authored
There are a bunch of places in our builtins where we use %_Arguments and %_ArgumentsLength for no good reason, as arguments object and/or rest parameter is as good and performant in these cases. Now the only uses of %_Arguments and %_ArgumentsLength left are in string.js, which requires dedicated investigation. CQ_INCLUDE_TRYBOTS=tryserver.v8:v8_linux_nosnap_dbg R=yangguo@chromium.org Committed: https://crrev.com/2160429fd458e3c095475e718c97f77ac90d906f Cr-Commit-Position: refs/heads/master@{#33834} Review URL: https://codereview.chromium.org/1678953004 Cr-Commit-Position: refs/heads/master@{#33881}
-
- 09 Feb, 2016 3 commits
-
-
bmeurer authored
Revert of [builtins] Remove bunch of uses of %_Arguments and %_ArgumentsLength. (patchset #1 id:1 of https://codereview.chromium.org/1678953004/ ) Reason for revert: Breaks tree Original issue's description: > [builtins] Remove bunch of uses of %_Arguments and %_ArgumentsLength. > > There are a bunch of places in our builtins where we use %_Arguments and > %_ArgumentsLength for no good reason, as arguments object and/or rest > parameter is as good and performant in these cases. Now the only uses > of %_Arguments and %_ArgumentsLength left are in string.js, which > requires dedicated investigation. > > R=yangguo@chromium.org > > Committed: https://crrev.com/2160429fd458e3c095475e718c97f77ac90d906f > Cr-Commit-Position: refs/heads/master@{#33834} TBR=yangguo@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1677063005 Cr-Commit-Position: refs/heads/master@{#33835}
-
bmeurer authored
There are a bunch of places in our builtins where we use %_Arguments and %_ArgumentsLength for no good reason, as arguments object and/or rest parameter is as good and performant in these cases. Now the only uses of %_Arguments and %_ArgumentsLength left are in string.js, which requires dedicated investigation. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1678953004 Cr-Commit-Position: refs/heads/master@{#33834}
-
bmeurer authored
By now only the default %TypedArray%.prototype.sort compare function and the JS implementation of SameValueZero were still using the odd %_IsMinusZero intrinsic, whose semantics both included a number check (actually HeapNumber test) plus testing if the heap number stores the special -0 value. In both cases we already know that we deal with number so we can reduce it to a simple number test for -0, which can be expressed via dividing 1 by that value and checking the sign of the result. In case of the compare function, we can be even smarter and work with the reciprocal values in case x and y are equal to 0 (although long term we should probably rewrite the fast case for the typed array sorting function in C++ anyway, which will be way, way faster than our handwritten callback-style, type-feedback polluted JS implementation). R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1680783002 Cr-Commit-Position: refs/heads/master@{#33833}
-
- 08 Feb, 2016 1 commit
-
-
littledan authored
ES2016 TypedArray subclassing semantics break the Node.js Buffer module, also used on the web. I wrote a pull request against the web and Node versions to fix the issue, but the pull request has not yet been granted, and this is blocking shipping the change. For now, this patch extends the web compatibility workaround to the --harmony-species flag, so that Symbol.species and associated subclassing semantics can ship independently. R=cbruni BUG=v8:4665 LOG=Y Review URL: https://codereview.chromium.org/1678123002 Cr-Commit-Position: refs/heads/master@{#33826}
-
- 26 Jan, 2016 1 commit
-
-
littledan authored
Functions like DataView.prototype.getUint8 should have length 1, and DataView.prototype.setUint8 should have length 2, as their endianness arguments are optional. Additionally, TypedArray.prototype.set.length should be 2. This follows the ES2015 specification, and a new test262 test tests for it. This patch fixes the functions' lengths. R=adamk Review URL: https://codereview.chromium.org/1636953003 Cr-Commit-Position: refs/heads/master@{#33531}
-