Commit Graph

43828 Commits

Author SHA1 Message Date
Michael Achenbach
45e52d520b Revert "Make intl/overrides/caching.js more 'robust'"
This reverts commit 4091f2b3a8.

Reason for revert: Flaky on the bots:
https://build.chromium.org/p/client.v8/builders/V8%20Linux64/builds/21321
https://build.chromium.org/p/client.v8/builders/V8%20Win64/builds/20879
https://build.chromium.org/p/client.v8/builders/V8%20Win64%20-%20msvc/builds/101

Original change's description:
> Make intl/overrides/caching.js more 'robust'
> 
> Bug: None
> Test: intl/overrides/caching
> Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng
> Change-Id: Iffd0f58f76d6514924badca18a2112df572e53d2
> Reviewed-on: https://chromium-review.googlesource.com/757945
> Reviewed-by: Adam Klein <adamk@chromium.org>
> Commit-Queue: Jungshik Shin <jshin@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#49334}

TBR=adamk@chromium.org,jshin@chromium.org

Change-Id: Id2fe00089c2bcbc8ecc7958fe13c8a80da733e60
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: None
Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/766288
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49336}
2017-11-13 19:13:13 +00:00
Adam Klein
ead5abac9d [bigint] Correct StringToBigInt radix and junk handling
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/764595
Reviewed-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}
2017-11-13 18:55:00 +00:00
Jungshik Shin
4091f2b3a8 Make intl/overrides/caching.js more 'robust'
Bug: None
Test: intl/overrides/caching
Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng
Change-Id: Iffd0f58f76d6514924badca18a2112df572e53d2
Reviewed-on: https://chromium-review.googlesource.com/757945
Reviewed-by: Adam Klein <adamk@chromium.org>
Commit-Queue: Jungshik Shin <jshin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49334}
2017-11-13 18:42:10 +00:00
Jungshik Shin
bfaa6ef7b8 Avoid a double encoding conversion
BUG=None
TEST=test262/intl402/NumberFormat/* , intl/number-format/*

Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng
Change-Id: I4fed7c749db1aee390675003d7dfdfea7bb94c7c
Reviewed-on: https://chromium-review.googlesource.com/760042
Reviewed-by: Adam Klein <adamk@chromium.org>
Commit-Queue: Jungshik Shin <jshin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49333}
2017-11-13 18:40:00 +00:00
Michal Majewski
91497ff8eb [test] Enable random marking start points.
Stress marking by starting it in random points between 0 and
--stress_marking percent of the standard limit.

Bug: v8:6972

Change-Id: I84572ba937f34cf4fd7b5eb2d532f48ff122a060
Reviewed-on: https://chromium-review.googlesource.com/763453
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Hannes Payer <hpayer@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49332}
2017-11-13 16:50:10 +00:00
Camillo Bruni
306bb1ff2d [runtime] Merge HandleSlackTracking and AllocateJSObjectFromMap
This CL fixes uses of HandleSlackTracking which previously would write
fields twice. Additional checks ensure that only proper initial maps are
used with slack tracking.

Change-Id: Ifb03297635ed6b873eb8b27fec9794c9d36b71b6
Reviewed-on: https://chromium-review.googlesource.com/664810
Reviewed-by: Michael Stanton <mvstanton@chromium.org>
Reviewed-by: Igor Sheludko <ishell@chromium.org>
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49331}
2017-11-13 16:38:30 +00:00
Michael Starzinger
5aff110b3c [wasm] Narrow code-space modification scopes.
R=hpayer@chromium.org

Change-Id: I748df06492b1712ff15cd56f6eeb159545986c93
Reviewed-on: https://chromium-review.googlesource.com/766431
Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49330}
2017-11-13 16:17:20 +00:00
Michael Achenbach
58b4af1b45 [test] Skip some tests on gc fuzzer
NOTRY=true
TBR=majeski@google.com

Bug: v8:7012
Change-Id: Iaac782596ab3fdb7338f04fe7b3af7474b36fa57
Reviewed-on: https://chromium-review.googlesource.com/766347
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49329}
2017-11-13 15:01:35 +00:00
Mike Stanton
f010b28fbe [TurboFan] Diagnostic code to track down bug in representation selection
We need to characterize the types of dead (IrOpcode::kDead) nodes
introduced in compilation phases prior to representation selection.
Normally, a dead node isn't expected at the start of this phase. The
question is, which phase introduced the dead node and failed to
deal with it properly?

Bug: chromium:780658
Change-Id: Ief5b45480bb7d704a2d09dafd60b5d389e0fd42e
Reviewed-on: https://chromium-review.googlesource.com/765968
Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
Commit-Queue: Michael Stanton <mvstanton@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49328}
2017-11-13 15:00:20 +00:00
Michael Starzinger
2bc09c95fb [builtins] Add stack check during generator resumption.
This fixes a corner-case where resuming a suspended generator would not
perform stack overflow checks and hence cause the stack to grow without
bounds.

R=neis@chromium.org
BUG=chromium:781583

Change-Id: Ib04116e489ac6b962cb821263860497abb57bbae
Reviewed-on: https://chromium-review.googlesource.com/765953
Reviewed-by: Georg Neis <neis@chromium.org>
Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49327}
2017-11-13 14:52:10 +00:00
Michal Majewski
392ab01d61 Introduce status file variable gc_fuzzer.
Bug: v8:6917
Change-Id: Ib983e3dfa8fac25fd494fb24e245bfd0caadd7fd
Reviewed-on: https://chromium-review.googlesource.com/766187
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michał Majewski <majeski@google.com>
Cr-Commit-Position: refs/heads/master@{#49326}
2017-11-13 14:33:10 +00:00
Camillo Bruni
b4c9e2e716 [unittests] Add TestWithIsolate::RunJS helper method
- Update most callsites to use the new RunJS method
- Update tests to use TestWithNativeContext if possible
- Remove RunJS from test-helpers.cc
- Remove TestWithRandomNumberGenerator from test-utils.h

Change-Id: Ib2a6cc56334dc391ca6a2aeb7780fa324f44f109
Reviewed-on: https://chromium-review.googlesource.com/765373
Reviewed-by: Georg Neis <neis@chromium.org>
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49325}
2017-11-13 14:27:51 +00:00
Ulan Degenbaev
214f920ae5 [heap] Support ephemeral paths with --track-retaining-path flag.
If there is a WeakMap in a retaining path of an object, then we have
two choices:
1) use the WeakMap backing store as the retainer.
2) use the key in the WeakMap as the retainer.
Both cases can be useful for debugging memory leaks.

This patch adds a second parameter to %DebugTrackRetainingPath().

If this parameter is "track-ephemeral-path", then the retaining path
printer will use the key in the WeakMap as a retainer. Otherwise,
the WeakMap backing store will be reported as the retainer.

Bug: v8:6987
Change-Id: I9feae25bc734c3abed501b9f901a36d2248a105c
Reviewed-on: https://chromium-review.googlesource.com/753343
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49324}
2017-11-13 13:38:20 +00:00
Michael Lippautz
c44da6c271 [api] Refine description for PersistentBase::MarkActive
Bug: chromium:780749
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
Change-Id: Ifd7da70dd9adffe5de7f126539c4780799d55673
Reviewed-on: https://chromium-review.googlesource.com/763528
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49323}
2017-11-13 13:19:42 +00:00
Michael Achenbach
9d5e17a7a9 [build] Remove MB configs for removed bots
NOTRY=true
NOTREECHECKS=true
TBR=sergiyb@chromium.org

Bug: chromium:782226
Change-Id: I108616ea7c94040b29e5522fdd6bded420771414
Reviewed-on: https://chromium-review.googlesource.com/758266
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49322}
2017-11-13 12:43:37 +00:00
Leszek Swirski
13d0784dc1 [compiler] Fix isolate cache/consume cache histogram sample
The consume code cache code path was only taken in the case where the
isolate cache lookup failed, making the "hit isolate cache when consume
code cache" histogram sample never work.

Bug: chromium:769203
Change-Id: I15398f9ce4fc53602b323b8efb8ac9787440dd85
Reviewed-on: https://chromium-review.googlesource.com/765455
Reviewed-by: Mythri Alle <mythria@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49321}
2017-11-13 12:11:03 +00:00
Daniel Clifford
cecbe26bca Fix index bug in splicing dictionary element arrays
Bug: chromium:783119
Change-Id: I617db4f6740fb2cfe036ccf162a12aa2bac28e86
Reviewed-on: https://chromium-review.googlesource.com/763460
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Commit-Queue: Daniel Clifford <danno@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49320}
2017-11-13 11:21:40 +00:00
Michael Achenbach
2662b214f7 [test] Mark slow test on msan
NOTRY=true
TBR=sergiyb@chromium.org

Change-Id: I200c088d3cf1c3c1a16040b1395b534ccd9d9268
Reviewed-on: https://chromium-review.googlesource.com/765471
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49319}
2017-11-13 10:59:03 +00:00
Camillo Bruni
eab2f2e654 Disallow empty PropertyArray as properties backing store
The only empty PropertyArray is the empty_property_array object on the
isolate. Allowing empty PropertyArrays causes the turbofan to ignore the
existing hash when growing the backing store again. We currently only end
up with the empty PropertyArray when following back transitions.

Bug: chromium:781218, chromium:783713
Change-Id: If41dd09b965cdc8d957b9ca50ba3c8a7f4254769
Reviewed-on: https://chromium-review.googlesource.com/763230
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Reviewed-by: Hannes Payer <hpayer@chromium.org>
Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49318}
2017-11-13 10:56:53 +00:00
Michael Achenbach
61d85e6975 Whitespace change to trigger bots
Bug: 
Change-Id: I1fbe94b3f874e24abc8ce2a6387ffe9d31dbb7b0
Reviewed-on: https://chromium-review.googlesource.com/765659
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49317}
2017-11-13 10:47:44 +00:00
Yuki Shiino
84ad1f7c71 Export Context::BackupIncumbentScope.
This patch adds a missing V8_EXPORT to Context::BackupIncumbentScope.

Bug: 
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
Change-Id: Ic4146ee1dad2f84222671fc54b4a463282356417
Reviewed-on: https://chromium-review.googlesource.com/762834
Reviewed-by: Adam Klein <adamk@chromium.org>
Commit-Queue: Yuki Shiino <yukishiino@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49316}
2017-11-13 07:32:47 +00:00
Jakob Gruber
8122afa726 Revert "Reland "[Memory] Use OS::Allocate for all OS memory allocations.""
Revert this and its follow-up as suspect for current canary OOM crasher.

This reverts commit 4899bcb66d.
This reverts commit b73ee3344a.

TBR=adamk@chromium.org,hpayer@chromium.org

Bug: chromium:783708
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
Change-Id: I4c00582e7ab2df22216ad6732e2843e9958db0c0
Reviewed-on: https://chromium-review.googlesource.com/765447
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Bill Budge <bbudge@chromium.org>
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49315}
2017-11-11 19:49:26 +00:00
Mathias Bynens
2feb99dc8a Reland "Ship RegExp Unicode property escapes" 🔥
This is a reland of 6f890fd5b2
Original change's description:
> Ship RegExp Unicode property escapes
>
> Intent to ship:
> https://groups.google.com/d/msg/v8-users/isa2JrstEbE/i6UvFO7RBwAJ
>
> BUG=v8:4743
>
> Change-Id: I62cdc6fa1f114fc8be26c5cf354c45a15ce49ab7
> Reviewed-on: https://chromium-review.googlesource.com/761776
> Reviewed-by: Adam Klein <adamk@chromium.org>
> Commit-Queue: Mathias Bynens <mathias@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#49312}

Bug: v8:4743
Change-Id: I6618242b147472a9a083573299ed3b3dda5ac6ed
Reviewed-on: https://chromium-review.googlesource.com/764908
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Reviewed-by: Mathias Bynens <mathias@chromium.org>
Commit-Queue: Mathias Bynens <mathias@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49314}
2017-11-11 17:18:45 +00:00
Michael Achenbach
30d50b3cc7 Revert "Ship RegExp Unicode property escapes"
This reverts commit 6f890fd5b2.

Reason for revert: Breaks layout test:
https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/19671

https://github.com/v8/v8/wiki/Blink-layout-tests

Original change's description:
> Ship RegExp Unicode property escapes
> 
> Intent to ship:
> https://groups.google.com/d/msg/v8-users/isa2JrstEbE/i6UvFO7RBwAJ
> 
> BUG=v8:4743
> 
> Change-Id: I62cdc6fa1f114fc8be26c5cf354c45a15ce49ab7
> Reviewed-on: https://chromium-review.googlesource.com/761776
> Reviewed-by: Adam Klein <adamk@chromium.org>
> Commit-Queue: Mathias Bynens <mathias@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#49312}

TBR=adamk@chromium.org,yangguo@chromium.org,mathias@chromium.org

Change-Id: I5e09070582cf247f61429a1d45ae5faa3d21518e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: v8:4743
Reviewed-on: https://chromium-review.googlesource.com/765348
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49313}
2017-11-11 12:59:58 +00:00
Mathias Bynens
6f890fd5b2 Ship RegExp Unicode property escapes
Intent to ship:
https://groups.google.com/d/msg/v8-users/isa2JrstEbE/i6UvFO7RBwAJ

BUG=v8:4743

Change-Id: I62cdc6fa1f114fc8be26c5cf354c45a15ce49ab7
Reviewed-on: https://chromium-review.googlesource.com/761776
Reviewed-by: Adam Klein <adamk@chromium.org>
Commit-Queue: Mathias Bynens <mathias@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49312}
2017-11-11 09:39:25 +00:00
v8-autoroll
84dfd738ee Update V8 DEPS.
Rolling v8/build: 3dd2b5f..98bbbff

Rolling v8/third_party/android_tools: https://chromium.googlesource.com/android_tools/+log/4a9623a..9914c57

Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/f83c79a..aee17a9

TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org

Change-Id: Ie699606b3a50ce4bb49d2aa10f0238834d4fb355
Reviewed-on: https://chromium-review.googlesource.com/764672
Reviewed-by: v8 autoroll <v8-autoroll@chromium.org>
Commit-Queue: v8 autoroll <v8-autoroll@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49311}
2017-11-11 04:45:53 +00:00
Mircea Trofin
575aa7b84b Add primitives-based constructor for RelocIterator
This is meant to be used from the native wasm datastructures

Bug: v8:6876
Change-Id: Ie865cf3277b24f25e1845bf32837be1a24047472
Reviewed-on: https://chromium-review.googlesource.com/764502
Commit-Queue: Mircea Trofin <mtrofin@chromium.org>
Reviewed-by: Ben Titzer <titzer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49310}
2017-11-10 22:49:37 +00:00
Adam Klein
fbb008a6c9 Add adamk to a few WATCHLISTS
And add a watchlist for the C++ API.

Change-Id: Id82d7191153afe701fc11958ba36ce7a8b29bef2
Reviewed-on: https://chromium-review.googlesource.com/764548
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49309}
2017-11-10 21:38:29 +00:00
Josh Wolfe
b4ccfdfbfe [intl] ship --harmony-number-format-to-parts
R=littledan@chromium.org, adamk@chromium.org

Bug: v8:5244
Change-Id: I1186601bc05bd5348acb4b0e1242d7d074020ad9
Reviewed-on: https://chromium-review.googlesource.com/757564
Reviewed-by: Adam Klein <adamk@chromium.org>
Reviewed-by: Daniel Ehrenberg <littledan@chromium.org>
Commit-Queue: Josh Wolfe <jwolfe@igalia.com>
Cr-Commit-Position: refs/heads/master@{#49308}
2017-11-10 21:02:57 +00:00
Mircea Trofin
92e3975de3 Add primitives-based constructor for SafepointTable
This allows SafepointTables to be reused by the upcoming WasmCode
(wasm out of the GC heap), and integrate with the stack iterator.

Bug: v8:6876
Change-Id: I24ff78a073fa99aeabe12a0c5a12709f5b1461a2
Reviewed-on: https://chromium-review.googlesource.com/764370
Reviewed-by: Brad Nelson <bradnelson@chromium.org>
Commit-Queue: Mircea Trofin <mtrofin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49307}
2017-11-10 20:50:32 +00:00
Pierre Langlois
85e25df619 [csa] Transform multiplications into left shifts
Turn cases where we are multiplying with a power of two into a left shift. We
hit this optimisation roughly 500 times in the snapshot.

Bug: 
Change-Id: Ibd3104a3dbe49f247a2d84db94891f6e3a897026
Reviewed-on: https://chromium-review.googlesource.com/763229
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Igor Sheludko <ishell@chromium.org>
Commit-Queue: Pierre Langlois <pierre.langlois@arm.com>
Cr-Commit-Position: refs/heads/master@{#49306}
2017-11-10 18:29:11 +00:00
Bill Budge
b73ee3344a [Memory] Eliminate OS::ReleaseRegion.
- Eliminates OS::ReleaseRegion, replacing with calls to OS::Free.
- Adds bool return value to OS::Free.
- Cleans up types of flags, protection on Windows and Cygwin.

Bug: chromium:756050
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
Change-Id: I6a642374e33876966a5552fb0cdf552dc6d79aaa
Reviewed-on: https://chromium-review.googlesource.com/762345
Commit-Queue: Bill Budge <bbudge@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49305}
2017-11-10 17:43:41 +00:00
Benjamin
4d3bc552b5 [coverage] add coverage for binary expressions
Adds block-level coverage tracking for binary && and ||
expressions. Introduces a BinaryOperation source-range
for tracking the operations themselves and an Expression
source-range, used for tracking NaryLogical expressions.

This builds on work by jgruber@chromium.org in
the issue.

TBR=marja@chromium.org
R=jgruber@chromium.org, rmcilroy@chromium.org

Bug: v8:6660
Change-Id: I83a81f13a3514a734c06948b2d3e91138fb00e18
Reviewed-on: https://chromium-review.googlesource.com/754564
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49304}
2017-11-10 17:41:51 +00:00
Jakob Gruber
e4b394a1f4 Revert "Reland "[runtime] Slightly optimize creation of class literals.""
This reverts commit 22932d6b43.

Reason for revert: TSAN https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20TSAN/builds/18232

Original change's description:
> Reland "[runtime] Slightly optimize creation of class literals."
> 
> Bug: v8:5799
> Change-Id: I782ec131c7194aef20942a19750168a974913c3f
> Reviewed-on: https://chromium-review.googlesource.com/757337
> Commit-Queue: Igor Sheludko <ishell@chromium.org>
> Reviewed-by: Toon Verwaest <verwaest@chromium.org>
> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
> Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#49291}

TBR=ulan@chromium.org,rmcilroy@chromium.org,jarin@chromium.org,ishell@chromium.org,verwaest@chromium.org

Change-Id: I0742d25b0e2364efc696d19492ba20614a3821fa
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: v8:5799
Reviewed-on: https://chromium-review.googlesource.com/763458
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49303}
2017-11-10 16:00:31 +00:00
Mike Stanton
a3a67fe7a4 [TurboFan] Intrinsic IsInstanceType lowering needs control
We introduce nodes with control output during intrinsic IsInstanceType
lowering, and must carefully connect them to subsequent control inputs.

Bug: v8:7002
Change-Id: I2e3066943b8f7e36652438ae6ca560932188203e
Reviewed-on: https://chromium-review.googlesource.com/763633
Reviewed-by: Jaroslav Sevcik <jarin@chromium.org>
Commit-Queue: Michael Stanton <mvstanton@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49302}
2017-11-10 15:25:58 +00:00
Daniel Clifford
d5885ca2b9 Fix splice bug in handling of negative arguments length
Bug: chromium:778668
Change-Id: Ie75f2ecb9e6134b6eb57c7d7fb6ea33cbb2fc2bf
Reviewed-on: https://chromium-review.googlesource.com/753324
Commit-Queue: Daniel Clifford <danno@chromium.org>
Reviewed-by: Igor Sheludko <ishell@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49301}
2017-11-10 15:23:28 +00:00
Mike Stanton
65d2f6e107 Reland "[Turbofan] Introduce AllocateRaw node"
This is a reland of ba76ad68e3
Original change's description:
> [Turbofan] Introduce AllocateRaw node
>
> In order to simplify and verify the TurboFan graph, we
> need to wire allocations into the control chain after
> effect control linearization.
>
> Bug: v8:7002
> Change-Id: I4c5956c8d16773d721482d46a0b407bee01a9597
> Reviewed-on: https://chromium-review.googlesource.com/738139
> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org>
> Commit-Queue: Michael Stanton <mvstanton@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#49209}

TBR=jarin@chromium.org

Bug: v8:7002
Change-Id: Iba588c498bb5de113abfba7f9e40cfe4325dea4a
Reviewed-on: https://chromium-review.googlesource.com/758436
Commit-Queue: Michael Stanton <mvstanton@chromium.org>
Reviewed-by: Michael Stanton <mvstanton@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49300}
2017-11-10 14:47:18 +00:00
Ivica Bogosavljevic
1789c6f99d MIPS: Update OWNERS
MIPS team has recently migrated to @mips.com e-mail address.
Dusan Simicic is no longer part of MIPS V8 team, therefore
his name is removed from OWNERS.

TBR=mstarzinger@chromium.org
NOTRY=true

Bug: 
Change-Id: I67fde24a5b9214fa3fca05c0399888b8d18fc699
Reviewed-on: https://chromium-review.googlesource.com/758639
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49299}
2017-11-10 14:33:48 +00:00
Michael Starzinger
54f063e279 [cleanup] Remove dead {List} forward declaration.
R=petermarshall@chromium.org

Change-Id: I6901ddcd1ca1fda474e8d2766fbfc60d2f5a9bec
Reviewed-on: https://chromium-review.googlesource.com/763628
Reviewed-by: Peter Marshall <petermarshall@chromium.org>
Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49298}
2017-11-10 14:27:53 +00:00
Michael Achenbach
0dd835d571 [build] Add generic num fuzzer isolates
We'll use one generic isolate for all number fuzzers. The previous
deopt isolate will be deleted, once the infra hooks have changed.

Bug: v8:6917
Change-Id: I809613548cd935a0208febb002572cc063697324
Reviewed-on: https://chromium-review.googlesource.com/763534
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49297}
2017-11-10 14:26:48 +00:00
Michal Majewski
5faaa2ebc1 Temporary GC fuzzer.
Temporary implementation of GC fuzzer based on the deopt fuzzer.
It will be merged with the deopt fuzzer to create more general numfuzzer.

Webkit test suite updated to ignore trace_incremental_marking flag output.

Bug: v8:6917
Change-Id: I053ae32f3cd3f74ba8b71fc5bdfc7264f54dca11
Reviewed-on: https://chromium-review.googlesource.com/758437
Commit-Queue: Michał Majewski <majeski@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49296}
2017-11-10 14:23:38 +00:00
Michael Achenbach
1eb7e8b415 [build] Add MB configs for new TSAN builder
TBR=sergiyb@chromium.org
NOTRY=true
NOTREECHECKS=true

Bug: v8:7012
Change-Id: I5895fcda768696c90f3f766d4beef6f75ec9f79f
Reviewed-on: https://chromium-review.googlesource.com/763530
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49295}
2017-11-10 14:10:38 +00:00
jgruber
9e4543a226 Revert lazy bytecode handler support
Speculative revert due to canary crashes. I'll begin relanding these
one-by-one next week.

This bundles two reverts:

Revert "[snapshot] Lazy-deserialize bytecode handlers"
This reverts commit b458736986.

Revert "[interpreter] Remove mechanism for bytecode handler reuse"
This reverts commit 07fc87a2e3.

TBR: rmcilroy@chromium.org,mlippautz@chromium.org,yangguo@chromium.org
Bug: chromium:783708
Change-Id: I6f8314b9eeafd9412a1c69843bc242e7da240eee
Reviewed-on: https://chromium-review.googlesource.com/763428
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49294}
2017-11-10 13:35:52 +00:00
Leszek Swirski
693d7adb9f [compiler] Log isolate cache hits conflicting with code cache
Keep separate track of isolate cache hits that conflict with
producing/consuming the code cache, so that we can see how many code
cache hits are "stolen" by the isolate cache, and how many isolate cache
entries are "wasted" by recompiling for cache production.

Bug: chromium:769203
Change-Id: I3d8dbfc6a8981b779eb073176454ad43dfbcbaaf
Reviewed-on: https://chromium-review.googlesource.com/763368
Reviewed-by: Mythri Alle <mythria@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49293}
2017-11-10 13:31:12 +00:00
Clemens Hammacher
359e69e183 Reland "[Liftoff] Implement parallel register moves"
This is a reland of 6c6132880a
Original change's description:
> [Liftoff] Implement parallel register moves
> 
> This was not implemented so far, leading to lots of clusterfuzz issues.
> Testing this feature would require complicating the interface a lot and
> exposing more implementation details in the header file, hence we just
> go with regression tests for now.
> 
> R=ahaas@chromium.org, titzer@chromium.org
> 
> Bug: v8:6600, chromium:782280
> Change-Id: I12863f3eb59a8dffdcc7d3bfb8e1f0ae0eec15ee
> Reviewed-on: https://chromium-review.googlesource.com/758772
> Reviewed-by: Andreas Haas <ahaas@chromium.org>
> Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#49286}

Bug: v8:6600, chromium:782280
Change-Id: I82a75bfeaf83dc63a2917da3ccdc4721c5d689e7
Reviewed-on: https://chromium-review.googlesource.com/763387
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49292}
2017-11-10 12:18:08 +00:00
Igor Sheludko
22932d6b43 Reland "[runtime] Slightly optimize creation of class literals."
Bug: v8:5799
Change-Id: I782ec131c7194aef20942a19750168a974913c3f
Reviewed-on: https://chromium-review.googlesource.com/757337
Commit-Queue: Igor Sheludko <ishell@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Jaroslav Sevcik <jarin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49291}
2017-11-10 11:57:18 +00:00
Jakob Gruber
b0996927fb Revert "[snapshot] Flip --lazy-handler-deserialization"
This reverts commit 9664d017f7.

Reason for revert: Planned revert, this is on Canary 3264 and V8
branch 6.4.245.

Original change's description:
> [snapshot] Flip --lazy-handler-deserialization
>
> Flip this for a day or two to gather perf bot results & stability
> issues. Results will be collected in https://crbug.com/782637.
>
> TBR=hablich@chromium.org
>
> Bug: v8:6624, chromium:782637
> Change-Id: I70eb5d6287d4723f935715ef80d9ba129dc282f0
> Reviewed-on: https://chromium-review.googlesource.com/758375
> Reviewed-by: Jakob Gruber <jgruber@chromium.org>
> Commit-Queue: Jakob Gruber <jgruber@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#49222}

TBR=hablich@chromium.org,jgruber@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: v8:6624, chromium:782637
Change-Id: I2a6ee63f7191d186810d7352ee63b6b664e74157
Reviewed-on: https://chromium-review.googlesource.com/763427
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49290}
2017-11-10 10:46:33 +00:00
Clemens Hammacher
5a6cc315f8 Revert "[Liftoff] Implement parallel register moves"
This reverts commit 6c6132880a.

Reason for revert: breaks compilation on win64 bot: https://build.chromium.org/p/client.v8/builders/V8%20Win64%20-%20msvc/builds/69

Original change's description:
> [Liftoff] Implement parallel register moves
> 
> This was not implemented so far, leading to lots of clusterfuzz issues.
> Testing this feature would require complicating the interface a lot and
> exposing more implementation details in the header file, hence we just
> go with regression tests for now.
> 
> R=​ahaas@chromium.org, titzer@chromium.org
> 
> Bug: v8:6600, chromium:782280
> Change-Id: I12863f3eb59a8dffdcc7d3bfb8e1f0ae0eec15ee
> Reviewed-on: https://chromium-review.googlesource.com/758772
> Reviewed-by: Andreas Haas <ahaas@chromium.org>
> Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#49286}

TBR=titzer@chromium.org,ahaas@chromium.org,clemensh@chromium.org

Change-Id: I386983da7f9f03d54cef2190b01fd2cc5785966e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: v8:6600, chromium:782280
Reviewed-on: https://chromium-review.googlesource.com/763367
Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49289}
2017-11-10 10:04:35 +00:00
v8-autoroll
9eaf163d6f Update V8 DEPS.
Rolling v8/build: 1c66ba1..3dd2b5f

TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org

Change-Id: I345def7a1ade64accc9570b8c8af6f0514058da1
Reviewed-on: https://chromium-review.googlesource.com/763130
Reviewed-by: v8 autoroll <v8-autoroll@chromium.org>
Commit-Queue: v8 autoroll <v8-autoroll@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49288}
2017-11-10 10:00:02 +00:00
Michael Starzinger
d6f0db8b7b [heap] Remove dead {MemoryChunk::CommitArea} method.
R=hpayer@chromium.org
BUG=v8:6792

Change-Id: Iba360a83c8c1d929c29c0a4e0c5f32cef8755c85
Reviewed-on: https://chromium-review.googlesource.com/758650
Reviewed-by: Hannes Payer <hpayer@chromium.org>
Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49287}
2017-11-10 09:53:23 +00:00