Commit a1e7f20a authored by Corentin Wallez's avatar Corentin Wallez Committed by Commit Bot

Roll src/third_party/dawn/ ae2b9f472..f463a2029 (1 commit)

Also contains the implementation of
GPUBindGroupLayoutBinding.textureComponentType that was newly introduced
in Dawn.

https://dawn.googlesource.com/dawn.git/+log/ae2b9f4720a7..f463a2029142

$ git log ae2b9f472..f463a2029 --date=short --no-merges --format='%ad %ae %s'
2019-08-21 cwallez Add BGLBinding::textureComponentType

Created with:
  roll-dep src/third_party/dawn

Change-Id: Ia40de88d6b2dda7a32a265b3fabfb1b0ae9b906e
Bug: dawn:128
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1765471
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: default avatarKai Ninomiya <kainino@chromium.org>
Cr-Commit-Position: refs/heads/master@{#689491}
parent 7f6a912d
...@@ -280,7 +280,7 @@ vars = { ...@@ -280,7 +280,7 @@ vars = {
# Three lines of non-changing comments so that # Three lines of non-changing comments so that
# the commit queue can handle CLs rolling feed # the commit queue can handle CLs rolling feed
# and whatever else without interference from each other. # and whatever else without interference from each other.
'dawn_revision': 'ae2b9f4720a7286e001d63939b9deaf2731ccc9f', 'dawn_revision': 'f463a20291420babb886157bf8f24f179804a893',
# Three lines of non-changing comments so that # Three lines of non-changing comments so that
# the commit queue can handle CLs rolling feed # the commit queue can handle CLs rolling feed
# and whatever else without interference from each other. # and whatever else without interference from each other.
......
...@@ -36,6 +36,22 @@ DawnBindingType AsDawnEnum<DawnBindingType>(const WTF::String& webgpu_enum) { ...@@ -36,6 +36,22 @@ DawnBindingType AsDawnEnum<DawnBindingType>(const WTF::String& webgpu_enum) {
return DAWN_BINDING_TYPE_FORCE32; return DAWN_BINDING_TYPE_FORCE32;
} }
template <>
DawnTextureComponentType AsDawnEnum<DawnTextureComponentType>(
const WTF::String& webgpu_enum) {
if (webgpu_enum == "float") {
return DAWN_TEXTURE_COMPONENT_TYPE_FLOAT;
}
if (webgpu_enum == "uint") {
return DAWN_TEXTURE_COMPONENT_TYPE_UINT;
}
if (webgpu_enum == "sint") {
return DAWN_TEXTURE_COMPONENT_TYPE_SINT;
}
NOTREACHED();
return DAWN_TEXTURE_COMPONENT_TYPE_FORCE32;
}
template <> template <>
DawnCompareFunction AsDawnEnum<DawnCompareFunction>( DawnCompareFunction AsDawnEnum<DawnCompareFunction>(
const WTF::String& webgpu_enum) { const WTF::String& webgpu_enum) {
......
...@@ -12,12 +12,14 @@ namespace blink { ...@@ -12,12 +12,14 @@ namespace blink {
DawnBindGroupLayoutBinding AsDawnType( DawnBindGroupLayoutBinding AsDawnType(
const GPUBindGroupLayoutBinding* webgpu_binding) { const GPUBindGroupLayoutBinding* webgpu_binding) {
DawnBindGroupLayoutBinding dawn_binding; DawnBindGroupLayoutBinding dawn_binding = {};
dawn_binding.binding = webgpu_binding->binding(); dawn_binding.binding = webgpu_binding->binding();
dawn_binding.type = AsDawnEnum<DawnBindingType>(webgpu_binding->type()); dawn_binding.type = AsDawnEnum<DawnBindingType>(webgpu_binding->type());
dawn_binding.visibility = dawn_binding.visibility =
AsDawnEnum<DawnShaderStageBit>(webgpu_binding->visibility()); AsDawnEnum<DawnShaderStageBit>(webgpu_binding->visibility());
dawn_binding.textureComponentType = AsDawnEnum<DawnTextureComponentType>(
webgpu_binding->textureComponentType());
dawn_binding.multisampled = webgpu_binding->multisampled(); dawn_binding.multisampled = webgpu_binding->multisampled();
dawn_binding.dynamic = webgpu_binding->dynamic(); dawn_binding.dynamic = webgpu_binding->dynamic();
......
...@@ -8,6 +8,7 @@ dictionary GPUBindGroupLayoutBinding { ...@@ -8,6 +8,7 @@ dictionary GPUBindGroupLayoutBinding {
required unsigned long binding; required unsigned long binding;
required GPUShaderStageFlags visibility; required GPUShaderStageFlags visibility;
required GPUBindingType type; required GPUBindingType type;
GPUTextureComponentType textureComponentType = "float";
boolean multisampled = false; boolean multisampled = false;
boolean dynamic = false; boolean dynamic = false;
}; };
...@@ -19,3 +20,9 @@ enum GPUBindingType { ...@@ -19,3 +20,9 @@ enum GPUBindingType {
"sampler", "sampler",
"sampled-texture", "sampled-texture",
}; };
enum GPUTextureComponentType {
"float",
"sint",
"uint"
};
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment