Commit Graph

58267 Commits

Author SHA1 Message Date
v8-ci-autoroll-builder
91132126e7 Update V8 DEPS.
Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/3732ed1..5966abc

Rolling v8/third_party/depot_tools: 2d75cf6..9d25ad4

Rolling v8/third_party/googletest/src: c7a03da..cad3bc4

Rolling v8/tools/clang: 6706ebf..27f1edd

TBR=machenbach@chromium.org,tmrts@chromium.org

Change-Id: I563cfd03b18f3feb452ab5852434737c4a19c315
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1805014
Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#63775}
2019-09-14 03:37:49 +00:00
Shu-yu Guo
397caa92c6 [Intl] Install intrinsic default prototypes for Intl constructors
Install intrinsic default prototypes for Intl.ListFormat,
Intl.PluralRules, Intl.RelativeTimeFormat, and Intl.Segmenter.
Observable when attempting to construct cross-realm via a
new.target with a non-Object .prototype property.

Bug: v8:9712
Change-Id: I77ae75e5ea1ee8e9a01cf5788b664a5945aa1f7e
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801252
Reviewed-by: Sathya Gunasekaran  <gsathya@chromium.org>
Commit-Queue: Shu-yu Guo <syg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63774}
2019-09-13 20:35:50 +00:00
Milad Farazmand
2afe87cdcb PPC/s390: [regexp] Consolidate calls to jitted irregexp and regexp interpreter
Port 213504b9d7

Original Commit Message:

    The code fields in a JSRegExp object now either contain irregexp
    compiled code or a trampoline to the interpreter. This way the code
    can be executed without explicitly checking if the regexp shall be
    interpreted or executed natively.
    In case of interpreted regexp the generated bytecode is now stored in
    its own fields instead of the code fields for Latin1 and UC16
    respectively.
    The signatures of the jitted irregexp match and the regexp interpreter
    have been equalized.

R=pthier@google.com, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com
BUG=
LOG=N

Change-Id: Ia2a80ce927afa644441c0749add0fc35111eb720
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803657
Reviewed-by: Junliang Yan <jyan@ca.ibm.com>
Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com>
Cr-Commit-Position: refs/heads/master@{#63773}
2019-09-13 20:15:50 +00:00
Michael Achenbach
a67bc90ebd Fix OWNERS for presubmit
TBR=yangguo@chromium.org
NOTRY=true
NOPRESUBMIT=true

Change-Id: I20d3a60e406c47725b9c02da69912fcf84cb7166
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803638
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63772}
2019-09-13 19:16:32 +00:00
Ng Zhi An
9b4e683bd6 [wasm-simd] Implement f32x4.sqrt f64x2.sqrt for arm64
Bug: v8:8460
Change-Id: I2a96d5bad3dbcfe6a437931d7e9756646610f74b
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1796319
Reviewed-by: Bill Budge <bbudge@chromium.org>
Commit-Queue: Zhi An Ng <zhin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63771}
2019-09-13 18:17:48 +00:00
Dan Elphick
6fafd68ab0 [csa] TNodify builtins-array-gen.cc
Convert all but 4 Node*s to TNode and all Variables to TVariable.

In the process this also deletes several unused functions.

Bug: v8:6949, v8:9396
Change-Id: I83db40eefacf8a4a1b155249c5bb8217e6c7da83
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803347
Commit-Queue: Dan Elphick <delphick@chromium.org>
Reviewed-by: Santiago Aboy Solanes <solanes@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63770}
2019-09-13 17:28:16 +00:00
Milad Farazmand
1603f672ff PPC/s390: [wasm] Implement patching of far jump table
Port 0a8ddb134c

Original Commit Message:

    If the jump is too large for a near jump, we patch the far jump table
    instead, and patch the (near) jump table to jump to the far jump table
    slot.

R=clemensh@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com
BUG=
LOG=N

Change-Id: Ic42dfea83799ba6aae1d6d32607391393353815a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1802742
Reviewed-by: Milad Farazmand <miladfar@ca.ibm.com>
Reviewed-by: Junliang Yan <jyan@ca.ibm.com>
Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com>
Cr-Commit-Position: refs/heads/master@{#63769}
2019-09-13 17:15:45 +00:00
Frank Tang
fad60ef290 [Intl] Fix Hungarian number format grouping
By rolling icu to faee8bc which contains the upstream CLDR fix.

Bug: v8:992694
Change-Id: I073d15396fa0e7c5054aa4e0806e5842228955f0
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1799424
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Frank Tang <ftang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63768}
2019-09-13 17:14:41 +00:00
Clemens Hammacher
75790c9823 [iwyu] Add missing includes of <memory> for std::unique_ptr
After https://crrev.com/c/1800575 and https://crrev.com/c/1803343,
which tried to fix this on occuring compile errors, this CL
systematically adds the <memory> include to each header that uses
{std::unique_ptr}.

R=sigurds@chromium.org
TBR=mlippautz@chromium.org,alph@chromium.org,rmcilroy@chromium.org,verwaest@chromium.org

Bug: v8:9396
Change-Id: If7f9c3140842f9543135dddd7344c0f357999da0
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803349
Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
Reviewed-by: Sigurd Schneider <sigurds@chromium.org>
Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63767}
2019-09-13 17:13:36 +00:00
Santiago Aboy Solanes
0e570c1ab8 [CSA][cleanup] TNodify builtins collections gen (pt. 2/2)
Follow-up CL that finishes TNodifying builtins collection gen.

Added a TODO in CSA since I was encountering errors when trying to
return a JSIteratorResult.

Bug: v8:6949, v8:9396
Change-Id: I1e8a9cf8bce54327dd1fad5bd9531058f096469d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803344
Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org>
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63766}
2019-09-13 16:36:55 +00:00
Victor Gomes
c693e005a7 [Heap] Remove more unnecessary allocation flags
Discussing with Toon, we've decided that these flags are no longer needed.

Bug: v8:9714
Change-Id: Ic5ae8b4c0b2f470fad915ada8fec753a5d7e50ab
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801844
Commit-Queue: Victor Gomes <victorgomes@google.com>
Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Auto-Submit: Victor Gomes <victorgomes@google.com>
Cr-Commit-Position: refs/heads/master@{#63765}
2019-09-13 16:26:12 +00:00
Frank Tang
9d2591a695 Correct the name of the regression test
Bug: v8:9464
Change-Id: Ibdc6f9797661e357e01c2f02565eeca12abbf8ae
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801251
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Commit-Queue: Frank Tang <ftang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63764}
2019-09-13 16:14:50 +00:00
Santiago Aboy Solanes
f8e4b23adb [CSA][cleanup] TNodify builtins collections gen (pt. 1)
TNodified several methods, such as the ones regarding CollectionType.
Eliminated unneeded Context parameters
Removed Sloppy-ness from TNodes.

Bug: v8:6949, v8:9396
Change-Id: Ib4c7643957629b651aa39051f89a90bc70e215c9
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803335
Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org>
Reviewed-by: Mythri Alle <mythria@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63763}
2019-09-13 15:44:14 +00:00
Sigurd Schneider
b7cb606654 Add required includes for <memory> when using std::unique_ptr
Tbr: yangguo@chromium.org
Change-Id: I9e774efdbff94be909470ab848c75e5120bb520e
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803343
Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63762}
2019-09-13 15:41:04 +00:00
Ross McIlroy
3de87fd93c [CSA][cleanup] TNodify builtin-functions-gen and OrdinaryHasInstance.
- HasInPrototypeChain
 - OrdinaryHasInstance
 - ObjectPrototypeIsPrototype
 - ObjectHasInstance

BUG=v8:6949, v8:9396

Change-Id: I85b21f1e74aa869f212dc788a1dbe76c50a0d96e
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803342
Commit-Queue: Ross McIlroy <rmcilroy@chromium.org>
Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org>
Auto-Submit: Ross McIlroy <rmcilroy@chromium.org>
Reviewed-by: Santiago Aboy Solanes <solanes@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63761}
2019-09-13 15:31:02 +00:00
Clemens Hammacher
4d97099c65 [wasm] Prepare for multiple jump tables
This adds logic to choose the closest jump table for each call in wasm
code. The "main jump table" (held in {NativeModule::main_jump_table_})
is still kept though and used for any external or indirect call.
Any direct call from within wasm now chooses the jump table that
corresponds to the code space that the code lives in.

R=mstarzinger@chromium.org

Bug: v8:9477
Change-Id: Ie52b5bb3a4a160cb754b8702c530f6feb182b3a9
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1800576
Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63760}
2019-09-13 15:27:43 +00:00
Igor Sheludko
b9a393a201 [csa] Remove ParameterMode from CSA::Load/StoreFeedbackVectorSlot
... and from AccessorAssembler::LoadGlobalIC().

Tbr: tebbi@chromium.org
Bug: v8:9708
Change-Id: Ia7d2ab30cfcfd513257655eb30a466d929ac774a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801853
Commit-Queue: Igor Sheludko <ishell@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63759}
2019-09-13 15:24:22 +00:00
Clemens Hammacher
eac9b0771e [wasm] Fix include rules of jump-table-assembler.h
CL https://crrev.com/c/1801846 made the presubmit bot red:

ERROR in /b/s/w/ir/cache/builder/v8/src/wasm/jump-table-assembler.cc
  Illegal include: "src/wasm/jump-table-assembler.h"
      Because of "-src" from src/wasm's specific_include_rules.

This CL fixes that.

R=mstarzinger@chromium.org

No-Try: true
Change-Id: I7cd947d9086bbf968a1ae89cb38f016abd819c05
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803338
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63758}
2019-09-13 14:05:24 +00:00
Ross McIlroy
739b99d51b [CSA][cleanup] TNodify keyed-store-generic.
Also TNodify TypeOf in code-stub-assembler.

BUG=v8:6949, v8:9396

Change-Id: I12a66a077fe82df44ce3c46a87f1fda754be9423
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803334
Reviewed-by: Mythri Alle <mythria@chromium.org>
Commit-Queue: Ross McIlroy <rmcilroy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63757}
2019-09-13 14:04:04 +00:00
Clemens Hammacher
e651ab6ff6 [base] Reimplement {base::fold} in C++14
Just two functions instead of partially specialized structs. Also, no
need to compute the return type(s), just use {auto}.

R=tebbi@chromium.org

Bug: v8:9396
Change-Id: I840af52c3caac622aded8bd7656a5437abb2c8ef
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801845
Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63756}
2019-09-13 13:58:14 +00:00
Maya Lekova
46f9d4008a Reland "[turbofan] Temporarily disable future=>concurrent_inlining"
This is a reland of ce42112243.
Speculatively relanding, because the failure seems unrelated.

Original change's description:
> [turbofan] Temporarily disable future=>concurrent_inlining
>
> ... in order to reset the benchmarks now that we are actually running
> in the background.
>
> Bug: v8:7790
> Change-Id: Ifa811fbcc51eccef790e6215d330f8b45c31a492
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801836
> Reviewed-by: Georg Neis <neis@chromium.org>
> Commit-Queue: Georg Neis <neis@chromium.org>
> Auto-Submit: Maya Lekova <mslekova@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#63741}

Bug: v8:7790
Change-Id: I49316516b300e6d2754043848d95ac5511fc6015
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801849
Reviewed-by: Georg Neis <neis@chromium.org>
Commit-Queue: Georg Neis <neis@chromium.org>
Auto-Submit: Maya Lekova <mslekova@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63755}
2019-09-13 13:15:28 +00:00
Clemens Hammacher
0a8ddb134c [wasm] Implement patching of far jump table
If the jump is too large for a near jump, we patch the far jump table
instead, and patch the (near) jump table to jump to the far jump table
slot.

R=mstarzinger@chromium.org

Bug: v8:9477
Change-Id: Ic9a929b405492c1cfe744738e0807ad4357c53ff
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1799543
Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63754}
2019-09-13 13:01:44 +00:00
Santiago Aboy Solanes
fe674753fa [CSA][cleanup] TNodify interpeter's comparisons
TNodify:
 * Equal
 * StrictEqual
 * RelationalComparison

Also TNodify some low hanging Node* in interpreter generator

Bug: v8:6949, v8:9396
Change-Id: I8d6ef775abd10db79cae740e4e26446d7117af25
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801842
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63753}
2019-09-13 13:00:24 +00:00
Clemens Hammacher
eae0e5160f [base] Reimplement {make_array} using C++14
This reimplements the {base::make_array} helper using
{std::index_sequence}. This avoids the need to recursively create index
lists in template argument packs, and replaces a partially specialized
struct by a single function.

R=tebbi@chromium.org

Bug: v8:9396
Change-Id: I60369bfac6cb9abc889ed658208411949ca9ec07
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1800575
Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63752}
2019-09-13 12:56:29 +00:00
Joey Gouly
01b5a7ed67 [arm64] Fold comparisons into branches for Word64
Make TryEmitCbzOrTbz a template, so it can be used for Word64 as well as Word32.

0.09% reduction of embedded builtins size with a arm64 ptr-compr build.

Some of the unittests weren't ported to Word64 as they don't pass, this is due to
VisitWordCompare missing a loop to remove Word64Equal comparisons against 0. This
can be added in a different CL if needed.

Change-Id: I927129d934083b71abe5b77991c39286470a228d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1792908
Commit-Queue: Martyn Capewell <martyn.capewell@arm.com>
Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63751}
2019-09-13 12:55:24 +00:00
Michael Starzinger
d287e4bc46 [cleanup] Switch {OFFSET_OF} to {offsetof} where possible.
R=clemensh@chromium.org
BUG=v8:9396

Change-Id: I3233a311e2ee56d9874365eb898a3316622ff6d2
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/997452
Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63750}
2019-09-13 12:54:19 +00:00
Clemens Hammacher
f0463fe99f [wasm] Make {JumpTableAssembler} independent of wasm internals
The {JumpTableAssembler} should not include {wasm-code-manager.h}. It
only depends on assembler headers in {src/codegen}.
This removes the {flush_i_cache} parameter which is always set anyway,
removes the last include from {src/wasm} and updates the DEPS file to
forbid such includes for the future.

R=mstarzinger@chromium.org

Bug: v8:9396, v8:9477
Change-Id: Id57b35c93155c3eac7c4c9b6a41d3a1c98c0dddc
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801846
Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63749}
2019-09-13 12:53:16 +00:00
Peter Marshall
0f067efe69 [cleanup] Remove deprecated Neuter API calls
These were deprecated in 7.8 via:
https://chromium-review.googlesource.com/c/v8/v8/+/1735316

Use Detach() instead.

Bug: chromium:913887, v8:9396
Change-Id: I7d0b0c0273188c99f5afee18d4880852f5e59d10
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801850
Commit-Queue: Peter Marshall <petermarshall@chromium.org>
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Auto-Submit: Peter Marshall <petermarshall@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63748}
2019-09-13 12:52:15 +00:00
Clemens Hammacher
dbc36e95c5 Revert "Reland "[Heap] Create a fast path for young allocations.""
This reverts commit 7b7df7db4d.

Reason for revert: Still breaks gc-stress bots: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20gc%20stress/24466

Original change's description:
> Reland "[Heap] Create a fast path for young allocations."
> 
> Disable a flaky test.
> 
> This is a reland of cbf028e8b8
> 
> Original change's description:
> > [Heap] Create a fast path for young allocations.
> >
> > Bug: v8:9714
> > Change-Id: I3be6ea615142c8282bb67370626c7596cedf826c
> > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1800304
> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
> > Commit-Queue: Victor Gomes <victorgomes@google.com>
> > Auto-Submit: Victor Gomes <victorgomes@google.com>
> > Cr-Commit-Position: refs/heads/master@{#63729}
> 
> Bug: v8:9714
> Change-Id: Ifbd8617be1b8c58cb1552fe88c52eafd9d6e9c7d
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801840
> Commit-Queue: Victor Gomes <victorgomes@google.com>
> Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
> Auto-Submit: Victor Gomes <victorgomes@google.com>
> Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#63744}

TBR=ulan@chromium.org,verwaest@chromium.org,victorgomes@google.com

Change-Id: Ie041a7ff25adb9edc7c44ebb259912e66dfb9da1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: v8:9714
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801852
Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63747}
2019-09-13 12:33:41 +00:00
Victor Gomes
be03c0c60b [Heap]: Remove dead code.
NewTuple3 is not used anywhere in the source code.

