Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 5c3faf8a43239e12db67045ff3b0f8872aa4de7c
https://github.com/WebKit/WebKit/commit/5c3faf8a43239e12db67045ff3b0f8872aa4de7c
Author: Tadeu Zagallo <[email protected]>
Date: 2023-10-04 (Wed, 04 Oct 2023)
Changed paths:
M Source/WebGPU/WGSL/GlobalVariableRewriter.cpp
M Source/WebGPU/WGSL/TypeCheck.cpp
A Source/WebGPU/WGSL/tests/valid/global-ordering.wgsl
Log Message:
-----------
[WGSL] Sort globals by binding
https://bugs.webkit.org/show_bug.cgi?id=262547
rdar://116403111
Reviewed by Mike Wyrzykowski.
For now, we directly translate `@binding(x)` into `[[id(x)]]` for global
variables,
but based on order of usage and declaration, we can end up with the variables
out
of order in the argument buffer struct. In order to temporarily fix that, we
simply
sort the globals by their binding value.
* Source/WebGPU/WGSL/GlobalVariableRewriter.cpp:
(WGSL::RewriteGlobalVariables::insertStructs):
* Source/WebGPU/WGSL/TypeCheck.cpp:
(WGSL::TypeChecker::visit):
* Source/WebGPU/WGSL/tests/valid/global-ordering.wgsl: Added.
Canonical link: https://commits.webkit.org/268835@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes