Hash :
877cd04c
Author :
Date :
2023-03-02T10:24:14
Reland "Add vulkan format image fallback for R16G16B16" Suppressed misbehaving trace test in https://crrev.com/c/4317088 This is a reland of commit 71f6d54c8d3662693283281651e57c994a10cf08 Original change's description: > Add vulkan format image fallback for R16G16B16 > > This change adds a vulkan format image mapping fallback from R16G16B16 > to R16G16B16A16, R32G32B32_FLOAT and R32G32B32A32_FLOAT for both > UNORM and SNORM variants. > > This is done because in Chrome we want to use R16/RG16 formats which > are exposed to Skia over the EXT_texture_norm16. Currently, > EXT_texture_norm16 requires RGB16_EXT which if not present is not > supported even if R16_EXT and RG16_EXT are supported. This fallback > helps us support R16/RG16 as well over RGBA16. > > It also updates validationES checks for GL_RGBA signed and unsigned > normalized checking if type is GL_SHORT or GL_UNSIGNED_SHORT. > > It adds a method LoadToFloat that allows a type (GLushort or GLshort) > to be loaded into float format types. This is then used as part of > fallbacks for load_functions_data.json. > > Bug: None > Change-Id: I5c6879cd2ed5dd6e3440877f4891f269d96d88a1 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4294694 > Reviewed-by: Vasiliy Telezhnikov <vasilyt@chromium.org> > Reviewed-by: Geoff Lang <geofflang@chromium.org> > Commit-Queue: Geoff Lang <geofflang@chromium.org> Bug: None Change-Id: I101dd9e8c62e6794692c9f89c4944297e195f710 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4317089 Reviewed-by: Cody Northrop <cnorthrop@google.com> Auto-Submit: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
{
"src/libANGLE/renderer/angle_format.py":
"601bfb757e052c50ac8f4cb4e0b58eb5",
"src/libANGLE/renderer/angle_format_map.json":
"4c09d19204afa53cd9d137bb4edbabb1",
"src/libANGLE/renderer/gen_angle_format_table.py":
"2ec32d6ad86d2dece50bc7db3cd0d807",
"src/libANGLE/renderer/metal/shaders/blit.metal":
"b35da1cf7e949d02e5a44c6a432c1f06",
"src/libANGLE/renderer/metal/shaders/clear.metal":
"37ef05208eb5d12110a7d277a4bbcbe1",
"src/libANGLE/renderer/metal/shaders/common.h":
"bf58ee7fa32143c7eec4fb12218c08bf",
"src/libANGLE/renderer/metal/shaders/constants.h":
"dad1a869a1095be669b7da5651901d38",
"src/libANGLE/renderer/metal/shaders/copy_buffer.metal":
"8a93eae194831f99493e290aa2ec6723",
"src/libANGLE/renderer/metal/shaders/format_autogen.h":
"a73d8a7eab6b0b233c9af614f23adf8c",
"src/libANGLE/renderer/metal/shaders/gen_indices.metal":
"b46a137083fb55a3dd2a392494dcf972",
"src/libANGLE/renderer/metal/shaders/gen_mipmap.metal":
"fab35deec42fd89ae7a11d2f87b6e0b4",
"src/libANGLE/renderer/metal/shaders/gen_mtl_internal_shaders.py":
"039f57f41009d70dacdc3c38449054c8",
"src/libANGLE/renderer/metal/shaders/mtl_default_shaders_src_autogen.inc":
"c6a00db0f34dd89f94686f44fe58e16b",
"src/libANGLE/renderer/metal/shaders/rewrite_indices.metal":
"a29210b023ed3393e1342d94e338d449",
"src/libANGLE/renderer/metal/shaders/visibility.metal":
"b82aa740cf4b0aed606aacef1024beea"
}