New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 818642 link

Starred by 3 users

Issue metadata

Status: Started
Owner:
Last visit > 30 days ago
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug

Blocked on:
issue 783853
issue v8:7530
issue v8:7606



Sign in to add a comment

V8 Memory Reduction

Project Member Reported by hpayer@chromium.org, Mar 5 2018

Issue description

Meta-bug V8 Memory Reduction

 
Blockedon: 783853
There was an old bug for uncompiled SFI reduction after the first memory investigation with GMail
Cc: leszeks@chromium.org
Status: (was: Started)
Blockedon: v8:7530

Comment 4 by cbruni@chromium.org, Mar 19 2018

Cc: cbruni@chromium.org
Components: Blink>JavaScript
Overview Doc: https://docs.google.com/document/d/1Fa4km2MLq2N9Q1W0xx1d4p_oI3OIwFh3vq142lVN6ZE
Project Member

Comment 5 by bugdroid1@chromium.org, Mar 20 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/1f53e38100c76f170e54ebdfc32e1b3a86988e0e

commit 1f53e38100c76f170e54ebdfc32e1b3a86988e0e
Author: Camillo Bruni <cbruni@chromium.org>
Date: Tue Mar 20 15:18:04 2018

[runtime] Shrink StringTable if it is very empty

We currently never shrink the StringTable which causes excessive memory usage
on certain websites. This CL tries to mitigate this by shrinking the
StringTable if it is very empty (nof_elements * 16 < capacity) hopefully
avoiding costly reallocations.

Bug: chromium:818642, v8:5443
Change-Id: I4e6a95b3a6992b499fa6dd59ae159c51f089965a
Reviewed-on: https://chromium-review.googlesource.com/970465
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Hannes Payer <hpayer@chromium.org>
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#52070}
[modify] https://crrev.com/1f53e38100c76f170e54ebdfc32e1b3a86988e0e/src/heap/heap.h
[modify] https://crrev.com/1f53e38100c76f170e54ebdfc32e1b3a86988e0e/src/objects.cc
[modify] https://crrev.com/1f53e38100c76f170e54ebdfc32e1b3a86988e0e/src/objects/hash-table.h
[modify] https://crrev.com/1f53e38100c76f170e54ebdfc32e1b3a86988e0e/src/objects/string-table.h

Project Member

Comment 6 by bugdroid1@chromium.org, Mar 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/868ed8eeccf08b1e175419c871fe123cb487e574

commit 868ed8eeccf08b1e175419c871fe123cb487e574
Author: Camillo Bruni <cbruni@chromium.org>
Date: Thu Mar 22 13:03:42 2018

[runtime] Decrease StringTable shrink limit

Given that we have not seen any regressions yet we're trying a more aggressive
limit.

Bug: chromium:818642, v8:5443
Change-Id: Ic45001ed6c042fc31cbba0d417d5060d2de8fb3a
Reviewed-on: https://chromium-review.googlesource.com/975126
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#52145}
[modify] https://crrev.com/868ed8eeccf08b1e175419c871fe123cb487e574/src/objects/string-table.h

Project Member

Comment 7 by bugdroid1@chromium.org, Mar 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/9debc06fbd45011d35e8c7f56f060158b25410e5

commit 9debc06fbd45011d35e8c7f56f060158b25410e5
Author: Michael Achenbach <machenbach@chromium.org>
Date: Thu Mar 22 14:41:18 2018

Revert "[runtime] Decrease StringTable shrink limit"

This reverts commit 868ed8eeccf08b1e175419c871fe123cb487e574.

Reason for revert:
https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20debug/builds/19753

Original change's description:
> [runtime] Decrease StringTable shrink limit
> 
> Given that we have not seen any regressions yet we're trying a more aggressive
> limit.
> 
> Bug: chromium:818642, v8:5443
> Change-Id: Ic45001ed6c042fc31cbba0d417d5060d2de8fb3a
> Reviewed-on: https://chromium-review.googlesource.com/975126
> Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
> Commit-Queue: Camillo Bruni <cbruni@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#52145}

TBR=mlippautz@chromium.org,cbruni@chromium.org

Change-Id: Ic1f3ab2aa7683e5fc9118f196e5a31eb55a9a5a0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:818642, v8:5443
Reviewed-on: https://chromium-review.googlesource.com/975741
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#52148}
[modify] https://crrev.com/9debc06fbd45011d35e8c7f56f060158b25410e5/src/objects/string-table.h

Project Member

Comment 8 by bugdroid1@chromium.org, Mar 27 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/20d5fba30c33f7f02f96d7044d7471e0a4563303

commit 20d5fba30c33f7f02f96d7044d7471e0a4563303
Author: Camillo Bruni <cbruni@chromium.org>
Date: Tue Mar 27 11:38:42 2018

Reland "[runtime] Decrease StringTable shrink limit"

- Allow deserializer to add entries to the StringTable without
  causing a gc.

This is a reland of 868ed8eeccf08b1e175419c871fe123cb487e574

Original change's description:
> [runtime] Decrease StringTable shrink limit
>
> Given that we have not seen any regressions yet we're trying a more aggressive
> limit.
>
> Bug: chromium:818642, v8:5443
> Change-Id: Ic45001ed6c042fc31cbba0d417d5060d2de8fb3a
> Reviewed-on: https://chromium-review.googlesource.com/975126
> Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
> Commit-Queue: Camillo Bruni <cbruni@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#52145}

Bug: chromium:818642, v8:5443
Change-Id: I051c6a79e59ec40cf87cab5bf06c4c449f8113d0
Reviewed-on: https://chromium-review.googlesource.com/975643
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#52242}
[modify] https://crrev.com/20d5fba30c33f7f02f96d7044d7471e0a4563303/src/objects.cc
[modify] https://crrev.com/20d5fba30c33f7f02f96d7044d7471e0a4563303/src/objects/string-table.h
[modify] https://crrev.com/20d5fba30c33f7f02f96d7044d7471e0a4563303/src/snapshot/object-deserializer.cc

Blockedon: v8:7606
Project Member

Comment 10 by bugdroid1@chromium.org, Apr 5 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/6823c0a496a75161e3a82eefc759180b547077e2

commit 6823c0a496a75161e3a82eefc759180b547077e2
Author: Camillo Bruni <cbruni@chromium.org>
Date: Thu Apr 05 14:52:40 2018

[runtime] Do some more StringTable shrinking

This CL further lowers the kMaxEmptyFactor constant to more aggressively shrink
the StringTable when it's empty.

Bug: v8:5443, chromium:818642
Change-Id: I1c263a0afd7e6bed8a8bb857db032bf126c3ef4b
Reviewed-on: https://chromium-review.googlesource.com/995473
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#52401}
[modify] https://crrev.com/6823c0a496a75161e3a82eefc759180b547077e2/src/objects/string-table.h

Project Member

Comment 11 by bugdroid1@chromium.org, Apr 5 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/54f2aac554473554576f2dceb21e7adec1fe0c33

commit 54f2aac554473554576f2dceb21e7adec1fe0c33
Author: Camillo Bruni <cbruni@chromium.org>
Date: Thu Apr 05 21:18:52 2018

[runtime][parser] Store the inferred function name on the ScopeInfo

This is another small step towards detaching the JSFunction from Contexts.
In order to not break the debugger protocol we need the inferred name on the
ScopeInfo chain. This CL might increase memory usage slightly, given that the
inferred name field is duplicated on the ScopeInfo.

