pyobjc-framework-MetalPerformanceShaders 11.0__tar.gz → 12.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/Lib/MetalPerformanceShaders/_metadata.py +121 -7
  2. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/PKG-INFO +19 -6
  3. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/SOURCES.txt +2 -6
  4. pyobjc_framework_metalperformanceshaders-12.0/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/pyobjc-build-info.txt +3 -0
  5. pyobjc_framework_metalperformanceshaders-12.0/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/requires.txt +2 -0
  6. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/License.txt +1 -1
  7. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/Modules/_MetalPerformanceShaders.m +18 -21
  8. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/Modules/_MetalPerformanceShaders_inlines.m +18 -21
  9. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/Modules/_MetalPerformanceShaders_protocols.m +2 -1
  10. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/Modules/pyobjc-api.h +6 -3
  11. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/Modules/pyobjc-compat.h +113 -36
  12. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PKG-INFO +19 -6
  13. pyobjc_framework_metalperformanceshaders-12.0/PyObjCTest/__init__.py +1 -0
  14. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpscore_mpscoretypes.py +5 -0
  15. pyobjc_framework_metalperformanceshaders-12.0/PyObjCTest/test_mpsimage_mpsimagekernel.py +74 -0
  16. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpscnnkernel.py +4 -0
  17. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/metadata/MetalPerformanceShaders.fwinfo +63 -45
  18. pyobjc_framework_metalperformanceshaders-11.0/metadata/raw/arm64-15.0.fwinfo → pyobjc_framework_metalperformanceshaders-12.0/metadata/raw/arm64-26.0.fwinfo +310 -247
  19. pyobjc_framework_metalperformanceshaders-11.0/metadata/raw/x86_64-15.0.fwinfo → pyobjc_framework_metalperformanceshaders-12.0/metadata/raw/x86_64-26.0.fwinfo +310 -247
  20. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/pyobjc_setup.py +9 -41
  21. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/setup.py +1 -1
  22. pyobjc_framework_metalperformanceshaders-11.0/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/pyobjc-build-info.txt +0 -3
  23. pyobjc_framework_metalperformanceshaders-11.0/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/requires.txt +0 -2
  24. pyobjc_framework_metalperformanceshaders-11.0/PyObjCTest/__init__.py +0 -1
  25. pyobjc_framework_metalperformanceshaders-11.0/PyObjCTest/test_mpsimage_mpsimagekernel.py +0 -36
  26. pyobjc_framework_metalperformanceshaders-11.0/metadata/raw/arm64-13.3.fwinfo +0 -54728
  27. pyobjc_framework_metalperformanceshaders-11.0/metadata/raw/arm64-14.5.fwinfo +0 -54765
  28. pyobjc_framework_metalperformanceshaders-11.0/metadata/raw/x86_64-13.3.fwinfo +0 -54728
  29. pyobjc_framework_metalperformanceshaders-11.0/metadata/raw/x86_64-14.5.fwinfo +0 -54765
  30. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/Lib/MetalPerformanceShaders/__init__.py +0 -0
  31. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/dependency_links.txt +0 -0
  32. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/not-zip-safe +0 -0
  33. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/top_level.txt +0 -0
  34. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/MANIFEST.in +0 -0
  35. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_metalperformanceshaders.py +0 -0
  36. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpscore_mpscommandbuffer.py +0 -0
  37. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpscore_mpsfunctionconstantindices.py +0 -0
  38. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpscore_mpsimage.py +0 -0
  39. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpscore_mpskerneltypes.py +0 -0
  40. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpscore_mpskeyedunarchiver.py +0 -0
  41. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpscore_mpsndarray.py +0 -0
  42. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpscore_mpsndarrayidentity.py +0 -0
  43. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpscore_mpsndarrayquantization.py +0 -0
  44. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpscore_mpsstate.py +0 -0
  45. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsimage_mpsimageconvolution.py +0 -0
  46. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsimage_mpsimagehistogram.py +0 -0
  47. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsimage_mpsimagekeypoint.py +0 -0
  48. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsimage_mpsimagemorphology.py +0 -0
  49. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsimage_mpsimagethreshold.py +0 -0
  50. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsimage_mpsimagetypes.py +0 -0
  51. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsmatrix_mpsmatrixcombination.py +0 -0
  52. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsmatrix_mpsmatrixdecomposition.py +0 -0
  53. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsmatrix_mpsmatrixmultiplication.py +0 -0
  54. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsmatrix_mpsmatrixrandom.py +0 -0
  55. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsmatrix_mpsmatrixsolve.py +0 -0
  56. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsmatrix_mpsndarraymultiarykernel.py +0 -0
  57. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsndarray_mpsndarraytypes.py +0 -0
  58. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpscnnconvolution.py +0 -0
  59. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpscnngroupnormalization.py +0 -0
  60. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpscnninstancenormalization.py +0 -0
  61. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpscnnloss.py +0 -0
  62. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpscnnmath.py +0 -0
  63. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpscnnneuraltypes.py +0 -0
  64. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpscnntypes.py +0 -0
  65. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpscnnupsampling.py +0 -0
  66. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpsmatrixbatchnormalization.py +0 -0
  67. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpsmatrixsum.py +0 -0
  68. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpsneuralnetworktypes.py +0 -0
  69. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpsnnbatchnormalization.py +0 -0
  70. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpsnngraph.py +0 -0
  71. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpsnngraphnodes.py +0 -0
  72. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpsnngridsample.py +0 -0
  73. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpsnnoptimzers.py +0 -0
  74. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpsnnreshape.py +0 -0
  75. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpsnnresize.py +0 -0
  76. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsneuralnetwork_mpsrnnlayer.py +0 -0
  77. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsrayintersector_mpsaccelerationstructure.py +0 -0
  78. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsrayintersector_mpsinstanceaccelerationstructure.py +0 -0
  79. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsrayintersector_mpspolygonaccelerationstructure.py +0 -0
  80. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsrayintersector_mpsrayintersector.py +0 -0
  81. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsrayintersector_mpsrayintersectortypes.py +0 -0
  82. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/PyObjCTest/test_mpsrayintersector_mpssvgf.py +0 -0
  83. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/metadata/metadata.ini +0 -0
  84. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/pyproject.toml +0 -0
  85. {pyobjc_framework_metalperformanceshaders-11.0 → pyobjc_framework_metalperformanceshaders-12.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  # This file is generated by objective.metadata
2
2
  #
3
- # Last update: Wed Jun 19 22:18:12 2024
3
+ # Last update: Thu Jul 24 13:05:50 2025
4
4
  #
5
5
  # flake8: noqa
6
6
 
@@ -257,7 +257,7 @@ misc.update(
257
257
  }
258
258
  )
259
259
  constants = """$MPSRectNoClip@{MTLRegion={MTLOrigin=QQQ}{MTLSize=QQQ}}$"""
260
- enums = """$MPSAccelerationStructureStatusBuilt@1$MPSAccelerationStructureStatusUnbuilt@0$MPSAccelerationStructureUsageFrequentRebuild@2$MPSAccelerationStructureUsageNone@0$MPSAccelerationStructureUsagePreferCPUBuild@8$MPSAccelerationStructureUsagePreferGPUBuild@4$MPSAccelerationStructureUsageRefit@1$MPSAliasingStrategyAliasingReserved@3$MPSAliasingStrategyDefault@0$MPSAliasingStrategyDontCare@0$MPSAliasingStrategyPreferNonTemporaryMemory@8$MPSAliasingStrategyPreferTemporaryMemory@4$MPSAliasingStrategyShallAlias@1$MPSAliasingStrategyShallNotAlias@2$MPSAlphaTypeAlphaIsOne@1$MPSAlphaTypeNonPremultiplied@0$MPSAlphaTypePremultiplied@2$MPSBoundingBoxIntersectionTestTypeAxisAligned@1$MPSBoundingBoxIntersectionTestTypeDefault@0$MPSBoundingBoxIntersectionTestTypeFast@2$MPSCNNBatchNormalizationFlagsCalculateStatisticsAlways@1$MPSCNNBatchNormalizationFlagsCalculateStatisticsAutomatic@0$MPSCNNBatchNormalizationFlagsCalculateStatisticsMask@3$MPSCNNBatchNormalizationFlagsCalculateStatisticsNever@2$MPSCNNBatchNormalizationFlagsDefault@0$MPSCNNBinaryConvolutionFlagsNone@0$MPSCNNBinaryConvolutionFlagsUseBetaScaling@1$MPSCNNBinaryConvolutionTypeAND@2$MPSCNNBinaryConvolutionTypeBinaryWeights@0$MPSCNNBinaryConvolutionTypeXNOR@1$MPSCNNConvolutionFlagsNone@0$MPSCNNConvolutionGradientOptionAll@3$MPSCNNConvolutionGradientOptionGradientWithData@1$MPSCNNConvolutionGradientOptionGradientWithWeightsAndBias@2$MPSCNNConvolutionWeightsLayoutOHWI@0$MPSCNNLossTypeCategoricalCrossEntropy@4$MPSCNNLossTypeCosineDistance@7$MPSCNNLossTypeCount@10$MPSCNNLossTypeHinge@5$MPSCNNLossTypeHuber@6$MPSCNNLossTypeKullbackLeiblerDivergence@9$MPSCNNLossTypeLog@8$MPSCNNLossTypeMeanAbsoluteError@0$MPSCNNLossTypeMeanSquaredError@1$MPSCNNLossTypeSigmoidCrossEntropy@3$MPSCNNLossTypeSoftMaxCrossEntropy@2$MPSCNNNeuronTypeAbsolute@6$MPSCNNNeuronTypeCount@16$MPSCNNNeuronTypeELU@9$MPSCNNNeuronTypeExponential@13$MPSCNNNeuronTypeGeLU@15$MPSCNNNeuronTypeHardSigmoid@4$MPSCNNNeuronTypeLinear@2$MPSCNNNeuronTypeLogarithm@14$MPSCNNNeuronTypeNone@0$MPSCNNNeuronTypePReLU@10$MPSCNNNeuronTypePower@12$MPSCNNNeuronTypeReLU@1$MPSCNNNeuronTypeReLUN@11$MPSCNNNeuronTypeSigmoid@3$MPSCNNNeuronTypeSoftPlus@7$MPSCNNNeuronTypeSoftSign@8$MPSCNNNeuronTypeTanH@5$MPSCNNReductionTypeCount@4$MPSCNNReductionTypeMean@2$MPSCNNReductionTypeNone@0$MPSCNNReductionTypeSum@1$MPSCNNReductionTypeSumByNonZeroWeights@3$MPSCNNWeightsQuantizationTypeLinear@1$MPSCNNWeightsQuantizationTypeLookupTable@2$MPSCNNWeightsQuantizationTypeNone@0$MPSCustomKernelIndexDestIndex@0$MPSCustomKernelIndexSrc0Index@0$MPSCustomKernelIndexSrc1Index@1$MPSCustomKernelIndexSrc2Index@2$MPSCustomKernelIndexSrc3Index@3$MPSCustomKernelIndexSrc4Index@4$MPSCustomKernelIndexUserDataIndex@30$MPSDataLayoutFeatureChannelsxHeightxWidth@1$MPSDataLayoutHeightxWidthxFeatureChannels@0$MPSDataTypeAlternateEncodingBit@2147483648$MPSDataTypeBFloat16@2415919120$MPSDataTypeBool@2147483656$MPSDataTypeComplexBit@16777216$MPSDataTypeComplexFloat16@285212704$MPSDataTypeComplexFloat32@285212736$MPSDataTypeFloat16@268435472$MPSDataTypeFloat32@268435488$MPSDataTypeFloatBit@268435456$MPSDataTypeInt16@536870928$MPSDataTypeInt32@536870944$MPSDataTypeInt4@536870916$MPSDataTypeInt64@536870976$MPSDataTypeInt8@536870920$MPSDataTypeIntBit@536870912$MPSDataTypeInvalid@0$MPSDataTypeNormalizedBit@1073741824$MPSDataTypeSignedBit@536870912$MPSDataTypeUInt16@16$MPSDataTypeUInt32@32$MPSDataTypeUInt4@4$MPSDataTypeUInt64@64$MPSDataTypeUInt8@8$MPSDataTypeUnorm1@1073741825$MPSDataTypeUnorm8@1073741832$MPSDeviceCapsIndex@127$MPSDeviceCapsNull@0$MPSDeviceIsAppleDevice@1024$MPSDeviceOptionsDefault@0$MPSDeviceOptionsLowPower@1$MPSDeviceOptionsSkipRemovable@2$MPSDeviceSupportsBFloat16Arithmetic@4096$MPSDeviceSupportsFloat16BicubicFiltering@512$MPSDeviceSupportsFloat32Filtering@128$MPSDeviceSupportsNorm16BicubicFiltering@256$MPSDeviceSupportsQuadShuffle@16$MPSDeviceSupportsReadWriteTextures@4$MPSDeviceSupportsReadableArrayOfTextures@1$MPSDeviceSupportsSimdReduction@64$MPSDeviceSupportsSimdShuffle@32$MPSDeviceSupportsSimdShuffleAndFill@2048$MPSDeviceSupportsSimdgroupBarrier@8$MPSDeviceSupportsWritableArrayOfTextures@2$MPSFloatDataTypeExponentBit@8126464$MPSFloatDataTypeExponentShift@18$MPSFloatDataTypeMantissaBit@261120$MPSFloatDataTypeMantissaShift@10$MPSFloatDataTypeSignBit@8388608$MPSFloatDataTypeSignShift@23$MPSFunctionConstantNone@-1$MPSImageEdgeModeClamp@1$MPSImageEdgeModeConstant@4$MPSImageEdgeModeMirror@2$MPSImageEdgeModeMirrorWithEdge@3$MPSImageEdgeModeZero@0$MPSImageFeatureChannelFormatCount@6$MPSImageFeatureChannelFormatFloat16@3$MPSImageFeatureChannelFormatFloat32@4$MPSImageFeatureChannelFormatNone@0$MPSImageFeatureChannelFormatUnorm16@2$MPSImageFeatureChannelFormatUnorm8@1$MPSImageFeatureChannelFormat_reserved0@5$MPSImageType2d@0$MPSImageType2d_array@1$MPSImageType2d_array_noAlpha@5$MPSImageType2d_noAlpha@4$MPSImageTypeArray2d@2$MPSImageTypeArray2d_array@3$MPSImageTypeArray2d_array_noAlpha@7$MPSImageTypeArray2d_noAlpha@6$MPSImageType_ArrayMask@1$MPSImageType_BatchMask@2$MPSImageType_bitCount@6$MPSImageType_mask@63$MPSImageType_noAlpha@4$MPSImageType_texelFormatBFloat16@24$MPSImageType_texelFormatFloat16@16$MPSImageType_texelFormatMask@56$MPSImageType_texelFormatShift@3$MPSImageType_texelFormatStandard@0$MPSImageType_texelFormatUnorm8@8$MPSImageType_typeMask@3$MPSIntersectionDataTypeDistance@0$MPSIntersectionDataTypeDistancePrimitiveIndex@1$MPSIntersectionDataTypeDistancePrimitiveIndexBufferIndex@5$MPSIntersectionDataTypeDistancePrimitiveIndexBufferIndexCoordinates@6$MPSIntersectionDataTypeDistancePrimitiveIndexBufferIndexInstanceIndex@7$MPSIntersectionDataTypeDistancePrimitiveIndexBufferIndexInstanceIndexCoordinates@8$MPSIntersectionDataTypeDistancePrimitiveIndexCoordinates@2$MPSIntersectionDataTypeDistancePrimitiveIndexInstanceIndex@3$MPSIntersectionDataTypeDistancePrimitiveIndexInstanceIndexCoordinates@4$MPSIntersectionTypeAny@1$MPSIntersectionTypeNearest@0$MPSKernelOptionsAllowReducedPrecision@2$MPSKernelOptionsDisableInternalTiling@4$MPSKernelOptionsInsertDebugGroups@8$MPSKernelOptionsNone@0$MPSKernelOptionsSkipAPIValidation@1$MPSKernelOptionsVerbose@16$MPSKernelTypes_h@1$MPSMatrixDecompositionStatusFailure@-1$MPSMatrixDecompositionStatusNonPositiveDefinite@-3$MPSMatrixDecompositionStatusSingular@-2$MPSMatrixDecompositionStatusSuccess@0$MPSMatrixRandomDistributionDefault@1$MPSMatrixRandomDistributionNormal@3$MPSMatrixRandomDistributionUniform@2$MPSNDArrayQuantizationTypeAffine@1$MPSNDArrayQuantizationTypeLUT@2$MPSNDArrayQuantizationTypeNone@0$MPSNNComparisonTypeEqual@0$MPSNNComparisonTypeGreater@4$MPSNNComparisonTypeGreaterOrEqual@5$MPSNNComparisonTypeLess@2$MPSNNComparisonTypeLessOrEqual@3$MPSNNComparisonTypeNotEqual@1$MPSNNConvolutionAccumulatorPrecisionOptionFloat@1$MPSNNConvolutionAccumulatorPrecisionOptionHalf@0$MPSNNPaddingMethodAddRemainderToBottomLeft@8$MPSNNPaddingMethodAddRemainderToBottomRight@12$MPSNNPaddingMethodAddRemainderToMask@12$MPSNNPaddingMethodAddRemainderToTopLeft@0$MPSNNPaddingMethodAddRemainderToTopRight@4$MPSNNPaddingMethodAlignBottomRight@2$MPSNNPaddingMethodAlignCentered@0$MPSNNPaddingMethodAlignMask@3$MPSNNPaddingMethodAlignTopLeft@1$MPSNNPaddingMethodAlign_reserved@3$MPSNNPaddingMethodCustom@16384$MPSNNPaddingMethodCustomAllowForNodeFusion@8192$MPSNNPaddingMethodCustomWhitelistForNodeFusion@8192$MPSNNPaddingMethodExcludeEdges@32768$MPSNNPaddingMethodSizeFull@32$MPSNNPaddingMethodSizeMask@2032$MPSNNPaddingMethodSizeSame@16$MPSNNPaddingMethodSizeValidOnly@0$MPSNNPaddingMethodSize_reserved@48$MPSNNRegularizationTypeL1@1$MPSNNRegularizationTypeL2@2$MPSNNRegularizationTypeNone@0$MPSNNTrainingStyleUpdateDeviceCPU@1$MPSNNTrainingStyleUpdateDeviceGPU@2$MPSNNTrainingStyleUpdateDeviceNone@0$MPSPolygonTypeQuadrilateral@1$MPSPolygonTypeTriangle@0$MPSPurgeableStateAllocationDeferred@0$MPSPurgeableStateEmpty@4$MPSPurgeableStateKeepCurrent@1$MPSPurgeableStateNonVolatile@2$MPSPurgeableStateVolatile@3$MPSRNNBidirectionalCombineModeAdd@1$MPSRNNBidirectionalCombineModeConcatenate@2$MPSRNNBidirectionalCombineModeNone@0$MPSRNNMatrixIdGRUInputGateBiasTerms@21$MPSRNNMatrixIdGRUInputGateInputWeights@19$MPSRNNMatrixIdGRUInputGateRecurrentWeights@20$MPSRNNMatrixIdGRUOutputGateBiasTerms@28$MPSRNNMatrixIdGRUOutputGateInputGateWeights@27$MPSRNNMatrixIdGRUOutputGateInputWeights@25$MPSRNNMatrixIdGRUOutputGateRecurrentWeights@26$MPSRNNMatrixIdGRURecurrentGateBiasTerms@24$MPSRNNMatrixIdGRURecurrentGateInputWeights@22$MPSRNNMatrixIdGRURecurrentGateRecurrentWeights@23$MPSRNNMatrixIdLSTMForgetGateBiasTerms@10$MPSRNNMatrixIdLSTMForgetGateInputWeights@7$MPSRNNMatrixIdLSTMForgetGateMemoryWeights@9$MPSRNNMatrixIdLSTMForgetGateRecurrentWeights@8$MPSRNNMatrixIdLSTMInputGateBiasTerms@6$MPSRNNMatrixIdLSTMInputGateInputWeights@3$MPSRNNMatrixIdLSTMInputGateMemoryWeights@5$MPSRNNMatrixIdLSTMInputGateRecurrentWeights@4$MPSRNNMatrixIdLSTMMemoryGateBiasTerms@14$MPSRNNMatrixIdLSTMMemoryGateInputWeights@11$MPSRNNMatrixIdLSTMMemoryGateMemoryWeights@13$MPSRNNMatrixIdLSTMMemoryGateRecurrentWeights@12$MPSRNNMatrixIdLSTMOutputGateBiasTerms@18$MPSRNNMatrixIdLSTMOutputGateInputWeights@15$MPSRNNMatrixIdLSTMOutputGateMemoryWeights@17$MPSRNNMatrixIdLSTMOutputGateRecurrentWeights@16$MPSRNNMatrixIdSingleGateBiasTerms@2$MPSRNNMatrixIdSingleGateInputWeights@0$MPSRNNMatrixIdSingleGateRecurrentWeights@1$MPSRNNMatrixId_count@29$MPSRNNSequenceDirectionBackward@1$MPSRNNSequenceDirectionForward@0$MPSRayDataTypeOriginDirection@0$MPSRayDataTypeOriginMaskDirectionMaxDistance@2$MPSRayDataTypeOriginMinDistanceDirectionMaxDistance@1$MPSRayDataTypePackedOriginDirection@3$MPSRayMaskOperatorAnd@0$MPSRayMaskOperatorEqual@10$MPSRayMaskOperatorGreaterThan@8$MPSRayMaskOperatorGreaterThanOrEqualTo@9$MPSRayMaskOperatorLessThan@6$MPSRayMaskOperatorLessThanOrEqualTo@7$MPSRayMaskOperatorNotAnd@1$MPSRayMaskOperatorNotEqual@11$MPSRayMaskOperatorNotOr@3$MPSRayMaskOperatorNotXor@5$MPSRayMaskOperatorOr@2$MPSRayMaskOperatorXor@4$MPSRayMaskOptionInstance@2$MPSRayMaskOptionNone@0$MPSRayMaskOptionPrimitive@1$MPSStateResourceTypeBuffer@1$MPSStateResourceTypeNone@0$MPSStateResourceTypeTexture@2$MPSTemporalWeightingAverage@0$MPSTemporalWeightingExponentialMovingAverage@1$MPSTransformTypeFloat4x4@0$MPSTransformTypeIdentity@1$MPSTriangleIntersectionTestTypeDefault@0$MPSTriangleIntersectionTestTypeWatertight@1$MetalPerformanceShaders_h@1$"""
260
+ enums = """$MPSAccelerationStructureStatusBuilt@1$MPSAccelerationStructureStatusUnbuilt@0$MPSAccelerationStructureUsageFrequentRebuild@2$MPSAccelerationStructureUsageNone@0$MPSAccelerationStructureUsagePreferCPUBuild@8$MPSAccelerationStructureUsagePreferGPUBuild@4$MPSAccelerationStructureUsageRefit@1$MPSAliasingStrategyAliasingReserved@3$MPSAliasingStrategyDefault@0$MPSAliasingStrategyDontCare@0$MPSAliasingStrategyPreferNonTemporaryMemory@8$MPSAliasingStrategyPreferTemporaryMemory@4$MPSAliasingStrategyShallAlias@1$MPSAliasingStrategyShallNotAlias@2$MPSAlphaTypeAlphaIsOne@1$MPSAlphaTypeNonPremultiplied@0$MPSAlphaTypePremultiplied@2$MPSBoundingBoxIntersectionTestTypeAxisAligned@1$MPSBoundingBoxIntersectionTestTypeDefault@0$MPSBoundingBoxIntersectionTestTypeFast@2$MPSCNNBatchNormalizationFlagsCalculateStatisticsAlways@1$MPSCNNBatchNormalizationFlagsCalculateStatisticsAutomatic@0$MPSCNNBatchNormalizationFlagsCalculateStatisticsMask@3$MPSCNNBatchNormalizationFlagsCalculateStatisticsNever@2$MPSCNNBatchNormalizationFlagsDefault@0$MPSCNNBinaryConvolutionFlagsNone@0$MPSCNNBinaryConvolutionFlagsUseBetaScaling@1$MPSCNNBinaryConvolutionTypeAND@2$MPSCNNBinaryConvolutionTypeBinaryWeights@0$MPSCNNBinaryConvolutionTypeXNOR@1$MPSCNNConvolutionFlagsNone@0$MPSCNNConvolutionGradientOptionAll@3$MPSCNNConvolutionGradientOptionGradientWithData@1$MPSCNNConvolutionGradientOptionGradientWithWeightsAndBias@2$MPSCNNConvolutionWeightsLayoutOHWI@0$MPSCNNLossTypeCategoricalCrossEntropy@4$MPSCNNLossTypeCosineDistance@7$MPSCNNLossTypeCount@10$MPSCNNLossTypeHinge@5$MPSCNNLossTypeHuber@6$MPSCNNLossTypeKullbackLeiblerDivergence@9$MPSCNNLossTypeLog@8$MPSCNNLossTypeMeanAbsoluteError@0$MPSCNNLossTypeMeanSquaredError@1$MPSCNNLossTypeSigmoidCrossEntropy@3$MPSCNNLossTypeSoftMaxCrossEntropy@2$MPSCNNNeuronTypeAbsolute@6$MPSCNNNeuronTypeCount@16$MPSCNNNeuronTypeELU@9$MPSCNNNeuronTypeExponential@13$MPSCNNNeuronTypeGeLU@15$MPSCNNNeuronTypeHardSigmoid@4$MPSCNNNeuronTypeLinear@2$MPSCNNNeuronTypeLogarithm@14$MPSCNNNeuronTypeNone@0$MPSCNNNeuronTypePReLU@10$MPSCNNNeuronTypePower@12$MPSCNNNeuronTypeReLU@1$MPSCNNNeuronTypeReLUN@11$MPSCNNNeuronTypeSigmoid@3$MPSCNNNeuronTypeSoftPlus@7$MPSCNNNeuronTypeSoftSign@8$MPSCNNNeuronTypeTanH@5$MPSCNNReductionTypeCount@4$MPSCNNReductionTypeMean@2$MPSCNNReductionTypeNone@0$MPSCNNReductionTypeSum@1$MPSCNNReductionTypeSumByNonZeroWeights@3$MPSCNNWeightsQuantizationTypeLinear@1$MPSCNNWeightsQuantizationTypeLookupTable@2$MPSCNNWeightsQuantizationTypeNone@0$MPSCustomKernelIndexDestIndex@0$MPSCustomKernelIndexSrc0Index@0$MPSCustomKernelIndexSrc1Index@1$MPSCustomKernelIndexSrc2Index@2$MPSCustomKernelIndexSrc3Index@3$MPSCustomKernelIndexSrc4Index@4$MPSCustomKernelIndexUserDataIndex@30$MPSDataLayoutFeatureChannelsxHeightxWidth@1$MPSDataLayoutHeightxWidthxFeatureChannels@0$MPSDataTypeAlternateEncodingBit@2147483648$MPSDataTypeBFloat16@2415919120$MPSDataTypeBool@2147483656$MPSDataTypeComplexBit@16777216$MPSDataTypeComplexFloat16@285212704$MPSDataTypeComplexFloat32@285212736$MPSDataTypeFloat16@268435472$MPSDataTypeFloat32@268435488$MPSDataTypeFloatBit@268435456$MPSDataTypeInt16@536870928$MPSDataTypeInt2@536870914$MPSDataTypeInt32@536870944$MPSDataTypeInt4@536870916$MPSDataTypeInt64@536870976$MPSDataTypeInt8@536870920$MPSDataTypeIntBit@536870912$MPSDataTypeInvalid@0$MPSDataTypeNormalizedBit@1073741824$MPSDataTypeSignedBit@536870912$MPSDataTypeUInt16@16$MPSDataTypeUInt2@2$MPSDataTypeUInt32@32$MPSDataTypeUInt4@4$MPSDataTypeUInt64@64$MPSDataTypeUInt8@8$MPSDataTypeUnorm1@1073741825$MPSDataTypeUnorm8@1073741832$MPSDeviceCapsIndex@127$MPSDeviceCapsNull@0$MPSDeviceIsAppleDevice@1024$MPSDeviceOptionsDefault@0$MPSDeviceOptionsLowPower@1$MPSDeviceOptionsSkipRemovable@2$MPSDeviceSupportsBFloat16Arithmetic@4096$MPSDeviceSupportsFloat16BicubicFiltering@512$MPSDeviceSupportsFloat32Filtering@128$MPSDeviceSupportsNorm16BicubicFiltering@256$MPSDeviceSupportsQuadShuffle@16$MPSDeviceSupportsReadWriteTextures@4$MPSDeviceSupportsReadableArrayOfTextures@1$MPSDeviceSupportsSimdReduction@64$MPSDeviceSupportsSimdShuffle@32$MPSDeviceSupportsSimdShuffleAndFill@2048$MPSDeviceSupportsSimdgroupBarrier@8$MPSDeviceSupportsWritableArrayOfTextures@2$MPSFloatDataTypeExponentBit@8126464$MPSFloatDataTypeExponentShift@18$MPSFloatDataTypeMantissaBit@261120$MPSFloatDataTypeMantissaShift@10$MPSFloatDataTypeSignBit@8388608$MPSFloatDataTypeSignShift@23$MPSFunctionConstantNone@-1$MPSImageEdgeModeClamp@1$MPSImageEdgeModeConstant@4$MPSImageEdgeModeMirror@2$MPSImageEdgeModeMirrorWithEdge@3$MPSImageEdgeModeZero@0$MPSImageFeatureChannelFormatCount@6$MPSImageFeatureChannelFormatFloat16@3$MPSImageFeatureChannelFormatFloat32@4$MPSImageFeatureChannelFormatNone@0$MPSImageFeatureChannelFormatUnorm16@2$MPSImageFeatureChannelFormatUnorm8@1$MPSImageFeatureChannelFormat_reserved0@5$MPSImageType2d@0$MPSImageType2d_array@1$MPSImageType2d_array_noAlpha@5$MPSImageType2d_noAlpha@4$MPSImageTypeArray2d@2$MPSImageTypeArray2d_array@3$MPSImageTypeArray2d_array_noAlpha@7$MPSImageTypeArray2d_noAlpha@6$MPSImageType_ArrayMask@1$MPSImageType_BatchMask@2$MPSImageType_bitCount@6$MPSImageType_mask@63$MPSImageType_noAlpha@4$MPSImageType_texelFormatBFloat16@24$MPSImageType_texelFormatFloat16@16$MPSImageType_texelFormatMask@56$MPSImageType_texelFormatShift@3$MPSImageType_texelFormatStandard@0$MPSImageType_texelFormatUnorm8@8$MPSImageType_typeMask@3$MPSIntersectionDataTypeDistance@0$MPSIntersectionDataTypeDistancePrimitiveIndex@1$MPSIntersectionDataTypeDistancePrimitiveIndexBufferIndex@5$MPSIntersectionDataTypeDistancePrimitiveIndexBufferIndexCoordinates@6$MPSIntersectionDataTypeDistancePrimitiveIndexBufferIndexInstanceIndex@7$MPSIntersectionDataTypeDistancePrimitiveIndexBufferIndexInstanceIndexCoordinates@8$MPSIntersectionDataTypeDistancePrimitiveIndexCoordinates@2$MPSIntersectionDataTypeDistancePrimitiveIndexInstanceIndex@3$MPSIntersectionDataTypeDistancePrimitiveIndexInstanceIndexCoordinates@4$MPSIntersectionTypeAny@1$MPSIntersectionTypeNearest@0$MPSKernelOptionsAllowReducedPrecision@2$MPSKernelOptionsDisableInternalTiling@4$MPSKernelOptionsInsertDebugGroups@8$MPSKernelOptionsNone@0$MPSKernelOptionsSkipAPIValidation@1$MPSKernelOptionsVerbose@16$MPSKernelTypes_h@1$MPSMatrixDecompositionStatusFailure@-1$MPSMatrixDecompositionStatusNonPositiveDefinite@-3$MPSMatrixDecompositionStatusSingular@-2$MPSMatrixDecompositionStatusSuccess@0$MPSMatrixRandomDistributionDefault@1$MPSMatrixRandomDistributionNormal@3$MPSMatrixRandomDistributionUniform@2$MPSNDArrayQuantizationTypeAffine@1$MPSNDArrayQuantizationTypeLUT@2$MPSNDArrayQuantizationTypeNone@0$MPSNNComparisonTypeEqual@0$MPSNNComparisonTypeGreater@4$MPSNNComparisonTypeGreaterOrEqual@5$MPSNNComparisonTypeLess@2$MPSNNComparisonTypeLessOrEqual@3$MPSNNComparisonTypeNotEqual@1$MPSNNConvolutionAccumulatorPrecisionOptionFloat@1$MPSNNConvolutionAccumulatorPrecisionOptionHalf@0$MPSNNPaddingMethodAddRemainderToBottomLeft@8$MPSNNPaddingMethodAddRemainderToBottomRight@12$MPSNNPaddingMethodAddRemainderToMask@12$MPSNNPaddingMethodAddRemainderToTopLeft@0$MPSNNPaddingMethodAddRemainderToTopRight@4$MPSNNPaddingMethodAlignBottomRight@2$MPSNNPaddingMethodAlignCentered@0$MPSNNPaddingMethodAlignMask@3$MPSNNPaddingMethodAlignTopLeft@1$MPSNNPaddingMethodAlign_reserved@3$MPSNNPaddingMethodCustom@16384$MPSNNPaddingMethodCustomAllowForNodeFusion@8192$MPSNNPaddingMethodCustomWhitelistForNodeFusion@8192$MPSNNPaddingMethodExcludeEdges@32768$MPSNNPaddingMethodSizeFull@32$MPSNNPaddingMethodSizeMask@2032$MPSNNPaddingMethodSizeSame@16$MPSNNPaddingMethodSizeValidOnly@0$MPSNNPaddingMethodSize_reserved@48$MPSNNRegularizationTypeL1@1$MPSNNRegularizationTypeL2@2$MPSNNRegularizationTypeNone@0$MPSNNTrainingStyleUpdateDeviceCPU@1$MPSNNTrainingStyleUpdateDeviceGPU@2$MPSNNTrainingStyleUpdateDeviceNone@0$MPSPolygonTypeQuadrilateral@1$MPSPolygonTypeTriangle@0$MPSPurgeableStateAllocationDeferred@0$MPSPurgeableStateEmpty@4$MPSPurgeableStateKeepCurrent@1$MPSPurgeableStateNonVolatile@2$MPSPurgeableStateVolatile@3$MPSRNNBidirectionalCombineModeAdd@1$MPSRNNBidirectionalCombineModeConcatenate@2$MPSRNNBidirectionalCombineModeNone@0$MPSRNNMatrixIdGRUInputGateBiasTerms@21$MPSRNNMatrixIdGRUInputGateInputWeights@19$MPSRNNMatrixIdGRUInputGateRecurrentWeights@20$MPSRNNMatrixIdGRUOutputGateBiasTerms@28$MPSRNNMatrixIdGRUOutputGateInputGateWeights@27$MPSRNNMatrixIdGRUOutputGateInputWeights@25$MPSRNNMatrixIdGRUOutputGateRecurrentWeights@26$MPSRNNMatrixIdGRURecurrentGateBiasTerms@24$MPSRNNMatrixIdGRURecurrentGateInputWeights@22$MPSRNNMatrixIdGRURecurrentGateRecurrentWeights@23$MPSRNNMatrixIdLSTMForgetGateBiasTerms@10$MPSRNNMatrixIdLSTMForgetGateInputWeights@7$MPSRNNMatrixIdLSTMForgetGateMemoryWeights@9$MPSRNNMatrixIdLSTMForgetGateRecurrentWeights@8$MPSRNNMatrixIdLSTMInputGateBiasTerms@6$MPSRNNMatrixIdLSTMInputGateInputWeights@3$MPSRNNMatrixIdLSTMInputGateMemoryWeights@5$MPSRNNMatrixIdLSTMInputGateRecurrentWeights@4$MPSRNNMatrixIdLSTMMemoryGateBiasTerms@14$MPSRNNMatrixIdLSTMMemoryGateInputWeights@11$MPSRNNMatrixIdLSTMMemoryGateMemoryWeights@13$MPSRNNMatrixIdLSTMMemoryGateRecurrentWeights@12$MPSRNNMatrixIdLSTMOutputGateBiasTerms@18$MPSRNNMatrixIdLSTMOutputGateInputWeights@15$MPSRNNMatrixIdLSTMOutputGateMemoryWeights@17$MPSRNNMatrixIdLSTMOutputGateRecurrentWeights@16$MPSRNNMatrixIdSingleGateBiasTerms@2$MPSRNNMatrixIdSingleGateInputWeights@0$MPSRNNMatrixIdSingleGateRecurrentWeights@1$MPSRNNMatrixId_count@29$MPSRNNSequenceDirectionBackward@1$MPSRNNSequenceDirectionForward@0$MPSRayDataTypeOriginDirection@0$MPSRayDataTypeOriginMaskDirectionMaxDistance@2$MPSRayDataTypeOriginMinDistanceDirectionMaxDistance@1$MPSRayDataTypePackedOriginDirection@3$MPSRayMaskOperatorAnd@0$MPSRayMaskOperatorEqual@10$MPSRayMaskOperatorGreaterThan@8$MPSRayMaskOperatorGreaterThanOrEqualTo@9$MPSRayMaskOperatorLessThan@6$MPSRayMaskOperatorLessThanOrEqualTo@7$MPSRayMaskOperatorNotAnd@1$MPSRayMaskOperatorNotEqual@11$MPSRayMaskOperatorNotOr@3$MPSRayMaskOperatorNotXor@5$MPSRayMaskOperatorOr@2$MPSRayMaskOperatorXor@4$MPSRayMaskOptionInstance@2$MPSRayMaskOptionNone@0$MPSRayMaskOptionPrimitive@1$MPSStateResourceTypeBuffer@1$MPSStateResourceTypeNone@0$MPSStateResourceTypeTexture@2$MPSTemporalWeightingAverage@0$MPSTemporalWeightingExponentialMovingAverage@1$MPSTransformTypeFloat4x4@0$MPSTransformTypeIdentity@1$MPSTriangleIntersectionTestTypeDefault@0$MPSTriangleIntersectionTestTypeWatertight@1$MetalPerformanceShaders_h@1$"""
261
261
  misc.update(
262
262
  {
263
263
  "MPSNNRegularizationType": NewType("MPSNNRegularizationType", int),
@@ -457,7 +457,10 @@ try:
457
457
  r(
458
458
  b"MPSBinaryImageKernel",
459
459
  b"primarySourceRegionForDestinationSize:",
460
- {"arguments": {2: {"type": b"{MTLSize=QQQ}"}}},
460
+ {
461
+ "retval": {"type": b"{MPSRegion={MPSOrigin=ddd}{MPSSize=ddd}}"},
462
+ "arguments": {2: {"type": b"{MTLSize=QQQ}"}},
463
+ },
461
464
  )
462
465
  r(
463
466
  b"MPSBinaryImageKernel",
@@ -467,7 +470,10 @@ try:
467
470
  r(
468
471
  b"MPSBinaryImageKernel",
469
472
  b"secondarySourceRegionForDestinationSize:",
470
- {"arguments": {2: {"type": b"{MTLSize=QQQ}"}}},
473
+ {
474
+ "retval": {"type": b"{MPSRegion={MPSOrigin=ddd}{MPSSize=ddd}}"},
475
+ "arguments": {2: {"type": b"{MTLSize=QQQ}"}},
476
+ },
471
477
  )
472
478
  r(
473
479
  b"MPSBinaryImageKernel",
@@ -1148,6 +1154,16 @@ try:
1148
1154
  b"setClipRectSource:",
1149
1155
  {"arguments": {2: {"type": b"{MTLRegion={MTLOrigin=QQQ}{MTLSize=QQQ}}"}}},
1150
1156
  )
1157
+ r(
1158
+ b"MPSImageScale",
1159
+ b"scaleTransform",
1160
+ {"retval": {"type": b"^{MPSScaleTransform=dddd}"}},
1161
+ )
1162
+ r(
1163
+ b"MPSImageScale",
1164
+ b"setScaleTransform:",
1165
+ {"arguments": {2: {"type": b"^{MPSScaleTransform=dddd}"}}},
1166
+ )
1151
1167
  r(
1152
1168
  b"MPSImageSobel",
1153
1169
  b"initWithDevice:linearGrayColorTransform:",
@@ -1431,11 +1447,21 @@ try:
1431
1447
  b"exportDataWithCommandBuffer:toBuffer:destinationDataType:offset:rowStrides:",
1432
1448
  {"arguments": {6: {"type_modifier": b"n", "c_array_of_variable_length": True}}},
1433
1449
  )
1450
+ r(
1451
+ b"MPSNDArray",
1452
+ b"exportDataWithCommandBuffer:toImages:offset:",
1453
+ {"arguments": {4: {"type": b"{MPSImageCoordinate=QQQ}"}}},
1454
+ )
1434
1455
  r(
1435
1456
  b"MPSNDArray",
1436
1457
  b"importDataWithCommandBuffer:fromBuffer:sourceDataType:offset:rowStrides:",
1437
1458
  {"arguments": {6: {"type_modifier": b"n", "c_array_of_variable_length": True}}},
1438
1459
  )
1460
+ r(
1461
+ b"MPSNDArray",
1462
+ b"importDataWithCommandBuffer:fromImages:offset:",
1463
+ {"arguments": {4: {"type": b"{MPSImageCoordinate=QQQ}"}}},
1464
+ )
1439
1465
  r(
1440
1466
  b"MPSNDArray",
1441
1467
  b"readBytes:strideBytes:",
@@ -1557,6 +1583,16 @@ try:
1557
1583
  b"setPreferPackedRows:",
1558
1584
  {"arguments": {2: {"type": b"Z"}}},
1559
1585
  )
1586
+ r(
1587
+ b"MPSNDArrayDescriptor",
1588
+ b"sliceDimension:withSubrange:",
1589
+ {"arguments": {3: {"type": b"{MPSDimensionSlice=QQ}"}}},
1590
+ )
1591
+ r(
1592
+ b"MPSNDArrayDescriptor",
1593
+ b"sliceRangeForDimension:",
1594
+ {"retval": {"type": b"{MPSDimensionSlice=QQ}"}},
1595
+ )
1560
1596
  r(
1561
1597
  b"MPSNDArrayIdentity",
1562
1598
  b"reshapeWithCommandBuffer:sourceArray:dimensionCount:dimensionSizes:destinationArray:",
@@ -1647,6 +1683,16 @@ try:
1647
1683
  b"nodeWithSourceGradient:sourceImage:gradientState:isSecondarySourceFilter:",
1648
1684
  {"arguments": {5: {"type": b"Z"}}},
1649
1685
  )
1686
+ r(
1687
+ b"MPSNNCropAndResizeBilinear",
1688
+ b"initWithDevice:resizeWidth:resizeHeight:numberOfRegions:regions:",
1689
+ {"arguments": {6: {"type": b"^{MPSRegion={MPSOrigin=ddd}{MPSSize=ddd}}"}}},
1690
+ )
1691
+ r(
1692
+ b"MPSNNCropAndResizeBilinear",
1693
+ b"regions",
1694
+ {"retval": {"type": b"^{MPSRegion={MPSOrigin=ddd}{MPSSize=ddd}}"}},
1695
+ )
1650
1696
  r(
1651
1697
  b"MPSNNFilterNode",
1652
1698
  b"trainingGraphWithSourceGradient:nodeHandler:",
@@ -1824,6 +1870,66 @@ try:
1824
1870
  b"useNestrovMomentum",
1825
1871
  {"retval": {"type": b"Z"}},
1826
1872
  )
1873
+ r(
1874
+ b"MPSNNPad",
1875
+ b"initWithDevice:paddingSizeBefore:paddingSizeAfter:",
1876
+ {
1877
+ "arguments": {
1878
+ 3: {"type": b"{MPSImageCoordinate=QQQ}"},
1879
+ 4: {"type": b"{MPSImageCoordinate=QQQ}"},
1880
+ }
1881
+ },
1882
+ )
1883
+ r(
1884
+ b"MPSNNPad",
1885
+ b"initWithDevice:paddingSizeBefore:paddingSizeAfter:fillValueArray:",
1886
+ {
1887
+ "arguments": {
1888
+ 3: {"type": b"{MPSImageCoordinate=QQQ}"},
1889
+ 4: {"type": b"{MPSImageCoordinate=QQQ}"},
1890
+ }
1891
+ },
1892
+ )
1893
+ r(
1894
+ b"MPSNNPad",
1895
+ b"paddingSizeAfter",
1896
+ {"retval": {"type": b"{MPSImageCoordinate=QQQ}"}},
1897
+ )
1898
+ r(
1899
+ b"MPSNNPad",
1900
+ b"paddingSizeBefore",
1901
+ {"retval": {"type": b"{MPSImageCoordinate=QQQ}"}},
1902
+ )
1903
+ r(
1904
+ b"MPSNNPad",
1905
+ b"setPaddingSizeAfter:",
1906
+ {"arguments": {2: {"type": b"{MPSImageCoordinate=QQQ}"}}},
1907
+ )
1908
+ r(
1909
+ b"MPSNNPad",
1910
+ b"setPaddingSizeBefore:",
1911
+ {"arguments": {2: {"type": b"{MPSImageCoordinate=QQQ}"}}},
1912
+ )
1913
+ r(
1914
+ b"MPSNNPadNode",
1915
+ b"initWithSource:paddingSizeBefore:paddingSizeAfter:edgeMode:",
1916
+ {
1917
+ "arguments": {
1918
+ 3: {"type": b"{MPSImageCoordinate=QQQ}"},
1919
+ 4: {"type": b"{MPSImageCoordinate=QQQ}"},
1920
+ }
1921
+ },
1922
+ )
1923
+ r(
1924
+ b"MPSNNPadNode",
1925
+ b"nodeWithSource:paddingSizeBefore:paddingSizeAfter:edgeMode:",
1926
+ {
1927
+ "arguments": {
1928
+ 3: {"type": b"{MPSImageCoordinate=QQQ}"},
1929
+ 4: {"type": b"{MPSImageCoordinate=QQQ}"},
1930
+ }
1931
+ },
1932
+ )
1827
1933
  r(b"MPSNNReduceBinary", b"primaryOffset", {"retval": {"type": b"{MPSOffset=qqq}"}})
1828
1934
  r(
1829
1935
  b"MPSNNReduceBinary",
@@ -2029,6 +2135,11 @@ try:
2029
2135
  b"resourceAtIndex:allocateMemory:",
2030
2136
  {"arguments": {3: {"type": b"Z"}}},
2031
2137
  )
2138
+ r(
2139
+ b"MPSState",
2140
+ b"textureInfoAtIndex:",
2141
+ {"retval": {"type": b"{MPSStateTextureInfo=QQQQQQQ[4Q]}"}},
2142
+ )
2032
2143
  r(b"MPSStateResourceList", b"resourceListWithBufferSizes:", {"variadic": True})
2033
2144
  r(
2034
2145
  b"MPSStateResourceList",
@@ -2074,7 +2185,10 @@ try:
2074
2185
  r(
2075
2186
  b"MPSUnaryImageKernel",
2076
2187
  b"sourceRegionForDestinationSize:",
2077
- {"arguments": {2: {"type": b"{MTLSize=QQQ}"}}},
2188
+ {
2189
+ "retval": {"type": b"{MPSRegion={MPSOrigin=ddd}{MPSSize=ddd}}"},
2190
+ "arguments": {2: {"type": b"{MTLSize=QQQ}"}},
2191
+ },
2078
2192
  )
2079
2193
  r(
2080
2194
  b"NSObject",
@@ -3710,12 +3824,12 @@ expressions = {
3710
3824
  "MPSNDArrayConstantMultiDestDstAddressingIndex": "MPSDeviceCapsIndex-11",
3711
3825
  "MPSTextureLinkingConstantIndex": "MPSDeviceCapsIndex-6",
3712
3826
  "MPSFunctionConstantIndex": "MPSDeviceCapsIndex-1",
3713
- "MPSNDArrayConstantMultiDestIndex0": "MPSDeviceCapsIndex-8",
3827
+ "MPSFunctionConstantNoneArray": "(-1, -1)",
3714
3828
  "MPSNDArrayConstantIndex": "MPSDeviceCapsIndex-4",
3715
3829
  "MPSNDArrayConstantMultiDestIndex1": "MPSDeviceCapsIndex-9",
3716
3830
  "MPSBatchSizeIndex": "MPSDeviceCapsIndex-2",
3717
3831
  "MPSFunctionConstantIndexReserved": "MPSDeviceCapsIndex-5",
3718
- "MPSFunctionConstantNoneArray": "(-1, -1)",
3832
+ "MPSNDArrayConstantMultiDestIndex0": "MPSDeviceCapsIndex-8",
3719
3833
  "MPSUserConstantIndex": "MPSDeviceCapsIndex-3",
3720
3834
  }
3721
3835
 
@@ -1,18 +1,17 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: pyobjc-framework-MetalPerformanceShaders
3
- Version: 11.0
3
+ Version: 12.0
4
4
  Summary: Wrappers for the framework MetalPerformanceShaders on macOS
5
5
  Home-page: https://github.com/ronaldoussoren/pyobjc
6
6
  Author: Ronald Oussoren
7
7
  Author-email: pyobjc-dev@lists.sourceforge.net
8
- License: MIT License
8
+ License: MIT
9
9
  Keywords: PyObjC,MetalPerformanceShaders
10
10
  Platform: MacOS X (>=10.13)
11
11
  Classifier: Development Status :: 5 - Production/Stable
12
12
  Classifier: Environment :: Console
13
13
  Classifier: Environment :: MacOS X :: Cocoa
14
14
  Classifier: Intended Audience :: Developers
15
- Classifier: License :: OSI Approved :: MIT License
16
15
  Classifier: Natural Language :: English
17
16
  Classifier: Operating System :: MacOS :: MacOS X
18
17
  Classifier: Programming Language :: Python
@@ -24,14 +23,28 @@ Classifier: Programming Language :: Python :: 3.11
24
23
  Classifier: Programming Language :: Python :: 3.12
25
24
  Classifier: Programming Language :: Python :: 3.13
26
25
  Classifier: Programming Language :: Python :: 3.14
26
+ Classifier: Programming Language :: Python :: 3.15
27
27
  Classifier: Programming Language :: Python :: Implementation :: CPython
28
+ Classifier: Programming Language :: Python :: Free Threading :: 2 - Beta
28
29
  Classifier: Programming Language :: Objective C
29
30
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
30
31
  Classifier: Topic :: Software Development :: User Interfaces
31
32
  Requires-Python: >=3.9
32
33
  Description-Content-Type: text/x-rst; charset=UTF-8
33
- Requires-Dist: pyobjc-core>=11.0
34
- Requires-Dist: pyobjc-framework-Metal>=11.0
34
+ Requires-Dist: pyobjc-core>=12.0
35
+ Requires-Dist: pyobjc-framework-Metal>=12.0
36
+ Dynamic: author
37
+ Dynamic: author-email
38
+ Dynamic: classifier
39
+ Dynamic: description
40
+ Dynamic: description-content-type
41
+ Dynamic: home-page
42
+ Dynamic: keywords
43
+ Dynamic: license
44
+ Dynamic: platform
45
+ Dynamic: requires-dist
46
+ Dynamic: requires-python
47
+ Dynamic: summary
35
48
  Project-URL: Documentation, https://pyobjc.readthedocs.io/en/latest/
36
49
  Project-URL: Issue tracker, https://github.com/ronaldoussoren/pyobjc/issues
37
50
  Project-URL: Repository, https://github.com/ronaldoussoren/pyobjc
@@ -71,9 +71,5 @@ PyObjCTest/test_mpsrayintersector_mpsrayintersectortypes.py
71
71
  PyObjCTest/test_mpsrayintersector_mpssvgf.py
72
72
  metadata/MetalPerformanceShaders.fwinfo
73
73
  metadata/metadata.ini
74
- metadata/raw/arm64-13.3.fwinfo
75
- metadata/raw/arm64-14.5.fwinfo
76
- metadata/raw/arm64-15.0.fwinfo
77
- metadata/raw/x86_64-13.3.fwinfo
78
- metadata/raw/x86_64-14.5.fwinfo
79
- metadata/raw/x86_64-15.0.fwinfo
74
+ metadata/raw/arm64-26.0.fwinfo
75
+ metadata/raw/x86_64-26.0.fwinfo
@@ -0,0 +1,3 @@
1
+ macOS 26.0.1 (25A362)
2
+ Apple clang version 17.0.0 (clang-1700.3.19.1)
3
+ SDK: macOS 26.0
@@ -0,0 +1,2 @@
1
+ pyobjc-core>=12.0
2
+ pyobjc-framework-Metal>=12.0
@@ -1,7 +1,7 @@
1
1
  (This is the MIT license, note that libffi-src is a separate product with its own license)
2
2
 
3
3
  Copyright 2002, 2003 - Bill Bumgarner, Ronald Oussoren, Steve Majewski, Lele Gaifax, et.al.
4
- Copyright 2003-2024 - Ronald Oussoren
4
+ Copyright 2003-2025 - Ronald Oussoren
5
5
 
6
6
  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
7
7
 
@@ -14,54 +14,51 @@ static PyMethodDef mod_methods[] = {
14
14
  {0, 0, 0, 0} /* sentinel */
15
15
  };
16
16
 
17
- static int mod_exec_module(PyObject* m)
17
+ static int
18
+ mod_exec_module(PyObject* m)
18
19
  {
19
20
  return 0;
20
21
  }
21
22
 
22
23
  static struct PyModuleDef_Slot mod_slots[] = {
23
- {
24
- .slot = Py_mod_exec,
25
- .value = (void*)mod_exec_module
26
- },
24
+ {.slot = Py_mod_exec, .value = (void*)mod_exec_module},
27
25
  #if PY_VERSION_HEX >= 0x030c0000
28
26
  {
29
27
  /* This extension does not use the CPython API other than initializing
30
28
  * the module, hence is safe with subinterpreters and per-interpreter
31
29
  * GILs
32
30
  */
33
- .slot = Py_mod_multiple_interpreters,
31
+ .slot = Py_mod_multiple_interpreters,
34
32
  .value = Py_MOD_PER_INTERPRETER_GIL_SUPPORTED,
35
33
  },
36
34
  #endif
37
35
  #if PY_VERSION_HEX >= 0x030d0000
38
36
  {
39
37
  /* The code in this extension should be safe to use without the GIL */
40
- .slot = Py_mod_gil,
38
+ .slot = Py_mod_gil,
41
39
  .value = Py_MOD_GIL_NOT_USED,
42
40
  },
43
41
  #endif
44
- { /* Sentinel */
45
- .slot = 0,
46
- .value = 0
47
- }
48
- };
42
+ {/* Sentinel */
43
+ .slot = 0,
44
+ .value = 0}};
49
45
 
50
46
  static struct PyModuleDef mod_module = {
51
- .m_base = PyModuleDef_HEAD_INIT,
52
- .m_name = "_MetalPerformanceShaders",
53
- .m_doc = NULL,
54
- .m_size = 0,
55
- .m_methods = mod_methods,
56
- .m_slots = mod_slots,
47
+ .m_base = PyModuleDef_HEAD_INIT,
48
+ .m_name = "_MetalPerformanceShaders",
49
+ .m_doc = NULL,
50
+ .m_size = 0,
51
+ .m_methods = mod_methods,
52
+ .m_slots = mod_slots,
57
53
  .m_traverse = NULL,
58
- .m_clear = NULL,
59
- .m_free = NULL,
54
+ .m_clear = NULL,
55
+ .m_free = NULL,
60
56
  };
61
57
 
62
58
  PyObject* PyInit__MetalPerformanceShaders(void);
63
59
 
64
- PyObject* __attribute__((__visibility__("default"))) PyInit__MetalPerformanceShaders(void)
60
+ PyObject* __attribute__((__visibility__("default")))
61
+ PyInit__MetalPerformanceShaders(void)
65
62
  {
66
63
  return PyModuleDef_Init(&mod_module);
67
64
  }
@@ -40,7 +40,8 @@ static PyMethodDef mod_methods[] = {
40
40
  {0, 0, 0, 0} /* sentinel */
41
41
  };
42
42
 
43
- static int mod_exec_module(PyObject* m)
43
+ static int
44
+ mod_exec_module(PyObject* m)
44
45
  {
45
46
  if (PyModule_AddObject(m, "_inline_list_", PyObjC_CreateInlineTab(function_map)) < 0)
46
47
  return -1;
@@ -49,48 +50,44 @@ static int mod_exec_module(PyObject* m)
49
50
  }
50
51
 
51
52
  static struct PyModuleDef_Slot mod_slots[] = {
52
- {
53
- .slot = Py_mod_exec,
54
- .value = (void*)mod_exec_module
55
- },
53
+ {.slot = Py_mod_exec, .value = (void*)mod_exec_module},
56
54
  #if PY_VERSION_HEX >= 0x030c0000
57
55
  {
58
56
  /* This extension does not use the CPython API other than initializing
59
57
  * the module, hence is safe with subinterpreters and per-interpreter
60
58
  * GILs
61
59
  */
62
- .slot = Py_mod_multiple_interpreters,
60
+ .slot = Py_mod_multiple_interpreters,
63
61
  .value = Py_MOD_PER_INTERPRETER_GIL_SUPPORTED,
64
62
  },
65
63
  #endif
66
64
  #if PY_VERSION_HEX >= 0x030d0000
67
65
  {
68
66
  /* The code in this extension should be safe to use without the GIL */
69
- .slot = Py_mod_gil,
67
+ .slot = Py_mod_gil,
70
68
  .value = Py_MOD_GIL_NOT_USED,
71
69
  },
72
70
  #endif
73
- { /* Sentinel */
74
- .slot = 0,
75
- .value = 0
76
- }
77
- };
71
+ {/* Sentinel */
72
+ .slot = 0,
73
+ .value = 0}};
78
74
 
79
75
  static struct PyModuleDef mod_module = {
80
- .m_base = PyModuleDef_HEAD_INIT,
81
- .m_name = "_inlines",
82
- .m_doc = NULL,
83
- .m_size = 0,
84
- .m_methods = mod_methods,
85
- .m_slots = mod_slots,
76
+ .m_base = PyModuleDef_HEAD_INIT,
77
+ .m_name = "_inlines",
78
+ .m_doc = NULL,
79
+ .m_size = 0,
80
+ .m_methods = mod_methods,
81
+ .m_slots = mod_slots,
86
82
  .m_traverse = NULL,
87
- .m_clear = NULL,
88
- .m_free = NULL,
83
+ .m_clear = NULL,
84
+ .m_free = NULL,
89
85
  };
90
86
 
91
87
  PyObject* PyInit__inlines(void);
92
88
 
93
- PyObject* __attribute__((__visibility__("default"))) PyInit__inlines(void)
89
+ PyObject* __attribute__((__visibility__("default")))
90
+ PyInit__inlines(void)
94
91
  {
95
92
  return PyModuleDef_Init(&mod_module);
96
93
  }
@@ -4,7 +4,8 @@
4
4
  * Last update: Wed Jan 16 13:10:52 2013
5
5
  */
6
6
 
7
- static void __attribute__((__used__)) use_protocols(void)
7
+ static void __attribute__((__used__))
8
+ use_protocols(void)
8
9
  {
9
10
  PyObject* p __attribute__((__unused__));
10
11
  #if PyObjC_BUILD_RELEASE >= 1013
@@ -53,8 +53,9 @@ NS_ASSUME_NONNULL_BEGIN
53
53
  /*
54
54
  * Only add items to the end of this list!
55
55
  */
56
+
56
57
  typedef int(RegisterMethodMappingFunctionType)(
57
- Class, SEL,
58
+ Class _Nullable, SEL,
58
59
  PyObject* _Nullable (*_Nonnull)(PyObject* _Nonnull, PyObject* _Nonnull,
59
60
  PyObject* _Nonnull const* _Nonnull, size_t),
60
61
  IMP _Nullable (*_Nonnull)(PyObject* _Nonnull, PyObject* _Nonnull));
@@ -83,7 +84,8 @@ struct pyobjc_api {
83
84
  PyObject* _Nullable (*_Nonnull unsupported_method_caller)(
84
85
  PyObject* _Nonnull, PyObject* _Nonnull, PyObject* _Nonnull const* _Nonnull,
85
86
  size_t);
86
- void (*_Nonnull err_python_to_objc_gil)(PyGILState_STATE* _Nonnull state) __attribute__((__noreturn__));
87
+ void (*_Nonnull err_python_to_objc_gil)(PyGILState_STATE* _Nonnull state)
88
+ __attribute__((__noreturn__));
87
89
  int (*_Nonnull simplify_sig)(const char* signature, char* buf, size_t buflen);
88
90
  void (*_Nonnull free_c_array)(int, Py_buffer*);
89
91
  int (*_Nonnull py_to_c_array)(BOOL, BOOL, const char* _Nonnull, PyObject* _Nonnull,
@@ -113,7 +115,8 @@ struct pyobjc_api {
113
115
  int (*_Nonnull checknokwnames)(PyObject* _Nonnull callable,
114
116
  PyObject* _Nullable kwnames);
115
117
 
116
- PyObject* _Nullable (*_Nonnull createopaquepointertype)(const char*, const char*, const char*);
118
+ PyObject* _Nullable (*_Nonnull createopaquepointertype)(const char*, const char*,
119
+ const char*);
117
120
  };
118
121
 
119
122
  #ifndef PYOBJC_BUILD