[wasm] Ensure NativeModule alive throughout bg compilation [v8/v8 : main]

0 views
Skip to first unread message

Maksim Ivanov (Gerrit)

unread,
May 13, 2026, 11:03:28 AM (6 days ago) May 13
to Daniel Lehmann, Clemens Backes, v8-s...@luci-project-accounts.iam.gserviceaccount.com, dmercadi...@chromium.org, v8-re...@googlegroups.com
Attention needed from Clemens Backes and Daniel Lehmann

Maksim Ivanov voted and added 1 comment

Votes added by Maksim Ivanov

Commit-Queue+1

1 comment

File src/compiler/js-heap-broker.h
Line 395, Patchset 2 (Latest): void KeepAliveWasmNativeModule(
Maksim Ivanov . unresolved

Not sure if there's a better solution.

Storing the `shared_ptr` in `JSWasmCallParameters` doesn't seem to be possible because of it being kept in a zone without destructors being called.

Open in Gerrit

Related details

Attention is currently required from:
  • Clemens Backes
  • Daniel Lehmann
Submit Requirements:
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: v8/v8
Gerrit-Branch: main
Gerrit-Change-Id: I99f120ff559beaf968f0d39f1b30fc3cd1f2b800
Gerrit-Change-Number: 7844996
Gerrit-PatchSet: 2
Gerrit-Owner: Maksim Ivanov <em...@chromium.org>
Gerrit-Reviewer: Clemens Backes <clem...@chromium.org>
Gerrit-Reviewer: Daniel Lehmann <dleh...@chromium.org>
Gerrit-Reviewer: Maksim Ivanov <em...@chromium.org>
Gerrit-Attention: Daniel Lehmann <dleh...@chromium.org>
Gerrit-Attention: Clemens Backes <clem...@chromium.org>
Gerrit-Comment-Date: Wed, 13 May 2026 15:03:24 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
unsatisfied_requirement
open
diffy

Clemens Backes (Gerrit)

unread,
May 18, 2026, 6:15:52 AM (yesterday) May 18
to Maksim Ivanov, Matthias Liedtke, Code Review Nudger, Daniel Lehmann, v8-s...@luci-project-accounts.iam.gserviceaccount.com, dmercadi...@chromium.org, v8-re...@googlegroups.com
Attention needed from Daniel Lehmann, Maksim Ivanov and Matthias Liedtke

Clemens Backes added 1 comment

Patchset-level comments
File-level comment, Patchset 2 (Latest):
Clemens Backes . unresolved

This is not my area of expertise, so no idea if there's a better way. This implementation looks overly specific.

Can't we keep the NativeModule alive via the `WasmTrustedInstanceData`, which links to the `TrustedManaged`? Are those objects maybe already held alive via the broker?

Open in Gerrit

Related details

Attention is currently required from:
  • Daniel Lehmann
  • Maksim Ivanov
  • Matthias Liedtke
Submit Requirements:
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: v8/v8
Gerrit-Branch: main
Gerrit-Change-Id: I99f120ff559beaf968f0d39f1b30fc3cd1f2b800
Gerrit-Change-Number: 7844996
Gerrit-PatchSet: 2
Gerrit-Owner: Maksim Ivanov <em...@chromium.org>
Gerrit-Reviewer: Clemens Backes <clem...@chromium.org>
Gerrit-Reviewer: Daniel Lehmann <dleh...@chromium.org>
Gerrit-Reviewer: Maksim Ivanov <em...@chromium.org>
Gerrit-Reviewer: Matthias Liedtke <mlie...@chromium.org>
Gerrit-CC: Code Review Nudger <android-build...@prod.google.com>
Gerrit-Attention: Maksim Ivanov <em...@chromium.org>
Gerrit-Attention: Daniel Lehmann <dleh...@chromium.org>
Gerrit-Attention: Matthias Liedtke <mlie...@chromium.org>
Gerrit-Comment-Date: Mon, 18 May 2026 10:15:48 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
unsatisfied_requirement
open
diffy

Daniel Lehmann (Gerrit)

unread,
May 18, 2026, 11:50:16 AM (yesterday) May 18
to Maksim Ivanov, Matthias Liedtke, Code Review Nudger, Clemens Backes, v8-s...@luci-project-accounts.iam.gserviceaccount.com, dmercadi...@chromium.org, v8-re...@googlegroups.com
Attention needed from Maksim Ivanov and Matthias Liedtke

Daniel Lehmann added 2 comments

Patchset-level comments
Clemens Backes . unresolved

This is not my area of expertise, so no idea if there's a better way. This implementation looks overly specific.

Can't we keep the NativeModule alive via the `WasmTrustedInstanceData`, which links to the `TrustedManaged`? Are those objects maybe already held alive via the broker?

Daniel Lehmann

As for your last question


> Are those objects maybe already held alive via the broker?

Apparently not, otherwise we couldn't trigger this via the reproducer on the bug, no?

Generally, I agree though: Can't we keep the `WasmTrustedInstanceData` alive during compilation somehow? Isn't that what the `JSHeapBroker`, `PersistentHandles`, and these `*Ref` classes are for in the first place?

File src/compiler/js-heap-broker.h
Line 395, Patchset 2 (Latest): void KeepAliveWasmNativeModule(
Maksim Ivanov . unresolved

Not sure if there's a better solution.

Storing the `shared_ptr` in `JSWasmCallParameters` doesn't seem to be possible because of it being kept in a zone without destructors being called.

Daniel Lehmann
I am unfortunately not an expert either in how to best keep Wasm C++ objects alive during background compilation. However, I have a gut feeling that this particular implementation is (1) overly specific to this concrete issue, and (2) feels a bit hacky/bolted on. I tried to brainstorm a bit with Gemini (and given my non-expertise, I hope this isn't totally off): Can we
1. Implement Broker Refs: Define `WasmExportedFunctionDataRef` and `WasmTrustedInstanceDataRef` in `src/compiler/js-heap-broker.h`.
2. Serialize on Main Thread: In `JSCallReducer` (on the main thread), instead of reading raw `Tagged` pointers, serialize the target function's trusted data into these `*Ref` classes.
3. Keep compiler raw pointers: The compiler can then safely continue using raw `wasm::NativeModule*` pointers in the Zone, because the broker's persistent handles guarantee their lifetime.

Given that Clemens and me are not the experts in this, who would be? Jakob Linke and Leszek, since they worked on the heap broker more than us, maybe they can briefly give feedback on this idea?
Open in Gerrit

Related details

Attention is currently required from:
  • Maksim Ivanov
  • Matthias Liedtke
Submit Requirements:
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: v8/v8
Gerrit-Branch: main
Gerrit-Change-Id: I99f120ff559beaf968f0d39f1b30fc3cd1f2b800
Gerrit-Change-Number: 7844996
Gerrit-PatchSet: 2
Gerrit-Owner: Maksim Ivanov <em...@chromium.org>
Gerrit-Reviewer: Clemens Backes <clem...@chromium.org>
Gerrit-Reviewer: Daniel Lehmann <dleh...@chromium.org>
Gerrit-Reviewer: Maksim Ivanov <em...@chromium.org>
Gerrit-Reviewer: Matthias Liedtke <mlie...@chromium.org>
Gerrit-CC: Code Review Nudger <android-build...@prod.google.com>
Gerrit-Attention: Maksim Ivanov <em...@chromium.org>
Gerrit-Attention: Matthias Liedtke <mlie...@chromium.org>
Gerrit-Comment-Date: Mon, 18 May 2026 15:50:13 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Maksim Ivanov <em...@chromium.org>
Comment-In-Reply-To: Clemens Backes <clem...@chromium.org>
unsatisfied_requirement
open
diffy

Maksim Ivanov (Gerrit)

unread,
May 18, 2026, 9:31:59 PM (24 hours ago) May 18
to Matthias Liedtke, Code Review Nudger, Daniel Lehmann, Clemens Backes, v8-s...@luci-project-accounts.iam.gserviceaccount.com, dmercadi...@chromium.org, v8-re...@googlegroups.com
Attention needed from Clemens Backes, Daniel Lehmann and Matthias Liedtke

Maksim Ivanov added 1 comment

Patchset-level comments
Clemens Backes . unresolved

This is not my area of expertise, so no idea if there's a better way. This implementation looks overly specific.

Can't we keep the NativeModule alive via the `WasmTrustedInstanceData`, which links to the `TrustedManaged`? Are those objects maybe already held alive via the broker?

Daniel Lehmann

As for your last question
> Are those objects maybe already held alive via the broker?

Apparently not, otherwise we couldn't trigger this via the reproducer on the bug, no?

Generally, I agree though: Can't we keep the `WasmTrustedInstanceData` alive during compilation somehow? Isn't that what the `JSHeapBroker`, `PersistentHandles`, and these `*Ref` classes are for in the first place?

Maksim Ivanov

Thanks for the idea! I tried implementing this and saw it can be done via `CanonicalPersistentHandle`. Not sure if it's correct and not too "magic" - PTAL.

Open in Gerrit

Related details

Attention is currently required from:
  • Clemens Backes
  • Daniel Lehmann
  • Matthias Liedtke
Submit Requirements:
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: v8/v8
Gerrit-Branch: main
Gerrit-Change-Id: I99f120ff559beaf968f0d39f1b30fc3cd1f2b800
Gerrit-Change-Number: 7844996
Gerrit-PatchSet: 4
Gerrit-Owner: Maksim Ivanov <em...@chromium.org>
Gerrit-Reviewer: Clemens Backes <clem...@chromium.org>
Gerrit-Reviewer: Daniel Lehmann <dleh...@chromium.org>
Gerrit-Reviewer: Maksim Ivanov <em...@chromium.org>
Gerrit-Reviewer: Matthias Liedtke <mlie...@chromium.org>
Gerrit-CC: Code Review Nudger <android-build...@prod.google.com>
Gerrit-Attention: Daniel Lehmann <dleh...@chromium.org>
Gerrit-Attention: Matthias Liedtke <mlie...@chromium.org>
Gerrit-Attention: Clemens Backes <clem...@chromium.org>
Gerrit-Comment-Date: Tue, 19 May 2026 01:31:54 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Daniel Lehmann <dleh...@chromium.org>
Comment-In-Reply-To: Clemens Backes <clem...@chromium.org>
unsatisfied_requirement
open
diffy

Matthias Liedtke (Gerrit)

unread,
4:27 AM (17 hours ago) 4:27 AM
to Maksim Ivanov, Code Review Nudger, Daniel Lehmann, Clemens Backes, v8-s...@luci-project-accounts.iam.gserviceaccount.com, dmercadi...@chromium.org, v8-re...@googlegroups.com
Attention needed from Clemens Backes, Daniel Lehmann and Maksim Ivanov

Matthias Liedtke voted and added 1 comment

Votes added by Matthias Liedtke

Code-Review+1

1 comment

Patchset-level comments
File-level comment, Patchset 4 (Latest):
Matthias Liedtke . resolved

LGTM

Open in Gerrit

Related details

Attention is currently required from:
  • Clemens Backes
  • Daniel Lehmann
  • Maksim Ivanov
Submit Requirements:
  • requirement satisfiedCode-Owners
  • requirement satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: v8/v8
Gerrit-Branch: main
Gerrit-Change-Id: I99f120ff559beaf968f0d39f1b30fc3cd1f2b800
Gerrit-Change-Number: 7844996
Gerrit-PatchSet: 4
Gerrit-Owner: Maksim Ivanov <em...@chromium.org>
Gerrit-Reviewer: Clemens Backes <clem...@chromium.org>
Gerrit-Reviewer: Daniel Lehmann <dleh...@chromium.org>
Gerrit-Reviewer: Maksim Ivanov <em...@chromium.org>
Gerrit-Reviewer: Matthias Liedtke <mlie...@chromium.org>
Gerrit-CC: Code Review Nudger <android-build...@prod.google.com>
Gerrit-Attention: Maksim Ivanov <em...@chromium.org>
Gerrit-Attention: Daniel Lehmann <dleh...@chromium.org>
Gerrit-Attention: Clemens Backes <clem...@chromium.org>
Gerrit-Comment-Date: Tue, 19 May 2026 08:26:57 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
satisfied_requirement
unsatisfied_requirement
open
diffy

Daniel Lehmann (Gerrit)

unread,
7:12 AM (14 hours ago) 7:12 AM
to Maksim Ivanov, Matthias Liedtke, Code Review Nudger, Clemens Backes, v8-s...@luci-project-accounts.iam.gserviceaccount.com, dmercadi...@chromium.org, v8-re...@googlegroups.com
Attention needed from Clemens Backes and Maksim Ivanov

Daniel Lehmann voted and added 3 comments

Votes added by Daniel Lehmann

Code-Review+1

3 comments

Patchset-level comments
File-level comment, Patchset 2:
Clemens Backes . resolved

This is not my area of expertise, so no idea if there's a better way. This implementation looks overly specific.

Can't we keep the NativeModule alive via the `WasmTrustedInstanceData`, which links to the `TrustedManaged`? Are those objects maybe already held alive via the broker?

Daniel Lehmann

As for your last question
> Are those objects maybe already held alive via the broker?

Apparently not, otherwise we couldn't trigger this via the reproducer on the bug, no?

Generally, I agree though: Can't we keep the `WasmTrustedInstanceData` alive during compilation somehow? Isn't that what the `JSHeapBroker`, `PersistentHandles`, and these `*Ref` classes are for in the first place?

Maksim Ivanov

Thanks for the idea! I tried implementing this and saw it can be done via `CanonicalPersistentHandle`. Not sure if it's correct and not too "magic" - PTAL.

Daniel Lehmann

Nice, that looks much more elegant and idiomatic :)

Matthias Liedtke . resolved

LGTM

Daniel Lehmann

LGTM as well (provided this fixes the reproducer, which I guess you already checked).

File src/compiler/js-heap-broker.h
Line 395, Patchset 2: void KeepAliveWasmNativeModule(
Maksim Ivanov . resolved

Not sure if there's a better solution.

Storing the `shared_ptr` in `JSWasmCallParameters` doesn't seem to be possible because of it being kept in a zone without destructors being called.

Daniel Lehmann
I am unfortunately not an expert either in how to best keep Wasm C++ objects alive during background compilation. However, I have a gut feeling that this particular implementation is (1) overly specific to this concrete issue, and (2) feels a bit hacky/bolted on. I tried to brainstorm a bit with Gemini (and given my non-expertise, I hope this isn't totally off): Can we
1. Implement Broker Refs: Define `WasmExportedFunctionDataRef` and `WasmTrustedInstanceDataRef` in `src/compiler/js-heap-broker.h`.
2. Serialize on Main Thread: In `JSCallReducer` (on the main thread), instead of reading raw `Tagged` pointers, serialize the target function's trusted data into these `*Ref` classes.
3. Keep compiler raw pointers: The compiler can then safely continue using raw `wasm::NativeModule*` pointers in the Zone, because the broker's persistent handles guarantee their lifetime.

Given that Clemens and me are not the experts in this, who would be? Jakob Linke and Leszek, since they worked on the heap broker more than us, maybe they can briefly give feedback on this idea?
Daniel Lehmann

I think what Gemini proposed here goes a bit further still than your patchset now, but is not strictly necessary. More discussion for potential follow-ups on the (non-public) bug.

Open in Gerrit

Related details

Attention is currently required from:
  • Clemens Backes
  • Maksim Ivanov
Submit Requirements:
    • requirement satisfiedCode-Owners
    • requirement satisfiedCode-Review
    • requirement satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: v8/v8
    Gerrit-Branch: main
    Gerrit-Change-Id: I99f120ff559beaf968f0d39f1b30fc3cd1f2b800
    Gerrit-Change-Number: 7844996
    Gerrit-PatchSet: 4
    Gerrit-Owner: Maksim Ivanov <em...@chromium.org>
    Gerrit-Reviewer: Clemens Backes <clem...@chromium.org>
    Gerrit-Reviewer: Daniel Lehmann <dleh...@chromium.org>
    Gerrit-Reviewer: Maksim Ivanov <em...@chromium.org>
    Gerrit-Reviewer: Matthias Liedtke <mlie...@chromium.org>
    Gerrit-CC: Code Review Nudger <android-build...@prod.google.com>
    Gerrit-Attention: Maksim Ivanov <em...@chromium.org>
    Gerrit-Attention: Clemens Backes <clem...@chromium.org>
    Gerrit-Comment-Date: Tue, 19 May 2026 11:12:47 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    Comment-In-Reply-To: Maksim Ivanov <em...@chromium.org>
    Comment-In-Reply-To: Daniel Lehmann <dleh...@chromium.org>
    Comment-In-Reply-To: Matthias Liedtke <mlie...@chromium.org>
    Comment-In-Reply-To: Clemens Backes <clem...@chromium.org>
    satisfied_requirement
    open
    diffy

    Clemens Backes (Gerrit)

    unread,
    11:30 AM (10 hours ago) 11:30 AM
    to Maksim Ivanov, Daniel Lehmann, Matthias Liedtke, Code Review Nudger, v8-s...@luci-project-accounts.iam.gserviceaccount.com, dmercadi...@chromium.org, v8-re...@googlegroups.com
    Attention needed from Maksim Ivanov

    Clemens Backes voted Code-Review+1

    Code-Review+1
    Open in Gerrit

    Related details

    Attention is currently required from:
    • Maksim Ivanov
    Submit Requirements:
    • requirement satisfiedCode-Owners
    • requirement satisfiedCode-Review
    • requirement satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: v8/v8
    Gerrit-Branch: main
    Gerrit-Change-Id: I99f120ff559beaf968f0d39f1b30fc3cd1f2b800
    Gerrit-Change-Number: 7844996
    Gerrit-PatchSet: 4
    Gerrit-Owner: Maksim Ivanov <em...@chromium.org>
    Gerrit-Reviewer: Clemens Backes <clem...@chromium.org>
    Gerrit-Reviewer: Daniel Lehmann <dleh...@chromium.org>
    Gerrit-Reviewer: Maksim Ivanov <em...@chromium.org>
    Gerrit-Reviewer: Matthias Liedtke <mlie...@chromium.org>
    Gerrit-CC: Code Review Nudger <android-build...@prod.google.com>
    Gerrit-Attention: Maksim Ivanov <em...@chromium.org>
    Gerrit-Comment-Date: Tue, 19 May 2026 15:30:11 +0000
    Gerrit-HasComments: No
    Gerrit-Has-Labels: Yes
    satisfied_requirement
    open
    diffy

    Maksim Ivanov (Gerrit)

    unread,
    12:14 PM (9 hours ago) 12:14 PM
    to Clemens Backes, Daniel Lehmann, Matthias Liedtke, Code Review Nudger, v8-s...@luci-project-accounts.iam.gserviceaccount.com, dmercadi...@chromium.org, v8-re...@googlegroups.com

    Maksim Ivanov voted and added 1 comment

    Votes added by Maksim Ivanov

    Commit-Queue+2

    1 comment

    File src/compiler/js-heap-broker.h
    Line 395, Patchset 2: void KeepAliveWasmNativeModule(
    Maksim Ivanov . resolved

    Not sure if there's a better solution.

    Storing the `shared_ptr` in `JSWasmCallParameters` doesn't seem to be possible because of it being kept in a zone without destructors being called.

    Daniel Lehmann
    I am unfortunately not an expert either in how to best keep Wasm C++ objects alive during background compilation. However, I have a gut feeling that this particular implementation is (1) overly specific to this concrete issue, and (2) feels a bit hacky/bolted on. I tried to brainstorm a bit with Gemini (and given my non-expertise, I hope this isn't totally off): Can we
    1. Implement Broker Refs: Define `WasmExportedFunctionDataRef` and `WasmTrustedInstanceDataRef` in `src/compiler/js-heap-broker.h`.
    2. Serialize on Main Thread: In `JSCallReducer` (on the main thread), instead of reading raw `Tagged` pointers, serialize the target function's trusted data into these `*Ref` classes.
    3. Keep compiler raw pointers: The compiler can then safely continue using raw `wasm::NativeModule*` pointers in the Zone, because the broker's persistent handles guarantee their lifetime.

    Given that Clemens and me are not the experts in this, who would be? Jakob Linke and Leszek, since they worked on the heap broker more than us, maybe they can briefly give feedback on this idea?
    Daniel Lehmann

    I think what Gemini proposed here goes a bit further still than your patchset now, but is not strictly necessary. More discussion for potential follow-ups on the (non-public) bug.

    Maksim Ivanov

    Ack - thanks for the additional brainstorm! Looks like there's still a lot we can do to improve clarity and robustness. Proceeding with the CL as an immediate fix.

    Open in Gerrit

    Related details

    Attention set is empty
    Submit Requirements:
    • requirement satisfiedCode-Owners
    • requirement satisfiedCode-Review
    • requirement satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: v8/v8
    Gerrit-Branch: main
    Gerrit-Change-Id: I99f120ff559beaf968f0d39f1b30fc3cd1f2b800
    Gerrit-Change-Number: 7844996
    Gerrit-PatchSet: 4
    Gerrit-Owner: Maksim Ivanov <em...@chromium.org>
    Gerrit-Reviewer: Clemens Backes <clem...@chromium.org>
    Gerrit-Reviewer: Daniel Lehmann <dleh...@chromium.org>
    Gerrit-Reviewer: Maksim Ivanov <em...@chromium.org>
    Gerrit-Reviewer: Matthias Liedtke <mlie...@chromium.org>
    Gerrit-CC: Code Review Nudger <android-build...@prod.google.com>
    Gerrit-Comment-Date: Tue, 19 May 2026 16:14:32 +0000
    satisfied_requirement
    open
    diffy

    v8-scoped@luci-project-accounts.iam.gserviceaccount.com (Gerrit)

    unread,
    12:16 PM (9 hours ago) 12:16 PM
    to Maksim Ivanov, Clemens Backes, Daniel Lehmann, Matthias Liedtke, Code Review Nudger, dmercadi...@chromium.org, v8-re...@googlegroups.com

    v8-s...@luci-project-accounts.iam.gserviceaccount.com submitted the change

    Change information

    Commit message:
    [wasm] Ensure NativeModule alive throughout bg compilation

    For the JS-to-Wasm inlining (JS call reducer and Turbolev graph
    builder), make sure to keep the NativeModule alive throughout the
    operation: even though it's owned through a TrustedManaged, the
    ownership root isn't guaranteed to keep it alive.

    NO_IFTTT=Inlining logic isn't changed
    Bug: 502997649
    Change-Id: I99f120ff559beaf968f0d39f1b30fc3cd1f2b800
    Reviewed-by: Clemens Backes <clem...@chromium.org>
    Reviewed-by: Matthias Liedtke <mlie...@chromium.org>
    Commit-Queue: Maksim Ivanov <em...@chromium.org>
    Reviewed-by: Daniel Lehmann <dleh...@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#107431}
    Files:
    • M src/compiler/js-call-reducer.cc
    • M src/compiler/turboshaft/turbolev-graph-builder.cc
    Change size: XS
    Delta: 2 files changed, 6 insertions(+), 0 deletions(-)
    Branch: refs/heads/main
    Submit Requirements:
    • requirement satisfiedCode-Review: +1 by Matthias Liedtke, +1 by Clemens Backes, +1 by Daniel Lehmann
    Open in Gerrit
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: merged
    Gerrit-Project: v8/v8
    Gerrit-Branch: main
    Gerrit-Change-Id: I99f120ff559beaf968f0d39f1b30fc3cd1f2b800
    Gerrit-Change-Number: 7844996
    Gerrit-PatchSet: 5
    Gerrit-Owner: Maksim Ivanov <em...@chromium.org>
    Gerrit-Reviewer: Clemens Backes <clem...@chromium.org>
    Gerrit-Reviewer: Daniel Lehmann <dleh...@chromium.org>
    Gerrit-Reviewer: Maksim Ivanov <em...@chromium.org>
    Gerrit-Reviewer: Matthias Liedtke <mlie...@chromium.org>
    open
    diffy
    satisfied_requirement
    Reply all
    Reply to author
    Forward
    0 new messages