Log properties that cause direct comparison in MatchedPropertiesCache [chromium/src : main]

0 views
Skip to first unread message

Etienne Pierre-Doray (Gerrit)

unread,
2:25 PM (7 hours ago) 2:25 PM
to Olivier Li Shing Tat-Dupuis, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Menard, Alexis, Chromium Metrics Reviews, chromium...@chromium.org, apavlo...@chromium.org, asvitkine...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
Attention needed from Olivier Li Shing Tat-Dupuis

Etienne Pierre-Doray added 4 comments

File third_party/blink/renderer/build/scripts/templates/fields/field.tmpl
Line 205, Patchset 1 (Latest): if (!base::ValuesEquivalent({{group_expression}}, o.{{group_expression}})) {
Etienne Pierre-Doray . unresolved

I think we want to keep the pointer comparison fast path (see `group_expression}}.Get() == o.{{group_expression}}.Get()` from fieldwise_compare):

```
if ({{group_expression}}.Get() != o.{{group_expression}}.Get()) {
if (!{{group_expression}} || !o.{{group_expression}}) {
return ...
}
}
```
Line 213, Patchset 1 (Latest): return CSSPropertyID::{{field.enum_name}};
{% else %}
return CSSPropertyID::kInvalid;
Etienne Pierre-Doray . unresolved

There are several field mismatch, for `is_extra_field` fields. It seems it might be better to define a new dedicated enum.

File third_party/blink/renderer/core/css/resolver/matched_properties_cache.cc
Line 173, Patchset 1 (Latest): ->InheritedEqualIncludingInheritedVariables(
Etienne Pierre-Doray . unresolved

This could be replaced by MismatchedInheritedProperty directly so run the comparison only once (we might need to return optional though)

Line 178, Patchset 1 (Latest): base::UmaHistogramSparse(
Etienne Pierre-Doray . unresolved

Why not UmaHistogramEnumeration?

Open in Gerrit

Related details

Attention is currently required from:
  • Olivier Li Shing Tat-Dupuis
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • 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: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I02323d4ea985714c1830c252204fb465d7f4a77a
Gerrit-Change-Number: 8165021
Gerrit-PatchSet: 1
Gerrit-Owner: Olivier Li Shing Tat-Dupuis <oliv...@google.com>
Gerrit-Reviewer: Olivier Li Shing Tat-Dupuis <oliv...@google.com>
Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
Gerrit-CC: Etienne Pierre-Doray <etie...@chromium.org>
Gerrit-CC: Menard, Alexis <alexis...@intel.com>
Gerrit-Attention: Olivier Li Shing Tat-Dupuis <oliv...@google.com>
Gerrit-Comment-Date: Tue, 28 Jul 2026 18:24:51 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Olivier Li Shing Tat-Dupuis (Gerrit)

unread,
3:03 PM (6 hours ago) 3:03 PM
to Etienne Pierre-Doray, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Menard, Alexis, Chromium Metrics Reviews, chromium...@chromium.org, apavlo...@chromium.org, asvitkine...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
Attention needed from Etienne Pierre-Doray

Olivier Li Shing Tat-Dupuis added 4 comments

File third_party/blink/renderer/build/scripts/templates/fields/field.tmpl
Line 205, Patchset 1: if (!base::ValuesEquivalent({{group_expression}}, o.{{group_expression}})) {
Etienne Pierre-Doray . resolved

I think we want to keep the pointer comparison fast path (see `group_expression}}.Get() == o.{{group_expression}}.Get()` from fieldwise_compare):

```
if ({{group_expression}}.Get() != o.{{group_expression}}.Get()) {
if (!{{group_expression}} || !o.{{group_expression}}) {
return ...
}
}
```
Olivier Li Shing Tat-Dupuis

Done

Line 213, Patchset 1: return CSSPropertyID::{{field.enum_name}};

{% else %}
return CSSPropertyID::kInvalid;
Etienne Pierre-Doray . unresolved

There are several field mismatch, for `is_extra_field` fields. It seems it might be better to define a new dedicated enum.

Olivier Li Shing Tat-Dupuis

What do you think about running it like this to start. If we end up getting too much invalid values we can go back and enhance it?

File third_party/blink/renderer/core/css/resolver/matched_properties_cache.cc
Line 173, Patchset 1: ->InheritedEqualIncludingInheritedVariables(
Etienne Pierre-Doray . resolved

This could be replaced by MismatchedInheritedProperty directly so run the comparison only once (we might need to return optional though)

Olivier Li Shing Tat-Dupuis

Done

Line 178, Patchset 1: base::UmaHistogramSparse(
Etienne Pierre-Doray . resolved

Why not UmaHistogramEnumeration?

Olivier Li Shing Tat-Dupuis

Done

Open in Gerrit

Related details

Attention is currently required from:
  • Etienne Pierre-Doray
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • 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: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I02323d4ea985714c1830c252204fb465d7f4a77a
Gerrit-Change-Number: 8165021
Gerrit-PatchSet: 3
Gerrit-Owner: Olivier Li Shing Tat-Dupuis <oliv...@google.com>
Gerrit-Reviewer: Olivier Li Shing Tat-Dupuis <oliv...@google.com>
Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
Gerrit-CC: Etienne Pierre-Doray <etie...@chromium.org>
Gerrit-CC: Menard, Alexis <alexis...@intel.com>
Gerrit-Attention: Etienne Pierre-Doray <etie...@chromium.org>
Gerrit-Comment-Date: Tue, 28 Jul 2026 19:03:16 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Etienne Pierre-Doray <etie...@chromium.org>
satisfied_requirement
unsatisfied_requirement
open
diffy

Olivier Li Shing Tat-Dupuis (Gerrit)

unread,
4:36 PM (4 hours ago) 4:36 PM
to Etienne Pierre-Doray, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, Menard, Alexis, Chromium Metrics Reviews, chromium...@chromium.org, apavlo...@chromium.org, asvitkine...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
Attention needed from Etienne Pierre-Doray

New activity on the change

Open in Gerrit

Related details

Attention is currently required from:
  • Etienne Pierre-Doray
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • 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: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I02323d4ea985714c1830c252204fb465d7f4a77a
Gerrit-Change-Number: 8165021
Gerrit-PatchSet: 4
Gerrit-Owner: Olivier Li Shing Tat-Dupuis <oliv...@google.com>
Gerrit-Reviewer: Olivier Li Shing Tat-Dupuis <oliv...@google.com>
Gerrit-CC: Chromium Metrics Reviews <chromium-met...@google.com>
Gerrit-CC: Etienne Pierre-Doray <etie...@chromium.org>
Gerrit-CC: Menard, Alexis <alexis...@intel.com>
Gerrit-Attention: Etienne Pierre-Doray <etie...@chromium.org>
Gerrit-Comment-Date: Tue, 28 Jul 2026 20:36:38 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy
Reply all
Reply to author
Forward
0 new messages