Bug:  v8:7066 , chromium:818642
Change-Id: I0dd9f18ae69791f774cf835669afa50491f7433b
Reviewed-on: https://chromium-review.googlesource.com/995792
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Reviewed-by: Marja Hölttä <marja@chromium.org>
Cr-Commit-Position: refs/heads/master@{#52415}
[modify] https://crrev.com/54f2aac554473554576f2dceb21e7adec1fe0c33/src/ast/ast.cc
[modify] https://crrev.com/54f2aac554473554576f2dceb21e7adec1fe0c33/src/ast/ast.h
[modify] https://crrev.com/54f2aac554473554576f2dceb21e7adec1fe0c33/src/ast/scopes.h
[modify] https://crrev.com/54f2aac554473554576f2dceb21e7adec1fe0c33/src/objects-printer.cc
[modify] https://crrev.com/54f2aac554473554576f2dceb21e7adec1fe0c33/src/objects/scope-info.cc
[modify] https://crrev.com/54f2aac554473554576f2dceb21e7adec1fe0c33/src/objects/scope-info.h
[modify] https://crrev.com/54f2aac554473554576f2dceb21e7adec1fe0c33/src/objects/shared-function-info-inl.h

Project Member

Comment 12 by bugdroid1@chromium.org, Apr 10 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/affbe85e922356697534df0f6b224efd07cf98fa

commit affbe85e922356697534df0f6b224efd07cf98fa
Author: Jakob Gruber <jgruber@chromium.org>
Date: Tue Apr 10 10:18:21 2018

Revert "[runtime] Do some more StringTable shrinking"

This reverts commit 6823c0a496a75161e3a82eefc759180b547077e2.

Reason for revert: https://crbug.com/830499

Original change's description:
> [runtime] Do some more StringTable shrinking
> 
> This CL further lowers the kMaxEmptyFactor constant to more aggressively shrink
> the StringTable when it's empty.
> 
> Bug: v8:5443, chromium:818642
> Change-Id: I1c263a0afd7e6bed8a8bb857db032bf126c3ef4b
> Reviewed-on: https://chromium-review.googlesource.com/995473
> Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
> Commit-Queue: Camillo Bruni <cbruni@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#52401}

TBR=mlippautz@chromium.org,cbruni@chromium.org

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

Bug: v8:5443, chromium:818642
Change-Id: Ibd009fe1e9fcd0b36f168ad425e1eb5e663a1ca8
Reviewed-on: https://chromium-review.googlesource.com/1004456
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#52515}
[modify] https://crrev.com/affbe85e922356697534df0f6b224efd07cf98fa/src/objects/string-table.h

Project Member

Comment 13 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6

commit 2df5e7a7b6d625a69b17d4e11380eed55da3d3e6
Author: Leszek Swirski <leszeks@chromium.org>
Date: Tue May 01 15:38:19 2018

[parser] Slice the source string where possible

When internalizing string literals (for quoted strings or property names),
try to create a sliced string of the source string rather than allocating
a copy of the bytes.

This will not work for string literals that contain escapes (e.g. unicode
escapes), and currently does not support two-byte strings.

Bug: chromium:818642
Change-Id: I686e5ad36baecd1a84ce5e124118431249b6c980
Reviewed-on: https://chromium-review.googlesource.com/1010282
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Yang Guo <yangguo@chromium.org>
Reviewed-by: Jaroslav Sevcik <jarin@chromium.org>
Reviewed-by: Marja Hölttä <marja@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#52898}
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/ast/ast-value-factory.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/ast/ast-value-factory.h
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/ast/modules.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/ast/scopes.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/compiler-dispatcher/unoptimized-compile-job.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/compiler.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/compiler/js-typed-lowering.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/compiler/types.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/debug/debug-scopes.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/flag-definitions.h
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/heap/factory.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/heap/factory.h
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/heap/heap.h
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/objects-debug.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/objects-printer.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/objects.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/objects.h
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/objects/string-inl.h
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/parsing/parser-base.h
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/parsing/parser.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/parsing/parser.h
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/parsing/scanner.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/parsing/scanner.h
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/pending-compilation-error-handler.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/src/runtime/runtime-internal.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/test/cctest/interpreter/test-interpreter.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/test/cctest/test-heap-profiler.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/test/cctest/test-parsing.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/test/cctest/test-serialize.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/test/cctest/test-strings.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/test/unittests/interpreter/bytecode-array-builder-unittest.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/test/unittests/interpreter/bytecode-array-iterator-unittest.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/test/unittests/interpreter/bytecode-array-random-iterator-unittest.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/test/unittests/interpreter/constant-array-builder-unittest.cc
[modify] https://crrev.com/2df5e7a7b6d625a69b17d4e11380eed55da3d3e6/tools/v8heapconst.py

Project Member

Comment 14 by bugdroid1@chromium.org, May 2 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/18bc2856218426bcdce5a68158a3b6a889ca81ad

commit 18bc2856218426bcdce5a68158a3b6a889ca81ad
Author: Leszek Swirski <leszeks@chromium.org>
Date: Wed May 02 15:32:13 2018

Revert "[parser] Slice the source string where possible"

This reverts commit 2df5e7a7b6d625a69b17d4e11380eed55da3d3e6.

Reason for revert: Mystery crashes https://bugs.chromium.org/p/chromium/issues/detail?id=838805

Original change's description:
> [parser] Slice the source string where possible
> 
> When internalizing string literals (for quoted strings or property names),
> try to create a sliced string of the source string rather than allocating
> a copy of the bytes.
> 
> This will not work for string literals that contain escapes (e.g. unicode
> escapes), and currently does not support two-byte strings.
> 
> Bug: chromium:818642
> Change-Id: I686e5ad36baecd1a84ce5e124118431249b6c980
> Reviewed-on: https://chromium-review.googlesource.com/1010282
> Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
> Reviewed-by: Yang Guo <yangguo@chromium.org>
> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org>
> Reviewed-by: Marja Hölttä <marja@chromium.org>
> Commit-Queue: Leszek Swirski <leszeks@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#52898}

TBR=marja@chromium.org,yangguo@chromium.org,jarin@chromium.org,mlippautz@chromium.org,leszeks@chromium.org,verwaest@chromium.org

Change-Id: I598b6668c43a3e843e2dd8e60852b2b2f3461954
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:818642
Reviewed-on: https://chromium-review.googlesource.com/1039885
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#52919}
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/ast/ast-value-factory.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/ast/ast-value-factory.h
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/ast/modules.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/ast/scopes.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/compiler-dispatcher/unoptimized-compile-job.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/compiler.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/compiler/js-typed-lowering.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/compiler/types.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/debug/debug-scopes.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/flag-definitions.h
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/heap/factory.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/heap/factory.h
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/heap/heap.h
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/objects-debug.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/objects-printer.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/objects.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/objects.h
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/objects/string-inl.h
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/parsing/parser-base.h
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/parsing/parser.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/parsing/parser.h
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/parsing/scanner.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/parsing/scanner.h
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/pending-compilation-error-handler.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/src/runtime/runtime-internal.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/test/cctest/interpreter/test-interpreter.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/test/cctest/test-heap-profiler.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/test/cctest/test-parsing.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/test/cctest/test-serialize.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/test/cctest/test-strings.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/test/unittests/interpreter/bytecode-array-builder-unittest.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/test/unittests/interpreter/bytecode-array-iterator-unittest.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/test/unittests/interpreter/bytecode-array-random-iterator-unittest.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/test/unittests/interpreter/constant-array-builder-unittest.cc
[modify] https://crrev.com/18bc2856218426bcdce5a68158a3b6a889ca81ad/tools/v8heapconst.py

Project Member

Comment 15 by bugdroid1@chromium.org, May 7 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/dcbd52341ee542f4d2a380ed8cc6d9bd84a9f8bd

commit dcbd52341ee542f4d2a380ed8cc6d9bd84a9f8bd
Author: Camillo Bruni <cbruni@chromium.org>
Date: Mon May 07 07:46:40 2018

[runtime] The return of the StringTable shrinking

This CL fixes a bug where we would accidentally shrink to the same size of
the StringTable causing repeated unecessary allocations.

Bug: v8:5443, chromium:818642
Change-Id: I353b179616d5293f6d7143e7381ae6711343a835
Reviewed-on: https://chromium-review.googlesource.com/1044207
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#53012}
[modify] https://crrev.com/dcbd52341ee542f4d2a380ed8cc6d9bd84a9f8bd/src/objects.cc
[modify] https://crrev.com/dcbd52341ee542f4d2a380ed8cc6d9bd84a9f8bd/src/objects/string-table.h

Project Member

Comment 16 by bugdroid1@chromium.org, May 30 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/53d4dfc3771dda011ba95d0f825fabb83219ff51

commit 53d4dfc3771dda011ba95d0f825fabb83219ff51
Author: Leszek Swirski <leszeks@chromium.org>
Date: Wed May 30 16:35:50 2018

[sfi] Compress function arg counts to 16 bit

Compress the parameter count (and function length) stored in
SharedFunctionInfo to a uint16_t. This limits us to 2^16 - 1 parameters
per function, minus one for the "don't adapt arguments" sentinel value,
which is one fewer than Code::kMaxArguments was already. Anyway, 65534
arguments should be enough for anyone!

This drops SFI size by 4 bytes.

Bug: chromium:818642
Change-Id: I126bfb24453dcdc5087a104d3a12cf195a56fa9f
Reviewed-on: https://chromium-review.googlesource.com/1076627
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#53447}
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/arm/macro-assembler-arm.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/arm64/macro-assembler-arm64.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/builtins/arm/builtins-arm.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/builtins/arm64/builtins-arm64.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/builtins/builtins-arguments-gen.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/builtins/builtins-object-gen.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/builtins/ia32/builtins-ia32.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/builtins/mips/builtins-mips.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/builtins/mips64/builtins-mips64.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/builtins/x64/builtins-x64.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/debug/arm/debug-arm.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/debug/arm64/debug-arm64.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/debug/ia32/debug-ia32.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/debug/mips/debug-mips.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/debug/mips64/debug-mips64.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/debug/x64/debug-x64.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/ia32/macro-assembler-ia32.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/interpreter/interpreter-generator.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/macro-assembler.h
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/mips/macro-assembler-mips.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/mips64/macro-assembler-mips64.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/objects/code.h
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/objects/object-macros.h
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/objects/shared-function-info-inl.h
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/objects/shared-function-info.h
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/src/x64/macro-assembler-x64.cc
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/test/mjsunit/apply.js
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/test/mjsunit/regress/regress-crbug-724153.js
[modify] https://crrev.com/53d4dfc3771dda011ba95d0f825fabb83219ff51/tools/gen-postmortem-metadata.py

Project Member

Comment 17 by bugdroid1@chromium.org, Jun 5 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/ceb9c8127faa8fae7be310960080f7e0f1827326

commit ceb9c8127faa8fae7be310960080f7e0f1827326
Author: Leszek Swirski <leszeks@chromium.org>
Date: Tue Jun 05 13:45:11 2018

[sfi] Remove SFI function literal id field

SharedFunctionInfos store their original function literal's id. This is
also their index in the Script's SFI list.

Since the function literal id is only needed for lazy compilation and live
edit, we can calculate it on-the-fly by linear search in the Script SFI list,
and save a field on the SFI.

If this regresses compile performance, we could alternatively store the
function literal id on the preparsed scope data as future work.

Bug: chromium:818642
Change-Id: I5468cea0e115921f1c864d94e567d749a4349882
Reviewed-on: https://chromium-review.googlesource.com/1082480
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Hannes Payer <hpayer@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Cr-Commit-Position: refs/heads/master@{#53523}
[modify] https://crrev.com/ceb9c8127faa8fae7be310960080f7e0f1827326/src/bootstrapper.cc
[modify] https://crrev.com/ceb9c8127faa8fae7be310960080f7e0f1827326/src/compiler-dispatcher/unoptimized-compile-job.cc
[modify] https://crrev.com/ceb9c8127faa8fae7be310960080f7e0f1827326/src/debug/liveedit.cc
[modify] https://crrev.com/ceb9c8127faa8fae7be310960080f7e0f1827326/src/debug/liveedit.h
[modify] https://crrev.com/ceb9c8127faa8fae7be310960080f7e0f1827326/src/debug/liveedit.js
[modify] https://crrev.com/ceb9c8127faa8fae7be310960080f7e0f1827326/src/heap/factory.cc
[modify] https://crrev.com/ceb9c8127faa8fae7be310960080f7e0f1827326/src/objects.cc
[modify] https://crrev.com/ceb9c8127faa8fae7be310960080f7e0f1827326/src/objects/shared-function-info-inl.h
[modify] https://crrev.com/ceb9c8127faa8fae7be310960080f7e0f1827326/src/objects/shared-function-info.h
[modify] https://crrev.com/ceb9c8127faa8fae7be310960080f7e0f1827326/src/parsing/parse-info.cc
[modify] https://crrev.com/ceb9c8127faa8fae7be310960080f7e0f1827326/src/parsing/parse-info.h
[modify] https://crrev.com/ceb9c8127faa8fae7be310960080f7e0f1827326/src/runtime/runtime-function.cc
[modify] https://crrev.com/ceb9c8127faa8fae7be310960080f7e0f1827326/src/runtime/runtime-liveedit.cc
[modify] https://crrev.com/ceb9c8127faa8fae7be310960080f7e0f1827326/src/runtime/runtime.h
[modify] https://crrev.com/ceb9c8127faa8fae7be310960080f7e0f1827326/test/debugger/debug/debug-liveedit-replace-code.js
[modify] https://crrev.com/ceb9c8127faa8fae7be310960080f7e0f1827326/test/unittests/test-helpers.cc

Project Member

Comment 18 by bugdroid1@chromium.org, Jun 7 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/b6888b63cad8f19e2d14c5d53af7376831d02bea

commit b6888b63cad8f19e2d14c5d53af7376831d02bea
Author: Leszek Swirski <leszeks@chromium.org>
Date: Thu Jun 07 09:21:27 2018

Revert "[sfi] Remove SFI function literal id field"

This reverts commit ceb9c8127faa8fae7be310960080f7e0f1827326.

Reason for revert: Tanks compile time

Original change's description:
> [sfi] Remove SFI function literal id field
> 
> SharedFunctionInfos store their original function literal's id. This is
> also their index in the Script's SFI list.
> 
> Since the function literal id is only needed for lazy compilation and live
> edit, we can calculate it on-the-fly by linear search in the Script SFI list,
> and save a field on the SFI.
> 
> If this regresses compile performance, we could alternatively store the
> function literal id on the preparsed scope data as future work.
> 
> Bug: chromium:818642
> Change-Id: I5468cea0e115921f1c864d94e567d749a4349882
> Reviewed-on: https://chromium-review.googlesource.com/1082480
> Commit-Queue: Leszek Swirski <leszeks@chromium.org>
> Reviewed-by: Hannes Payer <hpayer@chromium.org>
> Reviewed-by: Toon Verwaest <verwaest@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#53523}

TBR=hpayer@chromium.org,leszeks@chromium.org,verwaest@chromium.org

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

Bug: chromium:818642
Bug: chromium:850417
Change-Id: If2fd21331b7062532c04004a51e705f7e9d0a151
Reviewed-on: https://chromium-review.googlesource.com/1090494
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#53573}
[modify] https://crrev.com/b6888b63cad8f19e2d14c5d53af7376831d02bea/src/bootstrapper.cc
[modify] https://crrev.com/b6888b63cad8f19e2d14c5d53af7376831d02bea/src/compiler-dispatcher/unoptimized-compile-job.cc
[modify] https://crrev.com/b6888b63cad8f19e2d14c5d53af7376831d02bea/src/debug/liveedit.cc
[modify] https://crrev.com/b6888b63cad8f19e2d14c5d53af7376831d02bea/src/debug/liveedit.h
[modify] https://crrev.com/b6888b63cad8f19e2d14c5d53af7376831d02bea/src/debug/liveedit.js
[modify] https://crrev.com/b6888b63cad8f19e2d14c5d53af7376831d02bea/src/heap/factory.cc
[modify] https://crrev.com/b6888b63cad8f19e2d14c5d53af7376831d02bea/src/objects.cc
[modify] https://crrev.com/b6888b63cad8f19e2d14c5d53af7376831d02bea/src/objects/shared-function-info-inl.h
[modify] https://crrev.com/b6888b63cad8f19e2d14c5d53af7376831d02bea/src/objects/shared-function-info.h
[modify] https://crrev.com/b6888b63cad8f19e2d14c5d53af7376831d02bea/src/parsing/parse-info.cc
[modify] https://crrev.com/b6888b63cad8f19e2d14c5d53af7376831d02bea/src/parsing/parse-info.h
[modify] https://crrev.com/b6888b63cad8f19e2d14c5d53af7376831d02bea/src/runtime/runtime-function.cc
[modify] https://crrev.com/b6888b63cad8f19e2d14c5d53af7376831d02bea/src/runtime/runtime-liveedit.cc
[modify] https://crrev.com/b6888b63cad8f19e2d14c5d53af7376831d02bea/src/runtime/runtime.h
[modify] https://crrev.com/b6888b63cad8f19e2d14c5d53af7376831d02bea/test/debugger/debug/debug-liveedit-replace-code.js
[modify] https://crrev.com/b6888b63cad8f19e2d14c5d53af7376831d02bea/test/unittests/test-helpers.cc

Project Member

Comment 19 by bugdroid1@chromium.org, Jun 26 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/6b6d0819358fa4ba678b7ca4f5607639d3641090

commit 6b6d0819358fa4ba678b7ca4f5607639d3641090
Author: Creddy <chandanreddy@google.com>
Date: Tue Jun 26 12:36:14 2018

Make PretenureDataOffset and PretenureCreateCount as Int32 fields instead of IntPtr
in AllocationSite

Change-Id: I2efaa698c35b4c0212248b4b1c08e017c2ead708

Bug:  v8:7787 , chromium:818642
Change-Id: I2efaa698c35b4c0212248b4b1c08e017c2ead708
Reviewed-on: https://chromium-review.googlesource.com/1103575
Commit-Queue: Chandan Reddy <chandanreddy@google.com>
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54030}
[modify] https://crrev.com/6b6d0819358fa4ba678b7ca4f5607639d3641090/src/code-stub-assembler.cc
[modify] https://crrev.com/6b6d0819358fa4ba678b7ca4f5607639d3641090/src/objects-body-descriptors-inl.h
[modify] https://crrev.com/6b6d0819358fa4ba678b7ca4f5607639d3641090/src/objects-inl.h
[modify] https://crrev.com/6b6d0819358fa4ba678b7ca4f5607639d3641090/src/objects.h

Project Member

Comment 20 by bugdroid1@chromium.org, Jun 26 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/71c077e896d98e9c3581c513c88e83be22527206

commit 71c077e896d98e9c3581c513c88e83be22527206
Author: Creddy <chandanreddy@google.com>
Date: Tue Jun 26 12:37:19 2018

Create allocation sites only for array subliterals

Change-Id: I2f10deac1fed96920938d820327f19e7867c409d
Bug:  v8:7787 , chromium:818642
Reviewed-on: https://chromium-review.googlesource.com/1114608
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Chandan Reddy <chandanreddy@google.com>
Cr-Commit-Position: refs/heads/master@{#54031}
[modify] https://crrev.com/71c077e896d98e9c3581c513c88e83be22527206/src/runtime/runtime-literals.cc
[modify] https://crrev.com/71c077e896d98e9c3581c513c88e83be22527206/test/cctest/heap/test-heap.cc

Project Member

Comment 21 by bugdroid1@chromium.org, Jun 28 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5

commit c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5
Author: Ross McIlroy <rmcilroy@chromium.org>
Date: Thu Jun 28 10:08:52 2018

[sfi] Remove DebugInfo field in SharedFunctionInfo.

Merges DebugInfo field into the function_identifier field, storing the function
identifier in the DebugInfo. Also moves some debugging_hints bits to the SFI flags,
and others to the DebugInfo. Finally, changes the logic to store debugger patched
bytecode array on the SFI instead of the DebugInfo, simplifying the logic in the
InterpreterEntryTrampoline.

BUG=chromium:818642,chromium:783853
TBR=hpayer@chromium.org

Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng
Change-Id: If440080c0f08fac4fb96f5e18dcc0eb9b86d4821
Reviewed-on: https://chromium-review.googlesource.com/1115819
Commit-Queue: Ross McIlroy <rmcilroy@chromium.org>
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54081}
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/api.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/builtins/arm/builtins-arm.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/builtins/arm64/builtins-arm64.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/builtins/builtins-internal-gen.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/builtins/ia32/builtins-ia32.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/builtins/mips/builtins-mips.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/builtins/mips64/builtins-mips64.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/builtins/ppc/builtins-ppc.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/builtins/s390/builtins-s390.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/builtins/x64/builtins-x64.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/debug/debug-evaluate.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/debug/debug-evaluate.h
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/debug/debug.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/debug/debug.h
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/debug/liveedit.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/heap/factory.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/heap/heap-inl.h
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/heap/setup-heap-internal.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/objects-debug.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/objects-printer.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/objects.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/objects/debug-objects-inl.h
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/objects/debug-objects.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/objects/debug-objects.h
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/objects/shared-function-info-inl.h
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/objects/shared-function-info.h
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/profiler/heap-snapshot-generator.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/runtime/runtime-debug.cc
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/runtime/runtime.h
[modify] https://crrev.com/c51bcd17bb4da87e1b9bf067351f0fc5cce4bbd5/src/snapshot/code-serializer.cc

Project Member

Comment 22 by bugdroid1@chromium.org, Jul 2

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/ec7249f274bd3540556a192242091ca167ddb9ef

commit ec7249f274bd3540556a192242091ca167ddb9ef
Author: Creddy <chandanreddy@google.com>
Date: Mon Jul 02 12:34:41 2018

[runtime][parser] Make CompileTimeValue a struct for type safety.

This promotes CompileTimeValue as a seperate struct instead of FixedArray.
This reduces the heap object size by one word (size field of FixedArray)

Change-Id: Id09d9e04c4c1a98aa9fa53b1a44ec17e8cd06f34
Bug:  v8:7787 , chromium:818642
Reviewed-on: https://chromium-review.googlesource.com/1119918
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Marja Hölttä <marja@chromium.org>
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54135}
[modify] https://crrev.com/ec7249f274bd3540556a192242091ca167ddb9ef/BUILD.gn
[modify] https://crrev.com/ec7249f274bd3540556a192242091ca167ddb9ef/src/ast/ast.cc
[modify] https://crrev.com/ec7249f274bd3540556a192242091ca167ddb9ef/src/ast/ast.h
[delete] https://crrev.com/4dbbe07831481d5360813d7642c848d322ed67f4/src/ast/compile-time-value.cc
[delete] https://crrev.com/4dbbe07831481d5360813d7642c848d322ed67f4/src/ast/compile-time-value.h
[modify] https://crrev.com/ec7249f274bd3540556a192242091ca167ddb9ef/src/heap/factory.cc
[modify] https://crrev.com/ec7249f274bd3540556a192242091ca167ddb9ef/src/heap/factory.h
[modify] https://crrev.com/ec7249f274bd3540556a192242091ca167ddb9ef/src/heap/object-stats.cc
[modify] https://crrev.com/ec7249f274bd3540556a192242091ca167ddb9ef/src/interpreter/bytecode-generator.cc
[modify] https://crrev.com/ec7249f274bd3540556a192242091ca167ddb9ef/src/objects-inl.h
[modify] https://crrev.com/ec7249f274bd3540556a192242091ca167ddb9ef/src/objects.h
[modify] https://crrev.com/ec7249f274bd3540556a192242091ca167ddb9ef/src/objects/literal-objects-inl.h
[modify] https://crrev.com/ec7249f274bd3540556a192242091ca167ddb9ef/src/objects/literal-objects.h
[modify] https://crrev.com/ec7249f274bd3540556a192242091ca167ddb9ef/src/runtime/runtime-literals.cc

