[webkit-changes] [WebKit/WebKit] b05619: [WGSL] Add support for frexp and primitive structs
Tadeu Zagallo
noreply at github.com
Tue Nov 7 10:10:44 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: b05619424d3e0b4f8033691a86cb41e9211225dc
https://github.com/WebKit/WebKit/commit/b05619424d3e0b4f8033691a86cb41e9211225dc
Author: Tadeu Zagallo <tzagallo at apple.com>
Date: 2023-11-07 (Tue, 07 Nov 2023)
Changed paths:
M Source/WebGPU/WGSL/ConstantFunctions.h
M Source/WebGPU/WGSL/Constraints.cpp
M Source/WebGPU/WGSL/GlobalVariableRewriter.cpp
M Source/WebGPU/WGSL/Metal/MetalFunctionWriter.cpp
M Source/WebGPU/WGSL/TypeCheck.cpp
M Source/WebGPU/WGSL/TypeDeclarations.rb
M Source/WebGPU/WGSL/TypeStore.cpp
M Source/WebGPU/WGSL/TypeStore.h
M Source/WebGPU/WGSL/Types.cpp
M Source/WebGPU/WGSL/Types.h
M Source/WebGPU/WGSL/WGSLShaderModule.h
M Source/WebGPU/WGSL/generator/main.rb
M Source/WebGPU/WGSL/tests/valid/overload.wgsl
Log Message:
-----------
[WGSL] Add support for frexp and primitive structs
https://bugs.webkit.org/show_bug.cgi?id=264336
rdar://118057393
Reviewed by Mike Wyrzykowski.
Initial support for operations that return built-in structs. For now, there's no
support for constant evaluation yet, since that requires constant structs, which
I will implement next.
* Source/WebGPU/WGSL/ConstantFunctions.h:
(WGSL::zeroValue):
* Source/WebGPU/WGSL/Constraints.cpp:
(WGSL::concretize):
* Source/WebGPU/WGSL/GlobalVariableRewriter.cpp:
(WGSL::bindingMemberForGlobal):
* Source/WebGPU/WGSL/Metal/MetalFunctionWriter.cpp:
(WGSL::Metal::FunctionDefinitionWriter::emitNecessaryHelpers):
(WGSL::Metal::FunctionDefinitionWriter::visit):
(WGSL::Metal::FunctionDefinitionWriter::serializeConstant):
* Source/WebGPU/WGSL/TypeCheck.cpp:
(WGSL::TypeChecker::visit):
(WGSL::TypeChecker::convertValue):
* Source/WebGPU/WGSL/TypeDeclarations.rb:
* Source/WebGPU/WGSL/TypeStore.cpp:
(WGSL::PrimitiveStructKey::encode const):
(WGSL::TypeStore::frexpResultType):
* Source/WebGPU/WGSL/TypeStore.h:
* Source/WebGPU/WGSL/Types.cpp:
(WGSL::Type::dump const):
(WGSL::conversionRank):
(WGSL::Type::size const):
(WGSL::Type::alignment const):
* Source/WebGPU/WGSL/Types.h:
* Source/WebGPU/WGSL/WGSLShaderModule.h:
(WGSL::ShaderModule::usesFrexp const):
(WGSL::ShaderModule::setUsesFrexp):
* Source/WebGPU/WGSL/generator/main.rb:
* Source/WebGPU/WGSL/tests/valid/overload.wgsl:
Canonical link: https://commits.webkit.org/270334@main
More information about the webkit-changes
mailing list