Merge pull request #2107 from spnda/apple9

Add: Recognize Apple9
This commit is contained in:
Bill Hollings 2023-12-28 15:57:15 -05:00 committed by GitHub
commit ad8b963e75
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 18 additions and 0 deletions

View File

@ -2926,6 +2926,9 @@ uint32_t MVKPhysicalDevice::getHighestGPUCapability() {
#if MVK_XCODE_14 || (MVK_IOS && MVK_XCODE_13) #if MVK_XCODE_14 || (MVK_IOS && MVK_XCODE_13)
if (supportsMTLGPUFamily(Apple8)) { gpuFam = MTLGPUFamilyApple8; } if (supportsMTLGPUFamily(Apple8)) { gpuFam = MTLGPUFamilyApple8; }
#endif #endif
#if MVK_XCODE_15 && (MVK_IOS || MVK_MACOS)
if (supportsMTLGPUFamily(Apple9)) { gpuFam = MTLGPUFamilyApple9; }
#endif
// Combine OS major (8 bits), OS minor (8 bits), and GPU family (16 bits) // Combine OS major (8 bits), OS minor (8 bits), and GPU family (16 bits)
// into one 32-bit value summarizing highest GPU capability. // into one 32-bit value summarizing highest GPU capability.
@ -3326,6 +3329,9 @@ void MVKPhysicalDevice::logGPUInfo() {
logMsg += "\n\tsupports the following Metal Versions, GPU's and Feature Sets:"; logMsg += "\n\tsupports the following Metal Versions, GPU's and Feature Sets:";
logMsg += "\n\t\tMetal Shading Language %s"; logMsg += "\n\t\tMetal Shading Language %s";
#if MVK_XCODE_15 && (MVK_IOS || MVK_MACOS)
if (supportsMTLGPUFamily(Apple9)) { logMsg += "\n\t\tGPU Family Apple 9"; }
#endif
#if MVK_XCODE_14 || (MVK_IOS && MVK_XCODE_13) #if MVK_XCODE_14 || (MVK_IOS && MVK_XCODE_13)
if (supportsMTLGPUFamily(Apple8)) { logMsg += "\n\t\tGPU Family Apple 8"; } if (supportsMTLGPUFamily(Apple8)) { logMsg += "\n\t\tGPU Family Apple 8"; }
#endif #endif

View File

@ -1682,6 +1682,12 @@ void MVKPixelFormats::modifyMTLFormatCapabilities(id<MTLDevice> mtlDevice) {
addGPUOSMTLPixFmtCaps( Apple5, 11.0, BGR10_XR, All ); addGPUOSMTLPixFmtCaps( Apple5, 11.0, BGR10_XR, All );
addGPUOSMTLPixFmtCaps( Apple5, 11.0, BGR10_XR_sRGB, All ); addGPUOSMTLPixFmtCaps( Apple5, 11.0, BGR10_XR_sRGB, All );
#endif #endif
#if MVK_XCODE_15
addGPUOSMTLPixFmtCaps( Apple9, 14.0, R32Float, All );
addGPUOSMTLPixFmtCaps( Apple9, 14.0, RG32Float, All );
addGPUOSMTLPixFmtCaps( Apple9, 14.0, RGBA32Float, All );
#endif
addFeatSetMTLVtxFmtCaps( macOS_GPUFamily1_v3, UCharNormalized, Vertex ); addFeatSetMTLVtxFmtCaps( macOS_GPUFamily1_v3, UCharNormalized, Vertex );
addFeatSetMTLVtxFmtCaps( macOS_GPUFamily1_v3, CharNormalized, Vertex ); addFeatSetMTLVtxFmtCaps( macOS_GPUFamily1_v3, CharNormalized, Vertex );
@ -1941,6 +1947,12 @@ void MVKPixelFormats::modifyMTLFormatCapabilities(id<MTLDevice> mtlDevice) {
addGPUOSMTLPixFmtCaps( Apple1, 13.0, Depth16Unorm, DRFM ); addGPUOSMTLPixFmtCaps( Apple1, 13.0, Depth16Unorm, DRFM );
addGPUOSMTLPixFmtCaps( Apple3, 13.0, Depth16Unorm, DRFMR ); addGPUOSMTLPixFmtCaps( Apple3, 13.0, Depth16Unorm, DRFMR );
#if MVK_XCODE_15
addGPUOSMTLPixFmtCaps( Apple9, 14.0, R32Float, All );
addGPUOSMTLPixFmtCaps( Apple9, 14.0, RG32Float, All );
addGPUOSMTLPixFmtCaps( Apple9, 14.0, RGBA32Float, All );
#endif
// Vertex formats // Vertex formats
addFeatSetMTLVtxFmtCaps( iOS_GPUFamily1_v4, UCharNormalized, Vertex ); addFeatSetMTLVtxFmtCaps( iOS_GPUFamily1_v4, UCharNormalized, Vertex );