Project Member

Comment 23 by bugdroid1@chromium.org, Jul 4

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/ce409375b3d2a179508a5dfe4d50d9fdf052c803

commit ce409375b3d2a179508a5dfe4d50d9fdf052c803
Author: Ross McIlroy <rmcilroy@chromium.org>
Date: Wed Jul 04 16:53:37 2018

[sfi] Reduce FunctionTokenPosition and ExpectedNofProperties to 16 bits.

Changes SharedFunctionInfo to store a function_token_offset, relative
to the start_position, instead of the full function_token_position.
This enables us to reduce both FunctionTokenPosition and
ExpectedNofProperties to 16 bits each, saving 32 bits per SFI.

BUG=chromium:818642,chromium:783853
TBR=yangguo@chromium.org

Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng
Change-Id: I45aefcec605c1da502053c23c73564ceaed6c9b5
Reviewed-on: https://chromium-review.googlesource.com/1122982
Commit-Queue: Ross McIlroy <rmcilroy@chromium.org>
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Reviewed-by: Yang Guo <yangguo@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54220}
[modify] https://crrev.com/ce409375b3d2a179508a5dfe4d50d9fdf052c803/include/v8.h
[modify] https://crrev.com/ce409375b3d2a179508a5dfe4d50d9fdf052c803/src/debug/liveedit.cc
[modify] https://crrev.com/ce409375b3d2a179508a5dfe4d50d9fdf052c803/src/heap/factory.cc
[modify] https://crrev.com/ce409375b3d2a179508a5dfe4d50d9fdf052c803/src/objects.cc
[modify] https://crrev.com/ce409375b3d2a179508a5dfe4d50d9fdf052c803/src/objects/shared-function-info-inl.h
[modify] https://crrev.com/ce409375b3d2a179508a5dfe4d50d9fdf052c803/src/objects/shared-function-info.h
[modify] https://crrev.com/ce409375b3d2a179508a5dfe4d50d9fdf052c803/test/mjsunit/harmony/function-tostring.js
[modify] https://crrev.com/ce409375b3d2a179508a5dfe4d50d9fdf052c803/tools/gen-postmortem-metadata.py

Project Member

Comment 25 by bugdroid1@chromium.org, Jul 5

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/f45045cca535e0ef4442e759f3bda15765bc38a8

commit f45045cca535e0ef4442e759f3bda15765bc38a8
Author: Leszek Swirski <leszeks@chromium.org>
Date: Thu Jul 05 14:47:43 2018

[parser] Move some PPSD sanity checks to debug

Move some of PreParsedScopeData's santity checks, such as the magic
value separating skippable function data from scope data, to be debug
only, to save memory.

Start position of inner skippable functions is still kept, because it's
too good at catching bugs, but we may want to remove it in the future
as well.

Bug: chromium:818642
Change-Id: If86ff1b9845e8dd3b015b4e554d0033328b145bf
Reviewed-on: https://chromium-review.googlesource.com/1127046
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Marja Hölttä <marja@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54263}
[modify] https://crrev.com/f45045cca535e0ef4442e759f3bda15765bc38a8/src/parsing/preparsed-scope-data.cc
[modify] https://crrev.com/f45045cca535e0ef4442e759f3bda15765bc38a8/src/parsing/preparsed-scope-data.h
[modify] https://crrev.com/f45045cca535e0ef4442e759f3bda15765bc38a8/test/cctest/parsing/test-preparser.cc

Project Member

