Changes to Metal protocols to support MacOS SDK 15.0

This commit is contained in:
Jake Turner committed 2026-10-06 06:32:41 +01:00
1 parent 6597049558
commit 66d008ecd0
4 files changed
+67

No files matched your search

@@ -286,4 +286,17 @@
return [self.real popDebugGroup];
}
- (void)useResidencySet:(id<MTLResidencySet>)residencySet API_AVAILABLE(macos(15.0), ios(18.0))
{
METAL_NOT_HOOKED();
return [self.real useResidencySet:residencySet];
}
- (void)useResidencySets:(const id<MTLResidencySet> _Nonnull[_Nonnull])residencySets
count:(NSUInteger)count API_AVAILABLE(macos(15.0), ios(18.0))
{
METAL_NOT_HOOKED();
return [self.real useResidencySets:residencySets count:count];
}
@end
@@ -108,4 +108,30 @@
}
#pragma clang diagnostic pop
- (void)addResidencySet:(id<MTLResidencySet>)residencySet API_AVAILABLE(macos(15.0), ios(18.0))
{
METAL_NOT_HOOKED();
[self.real addResidencySet:residencySet];
}
- (void)addResidencySets:(const id<MTLResidencySet> _Nonnull[_Nonnull])residencySets
count:(NSUInteger)count API_AVAILABLE(macos(15.0), ios(18.0))
{
METAL_NOT_HOOKED();
[self.real addResidencySets:residencySets count:count];
}
- (void)removeResidencySet:(id<MTLResidencySet>)residencySet API_AVAILABLE(macos(15.0), ios(18.0))
{
METAL_NOT_HOOKED();
[self.real removeResidencySet:residencySet];
}
- (void)removeResidencySets:(const id<MTLResidencySet> _Nonnull[_Nonnull])residencySets
count:(NSUInteger)count API_AVAILABLE(macos(15.0), ios(18.0))
{
METAL_NOT_HOOKED();
[self.real removeResidencySets:residencySets count:count];
}
@end
@@ -192,6 +192,13 @@
return self.real.currentAllocatedSize;
}
- (id<MTLLogState>)newLogStateWithDescriptor:(MTLLogStateDescriptor *_Nonnull)descriptor
error:(NSError **)error API_AVAILABLE(macos(15.0), ios(18.0))
{
METAL_NOT_HOOKED();
return [self.real newLogStateWithDescriptor:descriptor error:error];
}
- (nullable id<MTLCommandQueue>)newCommandQueue
{
return id<MTLCommandQueue>(GetWrapped(self)->newCommandQueue());
@@ -203,6 +210,13 @@
return [self.real newCommandQueueWithMaxCommandBufferCount:maxCommandBufferCount];
}
- (id<MTLCommandQueue>)newCommandQueueWithDescriptor:(MTLCommandQueueDescriptor *)descriptor
API_AVAILABLE(macos(15.0), ios(18.0))
{
METAL_NOT_HOOKED();
return [self.real newCommandQueueWithDescriptor:descriptor];
}
- (MTLSizeAndAlign)heapTextureSizeAndAlignWithDescriptor:(MTLTextureDescriptor *)desc
API_AVAILABLE(macos(10.13), ios(10.0))
{
@@ -941,4 +955,12 @@
}
#endif
- (id<MTLResidencySet>)newResidencySetWithDescriptor:(MTLResidencySetDescriptor *)desc
error:(NSError *__nullable *)error
API_AVAILABLE(macos(15.0), ios(18.0))
{
METAL_NOT_HOOKED();
return [self.real newResidencySetWithDescriptor:desc error:error];
}
@end
@@ -183,4 +183,10 @@
error:error];
}
- (MTLShaderValidation)shaderValidation API_AVAILABLE(macos(15.0), ios(18.0))
{
METAL_NOT_HOOKED();
return self.real.shaderValidation;
}
@end