[webkit-changes] [WebKit/WebKit] ed632b: [WGSL] GlobalVariableRewriter should only include ...

Tadeu Zagallo noreply at github.com
Thu Apr 20 00:35:21 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ed632b1748c2fe7403fe6d780df66db97ca73b7e
      https://github.com/WebKit/WebKit/commit/ed632b1748c2fe7403fe6d780df66db97ca73b7e
  Author: Tadeu Zagallo <tzagallo at apple.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M Source/WebGPU/WGSL/GlobalVariableRewriter.cpp

  Log Message:
  -----------
  [WGSL] GlobalVariableRewriter should only include globals used by the entrypoint
https://bugs.webkit.org/show_bug.cgi?id=255658
rdar://108264668

Reviewed by Mike Wyrzykowski.

GlobalVariableRewriter was creating shared structs for all the entry points, which
included all the bindings for each group, and then filtering only the groups being
used by each entry point. This is incorrect as it would include resources that were
not used by the entrypoint. To fix that we need to generate one struct per group per
entry point, and this struct should only contains the resources for each group that
are actually used by the entrypoint.

* Source/WebGPU/WGSL/GlobalVariableRewriter.cpp:
(WGSL::RewriteGlobalVariables::run):
(WGSL::RewriteGlobalVariables::visitEntryPoint):
(WGSL::RewriteGlobalVariables::determineUsedGlobals):
(WGSL::RewriteGlobalVariables::insertStructs):
(WGSL::RewriteGlobalVariables::insertParameters):
(WGSL::RewriteGlobalVariables::requiredGroups): Deleted.

Canonical link: https://commits.webkit.org/263165@main




More information about the webkit-changes mailing list