Comment 26 by bugdroid1@chromium.org, Jul 5

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/bb0975878f3994eee09e95b5dbb3336105889cc0

commit bb0975878f3994eee09e95b5dbb3336105889cc0
Author: Creddy <chandanreddy@google.com>
Date: Thu Jul 05 19:31:03 2018

[runtime][parser] Use ArrayBoilerplateDescription all the way


* Rename BoilerplateDescription to ObjectBoilerplateDescription
* Add literal_type flag to ObjectBoilerplateDescription,
  which is stored as zeroth element of Fixed array
* Create ArrayBoilerplateDescription with elements_kind and
  constant_elements field
* Replace CompileTimeValue and ConstantElementPair with
  ArrayBoilerplateDescription
* Kill ConstantElementPair and CompileTimeValue

Change-Id: Icb42dcfd575a27e2b64ffd5e2e61f9d703d5e986
Bug:  v8:7787 , chromium:818642
Reviewed-on: https://chromium-review.googlesource.com/1122411
Commit-Queue: Chandan Reddy <chandanreddy@google.com>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Reviewed-by: Jaroslav Sevcik <jarin@chromium.org>
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Reviewed-by: Marja Hölttä <marja@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54272}
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/ast/ast.cc
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/ast/ast.h
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/builtins/builtins-constructor-gen.cc
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/builtins/builtins-definitions.h
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/code-stub-assembler.h
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/compiler/bytecode-graph-builder.cc
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/compiler/js-operator.cc
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/compiler/js-operator.h
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/compiler/types.cc
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/deoptimizer.cc
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/heap/factory.cc
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/heap/factory.h
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/heap/heap.h
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/heap/object-stats.cc
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/heap/object-stats.h
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/heap/setup-heap-internal.cc
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/interpreter/bytecode-generator.cc
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/interpreter/constant-array-builder.h
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/interpreter/interpreter-generator.cc
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/objects-body-descriptors-inl.h
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/objects-debug.cc
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/objects-definitions.h
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/objects-inl.h
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/objects-printer.cc
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/objects.cc
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/objects.h
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/objects/literal-objects-inl.h
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/objects/literal-objects.cc
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/objects/literal-objects.h
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/profiler/heap-snapshot-generator.cc
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/profiler/heap-snapshot-generator.h
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/roots.h
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/src/runtime/runtime-literals.cc
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/test/cctest/interpreter/bytecode_expectations/ArrayLiterals.golden
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/test/cctest/interpreter/bytecode_expectations/AsyncGenerators.golden
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/test/cctest/interpreter/bytecode_expectations/CallAndSpread.golden
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/test/cctest/interpreter/bytecode_expectations/CompoundExpressions.golden
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/test/cctest/interpreter/bytecode_expectations/CountOperators.golden
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/test/cctest/interpreter/bytecode_expectations/Delete.golden
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/test/cctest/interpreter/bytecode_expectations/ForAwaitOf.golden
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/test/cctest/interpreter/bytecode_expectations/ForIn.golden
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/test/cctest/interpreter/bytecode_expectations/ForOf.golden
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/test/cctest/interpreter/bytecode_expectations/GenerateTestUndetectable.golden
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/test/cctest/interpreter/bytecode_expectations/Generators.golden
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/test/cctest/interpreter/bytecode_expectations/NewAndSpread.golden
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/test/cctest/interpreter/bytecode_expectations/ObjectLiterals.golden
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/test/cctest/interpreter/bytecode_expectations/StandardForLoop.golden
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/test/cctest/interpreter/bytecode_expectations/TopLevelObjectLiterals.golden
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/test/cctest/interpreter/bytecode_expectations/WithStatement.golden
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/tools/grokdump.py
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/tools/heap-stats/categories.js
[modify] https://crrev.com/bb0975878f3994eee09e95b5dbb3336105889cc0/tools/v8heapconst.py

Project Member

Comment 27 by bugdroid1@chromium.org, Jul 6

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/b672210f1ed13e9cd35e3f5edeff4d2d048dde7d

commit b672210f1ed13e9cd35e3f5edeff4d2d048dde7d
Author: Sigurd Schneider <sigurds@chromium.org>
Date: Fri Jul 06 11:06:02 2018

Revert "[parser] Move some PPSD sanity checks to debug"

This reverts commit f45045cca535e0ef4442e759f3bda15765bc38a8.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> [parser] Move some PPSD sanity checks to debug
> 
> Move some of PreParsedScopeData's santity checks, such as the magic
> value separating skippable function data from scope data, to be debug
> only, to save memory.
> 
> Start position of inner skippable functions is still kept, because it's
> too good at catching bugs, but we may want to remove it in the future
> as well.
> 
> Bug: chromium:818642
> Change-Id: If86ff1b9845e8dd3b015b4e554d0033328b145bf
> Reviewed-on: https://chromium-review.googlesource.com/1127046
> Commit-Queue: Leszek Swirski <leszeks@chromium.org>
> Reviewed-by: Marja Hölttä <marja@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#54263}

TBR=marja@chromium.org,leszeks@chromium.org

Change-Id: I15ceedd66d9ecb66cf65f5834d09975b41d3ed27
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:818642
Reviewed-on: https://chromium-review.googlesource.com/1127859
Reviewed-by: Sigurd Schneider <sigurds@chromium.org>
Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54290}
[modify] https://crrev.com/b672210f1ed13e9cd35e3f5edeff4d2d048dde7d/src/parsing/preparsed-scope-data.cc
[modify] https://crrev.com/b672210f1ed13e9cd35e3f5edeff4d2d048dde7d/src/parsing/preparsed-scope-data.h
[modify] https://crrev.com/b672210f1ed13e9cd35e3f5edeff4d2d048dde7d/test/cctest/parsing/test-preparser.cc

Project Member

Comment 28 by bugdroid1@chromium.org, Jul 9

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/39e2d97bc4d6b35be40294f06873f03b0368ce5c

commit 39e2d97bc4d6b35be40294f06873f03b0368ce5c
Author: Leszek Swirski <leszeks@chromium.org>
Date: Mon Jul 09 10:49:27 2018

[sfi] Replace start/end position with UncompiledData

Add new types for function data for SharedFunctionInfo, for uncompiled
functions. UncompiledData holds start/end positions, allowing us to
remove these fields from SFI. Uncompiled functions with pre-parsed
scope data now hold an UncompiledDataWithScope that has a pointer to
PreParsedScopeData -- this allows us to also remove the start/end pos
from PreParsedScopeData.

Bug: chromium:818642
Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng
Change-Id: I56f3c4e62cbf38929babac734a332709f12a8202
Reviewed-on: https://chromium-review.googlesource.com/1126381
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Jaroslav Sevcik <jarin@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Reviewed-by: Marja Hölttä <marja@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54319}
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/api.cc
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/bootstrapper.cc
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/code-stub-assembler.cc
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/code-stub-assembler.h
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/compiler.cc
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/compiler/types.cc
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/debug/liveedit.cc
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/heap/factory.cc
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/heap/factory.h
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/heap/heap.h
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/heap/objects-visiting.h
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/heap/setup-heap-internal.cc
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/objects-body-descriptors-inl.h
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/objects-debug.cc
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/objects-definitions.h
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/objects-inl.h
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/objects-printer.cc
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/objects.cc
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/objects.h
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/objects/map.h
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/objects/shared-function-info-inl.h
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/objects/shared-function-info.h
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/roots.h
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/runtime/runtime-compiler.cc
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/src/runtime/runtime-function.cc
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/test/cctest/heap/test-heap.cc
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/test/cctest/parsing/test-preparser.cc
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/test/unittests/test-helpers.cc
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/tools/gen-postmortem-metadata.py
[modify] https://crrev.com/39e2d97bc4d6b35be40294f06873f03b0368ce5c/tools/v8heapconst.py

Project Member

Comment 29 by bugdroid1@chromium.org, Jul 10

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/a9fed96c00238167e44b11a72546f788df0696b8

commit a9fed96c00238167e44b11a72546f788df0696b8
Author: Leszek Swirski <leszeks@chromium.org>
Date: Tue Jul 10 11:16:30 2018

[parser] Make PreParsedScopeData array-like

Make PreParsedScopeData a new array-like instance type, which holds its
child data inline, rather than indirecting to a FixedArray. Should save
one map word per PreParsedScopeData.

TBR=jarin@chromium.org

Bug: chromium:818642
Change-Id: I72dc21160ed9781ad12b18559468f6cce56886fa
Reviewed-on: https://chromium-review.googlesource.com/1127055
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Marja Hölttä <marja@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54349}
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/code-stub-assembler.h
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/compiler/types.cc
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/heap/factory.cc
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/heap/factory.h
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/heap/heap.h
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/heap/objects-visiting.h
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/heap/setup-heap-internal.cc
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/objects-body-descriptors-inl.h
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/objects-debug.cc
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/objects-definitions.h
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/objects-inl.h
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/objects-printer.cc
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/objects.cc
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/objects.h
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/objects/map.h
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/objects/shared-function-info-inl.h
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/objects/shared-function-info.h
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/parsing/preparsed-scope-data.cc
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/src/roots.h
[modify] https://crrev.com/a9fed96c00238167e44b11a72546f788df0696b8/tools/v8heapconst.py

Project Member

Comment 30 by bugdroid1@chromium.org, Jul 10

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/7184ce393450e050c6adfe3e362b814e2ad19254

commit 7184ce393450e050c6adfe3e362b814e2ad19254
Author: Leszek Swirski <leszeks@chromium.org>
Date: Tue Jul 10 12:47:14 2018

Revert "[parser] Make PreParsedScopeData array-like"

This reverts commit a9fed96c00238167e44b11a72546f788df0696b8.

Reason for revert: Serializer test msan failures

Original change's description:
> [parser] Make PreParsedScopeData array-like
> 
> Make PreParsedScopeData a new array-like instance type, which holds its
> child data inline, rather than indirecting to a FixedArray. Should save
> one map word per PreParsedScopeData.
> 
> TBR=jarin@chromium.org
> 
> Bug: chromium:818642
> Change-Id: I72dc21160ed9781ad12b18559468f6cce56886fa
> Reviewed-on: https://chromium-review.googlesource.com/1127055
> Reviewed-by: Leszek Swirski <leszeks@chromium.org>
> Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
> Reviewed-by: Marja Hölttä <marja@chromium.org>
> Commit-Queue: Leszek Swirski <leszeks@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#54349}

TBR=ulan@chromium.org,marja@chromium.org,jarin@chromium.org,leszeks@chromium.org,verwaest@chromium.org

Change-Id: If2f39379bb0bdfca7d36ec1a3ec738519481aa4e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:818642
Reviewed-on: https://chromium-review.googlesource.com/1131234
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54354}
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/code-stub-assembler.h
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/compiler/types.cc
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/heap/factory.cc
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/heap/factory.h
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/heap/heap.h
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/heap/objects-visiting.h
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/heap/setup-heap-internal.cc
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/objects-body-descriptors-inl.h
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/objects-debug.cc
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/objects-definitions.h
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/objects-inl.h
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/objects-printer.cc
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/objects.cc
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/objects.h
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/objects/map.h
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/objects/shared-function-info-inl.h
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/objects/shared-function-info.h
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/parsing/preparsed-scope-data.cc
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/src/roots.h
[modify] https://crrev.com/7184ce393450e050c6adfe3e362b814e2ad19254/tools/v8heapconst.py

