kk: Match float formats to actual Metal features (union of Apple and Mac2)

Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38851>
This commit is contained in:
Aitor Camacho 2025-12-08 22:26:24 +09:00 committed by Marge Bot
parent d5b05d53e4
commit 2112eb4aa4

View file

@ -176,9 +176,9 @@ static const struct kk_va_format kk_vf_formats[] = {
// 32-bit formats
MTL_FMT_NATIVE(R32_UINT, MTL_FMT_WCSA(32), MTL_FMT_TB_ALL),
MTL_FMT_NATIVE(R32_SINT, MTL_FMT_WCSA(32), MTL_FMT_TB_ALL),
MTL_FMT_NATIVE(R32_FLOAT, MTL_FMT_WCBMS(32), MTL_FMT_TB_ALL),
MTL_FMT_NATIVE(R16G16_UNORM, MTL_FMT_FWCBMS(32), MTL_FMT_TB_WR),
MTL_FMT_NATIVE(R16G16_SNORM, MTL_FMT_FWCBMS(32), MTL_FMT_TB_WR),
MTL_FMT_NATIVE(R32_FLOAT, MTL_FMT_ALL_NO_ATOMIC(32), MTL_FMT_TB_ALL),
MTL_FMT_NATIVE(R16G16_UNORM, MTL_FMT_ALL_NO_ATOMIC(32), MTL_FMT_TB_WR),
MTL_FMT_NATIVE(R16G16_SNORM, MTL_FMT_ALL_NO_ATOMIC(32), MTL_FMT_TB_WR),
MTL_FMT_NATIVE(R16G16_UINT, MTL_FMT_WCMS(32), MTL_FMT_TB_WR),
MTL_FMT_NATIVE(R16G16_SINT, MTL_FMT_WCMS(32), MTL_FMT_TB_WR),
MTL_FMT_NATIVE(R16G16_FLOAT, MTL_FMT_ALL_NO_ATOMIC(32), MTL_FMT_TB_WR),
@ -193,9 +193,9 @@ static const struct kk_va_format kk_vf_formats[] = {
// 64-bit formats
MTL_FMT_NATIVE(R32G32_UINT, MTL_FMT_WCMS(64), MTL_FMT_TB_WR),
MTL_FMT_NATIVE(R32G32_SINT, MTL_FMT_WCMS(64), MTL_FMT_TB_WR),
MTL_FMT_NATIVE(R32G32_FLOAT, MTL_FMT_WCBMS(64), MTL_FMT_TB_WR),
MTL_FMT_NATIVE(R16G16B16A16_UNORM, MTL_FMT_FWCBMS(64), MTL_FMT_TB_WR),
MTL_FMT_NATIVE(R16G16B16A16_SNORM, MTL_FMT_FWCBMS(64), MTL_FMT_TB_WR),
MTL_FMT_NATIVE(R32G32_FLOAT, MTL_FMT_ALL_NO_ATOMIC(64), MTL_FMT_TB_WR),
MTL_FMT_NATIVE(R16G16B16A16_UNORM, MTL_FMT_ALL_NO_ATOMIC(64), MTL_FMT_TB_WR),
MTL_FMT_NATIVE(R16G16B16A16_SNORM, MTL_FMT_ALL_NO_ATOMIC(64), MTL_FMT_TB_WR),
MTL_FMT_NATIVE(R16G16B16A16_UINT, MTL_FMT_WCMS(64), MTL_FMT_TB_ALL),
MTL_FMT_NATIVE(R16G16B16A16_SINT, MTL_FMT_WCMS(64), MTL_FMT_TB_ALL),
MTL_FMT_NATIVE(R16G16B16A16_FLOAT, MTL_FMT_ALL_NO_ATOMIC(64),
@ -204,7 +204,8 @@ static const struct kk_va_format kk_vf_formats[] = {
// 128-bit formats
MTL_FMT_NATIVE(R32G32B32A32_UINT, MTL_FMT_WCS(128), MTL_FMT_TB_ALL),
MTL_FMT_NATIVE(R32G32B32A32_SINT, MTL_FMT_WCS(128), MTL_FMT_TB_ALL),
MTL_FMT_NATIVE(R32G32B32A32_FLOAT, MTL_FMT_WCMS(128), MTL_FMT_TB_ALL),
MTL_FMT_NATIVE(R32G32B32A32_FLOAT, MTL_FMT_ALL_NO_ATOMIC(128),
MTL_FMT_TB_ALL),
// 16-bit packed formats
MTL_FMT_NATIVE(B5G6R5_UNORM, MTL_FMT_FCBMRS(16), MTL_FMT_TB_NONE),
@ -272,8 +273,10 @@ static const struct kk_va_format kk_vf_formats[] = {
MTL_FMT_NATIVE(ETC2_SRGB8A1, MTL_FMT_FS(64), MTL_FMT_TB_NONE),
// BC/DXT formats
MTL_FMT(DXT1_RGB, DXT1_RGBA, MTL_SWIZZLE_RGB1, MTL_FMT_FS(64), MTL_FMT_TB_NONE, true),
MTL_FMT(DXT1_SRGB, DXT1_SRGBA, MTL_SWIZZLE_RGB1, MTL_FMT_FS(64), MTL_FMT_TB_NONE, true),
MTL_FMT(DXT1_RGB, DXT1_RGBA, MTL_SWIZZLE_RGB1, MTL_FMT_FS(64),
MTL_FMT_TB_NONE, true),
MTL_FMT(DXT1_SRGB, DXT1_SRGBA, MTL_SWIZZLE_RGB1, MTL_FMT_FS(64),
MTL_FMT_TB_NONE, true),
MTL_FMT_NATIVE(DXT1_RGBA, MTL_FMT_FS(64), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(DXT1_SRGBA, MTL_FMT_FS(64), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(DXT3_RGBA, MTL_FMT_FS(128), MTL_FMT_TB_NONE),
@ -299,9 +302,9 @@ static const struct kk_va_format kk_vf_formats[] = {
// Depth and stencil formats
MTL_FMT_NATIVE(Z16_UNORM, MTL_FMT_FMR(16), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(Z32_FLOAT, MTL_FMT_MR(32), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(Z32_FLOAT, MTL_FMT_FMR(32), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(S8_UINT, MTL_FMT_M(8), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(Z32_FLOAT_S8X24_UINT, MTL_FMT_MR(64), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(Z32_FLOAT_S8X24_UINT, MTL_FMT_FMR(64), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(X32_S8X24_UINT, MTL_FMT_MR(64), MTL_FMT_TB_NONE),
};