pyobjc-framework-MetalPerformanceShaders 10.3.2__tar.gz → 11.1__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.
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/Lib/MetalPerformanceShaders/_metadata.py +106 -10
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/PKG-INFO +19 -8
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/SOURCES.txt +6 -1
- pyobjc_framework_metalperformanceshaders-11.1/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/pyobjc-build-info.txt +3 -0
- pyobjc_framework_metalperformanceshaders-11.1/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/requires.txt +2 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/License.txt +1 -1
- pyobjc_framework_metalperformanceshaders-11.1/Modules/_MetalPerformanceShaders.m +67 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/Modules/_MetalPerformanceShaders_inlines.m +48 -19
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/Modules/pyobjc-api.h +1 -1
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/Modules/pyobjc-compat.h +175 -7
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PKG-INFO +19 -8
- pyobjc_framework_metalperformanceshaders-11.1/PyObjCTest/__init__.py +1 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpscore_mpscoretypes.py +10 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpscore_mpsndarray.py +35 -0
- pyobjc_framework_metalperformanceshaders-11.1/PyObjCTest/test_mpscore_mpsndarrayidentity.py +26 -0
- pyobjc_framework_metalperformanceshaders-11.1/PyObjCTest/test_mpscore_mpsndarrayquantization.py +36 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/metadata/MetalPerformanceShaders.fwinfo +34 -1
- pyobjc_framework_metalperformanceshaders-11.1/metadata/raw/arm64-15.4.fwinfo +55579 -0
- pyobjc_framework_metalperformanceshaders-11.1/metadata/raw/x86_64-15.4.fwinfo +55579 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/pyobjc_setup.py +73 -53
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/setup.py +1 -4
- pyobjc_framework_metalperformanceshaders-10.3.2/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/requires.txt +0 -2
- pyobjc_framework_metalperformanceshaders-10.3.2/Modules/_MetalPerformanceShaders.m +0 -42
- pyobjc_framework_metalperformanceshaders-10.3.2/PyObjCTest/__init__.py +0 -1
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/Lib/MetalPerformanceShaders/__init__.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/dependency_links.txt +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/not-zip-safe +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/top_level.txt +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/MANIFEST.in +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/Modules/_MetalPerformanceShaders_protocols.m +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_metalperformanceshaders.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpscore_mpscommandbuffer.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpscore_mpsfunctionconstantindices.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpscore_mpsimage.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpscore_mpskerneltypes.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpscore_mpskeyedunarchiver.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpscore_mpsstate.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsimage_mpsimageconvolution.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsimage_mpsimagehistogram.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsimage_mpsimagekernel.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsimage_mpsimagekeypoint.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsimage_mpsimagemorphology.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsimage_mpsimagethreshold.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsimage_mpsimagetypes.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsmatrix_mpsmatrixcombination.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsmatrix_mpsmatrixdecomposition.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsmatrix_mpsmatrixmultiplication.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsmatrix_mpsmatrixrandom.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsmatrix_mpsmatrixsolve.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsmatrix_mpsndarraymultiarykernel.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsndarray_mpsndarraytypes.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpscnnconvolution.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpscnngroupnormalization.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpscnninstancenormalization.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpscnnkernel.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpscnnloss.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpscnnmath.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpscnnneuraltypes.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpscnntypes.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpscnnupsampling.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpsmatrixbatchnormalization.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpsmatrixsum.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpsneuralnetworktypes.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpsnnbatchnormalization.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpsnngraph.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpsnngraphnodes.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpsnngridsample.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpsnnoptimzers.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpsnnreshape.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpsnnresize.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsneuralnetwork_mpsrnnlayer.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsrayintersector_mpsaccelerationstructure.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsrayintersector_mpsinstanceaccelerationstructure.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsrayintersector_mpspolygonaccelerationstructure.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsrayintersector_mpsrayintersector.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsrayintersector_mpsrayintersectortypes.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/PyObjCTest/test_mpsrayintersector_mpssvgf.py +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/metadata/metadata.ini +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/metadata/raw/arm64-13.3.fwinfo +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/metadata/raw/arm64-14.5.fwinfo +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/metadata/raw/x86_64-13.3.fwinfo +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/metadata/raw/x86_64-14.5.fwinfo +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/pyproject.toml +0 -0
- {pyobjc_framework_metalperformanceshaders-10.3.2 → pyobjc_framework_metalperformanceshaders-11.1}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# This file is generated by objective.metadata
|
|
2
2
|
#
|
|
3
|
-
# Last update: Sat
|
|
3
|
+
# Last update: Sat Mar 1 11:27:20 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$MPSDataTypeInt64@536870976$MPSDataTypeInt8@536870920$MPSDataTypeIntBit@536870912$MPSDataTypeInvalid@0$MPSDataTypeNormalizedBit@1073741824$MPSDataTypeSignedBit@536870912$MPSDataTypeUInt16@16$MPSDataTypeUInt32@32$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$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),
|
|
@@ -274,6 +274,7 @@ misc.update(
|
|
|
274
274
|
"MPSStateResourceType": NewType("MPSStateResourceType", int),
|
|
275
275
|
"MPSCNNBatchNormalizationFlags": NewType("MPSCNNBatchNormalizationFlags", int),
|
|
276
276
|
"MPSAccelerationStructureUsage": NewType("MPSAccelerationStructureUsage", int),
|
|
277
|
+
"MPSNDArrayQuantizationScheme": NewType("MPSNDArrayQuantizationScheme", int),
|
|
277
278
|
"MPSBoundingBoxIntersectionTestType": NewType(
|
|
278
279
|
"MPSBoundingBoxIntersectionTestType", int
|
|
279
280
|
),
|
|
@@ -357,15 +358,11 @@ functions = {
|
|
|
357
358
|
"callable": {
|
|
358
359
|
"retval": {"type": b"q"},
|
|
359
360
|
"arguments": {
|
|
360
|
-
0: {"type": "^v"},
|
|
361
|
-
1: {"type": "@"},
|
|
362
|
-
2: {"type": "Q"},
|
|
361
|
+
0: {"type": b"^v"},
|
|
362
|
+
1: {"type": b"@"},
|
|
363
|
+
2: {"type": b"Q"},
|
|
363
364
|
},
|
|
364
|
-
}
|
|
365
|
-
"block": {
|
|
366
|
-
"retval": {"type": b"q"},
|
|
367
|
-
"arguments": {0: {"type": b"@"}, 1: {"type": b"Q"}},
|
|
368
|
-
},
|
|
365
|
+
}
|
|
369
366
|
}
|
|
370
367
|
}
|
|
371
368
|
},
|
|
@@ -1419,6 +1416,16 @@ try:
|
|
|
1419
1416
|
b"initWithDevice:transpose:rows:columns:alpha:beta:",
|
|
1420
1417
|
{"arguments": {3: {"type": b"Z"}}},
|
|
1421
1418
|
)
|
|
1419
|
+
r(
|
|
1420
|
+
b"MPSNDArray",
|
|
1421
|
+
b"arrayViewWithDimensionCount:dimensionSizes:strides:",
|
|
1422
|
+
{
|
|
1423
|
+
"arguments": {
|
|
1424
|
+
3: {"type_modifier": b"n", "c_array_length_in_arg": 2},
|
|
1425
|
+
4: {"type_modifier": b"n", "c_array_length_in_arg": 2},
|
|
1426
|
+
}
|
|
1427
|
+
},
|
|
1428
|
+
)
|
|
1422
1429
|
r(
|
|
1423
1430
|
b"MPSNDArray",
|
|
1424
1431
|
b"exportDataWithCommandBuffer:toBuffer:destinationDataType:offset:rowStrides:",
|
|
@@ -1449,6 +1456,31 @@ try:
|
|
|
1449
1456
|
}
|
|
1450
1457
|
},
|
|
1451
1458
|
)
|
|
1459
|
+
r(
|
|
1460
|
+
b"MPSNDArrayAffineQuantizationDescriptor",
|
|
1461
|
+
b"hasMinValue",
|
|
1462
|
+
{"retval": {"type": b"Z"}},
|
|
1463
|
+
)
|
|
1464
|
+
r(
|
|
1465
|
+
b"MPSNDArrayAffineQuantizationDescriptor",
|
|
1466
|
+
b"hasZeroPoint",
|
|
1467
|
+
{"retval": {"type": b"Z"}},
|
|
1468
|
+
)
|
|
1469
|
+
r(
|
|
1470
|
+
b"MPSNDArrayAffineQuantizationDescriptor",
|
|
1471
|
+
b"initWithDataType:hasZeroPoint:hasMinValue:",
|
|
1472
|
+
{"arguments": {3: {"type": b"Z"}, 4: {"type": b"Z"}}},
|
|
1473
|
+
)
|
|
1474
|
+
r(
|
|
1475
|
+
b"MPSNDArrayAffineQuantizationDescriptor",
|
|
1476
|
+
b"setHasMinValue:",
|
|
1477
|
+
{"arguments": {2: {"type": b"Z"}}},
|
|
1478
|
+
)
|
|
1479
|
+
r(
|
|
1480
|
+
b"MPSNDArrayAffineQuantizationDescriptor",
|
|
1481
|
+
b"setHasZeroPoint:",
|
|
1482
|
+
{"arguments": {2: {"type": b"Z"}}},
|
|
1483
|
+
)
|
|
1452
1484
|
r(
|
|
1453
1485
|
b"MPSNDArrayBinaryKernel",
|
|
1454
1486
|
b"encodeToCommandBuffer:primarySourceArray:secondarySourceArray:resultState:outputStateIsTemporary:",
|
|
@@ -1494,6 +1526,11 @@ try:
|
|
|
1494
1526
|
b"secondaryStrides",
|
|
1495
1527
|
{"retval": {"type": b"{MPSNDArrayOffsets=[16q]}"}},
|
|
1496
1528
|
)
|
|
1529
|
+
r(
|
|
1530
|
+
b"MPSNDArrayDescriptor",
|
|
1531
|
+
b"descriptorWithDataType:dimensionCount:dimensionSizes:",
|
|
1532
|
+
{"arguments": {4: {"type_modifier": b"n", "c_array_length_in_arg": 3}}},
|
|
1533
|
+
)
|
|
1497
1534
|
r(
|
|
1498
1535
|
b"MPSNDArrayDescriptor",
|
|
1499
1536
|
b"descriptorWithDataType:dimensionSizes:",
|
|
@@ -1504,11 +1541,32 @@ try:
|
|
|
1504
1541
|
b"dimensionOrder",
|
|
1505
1542
|
{"full_signature": b"<16C>@:", "retval": {"type": b"<16C>"}},
|
|
1506
1543
|
)
|
|
1544
|
+
r(
|
|
1545
|
+
b"MPSNDArrayDescriptor",
|
|
1546
|
+
b"permuteWithDimensionOrder:",
|
|
1547
|
+
{"arguments": {2: {"type_modifier": b"n", "c_array_of_variable_length": True}}},
|
|
1548
|
+
)
|
|
1549
|
+
r(b"MPSNDArrayDescriptor", b"preferPackedRows", {"retval": {"type": b"Z"}})
|
|
1507
1550
|
r(
|
|
1508
1551
|
b"MPSNDArrayDescriptor",
|
|
1509
1552
|
b"reshapeWithDimensionCount:dimensionSizes:",
|
|
1510
1553
|
{"arguments": {3: {"type_modifier": b"n", "c_array_length_in_arg": 2}}},
|
|
1511
1554
|
)
|
|
1555
|
+
r(
|
|
1556
|
+
b"MPSNDArrayDescriptor",
|
|
1557
|
+
b"setPreferPackedRows:",
|
|
1558
|
+
{"arguments": {2: {"type": b"Z"}}},
|
|
1559
|
+
)
|
|
1560
|
+
r(
|
|
1561
|
+
b"MPSNDArrayIdentity",
|
|
1562
|
+
b"reshapeWithCommandBuffer:sourceArray:dimensionCount:dimensionSizes:destinationArray:",
|
|
1563
|
+
{"arguments": {5: {"type_modifier": b"n", "c_array_length_in_arg": 4}}},
|
|
1564
|
+
)
|
|
1565
|
+
r(
|
|
1566
|
+
b"MPSNDArrayIdentity",
|
|
1567
|
+
b"reshapeWithCommandEncoder:commandBuffer:sourceArray:dimensionCount:dimensionSizes:destinationArray:",
|
|
1568
|
+
{"arguments": {6: {"type_modifier": b"n", "c_array_length_in_arg": 5}}},
|
|
1569
|
+
)
|
|
1512
1570
|
r(
|
|
1513
1571
|
b"MPSNDArrayMultiaryBase",
|
|
1514
1572
|
b"dilationRatesForSourceIndex:",
|
|
@@ -3220,8 +3278,22 @@ objc.registerNewKeywordsFromSelector(
|
|
|
3220
3278
|
"MPSMatrixVectorMultiplication",
|
|
3221
3279
|
b"initWithDevice:transpose:rows:columns:alpha:beta:",
|
|
3222
3280
|
)
|
|
3281
|
+
objc.registerNewKeywordsFromSelector("MPSNDArray", b"initWithBuffer:offset:descriptor:")
|
|
3223
3282
|
objc.registerNewKeywordsFromSelector("MPSNDArray", b"initWithDevice:descriptor:")
|
|
3224
3283
|
objc.registerNewKeywordsFromSelector("MPSNDArray", b"initWithDevice:scalar:")
|
|
3284
|
+
objc.registerNewKeywordsFromSelector(
|
|
3285
|
+
"MPSNDArrayAffineInt4Dequantize", b"initWithDevice:"
|
|
3286
|
+
)
|
|
3287
|
+
objc.registerNewKeywordsFromSelector(
|
|
3288
|
+
"MPSNDArrayAffineInt4Dequantize", b"initWithDevice:quantizationDescriptor:"
|
|
3289
|
+
)
|
|
3290
|
+
objc.registerNewKeywordsFromSelector(
|
|
3291
|
+
"MPSNDArrayAffineInt4Dequantize", b"initWithDevice:sourceCount:"
|
|
3292
|
+
)
|
|
3293
|
+
objc.registerNewKeywordsFromSelector(
|
|
3294
|
+
"MPSNDArrayAffineQuantizationDescriptor",
|
|
3295
|
+
b"initWithDataType:hasZeroPoint:hasMinValue:",
|
|
3296
|
+
)
|
|
3225
3297
|
objc.registerNewKeywordsFromSelector("MPSNDArrayBinaryKernel", b"initWithCoder:device:")
|
|
3226
3298
|
objc.registerNewKeywordsFromSelector("MPSNDArrayBinaryKernel", b"initWithDevice:")
|
|
3227
3299
|
objc.registerNewKeywordsFromSelector(
|
|
@@ -3247,6 +3319,17 @@ objc.registerNewKeywordsFromSelector(
|
|
|
3247
3319
|
"MPSNDArrayBinarySecondaryGradientKernel",
|
|
3248
3320
|
b"initWithDevice:sourceCount:sourceGradientIndex:",
|
|
3249
3321
|
)
|
|
3322
|
+
objc.registerNewKeywordsFromSelector("MPSNDArrayIdentity", b"initWithDevice:")
|
|
3323
|
+
objc.registerNewKeywordsFromSelector("MPSNDArrayLUTDequantize", b"initWithDevice:")
|
|
3324
|
+
objc.registerNewKeywordsFromSelector(
|
|
3325
|
+
"MPSNDArrayLUTDequantize", b"initWithDevice:sourceCount:"
|
|
3326
|
+
)
|
|
3327
|
+
objc.registerNewKeywordsFromSelector(
|
|
3328
|
+
"MPSNDArrayLUTQuantizationDescriptor", b"initWithDataType:"
|
|
3329
|
+
)
|
|
3330
|
+
objc.registerNewKeywordsFromSelector(
|
|
3331
|
+
"MPSNDArrayLUTQuantizationDescriptor", b"initWithDataType:vectorAxis:"
|
|
3332
|
+
)
|
|
3250
3333
|
objc.registerNewKeywordsFromSelector("MPSNDArrayMultiaryBase", b"initWithCoder:device:")
|
|
3251
3334
|
objc.registerNewKeywordsFromSelector("MPSNDArrayMultiaryBase", b"initWithDevice:")
|
|
3252
3335
|
objc.registerNewKeywordsFromSelector(
|
|
@@ -3268,6 +3351,13 @@ objc.registerNewKeywordsFromSelector(
|
|
|
3268
3351
|
objc.registerNewKeywordsFromSelector(
|
|
3269
3352
|
"MPSNDArrayMultiaryKernel", b"initWithDevice:sourceCount:"
|
|
3270
3353
|
)
|
|
3354
|
+
objc.registerNewKeywordsFromSelector(
|
|
3355
|
+
"MPSNDArrayQuantizedMatrixMultiplication",
|
|
3356
|
+
b"initWithDevice:leftQuantizationDescriptor:rightQuantizationDescriptor:",
|
|
3357
|
+
)
|
|
3358
|
+
objc.registerNewKeywordsFromSelector(
|
|
3359
|
+
"MPSNDArrayQuantizedMatrixMultiplication", b"initWithDevice:sourceCount:"
|
|
3360
|
+
)
|
|
3271
3361
|
objc.registerNewKeywordsFromSelector(
|
|
3272
3362
|
"MPSNDArrayUnaryGradientKernel", b"initWithCoder:device:"
|
|
3273
3363
|
)
|
|
@@ -3282,6 +3372,12 @@ objc.registerNewKeywordsFromSelector("MPSNDArrayUnaryKernel", b"initWithDevice:"
|
|
|
3282
3372
|
objc.registerNewKeywordsFromSelector(
|
|
3283
3373
|
"MPSNDArrayUnaryKernel", b"initWithDevice:sourceCount:"
|
|
3284
3374
|
)
|
|
3375
|
+
objc.registerNewKeywordsFromSelector(
|
|
3376
|
+
"MPSNDArrayVectorLUTDequantize", b"initWithDevice:axis:"
|
|
3377
|
+
)
|
|
3378
|
+
objc.registerNewKeywordsFromSelector(
|
|
3379
|
+
"MPSNDArrayVectorLUTDequantize", b"initWithDevice:sourceCount:"
|
|
3380
|
+
)
|
|
3285
3381
|
objc.registerNewKeywordsFromSelector(
|
|
3286
3382
|
"MPSNNArithmeticGradientNode",
|
|
3287
3383
|
b"initWithGradientImages:forwardFilter:isSecondarySourceFilter:",
|
|
@@ -1,37 +1,48 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: pyobjc-framework-MetalPerformanceShaders
|
|
3
|
-
Version:
|
|
3
|
+
Version: 11.1
|
|
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
|
|
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
|
|
19
18
|
Classifier: Programming Language :: Python :: 3
|
|
20
19
|
Classifier: Programming Language :: Python :: 3 :: Only
|
|
21
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
22
20
|
Classifier: Programming Language :: Python :: 3.9
|
|
23
21
|
Classifier: Programming Language :: Python :: 3.10
|
|
24
22
|
Classifier: Programming Language :: Python :: 3.11
|
|
25
23
|
Classifier: Programming Language :: Python :: 3.12
|
|
26
24
|
Classifier: Programming Language :: Python :: 3.13
|
|
25
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
27
26
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
28
27
|
Classifier: Programming Language :: Objective C
|
|
29
28
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
30
29
|
Classifier: Topic :: Software Development :: User Interfaces
|
|
31
|
-
Requires-Python: >=3.
|
|
30
|
+
Requires-Python: >=3.9
|
|
32
31
|
Description-Content-Type: text/x-rst; charset=UTF-8
|
|
33
|
-
Requires-Dist: pyobjc-core>=
|
|
34
|
-
Requires-Dist: pyobjc-framework-Metal>=
|
|
32
|
+
Requires-Dist: pyobjc-core>=11.1
|
|
33
|
+
Requires-Dist: pyobjc-framework-Metal>=11.1
|
|
34
|
+
Dynamic: author
|
|
35
|
+
Dynamic: author-email
|
|
36
|
+
Dynamic: classifier
|
|
37
|
+
Dynamic: description
|
|
38
|
+
Dynamic: description-content-type
|
|
39
|
+
Dynamic: home-page
|
|
40
|
+
Dynamic: keywords
|
|
41
|
+
Dynamic: license
|
|
42
|
+
Dynamic: platform
|
|
43
|
+
Dynamic: requires-dist
|
|
44
|
+
Dynamic: requires-python
|
|
45
|
+
Dynamic: summary
|
|
35
46
|
Project-URL: Documentation, https://pyobjc.readthedocs.io/en/latest/
|
|
36
47
|
Project-URL: Issue tracker, https://github.com/ronaldoussoren/pyobjc/issues
|
|
37
48
|
Project-URL: Repository, https://github.com/ronaldoussoren/pyobjc
|
|
@@ -9,6 +9,7 @@ Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/PKG-INFO
|
|
|
9
9
|
Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/SOURCES.txt
|
|
10
10
|
Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/dependency_links.txt
|
|
11
11
|
Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/not-zip-safe
|
|
12
|
+
Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/pyobjc-build-info.txt
|
|
12
13
|
Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/requires.txt
|
|
13
14
|
Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/top_level.txt
|
|
14
15
|
Modules/_MetalPerformanceShaders.m
|
|
@@ -25,6 +26,8 @@ PyObjCTest/test_mpscore_mpsimage.py
|
|
|
25
26
|
PyObjCTest/test_mpscore_mpskerneltypes.py
|
|
26
27
|
PyObjCTest/test_mpscore_mpskeyedunarchiver.py
|
|
27
28
|
PyObjCTest/test_mpscore_mpsndarray.py
|
|
29
|
+
PyObjCTest/test_mpscore_mpsndarrayidentity.py
|
|
30
|
+
PyObjCTest/test_mpscore_mpsndarrayquantization.py
|
|
28
31
|
PyObjCTest/test_mpscore_mpsstate.py
|
|
29
32
|
PyObjCTest/test_mpsimage_mpsimageconvolution.py
|
|
30
33
|
PyObjCTest/test_mpsimage_mpsimagehistogram.py
|
|
@@ -70,5 +73,7 @@ metadata/MetalPerformanceShaders.fwinfo
|
|
|
70
73
|
metadata/metadata.ini
|
|
71
74
|
metadata/raw/arm64-13.3.fwinfo
|
|
72
75
|
metadata/raw/arm64-14.5.fwinfo
|
|
76
|
+
metadata/raw/arm64-15.4.fwinfo
|
|
73
77
|
metadata/raw/x86_64-13.3.fwinfo
|
|
74
|
-
metadata/raw/x86_64-14.5.fwinfo
|
|
78
|
+
metadata/raw/x86_64-14.5.fwinfo
|
|
79
|
+
metadata/raw/x86_64-15.4.fwinfo
|
|
@@ -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-
|
|
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
|
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
#define PY_SSIZE_T_CLEAN
|
|
2
|
+
#include "Python.h"
|
|
3
|
+
#include "pyobjc-api.h"
|
|
4
|
+
|
|
5
|
+
#import <Foundation/Foundation.h>
|
|
6
|
+
#import <MetalPerformanceShaders/MetalPerformanceShaders.h>
|
|
7
|
+
|
|
8
|
+
/* We include the source code here instead of
|
|
9
|
+
* using the linker due to limitations in pyobjc-api.h
|
|
10
|
+
*/
|
|
11
|
+
#include "_MetalPerformanceShaders_protocols.m"
|
|
12
|
+
|
|
13
|
+
static PyMethodDef mod_methods[] = {
|
|
14
|
+
{0, 0, 0, 0} /* sentinel */
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
static int mod_exec_module(PyObject* m)
|
|
18
|
+
{
|
|
19
|
+
return 0;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
static struct PyModuleDef_Slot mod_slots[] = {
|
|
23
|
+
{
|
|
24
|
+
.slot = Py_mod_exec,
|
|
25
|
+
.value = (void*)mod_exec_module
|
|
26
|
+
},
|
|
27
|
+
#if PY_VERSION_HEX >= 0x030c0000
|
|
28
|
+
{
|
|
29
|
+
/* This extension does not use the CPython API other than initializing
|
|
30
|
+
* the module, hence is safe with subinterpreters and per-interpreter
|
|
31
|
+
* GILs
|
|
32
|
+
*/
|
|
33
|
+
.slot = Py_mod_multiple_interpreters,
|
|
34
|
+
.value = Py_MOD_PER_INTERPRETER_GIL_SUPPORTED,
|
|
35
|
+
},
|
|
36
|
+
#endif
|
|
37
|
+
#if PY_VERSION_HEX >= 0x030d0000
|
|
38
|
+
{
|
|
39
|
+
/* The code in this extension should be safe to use without the GIL */
|
|
40
|
+
.slot = Py_mod_gil,
|
|
41
|
+
.value = Py_MOD_GIL_NOT_USED,
|
|
42
|
+
},
|
|
43
|
+
#endif
|
|
44
|
+
{ /* Sentinel */
|
|
45
|
+
.slot = 0,
|
|
46
|
+
.value = 0
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
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,
|
|
57
|
+
.m_traverse = NULL,
|
|
58
|
+
.m_clear = NULL,
|
|
59
|
+
.m_free = NULL,
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
PyObject* PyInit__MetalPerformanceShaders(void);
|
|
63
|
+
|
|
64
|
+
PyObject* __attribute__((__visibility__("default"))) PyInit__MetalPerformanceShaders(void)
|
|
65
|
+
{
|
|
66
|
+
return PyModuleDef_Init(&mod_module);
|
|
67
|
+
}
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
#ifndef PyObjC_GIL_DISABLED
|
|
2
|
-
#define Py_LIMITED_API 0x03060000
|
|
3
|
-
#endif
|
|
4
1
|
#define PY_SSIZE_T_CLEAN
|
|
5
2
|
#include "Python.h"
|
|
6
3
|
#include "pyobjc-api.h"
|
|
@@ -43,25 +40,57 @@ static PyMethodDef mod_methods[] = {
|
|
|
43
40
|
{0, 0, 0, 0} /* sentinel */
|
|
44
41
|
};
|
|
45
42
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
43
|
+
static int mod_exec_module(PyObject* m)
|
|
44
|
+
{
|
|
45
|
+
if (PyModule_AddObject(m, "_inline_list_", PyObjC_CreateInlineTab(function_map)) < 0)
|
|
46
|
+
return -1;
|
|
49
47
|
|
|
50
|
-
|
|
48
|
+
return 0;
|
|
49
|
+
}
|
|
51
50
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
51
|
+
static struct PyModuleDef_Slot mod_slots[] = {
|
|
52
|
+
{
|
|
53
|
+
.slot = Py_mod_exec,
|
|
54
|
+
.value = (void*)mod_exec_module
|
|
55
|
+
},
|
|
56
|
+
#if PY_VERSION_HEX >= 0x030c0000
|
|
57
|
+
{
|
|
58
|
+
/* This extension does not use the CPython API other than initializing
|
|
59
|
+
* the module, hence is safe with subinterpreters and per-interpreter
|
|
60
|
+
* GILs
|
|
61
|
+
*/
|
|
62
|
+
.slot = Py_mod_multiple_interpreters,
|
|
63
|
+
.value = Py_MOD_PER_INTERPRETER_GIL_SUPPORTED,
|
|
64
|
+
},
|
|
65
|
+
#endif
|
|
66
|
+
#if PY_VERSION_HEX >= 0x030d0000
|
|
67
|
+
{
|
|
68
|
+
/* The code in this extension should be safe to use without the GIL */
|
|
69
|
+
.slot = Py_mod_gil,
|
|
70
|
+
.value = Py_MOD_GIL_NOT_USED,
|
|
71
|
+
},
|
|
72
|
+
#endif
|
|
73
|
+
{ /* Sentinel */
|
|
74
|
+
.slot = 0,
|
|
75
|
+
.value = 0
|
|
59
76
|
}
|
|
77
|
+
};
|
|
60
78
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
79
|
+
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,
|
|
86
|
+
.m_traverse = NULL,
|
|
87
|
+
.m_clear = NULL,
|
|
88
|
+
.m_free = NULL,
|
|
89
|
+
};
|
|
65
90
|
|
|
66
|
-
|
|
91
|
+
PyObject* PyInit__inlines(void);
|
|
92
|
+
|
|
93
|
+
PyObject* __attribute__((__visibility__("default"))) PyInit__inlines(void)
|
|
94
|
+
{
|
|
95
|
+
return PyModuleDef_Init(&mod_module);
|
|
67
96
|
}
|
|
@@ -83,7 +83,7 @@ struct pyobjc_api {
|
|
|
83
83
|
PyObject* _Nullable (*_Nonnull unsupported_method_caller)(
|
|
84
84
|
PyObject* _Nonnull, PyObject* _Nonnull, PyObject* _Nonnull const* _Nonnull,
|
|
85
85
|
size_t);
|
|
86
|
-
void (*_Nonnull err_python_to_objc_gil)(PyGILState_STATE* _Nonnull state);
|
|
86
|
+
void (*_Nonnull err_python_to_objc_gil)(PyGILState_STATE* _Nonnull state) __attribute__((__noreturn__));
|
|
87
87
|
int (*_Nonnull simplify_sig)(const char* signature, char* buf, size_t buflen);
|
|
88
88
|
void (*_Nonnull free_c_array)(int, Py_buffer*);
|
|
89
89
|
int (*_Nonnull py_to_c_array)(BOOL, BOOL, const char* _Nonnull, PyObject* _Nonnull,
|