Project Member

Comment 31 by bugdroid1@chromium.org, Jul 11

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/1458c0882e9d1d7824eb0496f07ce816c177bd81

commit 1458c0882e9d1d7824eb0496f07ce816c177bd81
Author: Leszek Swirski <leszeks@chromium.org>
Date: Wed Jul 11 08:28:37 2018

[parser] Make PreParsedScopeData array-like (reland)

Make PreParsedScopeData a new array-like instance type, which holds its
child data inline, rather than indirecting to a FixedArray. Should save
one map word per PreParsedScopeData.

Reland of https://chromium-review.googlesource.com/1127055, adding
padding clearing to keep MSAN happy.

TBR=jarin@chromium.org,marja@chromium.org,ulan@chromium.org

Bug: chromium:818642
Change-Id: I536db452047959e75d5116ddded4f511d05a04d9
Reviewed-on: https://chromium-review.googlesource.com/1131512
Reviewed-by: Marja Hölttä <marja@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54374}
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/code-stub-assembler.h
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/compiler/types.cc
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/heap/factory.cc
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/heap/factory.h
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/heap/heap.h
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/heap/objects-visiting.h
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/heap/setup-heap-internal.cc
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/objects-body-descriptors-inl.h
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/objects-debug.cc
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/objects-definitions.h
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/objects-inl.h
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/objects-printer.cc
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/objects.cc
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/objects.h
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/objects/map.h
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/objects/shared-function-info-inl.h
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/objects/shared-function-info.h
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/parsing/preparsed-scope-data.cc
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/src/roots.h
[modify] https://crrev.com/1458c0882e9d1d7824eb0496f07ce816c177bd81/tools/v8heapconst.py

Project Member

Comment 32 by bugdroid1@chromium.org, Jul 11

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/559dc18336c1dc7f20629906f090f6de2ed0c82a

commit 559dc18336c1dc7f20629906f090f6de2ed0c82a
Author: Leszek Swirski <leszeks@chromium.org>
Date: Wed Jul 11 13:50:23 2018

[parser] Move some PPSD sanity checks to debug (reland)

Move some of PreParsedScopeData's santity checks, such as the magic
value separating skippable function data from scope data, to be debug
only, to save memory.

Start position of inner skippable functions is still kept, because it's
too good at catching bugs, but we may want to remove it in the future
as well.

Relanding unchanged after the (unrelated) flake it exposed is fixed in:
https://chromium-review.googlesource.com/1131503

Bug: chromium:818642
Change-Id: Id1d9fe757875cd05ea9a92b41e7256c3ee86fc8e
Reviewed-on: https://chromium-review.googlesource.com/1131505
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Marja Hölttä <marja@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54380}
[modify] https://crrev.com/559dc18336c1dc7f20629906f090f6de2ed0c82a/src/parsing/preparsed-scope-data.cc
[modify] https://crrev.com/559dc18336c1dc7f20629906f090f6de2ed0c82a/src/parsing/preparsed-scope-data.h
[modify] https://crrev.com/559dc18336c1dc7f20629906f090f6de2ed0c82a/test/cctest/parsing/test-preparser.cc

Project Member

Comment 33 by bugdroid1@chromium.org, Jul 16

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/1d4a1172f5e99259f73a5e650b00a3ee8b34e806

commit 1d4a1172f5e99259f73a5e650b00a3ee8b34e806
Author: Leszek Swirski <leszeks@chromium.org>
Date: Mon Jul 16 13:49:20 2018

[sfi] Remove SFI function literal id field

SharedFunctionInfos store their original function literal's id. This is
also their index in the Script's SFI list.

The function literal id is only needed for lazy compilation and live edit,
and access only has to be fast in the former. So, we can move the SFI
function literal id field to UncompiledData, and if patching with live
edit, or discarding compiled code, we can perform a slower linear search
through the Script's SFI list.

This is a reland of
https://chromium-review.googlesource.com/c/v8/v8/+/1082480
but caching the literal id on UncompiledData rather than always linearly
searching the SFI list. Also, removes the unused runtime-liveedit.cc file
instead of fixing it to support this change.

Bug: chromium:818642
Change-Id: I977bcca0dc72903ca476a7079d156cc8bbe88fde
Reviewed-on: https://chromium-review.googlesource.com/1128854
Reviewed-by: Yang Guo <yangguo@chromium.org>
Reviewed-by: Marja Hölttä <marja@chromium.org>
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54464}
[modify] https://crrev.com/1d4a1172f5e99259f73a5e650b00a3ee8b34e806/src/bootstrapper.cc
[modify] https://crrev.com/1d4a1172f5e99259f73a5e650b00a3ee8b34e806/src/compiler-dispatcher/unoptimized-compile-job.cc
[modify] https://crrev.com/1d4a1172f5e99259f73a5e650b00a3ee8b34e806/src/debug/liveedit.cc
[modify] https://crrev.com/1d4a1172f5e99259f73a5e650b00a3ee8b34e806/src/heap/factory.cc
[modify] https://crrev.com/1d4a1172f5e99259f73a5e650b00a3ee8b34e806/src/heap/factory.h
[modify] https://crrev.com/1d4a1172f5e99259f73a5e650b00a3ee8b34e806/src/objects.cc
[modify] https://crrev.com/1d4a1172f5e99259f73a5e650b00a3ee8b34e806/src/objects/shared-function-info-inl.h
[modify] https://crrev.com/1d4a1172f5e99259f73a5e650b00a3ee8b34e806/src/objects/shared-function-info.h
[modify] https://crrev.com/1d4a1172f5e99259f73a5e650b00a3ee8b34e806/src/parsing/parse-info.cc
[modify] https://crrev.com/1d4a1172f5e99259f73a5e650b00a3ee8b34e806/src/runtime/runtime-function.cc
[delete] https://crrev.com/feb20872c35ca1802a5d8554dd780e6a898b2380/src/runtime/runtime-liveedit.cc
[modify] https://crrev.com/1d4a1172f5e99259f73a5e650b00a3ee8b34e806/test/unittests/test-helpers.cc

Project Member

Comment 34 by bugdroid1@chromium.org, Jul 16

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/58578584d6753daa30e05ec4848844c07671cdcd

commit 58578584d6753daa30e05ec4848844c07671cdcd
Author: Sigurd Schneider <sigurds@chromium.org>
Date: Mon Jul 16 14:24:27 2018

Revert "[sfi] Remove SFI function literal id field"

This reverts commit 1d4a1172f5e99259f73a5e650b00a3ee8b34e806.

Reason for revert: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/21989

Original change's description:
> [sfi] Remove SFI function literal id field
> 
> SharedFunctionInfos store their original function literal's id. This is
> also their index in the Script's SFI list.
> 
> The function literal id is only needed for lazy compilation and live edit,
> and access only has to be fast in the former. So, we can move the SFI
> function literal id field to UncompiledData, and if patching with live
> edit, or discarding compiled code, we can perform a slower linear search
> through the Script's SFI list.
> 
> This is a reland of
> https://chromium-review.googlesource.com/c/v8/v8/+/1082480
> but caching the literal id on UncompiledData rather than always linearly
> searching the SFI list. Also, removes the unused runtime-liveedit.cc file
> instead of fixing it to support this change.
> 
> Bug: chromium:818642
> Change-Id: I977bcca0dc72903ca476a7079d156cc8bbe88fde
> Reviewed-on: https://chromium-review.googlesource.com/1128854
> Reviewed-by: Yang Guo <yangguo@chromium.org>
> Reviewed-by: Marja Hölttä <marja@chromium.org>
> Reviewed-by: Camillo Bruni <cbruni@chromium.org>
> Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
> Commit-Queue: Leszek Swirski <leszeks@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#54464}

TBR=ulan@chromium.org,marja@chromium.org,yangguo@chromium.org,kozyatinskiy@chromium.org,cbruni@chromium.org,leszeks@chromium.org,verwaest@chromium.org

Change-Id: Icee5ee3ab7688b93e2963f91debed65a58164534
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:818642
Reviewed-on: https://chromium-review.googlesource.com/1138276
Reviewed-by: Sigurd Schneider <sigurds@chromium.org>
Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54466}
[modify] https://crrev.com/58578584d6753daa30e05ec4848844c07671cdcd/src/bootstrapper.cc
[modify] https://crrev.com/58578584d6753daa30e05ec4848844c07671cdcd/src/compiler-dispatcher/unoptimized-compile-job.cc
[modify] https://crrev.com/58578584d6753daa30e05ec4848844c07671cdcd/src/debug/liveedit.cc
[modify] https://crrev.com/58578584d6753daa30e05ec4848844c07671cdcd/src/heap/factory.cc
[modify] https://crrev.com/58578584d6753daa30e05ec4848844c07671cdcd/src/heap/factory.h
[modify] https://crrev.com/58578584d6753daa30e05ec4848844c07671cdcd/src/objects.cc
[modify] https://crrev.com/58578584d6753daa30e05ec4848844c07671cdcd/src/objects/shared-function-info-inl.h
[modify] https://crrev.com/58578584d6753daa30e05ec4848844c07671cdcd/src/objects/shared-function-info.h
[modify] https://crrev.com/58578584d6753daa30e05ec4848844c07671cdcd/src/parsing/parse-info.cc
[modify] https://crrev.com/58578584d6753daa30e05ec4848844c07671cdcd/src/runtime/runtime-function.cc
[add] https://crrev.com/58578584d6753daa30e05ec4848844c07671cdcd/src/runtime/runtime-liveedit.cc
[modify] https://crrev.com/58578584d6753daa30e05ec4848844c07671cdcd/test/unittests/test-helpers.cc

Project Member

Comment 35 by bugdroid1@chromium.org, Jul 16

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/5dee5ade75890e9fde642dbfa345b7c00aac4109

commit 5dee5ade75890e9fde642dbfa345b7c00aac4109
Author: Leszek Swirski <leszeks@chromium.org>
Date: Mon Jul 16 16:38:28 2018

[sfi] Remove SFI function literal id field (reland^2)

SharedFunctionInfos store their original function literal's id. This is
also their index in the Script's SFI list.

The function literal id is only needed for lazy compilation and live edit,
and access only has to be fast in the former. So, we can move the SFI
function literal id field to UncompiledData, and if patching with live
edit, or discarding compiled code, we can perform a slower linear search
through the Script's SFI list.

This is a reland of
 1) https://chromium-review.googlesource.com/1082480 and
 2) https://chromium-review.googlesource.com/1128854
the differences being:
 1) caching the literal id on UncompiledData rather than always linearly
    searching the SFI list, and removing the unused runtime-liveedit.cc
    file instead of fixing it to support this change.
 2) clearing padding on UncompiledData now that it has 3 int32 fields,
    making its end unaligned on x64.

TBR=yangguo@chromium.org,marja@chromium.org,ulan@chromium.org,cbruni@chromium.org

Bug: chromium:818642
Change-Id: I58dcb12a2a60a680f662568da428e01189c62638
Reviewed-on: https://chromium-review.googlesource.com/1138325
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54473}
[modify] https://crrev.com/5dee5ade75890e9fde642dbfa345b7c00aac4109/src/bootstrapper.cc
[modify] https://crrev.com/5dee5ade75890e9fde642dbfa345b7c00aac4109/src/compiler-dispatcher/unoptimized-compile-job.cc
[modify] https://crrev.com/5dee5ade75890e9fde642dbfa345b7c00aac4109/src/debug/liveedit.cc
[modify] https://crrev.com/5dee5ade75890e9fde642dbfa345b7c00aac4109/src/heap/factory.cc
[modify] https://crrev.com/5dee5ade75890e9fde642dbfa345b7c00aac4109/src/heap/factory.h
[modify] https://crrev.com/5dee5ade75890e9fde642dbfa345b7c00aac4109/src/objects.cc
[modify] https://crrev.com/5dee5ade75890e9fde642dbfa345b7c00aac4109/src/objects/shared-function-info-inl.h
[modify] https://crrev.com/5dee5ade75890e9fde642dbfa345b7c00aac4109/src/objects/shared-function-info.h
[modify] https://crrev.com/5dee5ade75890e9fde642dbfa345b7c00aac4109/src/parsing/parse-info.cc
[modify] https://crrev.com/5dee5ade75890e9fde642dbfa345b7c00aac4109/src/runtime/runtime-function.cc
[delete] https://crrev.com/414b841b5442fd13cb109d9a0905bd75d631da0d/src/runtime/runtime-liveedit.cc
[modify] https://crrev.com/5dee5ade75890e9fde642dbfa345b7c00aac4109/test/unittests/test-helpers.cc

Project Member

Comment 36 by bugdroid1@chromium.org, Jul 19

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/c941f11abddf57844e9807503df1877f6f60c94a

commit c941f11abddf57844e9807503df1877f6f60c94a
Author: Leszek Swirski <leszeks@chromium.org>
Date: Thu Jul 19 09:07:11 2018

[sfi] Remove SFI function identifier field

Remove the function identifier field from SharedFunctionInfo. This field
would store one of a) the function's inferred name, b) the "builtin
function id", or c) debug info. We remove these in turn:

a) The function's inferred name is available on the ScopeInfo, so like
   the start/end position we read it off either the ScopeInfo (for
   compiled functions) or the UncompiledData (for uncompiled functions).

   As a side-effect, now both UncompiledData and its subclass,
   UncompiledDataWithPreparsedScope, contain a pointer field. To keep
   BodyDescriptors manageable, we introduce a SubclassBodyDescriptor
   which effectively appends two BodyDescriptors together.

b) The builtin function id is < 255, so we can steal a byte from
   expected no. of properies (also <255) and store these together.
   Eventually we want to get rid of this field and use the builtin ID,
   but this is pending JS builtin removal.

   As a side-effect, BuiltinFunctionId becomes an enum class (for better
   storage size guarantees).

c) The debug info can hang off anything (since it stores the field it
   replaces), so we can attach it to the script field instead.

This saves a word on compiled function (uncompiled functions
unfortunately still have to store it in UncompiledData).

Bug: chromium:818642
Change-Id: I8b4b3a070f0fe328aafcaeac58842d144d12d996
Reviewed-on: https://chromium-review.googlesource.com/1138328
Reviewed-by: Yang Guo <yangguo@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54543}
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/bootstrapper.cc
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/builtins/builtins-internal-gen.cc
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/compiler/typer.cc
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/debug/debug.cc
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/heap/factory.cc
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/heap/factory.h
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/heap/objects-visiting.h
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/objects-body-descriptors-inl.h
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/objects-body-descriptors.h
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/objects-debug.cc
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/objects-printer.cc
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/objects.cc
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/objects.h
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/objects/debug-objects-inl.h
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/objects/debug-objects.h
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/objects/map.h
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/objects/object-macros.h
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/objects/shared-function-info-inl.h
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/objects/shared-function-info.h
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/profiler/heap-snapshot-generator.cc
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/snapshot/code-serializer.cc
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/src/snapshot/startup-serializer.cc
[modify] https://crrev.com/c941f11abddf57844e9807503df1877f6f60c94a/test/unittests/test-helpers.cc

This bug had an unsupported status. Updating to Untriaged so someone will reevaluate.
Status: Untriaged
Owner: hpayer@chromium.org
Status: Assigned (was: Untriaged)
Status: Started (was: Assigned)

Sign in to add a comment