Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f96ecde0824ff7694d781bb8e3324bee9f24e04c
      
https://github.com/WebKit/WebKit/commit/f96ecde0824ff7694d781bb8e3324bee9f24e04c
  Author: Tadeu Zagallo <[email protected]>
  Date:   2023-02-07 (Tue, 07 Feb 2023)

  Changed paths:
    M Source/WebGPU/WGSL/EntryPointRewriter.cpp
    M Source/WebGPU/WGSL/EntryPointRewriter.h
    M Source/WebGPU/WGSL/MangleNames.cpp
    M Source/WebGPU/WGSL/MangleNames.h
    M Source/WebGPU/WGSL/WGSL.cpp
    M Source/WebGPU/WebGPU/ShaderModule.mm

  Log Message:
  -----------
  [WGSL] Enable deferred compilation of compute shaders
https://bugs.webkit.org/show_bug.cgi?id=251785
<rdar://problem/105075787>

Reviewed by Myles C. Maxfield.

In #9441 we allowed early compilation of shaders even when no hints were 
provided.
That was a workaround to start passing some of the CTS tests and unblock testing
the API. Now we remove that workaround and add the necessary functionality to 
defer
the compilation until the pipeline creation if no hints were provided.

* Source/WebGPU/WGSL/EntryPointRewriter.cpp:
(WGSL::EntryPointRewriter::EntryPointRewriter):
(WGSL::EntryPointRewriter::rewrite):
(WGSL::EntryPointRewriter::takeEntryPointInformation):
(WGSL::EntryPointRewriter::collectParameters):
(WGSL::EntryPointRewriter::checkReturnType):
(WGSL::EntryPointRewriter::appendBuiltins):
(WGSL::rewriteEntryPoints):
* Source/WebGPU/WGSL/EntryPointRewriter.h:
* Source/WebGPU/WGSL/MangleNames.cpp:
(WGSL::NameManglerVisitor::NameManglerVisitor):
(WGSL::NameManglerVisitor::run):
(WGSL::mangleNames):
* Source/WebGPU/WGSL/MangleNames.h:
* Source/WebGPU/WGSL/WGSL.cpp:
(WGSL::prepareImpl):
(WGSL::prepare):
* Source/WebGPU/WGSL/WGSL.h:
* Source/WebGPU/WebGPU/ShaderModule.mm:
(WebGPU::Device::createShaderModule):

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


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to