Vulkan: Add missing layout for VK_IMAGE_LAYOUT_UNDEFINED
This this was missed because it doesn't add its own enum value and
instead reuses GL_NONE.
Bug: chromium:976374
Test: chrome --enable-features=UseSkiaRenderer,UiGpuRasterization \
--enable-gpu-rasterization \
--enable-oop-rasterization \
--use-vulkan=native \
--use-gl=angle \
--use-angle=vulkan
Change-Id: I73437211fef3253801e899cb6e50a8e18865cc65
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1665329
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
diff --git a/src/common/PackedGLEnums_autogen.cpp b/src/common/PackedGLEnums_autogen.cpp
index b9a7c8e..52c1100 100644
--- a/src/common/PackedGLEnums_autogen.cpp
+++ b/src/common/PackedGLEnums_autogen.cpp
@@ -432,6 +432,8 @@
{
switch (from)
{
+ case GL_NONE:
+ return ImageLayout::Undefined;
case GL_LAYOUT_GENERAL_EXT:
return ImageLayout::General;
case GL_LAYOUT_COLOR_ATTACHMENT_EXT:
@@ -459,6 +461,8 @@
{
switch (from)
{
+ case ImageLayout::Undefined:
+ return GL_NONE;
case ImageLayout::General:
return GL_LAYOUT_GENERAL_EXT;
case ImageLayout::ColorAttachment:
diff --git a/src/common/PackedGLEnums_autogen.h b/src/common/PackedGLEnums_autogen.h
index 3e5e600..64dd496 100644
--- a/src/common/PackedGLEnums_autogen.h
+++ b/src/common/PackedGLEnums_autogen.h
@@ -189,18 +189,19 @@
enum class ImageLayout : uint8_t
{
- General = 0,
- ColorAttachment = 1,
- DepthStencilAttachment = 2,
- DepthStencilReadOnlyAttachment = 3,
- ShaderReadOnly = 4,
- TransferSrc = 5,
- TransferDst = 6,
- DepthReadOnlyStencilAttachment = 7,
- DepthAttachmentStencilReadOnly = 8,
+ Undefined = 0,
+ General = 1,
+ ColorAttachment = 2,
+ DepthStencilAttachment = 3,
+ DepthStencilReadOnlyAttachment = 4,
+ ShaderReadOnly = 5,
+ TransferSrc = 6,
+ TransferDst = 7,
+ DepthReadOnlyStencilAttachment = 8,
+ DepthAttachmentStencilReadOnly = 9,
- InvalidEnum = 9,
- EnumCount = 9,
+ InvalidEnum = 10,
+ EnumCount = 10,
};
template <>
diff --git a/src/common/packed_gl_enums.json b/src/common/packed_gl_enums.json
index f022adc..aa997f7 100644
--- a/src/common/packed_gl_enums.json
+++ b/src/common/packed_gl_enums.json
@@ -269,6 +269,7 @@
},
"ImageLayout":
{
+ "Undefined": "GL_NONE",
"General": "GL_LAYOUT_GENERAL_EXT",
"ColorAttachment": "GL_LAYOUT_COLOR_ATTACHMENT_EXT",
"DepthStencilAttachment": "GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT",
diff --git a/src/libANGLE/validationES2.cpp b/src/libANGLE/validationES2.cpp
index 0a2f9c7..fc3a040 100644
--- a/src/libANGLE/validationES2.cpp
+++ b/src/libANGLE/validationES2.cpp
@@ -1129,6 +1129,7 @@
{
switch (layout)
{
+ case ImageLayout::Undefined:
case ImageLayout::General:
case ImageLayout::ColorAttachment:
case ImageLayout::DepthStencilAttachment: