[M] Change in dart/sdk[main]: [record_use] Symbol constants

0 views
Skip to first unread message

Daco Harkes (Gerrit)

unread,
Mar 4, 2026, 12:01:10 PM (6 days ago) Mar 4
to Nate Biggs, Commit Queue, Alexander Markov, dart2js-te...@google.com, rev...@dartlang.org
Attention needed from Nate Biggs

New activity on the change

Open in Gerrit

Related details

Attention is currently required from:
  • Nate Biggs
Submit Requirements:
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement satisfiedCommit-Message-Has-TEST
  • 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: sdk
Gerrit-Branch: main
Gerrit-Change-Id: If9cce49bfd31d9bf1222aca6c3d0aef0a590758d
Gerrit-Change-Number: 485522
Gerrit-PatchSet: 2
Gerrit-Owner: Daco Harkes <dacoh...@google.com>
Gerrit-Reviewer: Daco Harkes <dacoh...@google.com>
Gerrit-Reviewer: Nate Biggs <nate...@google.com>
Gerrit-CC: Alexander Markov <alexm...@google.com>
Gerrit-Attention: Nate Biggs <nate...@google.com>
Gerrit-Comment-Date: Wed, 04 Mar 2026 17:01:03 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: No
unsatisfied_requirement
satisfied_requirement
open
diffy

Nate Biggs (Gerrit)

unread,
Mar 6, 2026, 12:38:22 AM (4 days ago) Mar 6
to Daco Harkes, Commit Queue, Alexander Markov, dart2js-te...@google.com, rev...@dartlang.org
Attention needed from Daco Harkes

Nate Biggs added 3 comments

File pkg/compiler/lib/src/constants/values.dart
Line 926, Patchset 3 (Latest): final String? symbolLibraryUri;
Nate Biggs . unresolved

I don't love adding a field to every `ConstructedConstantValue` as this can have a significant impact on memory usage. When compiling large programs we may have a lot of these objects in the heap at any given time so small changes like this can compound.

I wonder if we can keep a separate more compact Map on the side mapping symbol constants to their libraries. The `JsKernelToElementMap` contains the `ConstantValuefier` that generates these objects. In there is a `cache` which we can iterate over and save just the `SymbolConstant`s and their corresponding dart2js `ConstantValue`s.

This map should be easy enough to serialize and deserialize as part of the ElementMap.

File pkg/compiler/lib/src/ir/visitors.dart
Line 362, Patchset 3 (Latest): String? libraryUri;
Nate Biggs . unresolved

Usually we store library URIs as `Uri` objects, not Strings.

File pkg/compiler/lib/src/universe/recorded_use.dart
Line 516, Patchset 3 (Latest): if (libraryUri != null && !libraryUri.startsWith('package:')) {
Nate Biggs . unresolved

Use `Uri.isScheme`

Open in Gerrit

Related details

Attention is currently required from:
  • Daco Harkes
Submit Requirements:
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement satisfiedCommit-Message-Has-TEST
  • 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: sdk
Gerrit-Branch: main
Gerrit-Change-Id: If9cce49bfd31d9bf1222aca6c3d0aef0a590758d
Gerrit-Change-Number: 485522
Gerrit-PatchSet: 3
Gerrit-Owner: Daco Harkes <dacoh...@google.com>
Gerrit-Reviewer: Daco Harkes <dacoh...@google.com>
Gerrit-Reviewer: Nate Biggs <nate...@google.com>
Gerrit-CC: Alexander Markov <alexm...@google.com>
Gerrit-Attention: Daco Harkes <dacoh...@google.com>
Gerrit-Comment-Date: Fri, 06 Mar 2026 05:38:19 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
unsatisfied_requirement
satisfied_requirement
open
diffy

Daco Harkes (Gerrit)

unread,
Mar 6, 2026, 7:27:47 AM (4 days ago) Mar 6
to Nate Biggs, Commit Queue, Alexander Markov, dart2js-te...@google.com, rev...@dartlang.org
Attention needed from Nate Biggs

Daco Harkes voted and added 3 comments

Votes added by Daco Harkes

Commit-Queue+1

3 comments

File pkg/compiler/lib/src/constants/values.dart
Line 926, Patchset 3: final String? symbolLibraryUri;
Nate Biggs . resolved

I don't love adding a field to every `ConstructedConstantValue` as this can have a significant impact on memory usage. When compiling large programs we may have a lot of these objects in the heap at any given time so small changes like this can compound.

I wonder if we can keep a separate more compact Map on the side mapping symbol constants to their libraries. The `JsKernelToElementMap` contains the `ConstantValuefier` that generates these objects. In there is a `cache` which we can iterate over and save just the `SymbolConstant`s and their corresponding dart2js `ConstantValue`s.

This map should be easy enough to serialize and deserialize as part of the ElementMap.

Daco Harkes

Done

File pkg/compiler/lib/src/ir/visitors.dart
Line 362, Patchset 3: String? libraryUri;
Nate Biggs . resolved

Usually we store library URIs as `Uri` objects, not Strings.

Daco Harkes

Done

File pkg/compiler/lib/src/universe/recorded_use.dart
Line 516, Patchset 3: if (libraryUri != null && !libraryUri.startsWith('package:')) {
Nate Biggs . resolved

Use `Uri.isScheme`

Daco Harkes

Done

Open in Gerrit

Related details

Attention is currently required from:
  • Nate Biggs
Submit Requirements:
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement satisfiedCommit-Message-Has-TEST
  • 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: sdk
Gerrit-Branch: main
Gerrit-Change-Id: If9cce49bfd31d9bf1222aca6c3d0aef0a590758d
Gerrit-Change-Number: 485522
Gerrit-PatchSet: 4
Gerrit-Owner: Daco Harkes <dacoh...@google.com>
Gerrit-Reviewer: Daco Harkes <dacoh...@google.com>
Gerrit-Reviewer: Nate Biggs <nate...@google.com>
Gerrit-CC: Alexander Markov <alexm...@google.com>
Gerrit-Attention: Nate Biggs <nate...@google.com>
Gerrit-Comment-Date: Fri, 06 Mar 2026 12:27:42 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Comment-In-Reply-To: Nate Biggs <nate...@google.com>
unsatisfied_requirement
satisfied_requirement
open
diffy

Sigmund Cherem (Gerrit)

unread,
Mar 6, 2026, 12:57:48 PM (4 days ago) Mar 6
to Daco Harkes, Sigmund Cherem, Commit Queue, Alexander Markov, dart2js-te...@google.com, rev...@dartlang.org
Attention needed from Daco Harkes

Sigmund Cherem voted and added 5 comments

Votes added by Sigmund Cherem

Code-Review+1

5 comments

Patchset-level comments
File-level comment, Patchset 5 (Latest):
Sigmund Cherem . resolved

LGTM assuming the edits below 😊

File pkg/compiler/lib/src/constants/constant_system.dart
Line 256, Patchset 5 (Latest): Uri? libraryUri,
Sigmund Cherem . unresolved

undo: now that we no longer store it in a field, we can drop this parameter here.

File pkg/compiler/lib/src/ir/visitors.dart
Line 370, Patchset 5 (Latest): libraryUri,
Sigmund Cherem . unresolved
nits:
* now that we are dropping this parameter, consider a small simplification moving the value declaration again to the top of the method.
* use `?.`

For instance,
```
final value = constant_system.createSymbol(elementMap.commonElements, node.name);
final libraryUri = node.libraryReference?.asLibrary.importUri;
if (libraryUri != null) {
elementMap.registerSymbolLibrary(value, libraryUri);
}
return value;
```
or maybe combine the conditionals:
```
final value = constant_system.createSymbol(elementMap.commonElements, node.name);
if (node.libraryReference != null) {
elementMap.registerSymbolLibrary(
value,
node.libraryReference!.asLibrary.importUri,
);
}
return value;
```
File pkg/compiler/lib/src/js_model/element_map.dart
Line 30, Patchset 5 (Latest):abstract class JsToElementMap implements IrToElementMap {
Sigmund Cherem . unresolved

I think we can undo all changes in this file, instead depend directly on `JsToElementMap` in `RecordUseValueConverter`, which internally is already depending on J abstractions like the JCommonElements.

File pkg/compiler/lib/src/universe/recorded_use.dart
Line 520, Patchset 5 (Latest): if (libraryUri != null && !libraryUri.isScheme('package')) {
Sigmund Cherem . unresolved

consider documenting why we are excluding other schemes?

Open in Gerrit

Related details

Attention is currently required from:
  • Daco Harkes
Submit Requirements:
  • requirement satisfiedCode-Owners
  • requirement satisfiedCode-Review
  • requirement satisfiedCommit-Message-Has-TEST
  • requirement satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: sdk
Gerrit-Branch: main
Gerrit-Change-Id: If9cce49bfd31d9bf1222aca6c3d0aef0a590758d
Gerrit-Change-Number: 485522
Gerrit-PatchSet: 5
Gerrit-Owner: Daco Harkes <dacoh...@google.com>
Gerrit-Reviewer: Daco Harkes <dacoh...@google.com>
Gerrit-Reviewer: Sigmund Cherem <sig...@google.com>
Gerrit-CC: Alexander Markov <alexm...@google.com>
Gerrit-Attention: Daco Harkes <dacoh...@google.com>
Gerrit-Comment-Date: Fri, 06 Mar 2026 17:57:45 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
satisfied_requirement
open
diffy

Daco Harkes (Gerrit)

unread,
Mar 9, 2026, 4:20:20 AM (23 hours ago) Mar 9
to Sigmund Cherem, Commit Queue, Alexander Markov, dart2js-te...@google.com, rev...@dartlang.org
Attention needed from Sigmund Cherem

Daco Harkes voted and added 5 comments

Votes added by Daco Harkes

Commit-Queue+1

5 comments

Patchset-level comments
File-level comment, Patchset 6 (Latest):
Daco Harkes . resolved

Thanks Siggi!

File pkg/compiler/lib/src/constants/constant_system.dart
Line 256, Patchset 5: Uri? libraryUri,
Sigmund Cherem . resolved

undo: now that we no longer store it in a field, we can drop this parameter here.

Daco Harkes

Done

File pkg/compiler/lib/src/ir/visitors.dart
Line 370, Patchset 5: libraryUri,
Sigmund Cherem . resolved
nits:
* now that we are dropping this parameter, consider a small simplification moving the value declaration again to the top of the method.
* use `?.`

For instance,
```
final value = constant_system.createSymbol(elementMap.commonElements, node.name);
final libraryUri = node.libraryReference?.asLibrary.importUri;
if (libraryUri != null) {
elementMap.registerSymbolLibrary(value, libraryUri);
}
return value;
```
or maybe combine the conditionals:
```
final value = constant_system.createSymbol(elementMap.commonElements, node.name);
if (node.libraryReference != null) {
elementMap.registerSymbolLibrary(
value,
node.libraryReference!.asLibrary.importUri,
);
}
return value;
```
Daco Harkes

Done

File pkg/compiler/lib/src/js_model/element_map.dart
Line 30, Patchset 5:abstract class JsToElementMap implements IrToElementMap {
Sigmund Cherem . resolved

I think we can undo all changes in this file, instead depend directly on `JsToElementMap` in `RecordUseValueConverter`, which internally is already depending on J abstractions like the JCommonElements.

Daco Harkes

Done

File pkg/compiler/lib/src/universe/recorded_use.dart
Line 520, Patchset 5: if (libraryUri != null && !libraryUri.isScheme('package')) {
Sigmund Cherem . resolved

consider documenting why we are excluding other schemes?

Daco Harkes

Done

Open in Gerrit

Related details

Attention is currently required from:
  • Sigmund Cherem
Submit Requirements:
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement satisfiedCommit-Message-Has-TEST
    • 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: sdk
    Gerrit-Branch: main
    Gerrit-Change-Id: If9cce49bfd31d9bf1222aca6c3d0aef0a590758d
    Gerrit-Change-Number: 485522
    Gerrit-PatchSet: 6
    Gerrit-Owner: Daco Harkes <dacoh...@google.com>
    Gerrit-Reviewer: Daco Harkes <dacoh...@google.com>
    Gerrit-Reviewer: Sigmund Cherem <sig...@google.com>
    Gerrit-CC: Alexander Markov <alexm...@google.com>
    Gerrit-Attention: Sigmund Cherem <sig...@google.com>
    Gerrit-Comment-Date: Mon, 09 Mar 2026 08:20:15 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    Comment-In-Reply-To: Sigmund Cherem <sig...@google.com>
    unsatisfied_requirement
    satisfied_requirement
    open
    diffy

    Sigmund Cherem (Gerrit)

    unread,
    Mar 9, 2026, 11:15:36 AM (16 hours ago) Mar 9
    to Daco Harkes, Sigmund Cherem, Commit Queue, Alexander Markov, dart2js-te...@google.com, rev...@dartlang.org
    Attention needed from Daco Harkes

    Sigmund Cherem voted and added 3 comments

    Votes added by Sigmund Cherem

    Code-Review+1

    3 comments

    File pkg/compiler/lib/src/universe/recorded_use.dart
    Line 436, Patchset 6 (Latest): this._irToElementMap,
    Sigmund Cherem . unresolved

    It may be worth iterating a bit on the parameters here. It seems that the uses below are that mainly the jsMap is used to get the parameters we used to have before, and the irMap is used in a way where the jsMap could be used instead?

    Suggestions:

    • move from using irMap to jsMap to call `getSymbolLibraryUri`. That will allow us to remove one kind of dependency here.
    • keep the original fields for elementenvironment/commonelements and use constructor initializers instead?
    Line 440, Patchset 6 (Latest): JElementEnvironment get _elementEnvironment =>
    Sigmund Cherem . unresolved

    If we decide to keep the getters, consider copying the comment you use to have on the field to this declaratinon.

    Line 523, Patchset 6 (Latest): // 'package:' library. This is because symbols from other schemes (like
    Sigmund Cherem . resolved

    Q: Will we ever have assets from `dart:` libraries?

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Daco Harkes
    Submit Requirements:
    • requirement satisfiedCode-Owners
    • requirement satisfiedCode-Review
    • requirement satisfiedCommit-Message-Has-TEST
    • requirement satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: sdk
    Gerrit-Branch: main
    Gerrit-Change-Id: If9cce49bfd31d9bf1222aca6c3d0aef0a590758d
    Gerrit-Change-Number: 485522
    Gerrit-PatchSet: 6
    Gerrit-Owner: Daco Harkes <dacoh...@google.com>
    Gerrit-Reviewer: Daco Harkes <dacoh...@google.com>
    Gerrit-Reviewer: Sigmund Cherem <sig...@google.com>
    Gerrit-CC: Alexander Markov <alexm...@google.com>
    Gerrit-Attention: Daco Harkes <dacoh...@google.com>
    Gerrit-Comment-Date: Mon, 09 Mar 2026 15:15:33 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    satisfied_requirement
    open
    diffy

    Daco Harkes (Gerrit)

    unread,
    Mar 9, 2026, 11:33:32 AM (16 hours ago) Mar 9
    to Sigmund Cherem, Commit Queue, Alexander Markov, dart2js-te...@google.com, rev...@dartlang.org

    Daco Harkes added 1 comment

    File pkg/compiler/lib/src/universe/recorded_use.dart
    Line 523, Patchset 6 (Latest): // 'package:' library. This is because symbols from other schemes (like
    Sigmund Cherem . resolved

    Q: Will we ever have assets from `dart:` libraries?

    Daco Harkes

    Right now I'm not intending this to be used inside the Dart or Flutter built-in libraries. That being said, if we ever have a use case for it, I don't see why we couldn't add support for that.

    Open in Gerrit

    Related details

    Attention set is empty
    Submit Requirements:
    • requirement satisfiedCode-Owners
    • requirement satisfiedCode-Review
    • requirement satisfiedCommit-Message-Has-TEST
    • requirement satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: sdk
    Gerrit-Branch: main
    Gerrit-Change-Id: If9cce49bfd31d9bf1222aca6c3d0aef0a590758d
    Gerrit-Change-Number: 485522
    Gerrit-PatchSet: 6
    Gerrit-Owner: Daco Harkes <dacoh...@google.com>
    Gerrit-Reviewer: Daco Harkes <dacoh...@google.com>
    Gerrit-Reviewer: Sigmund Cherem <sig...@google.com>
    Gerrit-CC: Alexander Markov <alexm...@google.com>
    Gerrit-Comment-Date: Mon, 09 Mar 2026 15:33:28 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Sigmund Cherem <sig...@google.com>
    satisfied_requirement
    open
    diffy

    Daco Harkes (Gerrit)

    unread,
    Mar 9, 2026, 11:47:12 AM (15 hours ago) Mar 9
    to Sigmund Cherem, Commit Queue, Alexander Markov, dart2js-te...@google.com, rev...@dartlang.org
    Attention needed from Sigmund Cherem

    Daco Harkes voted and added 2 comments

    Votes added by Daco Harkes

    Commit-Queue+1

    2 comments

    File pkg/compiler/lib/src/universe/recorded_use.dart
    Line 436, Patchset 6: this._irToElementMap,
    Sigmund Cherem . resolved

    It may be worth iterating a bit on the parameters here. It seems that the uses below are that mainly the jsMap is used to get the parameters we used to have before, and the irMap is used in a way where the jsMap could be used instead?

    Suggestions:

    • move from using irMap to jsMap to call `getSymbolLibraryUri`. That will allow us to remove one kind of dependency here.
    • keep the original fields for elementenvironment/commonelements and use constructor initializers instead?
    Daco Harkes

    Done

    Line 440, Patchset 6: JElementEnvironment get _elementEnvironment =>
    Sigmund Cherem . resolved

    If we decide to keep the getters, consider copying the comment you use to have on the field to this declaratinon.

    Daco Harkes

    Done

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Sigmund Cherem
    Submit Requirements:
      • requirement is not satisfiedCode-Owners
      • requirement is not satisfiedCode-Review
      • requirement satisfiedCommit-Message-Has-TEST
      • 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: sdk
      Gerrit-Branch: main
      Gerrit-Change-Id: If9cce49bfd31d9bf1222aca6c3d0aef0a590758d
      Gerrit-Change-Number: 485522
      Gerrit-PatchSet: 7
      Gerrit-Owner: Daco Harkes <dacoh...@google.com>
      Gerrit-Reviewer: Daco Harkes <dacoh...@google.com>
      Gerrit-Reviewer: Sigmund Cherem <sig...@google.com>
      Gerrit-CC: Alexander Markov <alexm...@google.com>
      Gerrit-Attention: Sigmund Cherem <sig...@google.com>
      Gerrit-Comment-Date: Mon, 09 Mar 2026 15:47:07 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      Comment-In-Reply-To: Sigmund Cherem <sig...@google.com>
      unsatisfied_requirement
      satisfied_requirement
      open
      diffy

      Sigmund Cherem (Gerrit)

      unread,
      Mar 9, 2026, 12:12:03 PM (15 hours ago) Mar 9
      to Daco Harkes, Sigmund Cherem, Commit Queue, Alexander Markov, dart2js-te...@google.com, rev...@dartlang.org
      Attention needed from Daco Harkes

      Sigmund Cherem voted and added 1 comment

      Votes added by Sigmund Cherem

      Code-Review+1

      1 comment

      Patchset-level comments
      File-level comment, Patchset 7 (Latest):
      Sigmund Cherem . resolved

      Thanks Daco!

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Daco Harkes
      Submit Requirements:
      • requirement satisfiedCode-Owners
      • requirement satisfiedCode-Review
      • requirement satisfiedCommit-Message-Has-TEST
      • requirement satisfiedReview-Enforcement
      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
      Gerrit-MessageType: comment
      Gerrit-Project: sdk
      Gerrit-Branch: main
      Gerrit-Change-Id: If9cce49bfd31d9bf1222aca6c3d0aef0a590758d
      Gerrit-Change-Number: 485522
      Gerrit-PatchSet: 7
      Gerrit-Owner: Daco Harkes <dacoh...@google.com>
      Gerrit-Reviewer: Daco Harkes <dacoh...@google.com>
      Gerrit-Reviewer: Sigmund Cherem <sig...@google.com>
      Gerrit-CC: Alexander Markov <alexm...@google.com>
      Gerrit-Attention: Daco Harkes <dacoh...@google.com>
      Gerrit-Comment-Date: Mon, 09 Mar 2026 16:12:01 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      open
      diffy

      Daco Harkes (Gerrit)

      unread,
      Mar 9, 2026, 1:04:36 PM (14 hours ago) Mar 9
      to Sigmund Cherem, Commit Queue, Alexander Markov, dart2js-te...@google.com, rev...@dartlang.org

      Daco Harkes voted Commit-Queue+2

      Commit-Queue+2
      Open in Gerrit

      Related details

      Attention set is empty
      Submit Requirements:
      • requirement satisfiedCode-Owners
      • requirement satisfiedCode-Review
      • requirement satisfiedCommit-Message-Has-TEST
      • requirement satisfiedReview-Enforcement
      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
      Gerrit-MessageType: comment
      Gerrit-Project: sdk
      Gerrit-Branch: main
      Gerrit-Change-Id: If9cce49bfd31d9bf1222aca6c3d0aef0a590758d
      Gerrit-Change-Number: 485522
      Gerrit-PatchSet: 7
      Gerrit-Owner: Daco Harkes <dacoh...@google.com>
      Gerrit-Reviewer: Daco Harkes <dacoh...@google.com>
      Gerrit-Reviewer: Sigmund Cherem <sig...@google.com>
      Gerrit-CC: Alexander Markov <alexm...@google.com>
      Gerrit-Comment-Date: Mon, 09 Mar 2026 17:04:31 +0000
      Gerrit-HasComments: No
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      open
      diffy

      Commit Queue (Gerrit)

      unread,
      Mar 9, 2026, 1:04:50 PM (14 hours ago) Mar 9
      to Daco Harkes, Sigmund Cherem, Alexander Markov, dart2js-te...@google.com, rev...@dartlang.org

      Commit Queue submitted the change

      Change information

      Commit message:
      [record_use] Symbol constants

      Closes: https://github.com/dart-lang/native/issues/3053

      TEST=pkg/compiler/test/record_use/record_use_test.dart
      TEST=pkg/dart2wasm/test/record_use_test.dart
      TEST=pkg/vm/test/transformations/record_use_test.dart
      Change-Id: If9cce49bfd31d9bf1222aca6c3d0aef0a590758d
      Cq-Include-Trybots: luci.dart.try:dart2wasm-asserts-linux-chrome-try,dart2wasm-asserts-minified-linux-d8-try,dart2wasm-linux-chrome-try,dart2wasm-linux-d8-try,dart2wasm-linux-firefox-try,dart2wasm-linux-jscm-chrome-try,dart2wasm-linux-optimized-jsc-try,pkg-linux-debug-try,pkg-linux-release-arm64-try,pkg-linux-release-try,pkg-mac-release-arm64-try,pkg-mac-release-try,pkg-win-release-arm64-try,pkg-win-release-try,dart2js-canary-linux-try,dart2js-hostasserts-linux-d8-try,dart2js-linux-chrome-try,dart2js-linux-firefox-try,dart2js-mac-chrome-try,dart2js-mac-safari-try,dart2js-minified-csp-linux-chrome-try,dart2js-minified-linux-d8-try,dart2js-unit-linux-x64-release-try,dart2js-win-chrome-try
      Commit-Queue: Daco Harkes <dacoh...@google.com>
      Reviewed-by: Sigmund Cherem <sig...@google.com>
      Files:
      • M pkg/compiler/lib/src/constants/values.dart
      • M pkg/compiler/lib/src/ir/element_map.dart
      • M pkg/compiler/lib/src/ir/visitors.dart
      • M pkg/compiler/lib/src/js_emitter/record_use_emitter.dart
      • M pkg/compiler/lib/src/js_model/element_map.dart
      • M pkg/compiler/lib/src/js_model/element_map_impl.dart
      • M pkg/compiler/lib/src/kernel/element_map_impl.dart
      • M pkg/compiler/lib/src/universe/recorded_use.dart
      • M pkg/vm/lib/transformations/record_use/record_use.dart
      • A pkg/vm/testcases/transformations/record_use/lib/symbol_const.dart
      • A pkg/vm/testcases/transformations/record_use/lib/symbol_const.dart.aot.expect
      • A pkg/vm/testcases/transformations/record_use/lib/symbol_const.dart.json.expect
      Change size: L
      Delta: 12 files changed, 249 insertions(+), 6 deletions(-)
      Branch: refs/heads/main
      Submit Requirements:
      • requirement satisfiedCode-Review: +1 by Sigmund Cherem
      Open in Gerrit
      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
      Gerrit-MessageType: merged
      Gerrit-Project: sdk
      Gerrit-Branch: main
      Gerrit-Change-Id: If9cce49bfd31d9bf1222aca6c3d0aef0a590758d
      Gerrit-Change-Number: 485522
      Gerrit-PatchSet: 8
      Gerrit-Owner: Daco Harkes <dacoh...@google.com>
      open
      diffy
      satisfied_requirement
      Reply all
      Reply to author
      Forward
      0 new messages