Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Conversation

@jonahwilliams
Copy link
Contributor

@jonahwilliams jonahwilliams commented Aug 2, 2023

If IMPELLER_DEBUG is not defined (release mode), then remove the cmd label strings and additional encoding debug info.

jonahwilliams added 2 commits August 2, 2023 10:43
@jonahwilliams jonahwilliams marked this pull request as ready for review August 2, 2023 19:07
@bdero bdero requested a review from chinmaygarde August 2, 2023 19:51
Copy link
Member

@bdero bdero left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I recall this coming up before, and we decided to keep the labels at the time. But that was at a time when none of the labels were dynamically generated.

I don't have a strong opinion about this, but @chinmaygarde might have thoughts.

namespace impeller {

#ifdef IMPELLER_DEBUG
#define DEBUG_COMMAND_INFO(obj, arg) obj.label = arg;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Prefix with Impeller?

@chinmaygarde
Copy link
Member

Perhaps we can have something like impeller::DebugLabel or something that turns itself off in certain modes. That way, we won't have to use macros everywhere.

@jonahwilliams
Copy link
Contributor Author

TBH I kind of like the macros because its guaranteed to work, otherwise we get a compile time warning, plus command size is fully shrunk.

We could create a impeller::DebugLabel class that discards its string on construction. Maybe that would be more useful if we want to toggle this on or off?

@chinmaygarde
Copy link
Member

Yeah, I was thinking of something similar https://godbolt.org/z/cGzWT418G. Also, the debug label could only copy the string out for dynamically allocated strings. When we want absolutely no debug labels, we can ifdef out everything and the struct size is zero.

To be clear, we can do this later. Just want to make sure we are utilizing all tricks we can to ensure we have maximum debuggability. If we get into the habit of getting rid of these labels, we'll find these are too expensive when we need them.

@chinmaygarde chinmaygarde changed the title [Impeller] conditionally set command debug info. [Impeller] Conditionally set command debug info. Aug 4, 2023
Copy link
Member

@chinmaygarde chinmaygarde left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just LGTMing this now to unblock. We can rework debug labels later at any point.

@jonahwilliams jonahwilliams added the autosubmit Merge PR when tree becomes green via auto submit App label Aug 14, 2023
@auto-submit auto-submit bot merged commit 4b27e57 into flutter:main Aug 14, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 14, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 14, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 14, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 14, 2023
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Aug 14, 2023
…132522)

flutter/engine@56a0e27...785b249

2023-08-14 amirpanahandeh@yahoo.com Update CompositionAwareMixin to correctly compute composingBase in Web engine (flutter/engine#44139)
2023-08-14 stuartmorgan@google.com Add application:openURLs: forwarding on macOS (flutter/engine#44689)
2023-08-14 skia-flutter-autoroll@skia.org Roll Skia from a4377099b25a to 69ea58157190 (1 revision) (flutter/engine#44692)
2023-08-14 chillers@google.com Update embedder_semantics_update.h imports to include flutter namespace (flutter/engine#44670)
2023-08-14 skia-flutter-autoroll@skia.org Roll Dart SDK from 3295a353980a to d445f5a18876 (1 revision) (flutter/engine#44691)
2023-08-14 dnfield@google.com Revert "Make run_tests.py assert that the ios test dylib is at least as new as libFlutter.dylib" (flutter/engine#44690)
2023-08-14 skia-flutter-autoroll@skia.org Roll Skia from 1cf6f71c8120 to a4377099b25a (1 revision) (flutter/engine#44688)
2023-08-14 skia-flutter-autoroll@skia.org Roll Fuchsia Mac SDK from JKTVoxVrHjZjBaxG4... to uIGMbDkXoIcpqWjgR... (flutter/engine#44687)
2023-08-14 jonahwilliams@google.com [Impeller] Conditionally set command debug info. (flutter/engine#44274)
2023-08-14 kjlubick@users.noreply.github.com Migrate more GL calls of GrBackend* (flutter/engine#44682)

Also rolling transitive DEPS:
  fuchsia/sdk/core/mac-amd64 from JKTVoxVrHjZj to uIGMbDkXoIcp

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com,rmistry@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
gaaclarke pushed a commit to gaaclarke/engine that referenced this pull request Aug 30, 2023
If IMPELLER_DEBUG is not defined (release mode), then remove the cmd label strings and additional encoding debug info.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

autosubmit Merge PR when tree becomes green via auto submit App e: impeller

Projects

No open projects
Archived in project

Development

Successfully merging this pull request may close these issues.

4 participants