Bug: v8:9714
Change-Id: Iac3b3c17eafa01f5bb3de12a50afb4da0215e923
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801843
Commit-Queue: Victor Gomes <victorgomes@google.com>
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Auto-Submit: Victor Gomes <victorgomes@google.com>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63746}
2019-09-13 11:33:50 +00:00
Leszek Swirski
48ef2a22aa [tracing] Add column num to ICStats
For minified files especially, the line number alone isn't enough to
identify an IC site.

Change-Id: I93f54f8fca1002072af0d702c155768fa2a8dbcb
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1800566
Reviewed-by: Igor Sheludko <ishell@chromium.org>
Reviewed-by: Peter Marshall <petermarshall@chromium.org>
Commit-Queue: Peter Marshall <petermarshall@chromium.org>
Auto-Submit: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63745}
2019-09-13 11:27:49 +00:00
Victor Gomes
7b7df7db4d Reland "[Heap] Create a fast path for young allocations."
Disable a flaky test.

This is a reland of cbf028e8b8

Original change's description:
> [Heap] Create a fast path for young allocations.
>
> Bug: v8:9714
> Change-Id: I3be6ea615142c8282bb67370626c7596cedf826c
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1800304
> Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
> Commit-Queue: Victor Gomes <victorgomes@google.com>
> Auto-Submit: Victor Gomes <victorgomes@google.com>
> Cr-Commit-Position: refs/heads/master@{#63729}

Bug: v8:9714
Change-Id: Ifbd8617be1b8c58cb1552fe88c52eafd9d6e9c7d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801840
Commit-Queue: Victor Gomes <victorgomes@google.com>
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Auto-Submit: Victor Gomes <victorgomes@google.com>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63744}
2019-09-13 11:26:45 +00:00
Tobias Tebbi
3f8fc137c3 Revert "[turbofan] temporarily disable const-based load elimination"
This reverts commit 9ce6792630.

Reason for revert: This was never intended to stay.

Original change's description:
> [turbofan] temporarily disable const-based load elimination
> 
> This is a safe to merge hot-fix to tackle https://crbug.com/983764.
> To be reverted after merging to M77.
> 
> Bug: chromium:983764
> Change-Id: I3cd27481f224b352ef6bcf9dde21a8f77616acff
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1786285
> Reviewed-by: Maya Lekova <mslekova@chromium.org>
> Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#63570}

TBR=tebbi@chromium.org,mslekova@chromium.org

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

Bug: chromium:983764
Change-Id: I9c07eab384818aaeecab0224cec0f6b5310e9e09
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801839
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63743}
2019-09-13 11:25:40 +00:00
Sathya Gunasekaran
937cfabc6b Revert "[turbofan] Temporarily disable future=>concurrent_inlining"
This reverts commit ce42112243.

Reason for revert: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20debug/27535

Original change's description:
> [turbofan] Temporarily disable future=>concurrent_inlining
> 
> ... in order to reset the benchmarks now that we are actually running
> in the background.
> 
> Bug: v8:7790
> Change-Id: Ifa811fbcc51eccef790e6215d330f8b45c31a492
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801836
> Reviewed-by: Georg Neis <neis@chromium.org>
> Commit-Queue: Georg Neis <neis@chromium.org>
> Auto-Submit: Maya Lekova <mslekova@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#63741}

TBR=neis@chromium.org,mslekova@chromium.org

Change-Id: Ia36bc6a600c78b370a29964fabd215f853e048f9
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: v8:7790
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803234
Reviewed-by: Sathya Gunasekaran  <gsathya@chromium.org>
Commit-Queue: Sathya Gunasekaran  <gsathya@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63742}
2019-09-13 10:31:21 +00:00
Maya Lekova
ce42112243 [turbofan] Temporarily disable future=>concurrent_inlining
... in order to reset the benchmarks now that we are actually running
in the background.

Bug: v8:7790
Change-Id: Ifa811fbcc51eccef790e6215d330f8b45c31a492
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801836
Reviewed-by: Georg Neis <neis@chromium.org>
Commit-Queue: Georg Neis <neis@chromium.org>
Auto-Submit: Maya Lekova <mslekova@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63741}
2019-09-13 09:10:24 +00:00
Igor Sheludko
29817ae091 [csa] Remove ParameterMode from CSA::CodeStubArguments
Bug: v8:9708
Change-Id: I91e429e478ad70dc2212f9f78830d10941fa47e6
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1800581
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Commit-Queue: Igor Sheludko <ishell@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63740}
2019-09-13 09:03:13 +00:00
Georg Neis
0a3e812a23 [turbofan] Remove leftover heap/isolate access
Bug: chromium:1003664, v8:7790
Change-Id: Ib80ae624e7a5e92cc5032b9098df141a9bf2ce25
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801835
Commit-Queue: Georg Neis <neis@chromium.org>
Commit-Queue: Maya Lekova <mslekova@chromium.org>
Auto-Submit: Georg Neis <neis@chromium.org>
Reviewed-by: Maya Lekova <mslekova@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63739}
2019-09-13 08:55:23 +00:00
v8-ci-autoroll-builder
c703553f41 Update V8 DEPS.
Rolling v8/buildtools: 74cfb57..cf454b2

Rolling v8/buildtools/linux64: git_revision:152c5144ceed9592c20f0c8fd55769646077569b..git_revision:ad9e442d92dcd9ee73a557428cfc336b55cbd533

Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/884c81e..3732ed1

Rolling v8/third_party/depot_tools: e5641be..2d75cf6

Rolling v8/third_party/googletest/src: 3a45039..c7a03da

Rolling v8/third_party/icu: 53f6b23..faee8bc

Rolling v8/tools/clang: 51c4acf..6706ebf

TBR=machenbach@chromium.org,tmrts@chromium.org

Change-Id: Ieb13189e6868e15233489bd045e9995ee06e59af
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1802148
Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#63738}
2019-09-13 03:53:52 +00:00
Dmitry Gozman
fe3d51e1b2 [inspector] Simplify async stepping
Currently, debugger pauses on async call schedule and then waits for Debugger.pauseOnAsyncCall
with parentStackTraceId to actually schedule the pause.

This CL combines these two steps:
- For local async tasks, it just stores m_taskWithScheduledBreak at the time of schedule,
  to be able to pause once this task is run.
- For external async tasks, it plumbs "should_pause" boolean in V8StackTraceId from
  the point of schedule to the point of execution, and schedules a pause once
  externalAsyncTaskStarted is called with "should_pause" set to true.

This approach greatly simplifies the implementation, and reduced frontend to a single
"breakOnAsyncCall: true" parameter in Debugger.stepInto.

Drive-by: introduce hasScheduledBreakOnNextFunctionCall() to make
SetBreakOnNextFunctionCall management more robust.

Note: artificial pauses at async call schedule time are gone from test expectations -
we now only pause when user actually wants to pause, which makes protocol much simpler.

See also design doc linked in the bug.

BUG=chromium:1000475

Change-Id: I2d16f79c599fe196b2aaeca8223c63437a2954a9
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1783724
Commit-Queue: Dmitry Gozman <dgozman@chromium.org>
Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org>
Reviewed-by: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63737}
2019-09-13 02:33:22 +00:00
Frank Tang
25c11657fc [Intl] Clean up by removing the following flags
harmony_intl_bigint shipped in m76
  harmony_intl_date_format_range shipped in m76
  harmony_intl_datetime_style shipped in m76
  harmony_intl_numberformat_unified shipped in m77

Bug: v8:9272, v8:9273, v8:9274
Change-Id: Icc640e011021e691373bc61725013578b7185e50
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1799263
Commit-Queue: Frank Tang <ftang@chromium.org>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63736}
2019-09-12 22:25:41 +00:00
Igor Sheludko
8a1a28675e [csa] Remove ParameterMode from CSA::BuildFastLoop
Bug: v8:9708
Change-Id: I305cc007a4e7302c8587b999cbb11f23ced4cfd3
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1800579
Commit-Queue: Igor Sheludko <ishell@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63735}
2019-09-12 19:48:41 +00:00
Frank Tang
6cf125a90c [Intl] Fix error message to report the right method.
Bug: v8:9464
Change-Id: I3252de850bbaa5fdb15f5fc2103f1ebb7be3e1ea
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1799396
Commit-Queue: Frank Tang <ftang@chromium.org>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63734}
2019-09-12 19:32:31 +00:00
Z Nguyen-Huu
ee0581c332 [builtins] Port RegExp Split to Torque
Bug: v8:8976
Change-Id: I1ffc6637e26ee217750d099d758fd67ed2130131
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1796316
Commit-Queue: Z Nguyen-Huu <duongn@microsoft.com>
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63733}
2019-09-12 19:23:10 +00:00
Zhi An Ng
7b4f4b2e9f Revert "[Heap] Create a fast path for young allocations."
This reverts commit cbf028e8b8.

Reason for revert: Broke Mac64 GC Stress https://ci.chromium.org/p/v8/builders/ci/V8%20Mac64%20GC%20Stress/9148

Original change's description:
> [Heap] Create a fast path for young allocations.
> 
> Bug: v8:9714
> Change-Id: I3be6ea615142c8282bb67370626c7596cedf826c
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1800304
> Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
> Commit-Queue: Victor Gomes <victorgomes@google.com>
> Auto-Submit: Victor Gomes <victorgomes@google.com>
> Cr-Commit-Position: refs/heads/master@{#63729}

TBR=ulan@chromium.org,verwaest@chromium.org,victorgomes@google.com

Change-Id: I687de68a0413c62df304030deafd04661028f156
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: v8:9714
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801681
Reviewed-by: Zhi An Ng <zhin@chromium.org>
Commit-Queue: Zhi An Ng <zhin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63732}
2019-09-12 18:28:12 +00:00
Irina Yatsenko
286d339469 Three basic cctests for tracking of old to new pointers
Change-Id: I162b3cac024fba180ff191c8497da9a958c38167
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1797657
Commit-Queue: Irina Yatsenko <irinayat@microsoft.com>
Reviewed-by: Dominik Inführ <dinfuehr@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63731}
2019-09-12 18:16:00 +00:00
Santiago Aboy Solanes
9a2bc76123 [CSA][cleanup] Variable to TVARIABLE in src/interpreter
I was using a regex to find VARIABLE (with upper case) so I missed cases where
the macro was not used, but still was an untyped variable.

Bug: v8:6949, v8:9396
Change-Id: I39e3090410b3ac49a4eaaf6fafa32b33ba0f1543
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1800569
Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org>
Reviewed-by: Mythri Alle <mythria@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63730}
2019-09-12 17:51:20 +00:00
Victor Gomes
cbf028e8b8 [Heap] Create a fast path for young allocations.
Bug: v8:9714
Change-Id: I3be6ea615142c8282bb67370626c7596cedf826c
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1800304
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Commit-Queue: Victor Gomes <victorgomes@google.com>
Auto-Submit: Victor Gomes <victorgomes@google.com>
Cr-Commit-Position: refs/heads/master@{#63729}
2019-09-12 17:47:51 +00:00
Santiago Aboy Solanes
1efe89b2ed [CSA][cleanup] Finish TNodifying builtins-constructor-gen
Bug: v8:6949, v8:9396
Change-Id: I2d8c252d97aae95f8368eb8e6566e52ffce9e957
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1796063
Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org>
Reviewed-by: Mythri Alle <mythria@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63728}
2019-09-12 17:44:31 +00:00
Ng Zhi An
167ca2e252 [wasm-simd] Fix shifts value to be modulo lane width
Drive by fix of type of expected value in a test

Bug: v8:9626
Change-Id: I1bb44082b873383ea75e7089828bc68c9d4e0df0
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1757503
Reviewed-by: Deepti Gandluri <gdeepti@chromium.org>
Commit-Queue: Zhi An Ng <zhin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63727}
2019-09-12 17:37:10 +00:00
Ng Zhi An
c255e5fbc3 Remove redundant buffer read/write checks
The point of this test is to check for OOB access traps, the read/write
of the entire backing buffer is not useful to this test, and causes the
test to be really slow, especially on arm simulator. This change cuts
the runtime of the test from ~7.5min to ~1.5min.

Bug: v8:7783
Bug: v8:9396
Change-Id: Id57648e920b7631d8c481d2a43ded1c16cd2d1d3
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1793905
Commit-Queue: Zhi An Ng <zhin@chromium.org>
Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63726}
2019-09-12 17:29:20 +00:00