- 10 Mar, 2018 1 commit
-
-
Jakob Kummerow authored
Add BigInt to the list of allowed result types. Bug: v8:6791, chromium:819871 Change-Id: Ib636859da07b38c462ce7017d720e5370ba618d6 Reviewed-on: https://chromium-review.googlesource.com/957422Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#51859}
-
- 06 Mar, 2018 1 commit
-
-
Jakob Kummerow authored
Bug: chromium:819026 Change-Id: I2c58d5e2892f683747966e00aa047153085ac121 Reviewed-on: https://chromium-review.googlesource.com/950472Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#51776}
-
- 03 Mar, 2018 1 commit
-
-
Jakob Kummerow authored
When the multiplication steps fail, they have already thrown an exception internally, so we should not throw another. The power-of-two fast path erroneously did not throw at all for a few input values. Bug: chromium:818277 Change-Id: If90f6aa3e77fc72e3434daca3b898c77739933ab Reviewed-on: https://chromium-review.googlesource.com/947254 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#51711}
-
- 01 Mar, 2018 1 commit
-
-
Jakob Kummerow authored
Bug: v8:6791, v8:7506 Change-Id: I8ff41cb5fab03ab2ced8f21016a0744582a3fcee Reviewed-on: https://chromium-review.googlesource.com/942387 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#51666}
-
- 28 Feb, 2018 1 commit
-
-
Georg Neis authored
R=jkummerow@chromium.org Bug: v8:7505, v8:6791 Change-Id: I11b0031dfafa499a813e3e52080ee5542224799a Reviewed-on: https://chromium-review.googlesource.com/941130Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#51639}
-
- 23 Feb, 2018 2 commits
-
-
Jakob Kummerow authored
Bug: v8:6791 Change-Id: I1423321552e50d9ccb40a94b73f393d6d46fa629 Reviewed-on: https://chromium-review.googlesource.com/927789 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#51492}
-
Jakob Kummerow authored
Originally reviewed at https://chromium-review.googlesource.com/929429 and landed as r51486 / d50c7731. Update in reland: whitelisted new builtins as side effect free. Bug: v8:6791 Change-Id: Iff45700c8a4eca23f3ee6fc9c0cb340dc027cbc6 Reviewed-on: https://chromium-review.googlesource.com/932802 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#51491}
-
- 22 Feb, 2018 2 commits
-
-
Michael Achenbach authored
This reverts commit d50c7731. Reason for revert: Fails on many bots, like: https://build.chromium.org/p/client.v8/builders/V8%20Linux/builds/23331 Original change's description: > [bigint] Implement DataView.{get,set}Big*64 > > Bug: v8:6791 > Change-Id: I4b5ad3cf68b5c2423d6e055332d7f0dfce7c1e99 > Reviewed-on: https://chromium-review.googlesource.com/929429 > Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Cr-Commit-Position: refs/heads/master@{#51486} TBR=jkummerow@chromium.org,neis@chromium.org Change-Id: I95c260134d7d2671cd4cc0f8c07971af04d97546 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:6791 Reviewed-on: https://chromium-review.googlesource.com/932801Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51487}
-
Jakob Kummerow authored
Bug: v8:6791 Change-Id: I4b5ad3cf68b5c2423d6e055332d7f0dfce7c1e99 Reviewed-on: https://chromium-review.googlesource.com/929429 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#51486}
-
- 19 Feb, 2018 1 commit
-
-
Jakob Kummerow authored
This is a reland of dda0419e. Originally reviewed-on: https://chromium-review.googlesource.com/914513 and landed as refs/heads/master@{#51342}. Bug: v8:6791 Change-Id: I3b3a069da7a0e64c38a81b3110dc5ece4887cb19 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/924665Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#51352}
-
- 17 Feb, 2018 2 commits
-
-
Michael Achenbach authored
This reverts commit dda0419e. Reason for revert: msvc unhappy: https://build.chromium.org/p/client.v8/builders/V8%20Win64%20-%20msvc/builds/1434 Original change's description: > [bigint] Add BigInt64Array, BigUint64Array > > Bug: v8:6791 > Tbr: hpayer@chromium.org > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Change-Id: I637e9084d2fe4869ad0be2fb996149ab9940f346 > Reviewed-on: https://chromium-review.googlesource.com/914513 > Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Cr-Commit-Position: refs/heads/master@{#51342} TBR=jkummerow@chromium.org,neis@chromium.org,hpayer@chromium.org Change-Id: I49237fa323f0d3ea70e744d92d5cbdd4d5c4b39f No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:6791 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/924663Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51344}
-
Jakob Kummerow authored
Bug: v8:6791 Tbr: hpayer@chromium.org Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I637e9084d2fe4869ad0be2fb996149ab9940f346 Reviewed-on: https://chromium-review.googlesource.com/914513 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#51342}
-
- 26 Jan, 2018 1 commit
-
-
Jakob Kummerow authored
which was dropped from the proposal: https://github.com/tc39/proposal-bigint/pull/101 Bug: v8:6791 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I5a3e0024900b34a322a23bcbc4bfdbdffbf8b9d4 Reviewed-on: https://chromium-review.googlesource.com/885510 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#50877}
-
- 20 Dec, 2017 1 commit
-
-
Georg Neis authored
In a benchmark that I'm looking at, the numbers quickly overflow our current limit. This patch increases kMaxLength to the greatest value that's possible without requiring further code changes. Bug: v8:6791 Change-Id: I7a0d126dcd566d536375a294fa4dcf10b8823ed7 Reviewed-on: https://chromium-review.googlesource.com/833876 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#50240}
-
- 06 Dec, 2017 1 commit
-
-
Georg Neis authored
R=jarin@chromium.org Bug: v8:6791 Change-Id: I9d3787f670d44d68cc2c6474621b6c6a25642e5a Reviewed-on: https://chromium-review.googlesource.com/803434Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#49896}
-
- 05 Dec, 2017 1 commit
-
-
Jakob Kummerow authored
For "top digit" (of the result) comparison to be applicable, we must also check that there are no further digits in the source. The included regression test flushes out another bug in "TruncateToNBits", so that gets fixed here too (in contrast to the first landing attempt). This reverts commit cb9e7af4. Bug: v8:7150 Change-Id: Id631b1ae79e60b8e85ed4667e246a64c46765f2b Reviewed-on: https://chromium-review.googlesource.com/807348Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#49877}
-
- 04 Dec, 2017 2 commits
-
-
Michael Achenbach authored
This reverts commit e110b59c. Reason for revert: Breaks arm debug on chromebook hardware: https://build.chromium.org/p/client.v8.ports/builders/V8%20Arm%20-%20debug/builds/5335 Original change's description: > [bigint] Fix early-return in asIntN > > For "top digit" (of the result) comparison to be applicable, we must > also check that there are no further digits in the source. > > Bug: v8:7150 > Change-Id: I6ad317f6f600e11fef59b9907da1055e5586a3a8 > Reviewed-on: https://chromium-review.googlesource.com/804639 > Reviewed-by: Georg Neis <neis@chromium.org> > Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> > Cr-Commit-Position: refs/heads/master@{#49846} TBR=jkummerow@chromium.org,neis@chromium.org Change-Id: I5dae82696d3ecb9602f73a2ff4760ed7bbcef1c5 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7150 Reviewed-on: https://chromium-review.googlesource.com/806838Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#49847}
-
Jakob Kummerow authored
For "top digit" (of the result) comparison to be applicable, we must also check that there are no further digits in the source. Bug: v8:7150 Change-Id: I6ad317f6f600e11fef59b9907da1055e5586a3a8 Reviewed-on: https://chromium-review.googlesource.com/804639Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#49846}
-
- 01 Dec, 2017 4 commits
-
-
Georg Neis authored
These now pass even when forcing optimization. TBR=jkummerow@chromium.org Bug: v8:6791 Change-Id: I4d7c7d37b48e6e970d33474fa7fd637e34b0bda0 Reviewed-on: https://chromium-review.googlesource.com/803374Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#49781}
-
Georg Neis authored
Bug: v8:6791 Change-Id: I1c57fc697dc143fec8bfd67db16c7bc4f840462d Reviewed-on: https://chromium-review.googlesource.com/800620 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#49777}
-
Georg Neis authored
It reflects the semantics of ToBoolean, so it must be adapted for bigints. Bug: v8:6791 Change-Id: I18931df21528463dacf5ad50fa8264b1c968c6b5 Reviewed-on: https://chromium-review.googlesource.com/799831Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#49776}
-
Jakob Kummerow authored
Bug: v8:6791 Change-Id: I976876a4956b5c65f6f3788389f42d394d08dc99 Reviewed-on: https://chromium-review.googlesource.com/788513 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#49773}
-
- 29 Nov, 2017 1 commit
-
-
Georg Neis authored
In the presence of bigints, this optimization is no longer valid. Bug: v8:6791 Change-Id: I996ac78f8ae4aef5494dd0089374d04c6db6e72f Reviewed-on: https://chromium-review.googlesource.com/796070Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#49725}
-
- 28 Nov, 2017 1 commit
-
-
Jakob Kummerow authored
And also ensure that it doesn't allocate when that's avoidable. Bug: v8:6791 Change-Id: Ied2d2c9c5718aed9839f17739d743353cbadee88 Reviewed-on: https://chromium-review.googlesource.com/786170Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#49683}
-
- 17 Nov, 2017 1 commit
-
-
Jakob Kummerow authored
"AbsoluteDivSmall" had a shortcut path for abs(divisor) == 1 where it would simply return the dividend as result. However, its caller "Divide" was blissfully ignorant of this trick and would therefore simply set the value's sign as needed, modifying the input. This CL prevents that, while continuing to avoid the full division algorithm for abs(divisor) == 1. Bug: v8:6791 Change-Id: I04cdc93f5ed2a696587c35c754e68f07012dd1a9 Reviewed-on: https://chromium-review.googlesource.com/772332 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#49433}
-
- 13 Nov, 2017 1 commit
-
-
Adam Klein authored
Fix two more places where StringToBigInt differs from parseInt: - Binary and octal radix prefixes are supported - Trailing non-whitespace junk is not allowed This is done with a new Behavior enum in BigIntParseIntHelper, along with a couple of bool configuration flags in StringToIntHelper. Bug: v8:6791, v8:7038 Change-Id: Ib91bfc5ccb04ad0dd6c99bc81e19c1239264a469 Reviewed-on: https://chromium-review.googlesource.com/764595Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#49335}
-
- 07 Nov, 2017 3 commits
-
-
Georg Neis authored
Bug: v8:6791 Change-Id: I10f8c6c88c534ee1e3c893176b6563af0c9f99d3 Reviewed-on: https://chromium-review.googlesource.com/753904 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#49180}
-
Georg Neis authored
The bytecode generator has special handling for comparing the result of the typeof operator against a string literal. This needs to be adapted for bigints. R=jkummerow@chromium.org, mythrie@chromium.org Bug: v8:6791 Change-Id: I42d6c9e9225ce05e19393f10e01ae496ecb70c9c Reviewed-on: https://chromium-review.googlesource.com/753465 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#49172}
-
Georg Neis authored
Actually all it does is throw a TypeError. R=jkummerow@chromium.org Bug: v8:6791 Change-Id: I884da4eaa937519c07c3516a1713829f52e28ad8 Reviewed-on: https://chromium-review.googlesource.com/753730Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#49171}
-
- 06 Nov, 2017 2 commits
-
-
Georg Neis authored
R=jkummerow@chromium.org Bug: v8:6791 Change-Id: I765790d8b163aff6725900f19e95a914c75a0fe9 Reviewed-on: https://chromium-review.googlesource.com/752521 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#49132}
-
Georg Neis authored
We must throw a SyntaxError only when failing to convert a string. In the other cases we must throw a TypeError. R=jkummerow@chromium.org Bug: v8:6791 Change-Id: I802d8b6830b341f87e46e7de198af74ba95b8658 Reviewed-on: https://chromium-review.googlesource.com/752803Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#49131}
-
- 31 Oct, 2017 1 commit
-
-
Adam Klein authored
The parser now throws for literals that are too big for the runtime to support, thus avoiding CHECK-failures further down the line. Tbr: rmcilroy@chromium.org Bug: v8:6791 Change-Id: Ie45ddebb8aa9e7a30e8b6b74f99916b700e38e4a Reviewed-on: https://chromium-review.googlesource.com/747682 Commit-Queue: Adam Klein <adamk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#49059}
-
- 28 Oct, 2017 1 commit
-
-
Jakob Kummerow authored
Bug: v8:6791 Change-Id: Id85bd701eaa574eea1335cdc916323810616cef9 Reviewed-on: https://chromium-review.googlesource.com/738936 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#49014}
-
- 27 Oct, 2017 2 commits
-
-
Georg Neis authored
... and use them to complete the BigInt function. Bug: v8:6791 Change-Id: Ia36db86b92d1a0cfcb783516e04d6c0e3750f194 Reviewed-on: https://chromium-review.googlesource.com/737643 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#48993}
-
Jakob Kummerow authored
Bug: v8:6791, v8:6995 Change-Id: I79d04d9e8fbe156570875e3ecc2a1a87c9a794ee Reviewed-on: https://chromium-review.googlesource.com/740918Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#48991}
-
- 26 Oct, 2017 2 commits
-
-
Georg Neis authored
Bug: v8:6791 Change-Id: I10bb316284ba3a0e326daad4f9b995f88d76c2a2 Reviewed-on: https://chromium-review.googlesource.com/739501Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#48982}
-
Georg Neis authored
We can already construct wrapper objects using Object(). R=jkummerow@chromium.org Bug: v8:6791 Change-Id: Ic4079654ef1fcae2be4b588cb12c2645e199f4f7 Reviewed-on: https://chromium-review.googlesource.com/738089Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#48955}
-
- 25 Oct, 2017 3 commits
-
-
Jakob Kummerow authored
Abstract equality comparison of a BigInt and a String converts the latter to BigInt. This conversion can fail; since we do not want to pass a context to the comparison function, we must signal such failure without throwing an exception. This CL uses the existing ShouldThrow enum to configure behavior of String-to-BigInt conversion, moving it out of Object into globals.h. Bug: v8:6791, v8:6979 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Ibb98675079b8392cf03bbcbbbd5556108500a32d Reviewed-on: https://chromium-review.googlesource.com/734172 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#48946}
-
Jakob Kummerow authored
and use a newly-introduced "enum class Operation" in all other places that so far passed Token::Values around. Also delete some related dead code along the way. Bug: v8:6921 Change-Id: I062f396d304aa62298cfeff202e3132a4a5597c1 Reviewed-on: https://chromium-review.googlesource.com/736851 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#48944}
-
Jakob Kummerow authored
Bug: v8:6791 Change-Id: I9c1ebddfab9f3d73642e61e43c3fbfd739efd56c Reviewed-on: https://chromium-review.googlesource.com/736722 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#48942}
-