Browse Source

remove_reg-3

pull/15384/head
yefeng 4 years ago
parent
commit
bdbb32cb99
9 changed files with 9 additions and 1457 deletions
  1. +9
    -364
      mindspore/ccsrc/backend/kernel_compiler/cpu/nnacl/infer/infer_register.c
  2. +0
    -5
      mindspore/ccsrc/backend/kernel_compiler/cpu/nnacl/infer/infer_register.h
  3. +0
    -3
      mindspore/lite/src/CMakeLists.txt
  4. +0
    -712
      mindspore/lite/src/ios_reg_kernels.h
  5. +0
    -335
      mindspore/lite/src/ios_reg_ops.cc
  6. +0
    -8
      mindspore/lite/src/kernel_registry.cc
  7. +0
    -10
      mindspore/lite/src/kernel_registry.h
  8. +0
    -16
      mindspore/lite/src/ops/populate/populate_register.h
  9. +0
    -4
      mindspore/lite/src/scheduler.cc

+ 9
- 364
mindspore/ccsrc/backend/kernel_compiler/cpu/nnacl/infer/infer_register.c View File

@@ -14,370 +14,13 @@
* limitations under the License.
*/
#include "nnacl/infer/infer_register.h"
#ifdef MS_COMPILE_IOS
extern void _AudioSpectrogramPrimType_AudioSpectrogram();
extern void _EqualPrimType_Equal();
extern void _GreaterPrimType_Greater();
extern void _GreaterEqualPrimType_GreaterEqual();
extern void _LessPrimType_Less();
extern void _LessEqualPrimType_LessEqual();
extern void _NotEqualPrimType_NotEqual();
extern void _DivGradPrimType_DivGrad();
extern void _MulGradPrimType_MulGrad();
extern void _MinimumGradPrimType_MinimumGrad();
extern void _FullConnectionPrimType_FullConnection();
extern void _AdamPrimType_Adam();
extern void _SlicePrimType_SliceFusion();
extern void _LSTMPrimType_LSTM();
extern void _TilePrimType_TileFusion();
extern void _EmbeddingLookupPrimType_EmbeddingLookupFusion();
extern void _AssignAddPrimType_AssignAdd();
extern void _LinSpacePrimType_LinSpace();
extern void _AddGradPrimType_AddGrad();
extern void _SubGradPrimType_SubGrad();
extern void _OneHotPrimType_OneHot();
extern void _RandomStandardNormalPrimType_RandomStandardNormal();
extern void _StridedSlicePrimType_StridedSlice();
extern void _FillPrimType_Fill();
extern void _CastPrimType_Cast();
extern void _SGDPrimType_SGD();
extern void _UniquePrimType_Unique();
extern void _BatchToSpacePrimType_BatchToSpace();
extern void _TensorListFromTensorPrimType_TensorListFromTensor();
extern void _TensorListGetItemPrimType_TensorListGetItem();
extern void _SoftmaxCrossEntropyWithLogitsPrimType_SoftmaxCrossEntropyWithLogits();
extern void _ExpandDimsPrimType_ExpandDims();
extern void _InvertPermutationPrimType_InvertPermutation();
extern void _MergePrimType_Merge();
extern void _RfftPrimType_Rfft();
extern void _Conv2DBackpropInputFusionPrimType_Conv2DBackpropInputFusion();
extern void _ScatterNdPrimType_ScatterNd();
extern void _FusedBatchNormPrimType_FusedBatchNorm();
extern void _PartialPrimType_PartialFusion();
extern void _HashtableLookupPrimType_HashtableLookup();
extern void _ReducePrimType_ReduceFusion();
extern void _GatherPrimType_Gather();
extern void _SplitPrimType_Split();
extern void _RangePrimType_Range();
extern void _BroadcastToPrimType_BroadcastTo();
extern void _UnsortedSegmentSumPrimType_UnsortedSegmentSum();
extern void _SqueezePrimType_Squeeze();
extern void _MaximumGradPrimType_MaximumGrad();
extern void _PowPrimType_PowFusion();
extern void _PriorBoxPrimType_PriorBox();
extern void _SpaceToDepthPrimType_SpaceToDepth();
extern void _RankPrimType_Rank();
extern void _MfccPrimType_Mfcc();
extern void _BinaryCrossEntropyPrimType_BinaryCrossEntropy();
extern void _Conv2DBackpropFilterFusionPrimType_Conv2DBackpropFilterFusion();
extern void _WherePrimType_Where();
extern void _DetectionPostProcessPrimType_DetectionPostProcess();
extern void _FlattenGradPrimType_FlattenGrad();
extern void _ConstantOfShapePrimType_ConstantOfShape();
extern void _SelectPrimType_Select();
extern void _ConcatPrimType_Concat();
extern void _StackPrimType_Stack();
extern void _SwitchPrimType_Switch();
extern void _NonMaxSuppressionPrimType_NonMaxSuppression();
extern void _SkipGramPrimType_SkipGram();
extern void _AddNPrimType_AddN();
extern void _ArgMinPrimType_ArgMinFusion();
extern void _ArgMaxPrimType_ArgMaxFusion();
extern void _LayerNormFusionPrimType_LayerNormFusion();
extern void _MaxPoolPrimType_MaxPoolFusion();
extern void _AvgPoolPrimType_AvgPoolFusion();
extern void _AssignPrimType_Assign();
extern void _CropPrimType_Crop();
extern void _UnsqueezePrimType_Unsqueeze();
extern void _AbsPrimType_Abs();
extern void _AbsGradPrimType_AbsGrad();
extern void _ActivationPrimType_Activation();
extern void _ActivationGradPrimType_ActivationGrad();
extern void _BatchNormPrimType_BatchNorm();
extern void _BinaryCrossEntropyGradPrimType_BinaryCrossEntropyGrad();
extern void _BiasAddPrimType_BiasAdd();
extern void _CeilPrimType_Ceil();
extern void _ClipPrimType_Clip();
extern void _ControlDependPrimType_ControlDepend();
extern void _CosPrimType_Cos();
extern void _DependPrimType_Depend();
extern void _EluPrimType_Elu();
extern void _ErfPrimType_Erf();
extern void _ExpPrimType_ExpFusion();
extern void _FakeQuantWithMinMaxVarsPrimType_FakeQuantWithMinMaxVars();
extern void _FloorPrimType_Floor();
extern void _IfPrimType_If();
extern void _InstanceNormPrimType_InstanceNorm();
extern void _IsFinitePrimType_IsFinite();
extern void _LeakyReluPrimType_LeakyRelu();
extern void _LogPrimType_Log();
extern void _LogGradPrimType_LogGrad();
extern void _LogicalNotPrimType_LogicalNot();
extern void _LRNPrimType_LRN();
extern void _L2NormalizePrimType_L2NormalizeFusion();
extern void _NegPrimType_Neg();
extern void _NegGradPrimType_NegGrad();
extern void _PowerGradPrimType_PowerGrad();
extern void _PReLUPrimType_PReLUFusion();
extern void _ReciprocalPrimType_Reciprocal();
extern void _ReverseSequencePrimType_ReverseSequence();
extern void _ReversePrimType_ReverseV2();
extern void _RoundPrimType_Round();
extern void _RsqrtPrimType_Rsqrt();
extern void _ScalePrimType_ScaleFusion();
extern void _SigmoidCrossEntropyWithLogitsPrimType_SigmoidCrossEntropyWithLogits();
extern void _SigmoidCrossEntropyWithLogitsGradPrimType_SigmoidCrossEntropyWithLogitsGrad();
extern void _SinPrimType_Sin();
extern void _SmoothL1LossPrimType_SmoothL1Loss();
extern void _SmoothL1LossGradPrimType_SmoothL1LossGrad();
extern void _SqrtPrimType_Sqrt();
extern void _SquarePrimType_Square();
extern void _ZerosLikePrimType_ZerosLike();
extern void _AssertPrimType_Assert();
extern void _TensorListSetItemPrimType_TensorListSetItem();
extern void _SplicePrimType_Splice();
extern void _SparseSoftmaxCrossEntropyWithLogitsPrimType_SparseSoftmaxCrossEntropyWithLogits();
extern void _GRUPrimType_GRU();
extern void _SizeOpPrimType_Size();
extern void _CustomExtractFeaturesPrimType_CustomExtractFeatures();
extern void _CustomPredictPrimType_CustomPredict();
extern void _WhilePrimType_While();
extern void _StridedSliceGradPrimType_StridedSliceGrad();
extern void _LshProjectionPrimType_LshProjection();
extern void _SoftmaxPrimType_Softmax();
extern void _CustomNormalizePrimType_CustomNormalize();
extern void _UnstackPrimType_Unstack();
extern void _ROIPoolingPrimType_ROIPooling();
extern void _LayerNormGradPrimType_LayerNormGrad();
extern void _DropoutGradPrimType_DropoutGrad();
extern void _TopKPrimType_TopKFusion();
extern void _ApplyMomentumPrimType_ApplyMomentum();
extern void _AdderPrimType_AdderFusion();
extern void _Conv2DPrimType_Conv2DFusion();
extern void _UniformRealPrimType_UniformReal();
extern void _AvgPoolGradPrimType_AvgPoolGrad();
extern void _MaxPoolGradPrimType_MaxPoolGrad();
extern void _DepthToSpacePrimType_DepthToSpace();
extern void _Conv2dTransposePrimType_Conv2dTransposeFusion();
extern void _QuantDTypeCastPrimType_QuantDTypeCast();
extern void _FftImagPrimType_FftImag();
extern void _FftRealPrimType_FftReal();
extern void _ResizePrimType_Resize();
extern void _SpaceToBatchNDPrimType_SpaceToBatchND();
extern void _TransposePrimType_Transpose();
extern void _TensorListReservePrimType_TensorListReserve();
extern void _ShapePrimType_Shape();
extern void _BiasAddGradPrimType_BiasAddGrad();
extern void _MatMulPrimType_MatMul();
extern void _DropoutPrimType_Dropout();
extern void _ReshapePrimType_Reshape();
extern void _PadPrimType_PadFusion();
extern void _TensorListStackPrimType_TensorListStack();
extern void _FlattenPrimType_Flatten();
extern void _BatchNormGradPrimType_BatchNormGrad();
extern void _SpaceToBatchPrimType_SpaceToBatch();
extern void _GatherNdPrimType_GatherNd();
extern void _CropAndResizePrimType_CropAndResize();
extern void _SparseToDensePrimType_SparseToDense();
extern void _AddPrimType_AddFusion();
extern void _DivPrimType_DivFusion();
extern void _EltwisePrimType_Eltwise();
extern void _FloorDivPrimType_FloorDiv();
extern void _FloorModPrimType_FloorMod();
extern void _LogicalAndPrimType_LogicalAnd();
extern void _LogicalOrPrimType_LogicalOr();
extern void _MaximumPrimType_Maximum();
extern void _MinimumPrimType_Minimum();
extern void _ModPrimType_Mod();
extern void _MulPrimType_MulFusion();
extern void _RealDivPrimType_RealDiv();
extern void _SubPrimType_SubFusion();
extern void _SquaredDifferencePrimType_SquaredDifference();

void RegisterInfer() {
_AudioSpectrogramPrimType_AudioSpectrogram();
_EqualPrimType_Equal();
_GreaterPrimType_Greater();
_GreaterEqualPrimType_GreaterEqual();
_LessPrimType_Less();
_LessEqualPrimType_LessEqual();
_NotEqualPrimType_NotEqual();
_DivGradPrimType_DivGrad();
_MulGradPrimType_MulGrad();
_MinimumGradPrimType_MinimumGrad();
_FullConnectionPrimType_FullConnection();
_AdamPrimType_Adam();
_SlicePrimType_SliceFusion();
_LSTMPrimType_LSTM();
_TilePrimType_TileFusion();
_EmbeddingLookupPrimType_EmbeddingLookupFusion();
_AssignAddPrimType_AssignAdd();
_LinSpacePrimType_LinSpace();
_AddGradPrimType_AddGrad();
_SubGradPrimType_SubGrad();
_OneHotPrimType_OneHot();
_RandomStandardNormalPrimType_RandomStandardNormal();
_StridedSlicePrimType_StridedSlice();
_FillPrimType_Fill();
_CastPrimType_Cast();
_SGDPrimType_SGD();
_UniquePrimType_Unique();
_BatchToSpacePrimType_BatchToSpace();
_TensorListFromTensorPrimType_TensorListFromTensor();
_TensorListGetItemPrimType_TensorListGetItem();
_SoftmaxCrossEntropyWithLogitsPrimType_SoftmaxCrossEntropyWithLogits();
_ExpandDimsPrimType_ExpandDims();
_InvertPermutationPrimType_InvertPermutation();
_MergePrimType_Merge();
_RfftPrimType_Rfft();
_Conv2DBackpropInputFusionPrimType_Conv2DBackpropInputFusion();
_ScatterNdPrimType_ScatterNd();
_FusedBatchNormPrimType_FusedBatchNorm();
_PartialPrimType_PartialFusion();
_HashtableLookupPrimType_HashtableLookup();
_ReducePrimType_ReduceFusion();
_GatherPrimType_Gather();
_SplitPrimType_Split();
_RangePrimType_Range();
_BroadcastToPrimType_BroadcastTo();
_UnsortedSegmentSumPrimType_UnsortedSegmentSum();
_SqueezePrimType_Squeeze();
_MaximumGradPrimType_MaximumGrad();
_PowPrimType_PowFusion();
_PriorBoxPrimType_PriorBox();
_SpaceToDepthPrimType_SpaceToDepth();
_RankPrimType_Rank();
_MfccPrimType_Mfcc();
_BinaryCrossEntropyPrimType_BinaryCrossEntropy();
_Conv2DBackpropFilterFusionPrimType_Conv2DBackpropFilterFusion();
_WherePrimType_Where();
_DetectionPostProcessPrimType_DetectionPostProcess();
_FlattenGradPrimType_FlattenGrad();
_ConstantOfShapePrimType_ConstantOfShape();
_SelectPrimType_Select();
_ConcatPrimType_Concat();
_StackPrimType_Stack();
_SwitchPrimType_Switch();
_NonMaxSuppressionPrimType_NonMaxSuppression();
_SkipGramPrimType_SkipGram();
_AddNPrimType_AddN();
_ArgMinPrimType_ArgMinFusion();
_ArgMaxPrimType_ArgMaxFusion();
_LayerNormFusionPrimType_LayerNormFusion();
_MaxPoolPrimType_MaxPoolFusion();
_AvgPoolPrimType_AvgPoolFusion();
_AssignPrimType_Assign();
_CropPrimType_Crop();
_UnsqueezePrimType_Unsqueeze();
_AbsPrimType_Abs();
_AbsGradPrimType_AbsGrad();
_ActivationPrimType_Activation();
_ActivationGradPrimType_ActivationGrad();
_BatchNormPrimType_BatchNorm();
_BinaryCrossEntropyGradPrimType_BinaryCrossEntropyGrad();
_BiasAddPrimType_BiasAdd();
_CeilPrimType_Ceil();
_ClipPrimType_Clip();
_ControlDependPrimType_ControlDepend();
_CosPrimType_Cos();
_DependPrimType_Depend();
_EluPrimType_Elu();
_ErfPrimType_Erf();
_ExpPrimType_ExpFusion();
_FakeQuantWithMinMaxVarsPrimType_FakeQuantWithMinMaxVars();
_FloorPrimType_Floor();
_IfPrimType_If();
_InstanceNormPrimType_InstanceNorm();
_IsFinitePrimType_IsFinite();
_LeakyReluPrimType_LeakyRelu();
_LogPrimType_Log();
_LogGradPrimType_LogGrad();
_LogicalNotPrimType_LogicalNot();
_LRNPrimType_LRN();
_L2NormalizePrimType_L2NormalizeFusion();
_NegPrimType_Neg();
_NegGradPrimType_NegGrad();
_PowerGradPrimType_PowerGrad();
_PReLUPrimType_PReLUFusion();
_ReciprocalPrimType_Reciprocal();
_ReverseSequencePrimType_ReverseSequence();
_ReversePrimType_ReverseV2();
_RoundPrimType_Round();
_RsqrtPrimType_Rsqrt();
_ScalePrimType_ScaleFusion();
_SigmoidCrossEntropyWithLogitsPrimType_SigmoidCrossEntropyWithLogits();
_SigmoidCrossEntropyWithLogitsGradPrimType_SigmoidCrossEntropyWithLogitsGrad();
_SinPrimType_Sin();
_SmoothL1LossPrimType_SmoothL1Loss();
_SmoothL1LossGradPrimType_SmoothL1LossGrad();
_SqrtPrimType_Sqrt();
_SquarePrimType_Square();
_ZerosLikePrimType_ZerosLike();
_AssertPrimType_Assert();
_TensorListSetItemPrimType_TensorListSetItem();
_SplicePrimType_Splice();
_SparseSoftmaxCrossEntropyWithLogitsPrimType_SparseSoftmaxCrossEntropyWithLogits();
_GRUPrimType_GRU();
_SizeOpPrimType_Size();
_CustomExtractFeaturesPrimType_CustomExtractFeatures();
_CustomPredictPrimType_CustomPredict();
_WhilePrimType_While();
_StridedSliceGradPrimType_StridedSliceGrad();
_LshProjectionPrimType_LshProjection();
_SoftmaxPrimType_Softmax();
_CustomNormalizePrimType_CustomNormalize();
_UnstackPrimType_Unstack();
_ROIPoolingPrimType_ROIPooling();
_LayerNormGradPrimType_LayerNormGrad();
_DropoutGradPrimType_DropoutGrad();
_TopKPrimType_TopKFusion();
_ApplyMomentumPrimType_ApplyMomentum();
_AdderPrimType_AdderFusion();
_Conv2DPrimType_Conv2DFusion();
_UniformRealPrimType_UniformReal();
_AvgPoolGradPrimType_AvgPoolGrad();
_MaxPoolGradPrimType_MaxPoolGrad();
_DepthToSpacePrimType_DepthToSpace();
_Conv2dTransposePrimType_Conv2dTransposeFusion();
_QuantDTypeCastPrimType_QuantDTypeCast();
_FftImagPrimType_FftImag();
_FftRealPrimType_FftReal();
_ResizePrimType_Resize();
_SpaceToBatchNDPrimType_SpaceToBatchND();
_TransposePrimType_Transpose();
_TensorListReservePrimType_TensorListReserve();
_ShapePrimType_Shape();
_BiasAddGradPrimType_BiasAddGrad();
_MatMulPrimType_MatMul();
_DropoutPrimType_Dropout();
_ReshapePrimType_Reshape();
_PadPrimType_PadFusion();
_TensorListStackPrimType_TensorListStack();
_FlattenPrimType_Flatten();
_BatchNormGradPrimType_BatchNormGrad();
_SpaceToBatchPrimType_SpaceToBatch();
_GatherNdPrimType_GatherNd();
_CropAndResizePrimType_CropAndResize();
_SparseToDensePrimType_SparseToDense();
_AddPrimType_AddFusion();
_DivPrimType_DivFusion();
_EltwisePrimType_Eltwise();
_FloorDivPrimType_FloorDiv();
_FloorModPrimType_FloorMod();
_LogicalAndPrimType_LogicalAnd();
_LogicalOrPrimType_LogicalOr();
_MaximumPrimType_Maximum();
_MinimumPrimType_Minimum();
_ModPrimType_Mod();
_MulPrimType_MulFusion();
_RealDivPrimType_RealDiv();
_SubPrimType_SubFusion();
_SquaredDifferencePrimType_SquaredDifference();
}
#endif
InferShape *g_infer_func = NULL;

#ifdef MS_COMPILE_IOS
void InitInferFuncBuf() {
#else
__attribute__((constructor(101))) void InitInferFuncBuf() {
#endif
if (g_infer_func != NULL) {
return;
}
@@ -385,9 +28,6 @@ __attribute__((constructor(101))) void InitInferFuncBuf() {
if (g_infer_func != NULL) {
memset(g_infer_func, 0, PrimType_MAX * sizeof(InferShape));
}
#ifdef MS_COMPILE_IOS
RegisterInfer();
#endif
}

__attribute__((destructor)) void DestroyInferFuncBuf() {
@@ -406,6 +46,11 @@ InferShape GetInferFunc(int prim_type) {
}

void RegInfer(int prim_type, InferShape func) {
#ifdef MS_COMPILE_IOS
if (g_infer_func == NULL) {
InitInferFuncBuf();
}
#endif
if (g_infer_func != NULL && prim_type < PrimType_MAX) {
g_infer_func[prim_type] = func;
}


+ 0
- 5
mindspore/ccsrc/backend/kernel_compiler/cpu/nnacl/infer/infer_register.h View File

@@ -220,13 +220,8 @@ enum PrimType {

void RegInfer(int prim_type, InferShape func);

#ifdef MS_COMPILE_IOS
#define REG_INFER(op, type, func) \
void _##op##type() { RegInfer(type, func); }
#else
#define REG_INFER(op, type, func) \
__attribute__((constructor(102))) void Reg##op##Infer() { RegInfer(type, func); }
#endif
#ifdef __cplusplus
}
#endif


+ 0
- 3
mindspore/lite/src/CMakeLists.txt View File

@@ -69,9 +69,6 @@ set(LITE_SRC
${CMAKE_CURRENT_SOURCE_DIR}/weight_decoder.cc
${CMAKE_CURRENT_SOURCE_DIR}/huffman_decode.cc
)
if(DEFINED ARCHS)
list(APPEND LITE_SRC ${CMAKE_CURRENT_SOURCE_DIR}/ios_reg_ops.cc)
endif()

if(SUPPORT_GPU STREQUAL opencl)
file(GLOB_RECURSE OPENCL_RUNTIME_SRC


+ 0
- 712
mindspore/lite/src/ios_reg_kernels.h View File

@@ -1,712 +0,0 @@
/**
* Copyright 2021 Huawei Technologies Co., Ltd
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef MINDSPORE_LITE_SRC_REG_KERNELS_H
#define MINDSPORE_LITE_SRC_REG_KERNELS_H

namespace mindspore {
namespace kernel {

#ifdef MS_COMPILE_IOS
// base
extern void _kCPUkNumberTypeInt32PrimitiveType_StridedSlice();
extern void _kCPUkNumberTypeFloat32PrimitiveType_StridedSlice();
extern void _kCPUkNumberTypeFloat16PrimitiveType_StridedSlice();
extern void _kCPUkNumberTypeInt8PrimitiveType_StridedSlice();
extern void _kCPUkNumberTypeUInt8PrimitiveType_QuantDTypeCast();
extern void _kCPUkNumberTypeInt8PrimitiveType_QuantDTypeCast();
extern void _kCPUkNumberTypeFloat32PrimitiveType_QuantDTypeCast();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Assert();
extern void _kCPUkNumberTypeBoolPrimitiveType_Assert();
extern void _kCPUkNumberTypeInt32PrimitiveType_TensorListReserve();
extern void _kCPUkNumberTypeFloat16PrimitiveType_TensorListReserve();
extern void _kCPUkNumberTypeFloat32PrimitiveType_TensorListReserve();
extern void _kCPUkNumberTypeFloat32PrimitiveType_TensorListStack();
extern void _kCPUkNumberTypeFloat16PrimitiveType_TensorListStack();
extern void _kCPUkNumberTypeInt32PrimitiveType_TensorListStack();
extern void _kCPUkNumberTypeFloat32PrimitiveType_ArgMaxFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_ArgMinFusion();
extern void _kCPUkNumberTypeFloat16PrimitiveType_ArgMaxFusion();
extern void _kCPUkNumberTypeFloat16PrimitiveType_ArgMinFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_TensorListGetItem();
extern void _kCPUkNumberTypeFloat16PrimitiveType_TensorListGetItem();
extern void _kCPUkNumberTypeInt32PrimitiveType_TensorListGetItem();
extern void _kCPUkNumberTypeInt32PrimitiveType_RandomStandardNormal();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Split();
extern void _kCPUkNumberTypeInt32PrimitiveType_Split();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Split();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Switch();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Switch();
extern void _kCPUkNumberTypeBoolPrimitiveType_Switch();
extern void _kCPUkNumberTypeInt32PrimitiveType_Switch();
extern void _kCPUkNumberTypeFloat32PrimitiveType_PriorBox();
extern void _kCPUkNumberTypeInt8PrimitiveType_PriorBox();
extern void _kCPUkNumberTypeFloat32PrimitiveType_ConstantOfShape();
extern void _kCPUkNumberTypeInt32PrimitiveType_ConstantOfShape();
extern void _kCPUkNumberTypeInt64PrimitiveType_ConstantOfShape();
extern void _kCPUkNumberTypeInt32PrimitiveType_SliceFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_SliceFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_TensorListSetItem();
extern void _kCPUkNumberTypeFloat16PrimitiveType_TensorListSetItem();
extern void _kCPUkNumberTypeInt32PrimitiveType_TensorListSetItem();
extern void _kCPUkNumberTypeInt32PrimitiveType_Reshape();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Reshape();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Reshape();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Flatten();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Flatten();
extern void _kCPUkNumberTypeFloat32PrimitiveType_FlattenGrad();
extern void _kCPUkNumberTypeInt32PrimitiveType_ExpandDims();
extern void _kCPUkNumberTypeFloat16PrimitiveType_ExpandDims();
extern void _kCPUkNumberTypeFloat32PrimitiveType_ExpandDims();
extern void _kCPUkNumberTypeInt8PrimitiveType_ExpandDims();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Squeeze();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Squeeze();
extern void _kCPUkNumberTypeInt32PrimitiveType_Squeeze();
extern void _kCPUkNumberTypeBoolPrimitiveType_Squeeze();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Unsqueeze();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Unsqueeze();
extern void _kCPUkNumberTypeInt32PrimitiveType_Unsqueeze();
extern void _kCPUkNumberTypeInt64PrimitiveType_Unsqueeze();
extern void _kCPUkNumberTypeFloat32PrimitiveType_TileFusion();
extern void _kCPUkNumberTypeInt32PrimitiveType_TileFusion();
extern void _kCPUkNumberTypeFloat16PrimitiveType_TileFusion();
extern void _kCPUkNumberTypeBoolPrimitiveType_Select();
extern void _kCPUkNumberTypeFloat32PrimitiveType_TensorListFromTensor();
extern void _kCPUkNumberTypeInt32PrimitiveType_TensorListFromTensor();
extern void _kCPUkNumberTypeFloat16PrimitiveType_TensorListFromTensor();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Stack();
extern void _kCPUkNumberTypeInt32PrimitiveType_Stack();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Merge();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Merge();
extern void _kCPUkNumberTypeBoolPrimitiveType_Merge();
extern void _kCPUkNumberTypeInt32PrimitiveType_Merge();

// fp16
#ifdef ENABLE_FP16
extern void _kCPUkNumberTypeFloat16PrimitiveType_SliceFusion();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Concat();
extern void _kCPUkNumberTypeFloat16PrimitiveType_BiasAdd();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Crop();
extern void _kCPUkNumberTypeFloat16PrimitiveType_ScaleFusion();
extern void _kCPUkNumberTypeFloat16PrimitiveType_PowFusion();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Stack();
extern void _kCPUkNumberTypeFloat16PrimitiveType_GRU();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Softmax();
extern void _kCPUkNumberTypeFloat16PrimitiveType_MatMul();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Transpose();
extern void _kCPUkNumberTypeFloat16PrimitiveType_NotEqual();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Equal();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Less();
extern void _kCPUkNumberTypeFloat16PrimitiveType_LessEqual();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Greater();
extern void _kCPUkNumberTypeFloat16PrimitiveType_GreaterEqual();
extern void _kCPUkNumberTypeFloat16PrimitiveType_ReduceFusion();
extern void _kCPUkNumberTypeFloat16PrimitiveType_FullConnection();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Gather();
extern void _kCPUkNumberTypeFloat16PrimitiveType_LSTM();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Activation();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Cast();
extern void _kCPUkNumberTypeInt64PrimitiveType_Cast();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Abs();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Cos();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Log();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Square();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Sqrt();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Rsqrt();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Sin();
extern void _kCPUkNumberTypeFloat16PrimitiveType_LogicalNot();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Floor();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Ceil();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Round();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Neg();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Reciprocal();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Erf();
extern void _kCPUkNumberTypeFloat16PrimitiveType_AvgPoolFusion();
extern void _kCPUkNumberTypeFloat16PrimitiveType_MaxPoolFusion();
extern void _kCPUkNumberTypeFloat16PrimitiveType_QuantDTypeCast();
extern void _kCPUkNumberTypeFloat16PrimitiveType_PadFusion();
extern void _kCPUkNumberTypeFloat16PrimitiveType_BatchNorm();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Conv2dTransposeFusion();
extern void _kCPUkNumberTypeFloat16PrimitiveType_MulFusion();
extern void _kCPUkNumberTypeFloat16PrimitiveType_AddFusion();
extern void _kCPUkNumberTypeFloat16PrimitiveType_SubFusion();
extern void _kCPUkNumberTypeFloat16PrimitiveType_DivFusion();
extern void _kCPUkNumberTypeFloat16PrimitiveType_FloorMod();
extern void _kCPUkNumberTypeFloat16PrimitiveType_FloorDiv();
extern void _kCPUkNumberTypeFloat16PrimitiveType_LogicalAnd();
extern void _kCPUkNumberTypeFloat16PrimitiveType_LogicalOr();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Maximum();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Minimum();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Eltwise();
extern void _kCPUkNumberTypeFloat16PrimitiveType_SquaredDifference();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Conv2DFusion();
extern void _kCPUkNumberTypeFloat16PrimitiveType_InstanceNorm();
#endif

// fp32
extern void _kCPUkNumberTypeFloat32PrimitiveType_ROIPooling();
extern void _kCPUkNumberTypeFloat32PrimitiveType_PadFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Activation();
extern void _kCPUkNumberTypeFloat32PrimitiveType_ReverseSequence();
extern void _kCPUkNumberTypeFloat32PrimitiveType_AdderFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_DetectionPostProcess();
extern void _kCPUkNumberTypeFloat32PrimitiveType_FullConnection();
extern void _kCPUkNumberTypeFloat32PrimitiveType_GatherNd();
extern void _kCPUkNumberTypeInt32PrimitiveType_GatherNd();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Rank();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Elu();
extern void _kCPUkNumberTypeFloat32PrimitiveType_NonMaxSuppression();
extern void _kCPUkNumberTypeFloat32PrimitiveType_BatchNorm();
extern void _kCPUkNumberTypeFloat32PrimitiveType_ReduceFusion();
extern void _kCPUkNumberTypeIntPrimitiveType_ReduceFusion();
extern void _kCPUkNumberTypeInt32PrimitiveType_ReduceFusion();
extern void _kCPUkNumberTypeBoolPrimitiveType_ReduceFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_SparseToDense();
extern void _kCPUkNumberTypeInt32PrimitiveType_SparseToDense();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Gather();
extern void _kCPUkNumberTypeInt32PrimitiveType_Gather();
extern void _kCPUkNumberTypeFloat32PrimitiveType_DepthToSpace();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Unique();
extern void _kCPUkNumberTypeFloat32PrimitiveType_ExpFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_ScatterNd();
extern void _kCPUkNumberTypeFloat32PrimitiveType_SpaceToDepth();
extern void _kCPUkNumberTypeBoolPrimitiveType_NonZero();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Resize();
extern void _kCPUkNumberTypeFloat32PrimitiveType_PReLUFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_MulFusion();
extern void _kCPUkNumberTypeInt32PrimitiveType_MulFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_AddFusion();
extern void _kCPUkNumberTypeInt32PrimitiveType_AddFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_SubFusion();
extern void _kCPUkNumberTypeInt32PrimitiveType_SubFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_DivFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_RealDiv();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Mod();
extern void _kCPUkNumberTypeInt32PrimitiveType_Mod();
extern void _kCPUkNumberTypeFloat32PrimitiveType_LogicalAnd();
extern void _kCPUkNumberTypeBoolPrimitiveType_LogicalAnd();
extern void _kCPUkNumberTypeInt32PrimitiveType_LogicalAnd();
extern void _kCPUkNumberTypeFloat32PrimitiveType_LogicalOr();
extern void _kCPUkNumberTypeBoolPrimitiveType_LogicalOr();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Maximum();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Minimum();
extern void _kCPUkNumberTypeInt32PrimitiveType_Maximum();
extern void _kCPUkNumberTypeInt32PrimitiveType_Minimum();
extern void _kCPUkNumberTypeFloat32PrimitiveType_FloorDiv();
extern void _kCPUkNumberTypeFloat32PrimitiveType_FloorMod();
extern void _kCPUkNumberTypeInt32PrimitiveType_FloorDiv();
extern void _kCPUkNumberTypeInt32PrimitiveType_FloorMod();
extern void _kCPUkNumberTypeFloat32PrimitiveType_SquaredDifference();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Eltwise();
extern void _kCPUkNumberTypeInt32PrimitiveType_DivFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_AvgPoolFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_MaxPoolFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_EmbeddingLookupFusion();
extern void _kCPUkNumberTypeInt32PrimitiveType_Size();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Size();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Transpose();
extern void _kCPUkNumberTypeInt32PrimitiveType_Transpose();
extern void _kCPUkNumberTypeFloat32PrimitiveType_PowFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Abs();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Cos();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Log();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Square();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Sqrt();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Rsqrt();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Sin();
extern void _kCPUkNumberTypeFloat32PrimitiveType_LogicalNot();
extern void _kCPUkNumberTypeBoolPrimitiveType_LogicalNot();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Floor();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Ceil();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Round();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Neg();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Reciprocal();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Erf();
extern void _kCPUkNumberTypeFloat32PrimitiveType_ReverseV2();
extern void _kCPUkNumberTypeInt32PrimitiveType_ReverseV2();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Unstack();
extern void _kCPUkNumberTypeInt32PrimitiveType_InvertPermutation();
extern void _kCPUkNumberTypeFloat32PrimitiveType_InvertPermutation();
extern void _kCPUkNumberTypeFloat32PrimitiveType_SpaceToBatch();
extern void _kCPUkNumberTypeFloat32PrimitiveType_SpaceToBatchND();
extern void _kCPUkNumberTypeFloat32PrimitiveType_AddN();
extern void _kCPUkNumberTypeFloat32PrimitiveType_MatMul();
extern void _kCPUkNumberTypeFloat32PrimitiveType_FusedBatchNorm();
extern void _kCPUkNumberTypeFloat32PrimitiveType_BiasAdd();
extern void _kCPUkNumberTypeFloat32PrimitiveType_LRN();
extern void _kCPUkNumberTypeFloat32PrimitiveType_TopKFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_GRU();
extern void _kCPUkNumberTypeInt32PrimitiveType_Shape();
extern void _kCPUkNumberTypeFloat16PrimitiveType_Shape();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Shape();
extern void _kCPUkNumberTypeInt8PrimitiveType_Shape();
extern void _kCPUkNumberTypeFloat32PrimitiveType_L2NormalizeFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_ScaleFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_BatchToSpace();
extern void _kCPUkNumberTypeFloat32PrimitiveType_BatchToSpaceND();
extern void _kCPUkNumberTypeInt32PrimitiveType_Where();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Where();
extern void _kCPUkNumberTypeBoolPrimitiveType_Where();
extern void _kCPUkNumberTypeFloat32PrimitiveType_SkipGram();
extern void _kCPUkNumberTypeFloat32PrimitiveType_BroadcastTo();
extern void _kCPUkNumberTypeFloat32PrimitiveType_CropAndResize();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Conv2dTransposeFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Conv2DFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_LayerNormFusion();
extern void _kCPUkNumberTypeFloat32PrimitiveType_ZerosLike();
extern void _kCPUkNumberTypeFloat32PrimitiveType_InstanceNorm();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Cast();
extern void _kCPUkNumberTypeUInt8PrimitiveType_Cast();
extern void _kCPUkNumberTypeInt8PrimitiveType_Cast();
extern void _kCPUkNumberTypeInt32PrimitiveType_Cast();
extern void _kCPUkNumberTypeInt64PrimitiveType_Cast();
extern void _kCPUkNumberTypeBoolPrimitiveType_Cast();
extern void _kCPUkNumberTypeFloat32PrimitiveType_LshProjection();
extern void _kCPUkNumberTypeInt32PrimitiveType_Fill();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Fill();
extern void _kCPUkNumberTypeInt32PrimitiveType_OneHot();
extern void _kCPUkNumberTypeFloat32PrimitiveType_LSTM();
extern void _kCPUkNumberTypeInt32PrimitiveType_Crop();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Crop();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Equal();
extern void _kCPUkNumberTypeInt32PrimitiveType_Equal();
extern void _kCPUkNumberTypeFloat32PrimitiveType_NotEqual();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Less();
extern void _kCPUkNumberTypeInt32PrimitiveType_Less();
extern void _kCPUkNumberTypeFloat32PrimitiveType_LessEqual();
extern void _kCPUkNumberTypeInt32PrimitiveType_LessEqual();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Greater();
extern void _kCPUkNumberTypeFloat32PrimitiveType_GreaterEqual();
extern void _kCPUkNumberTypeInt32PrimitiveType_GreaterEqual();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Range();
extern void _kCPUkNumberTypeFloatPrimitiveType_Range();
extern void _kCPUkNumberTypeInt32PrimitiveType_Range();
extern void _kCPUkNumberTypeIntPrimitiveType_Range();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Softmax();
extern void _kCPUkNumberTypeInt32PrimitiveType_Concat();
extern void _kCPUkNumberTypeFloat32PrimitiveType_Concat();

// int8
extern void _kCPUkNumberTypeInt8PrimitiveType_PowFusion();
extern void _kCPUkNumberTypeInt8PrimitiveType_ReduceFusion();
extern void _kCPUkNumberTypeInt8PrimitiveType_TopKFusion();
extern void _kCPUkNumberTypeInt8PrimitiveType_GatherNd();
extern void _kCPUkNumberTypeInt8PrimitiveType_PadFusion();
extern void _kCPUkNumberTypeInt8PrimitiveType_L2NormalizeFusion();
extern void _kCPUkNumberTypeInt8PrimitiveType_MulFusion();
extern void _kCPUkNumberTypeInt8PrimitiveType_Unsqueeze();
extern void _kCPUkNumberTypeInt8PrimitiveType_Conv2DFusion();
extern void _kCPUkNumberTypeInt8PrimitiveType_AvgPoolFusion();
extern void _kCPUkNumberTypeInt8PrimitiveType_MaxPoolFusion();
extern void _kCPUkNumberTypeInt8PrimitiveType_BatchNorm();
extern void _kCPUkNumberTypeInt8PrimitiveType_FusedBatchNorm();
extern void _kCPUkNumberTypeInt8PrimitiveType_Equal();
extern void _kCPUkNumberTypeInt8PrimitiveType_NotEqual();
extern void _kCPUkNumberTypeInt8PrimitiveType_Less();
extern void _kCPUkNumberTypeInt8PrimitiveType_LessEqual();
extern void _kCPUkNumberTypeInt8PrimitiveType_Greater();
extern void _kCPUkNumberTypeInt8PrimitiveType_GreaterEqual();
extern void _kCPUkNumberTypeInt8PrimitiveType_Eltwise();
extern void _kCPUkNumberTypeInt8PrimitiveType_BatchToSpace();
extern void _kCPUkNumberTypeInt8PrimitiveType_BatchToSpaceND();
extern void _kCPUkNumberTypeInt8PrimitiveType_DepthToSpace();
extern void _kCPUkNumberTypeInt8PrimitiveType_Activation();
extern void _kCPUkNumberTypeInt8PrimitiveType_Round();
extern void _kCPUkNumberTypeInt8PrimitiveType_Floor();
extern void _kCPUkNumberTypeInt8PrimitiveType_Ceil();
extern void _kCPUkNumberTypeInt8PrimitiveType_Abs();
extern void _kCPUkNumberTypeInt8PrimitiveType_Sin();
extern void _kCPUkNumberTypeInt8PrimitiveType_Cos();
extern void _kCPUkNumberTypeInt8PrimitiveType_Log();
extern void _kCPUkNumberTypeInt8PrimitiveType_Sqrt();
extern void _kCPUkNumberTypeInt8PrimitiveType_Rsqrt();
extern void _kCPUkNumberTypeInt8PrimitiveType_Square();
extern void _kCPUkNumberTypeInt8PrimitiveType_LogicalNot();
extern void _kCPUkNumberTypeInt8PrimitiveType_Reciprocal();
extern void _kCPUkNumberTypeInt8PrimitiveType_SliceFusion();
extern void _kCPUkNumberTypeInt8PrimitiveType_Reshape();
extern void _kCPUkNumberTypeInt8PrimitiveType_DivFusion();
extern void _kCPUkNumberTypeInt8PrimitiveType_MatMul();
extern void _kCPUkNumberTypeInt8PrimitiveType_Concat();
extern void _kCPUkNumberTypeInt8PrimitiveType_Crop();
extern void _kCPUkNumberTypeInt8PrimitiveType_SpaceToBatch();
extern void _kCPUkNumberTypeInt8PrimitiveType_SpaceToBatchND();
extern void _kCPUkNumberTypeInt8PrimitiveType_Split();
extern void _kCPUkNumberTypeInt8PrimitiveType_BiasAdd();
extern void _kCPUkNumberTypeInt8PrimitiveType_Resize();
extern void _kCPUkNumberTypeInt8PrimitiveType_Gather();
extern void _kCPUkNumberTypeInt8PrimitiveType_AddFusion();
extern void _kCPUkNumberTypeInt8PrimitiveType_Squeeze();
extern void _kCPUkNumberTypeInt8PrimitiveType_ScaleFusion();
extern void _kCPUkNumberTypeInt8PrimitiveType_Softmax();
extern void _kCPUkNumberTypeInt8PrimitiveType_ArgMaxFusion();
extern void _kCPUkNumberTypeInt8PrimitiveType_ArgMinFusion();
extern void _kCPUkNumberTypeInt8PrimitiveType_FullConnection();
extern void _kCPUkNumberTypeInt8PrimitiveType_Transpose();
extern void _kCPUkNumberTypeInt8PrimitiveType_Conv2dTransposeFusion();
extern void _kCPUkNumberTypeInt8PrimitiveType_DetectionPostProcess();
extern void _kCPUkNumberTypeInt8PrimitiveType_LeakyRelu();
extern void _kCPUkNumberTypeInt8PrimitiveType_LayerNormFusion();
extern void _kCPUkNumberTypeInt8PrimitiveType_SubFusion();

void IosRegisterKernels() {
// base
_kCPUkNumberTypeInt32PrimitiveType_StridedSlice();
_kCPUkNumberTypeFloat32PrimitiveType_StridedSlice();
_kCPUkNumberTypeFloat16PrimitiveType_StridedSlice();
_kCPUkNumberTypeInt8PrimitiveType_StridedSlice();
_kCPUkNumberTypeUInt8PrimitiveType_QuantDTypeCast();
_kCPUkNumberTypeInt8PrimitiveType_QuantDTypeCast();
_kCPUkNumberTypeFloat32PrimitiveType_QuantDTypeCast();
_kCPUkNumberTypeFloat32PrimitiveType_Assert();
_kCPUkNumberTypeBoolPrimitiveType_Assert();
_kCPUkNumberTypeInt32PrimitiveType_TensorListReserve();
_kCPUkNumberTypeFloat16PrimitiveType_TensorListReserve();
_kCPUkNumberTypeFloat32PrimitiveType_TensorListReserve();
_kCPUkNumberTypeFloat32PrimitiveType_TensorListStack();
_kCPUkNumberTypeFloat16PrimitiveType_TensorListStack();
_kCPUkNumberTypeInt32PrimitiveType_TensorListStack();
_kCPUkNumberTypeFloat32PrimitiveType_ArgMaxFusion();
_kCPUkNumberTypeFloat32PrimitiveType_ArgMinFusion();
_kCPUkNumberTypeFloat16PrimitiveType_ArgMaxFusion();
_kCPUkNumberTypeFloat16PrimitiveType_ArgMinFusion();
_kCPUkNumberTypeFloat32PrimitiveType_TensorListGetItem();
_kCPUkNumberTypeFloat16PrimitiveType_TensorListGetItem();
_kCPUkNumberTypeInt32PrimitiveType_TensorListGetItem();
_kCPUkNumberTypeInt32PrimitiveType_RandomStandardNormal();
_kCPUkNumberTypeFloat16PrimitiveType_Split();
_kCPUkNumberTypeInt32PrimitiveType_Split();
_kCPUkNumberTypeFloat32PrimitiveType_Split();
_kCPUkNumberTypeFloat32PrimitiveType_Switch();
_kCPUkNumberTypeFloat16PrimitiveType_Switch();
_kCPUkNumberTypeBoolPrimitiveType_Switch();
_kCPUkNumberTypeInt32PrimitiveType_Switch();
_kCPUkNumberTypeFloat32PrimitiveType_PriorBox();
_kCPUkNumberTypeInt8PrimitiveType_PriorBox();
_kCPUkNumberTypeFloat32PrimitiveType_ConstantOfShape();
_kCPUkNumberTypeInt32PrimitiveType_ConstantOfShape();
_kCPUkNumberTypeInt64PrimitiveType_ConstantOfShape();
_kCPUkNumberTypeInt32PrimitiveType_SliceFusion();
_kCPUkNumberTypeFloat32PrimitiveType_SliceFusion();
_kCPUkNumberTypeFloat32PrimitiveType_TensorListSetItem();
_kCPUkNumberTypeFloat16PrimitiveType_TensorListSetItem();
_kCPUkNumberTypeInt32PrimitiveType_TensorListSetItem();
_kCPUkNumberTypeInt32PrimitiveType_Reshape();
_kCPUkNumberTypeFloat32PrimitiveType_Reshape();
_kCPUkNumberTypeFloat16PrimitiveType_Reshape();
_kCPUkNumberTypeFloat16PrimitiveType_Flatten();
_kCPUkNumberTypeFloat32PrimitiveType_Flatten();
_kCPUkNumberTypeFloat32PrimitiveType_FlattenGrad();
_kCPUkNumberTypeInt32PrimitiveType_ExpandDims();
_kCPUkNumberTypeFloat16PrimitiveType_ExpandDims();
_kCPUkNumberTypeFloat32PrimitiveType_ExpandDims();
_kCPUkNumberTypeInt8PrimitiveType_ExpandDims();
_kCPUkNumberTypeFloat32PrimitiveType_Squeeze();
_kCPUkNumberTypeFloat16PrimitiveType_Squeeze();
_kCPUkNumberTypeInt32PrimitiveType_Squeeze();
_kCPUkNumberTypeBoolPrimitiveType_Squeeze();
_kCPUkNumberTypeFloat16PrimitiveType_Unsqueeze();
_kCPUkNumberTypeFloat32PrimitiveType_Unsqueeze();
_kCPUkNumberTypeInt32PrimitiveType_Unsqueeze();
_kCPUkNumberTypeInt64PrimitiveType_Unsqueeze();
_kCPUkNumberTypeFloat32PrimitiveType_TileFusion();
_kCPUkNumberTypeInt32PrimitiveType_TileFusion();
_kCPUkNumberTypeFloat16PrimitiveType_TileFusion();
_kCPUkNumberTypeBoolPrimitiveType_Select();
_kCPUkNumberTypeFloat32PrimitiveType_TensorListFromTensor();
_kCPUkNumberTypeInt32PrimitiveType_TensorListFromTensor();
_kCPUkNumberTypeFloat16PrimitiveType_TensorListFromTensor();
_kCPUkNumberTypeFloat32PrimitiveType_Stack();
_kCPUkNumberTypeInt32PrimitiveType_Stack();
_kCPUkNumberTypeFloat32PrimitiveType_Merge();
_kCPUkNumberTypeFloat16PrimitiveType_Merge();
_kCPUkNumberTypeBoolPrimitiveType_Merge();
_kCPUkNumberTypeInt32PrimitiveType_Merge();

// fp16
#ifdef ENABLE_FP16
_kCPUkNumberTypeFloat16PrimitiveType_SliceFusion();
_kCPUkNumberTypeFloat16PrimitiveType_Concat();
_kCPUkNumberTypeFloat16PrimitiveType_BiasAdd();
_kCPUkNumberTypeFloat16PrimitiveType_Crop();
_kCPUkNumberTypeFloat16PrimitiveType_ScaleFusion();
_kCPUkNumberTypeFloat16PrimitiveType_PowFusion();
_kCPUkNumberTypeFloat16PrimitiveType_Stack();
_kCPUkNumberTypeFloat16PrimitiveType_GRU();
_kCPUkNumberTypeFloat16PrimitiveType_Softmax();
_kCPUkNumberTypeFloat16PrimitiveType_MatMul();
_kCPUkNumberTypeFloat16PrimitiveType_Transpose();
_kCPUkNumberTypeFloat16PrimitiveType_NotEqual();
_kCPUkNumberTypeFloat16PrimitiveType_Equal();
_kCPUkNumberTypeFloat16PrimitiveType_Less();
_kCPUkNumberTypeFloat16PrimitiveType_LessEqual();
_kCPUkNumberTypeFloat16PrimitiveType_Greater();
_kCPUkNumberTypeFloat16PrimitiveType_GreaterEqual();
_kCPUkNumberTypeFloat16PrimitiveType_ReduceFusion();
_kCPUkNumberTypeFloat16PrimitiveType_FullConnection();
_kCPUkNumberTypeFloat16PrimitiveType_Gather();
_kCPUkNumberTypeFloat16PrimitiveType_LSTM();
_kCPUkNumberTypeFloat16PrimitiveType_Activation();
_kCPUkNumberTypeFloat16PrimitiveType_Cast();
_kCPUkNumberTypeInt64PrimitiveType_Cast();
_kCPUkNumberTypeFloat16PrimitiveType_Abs();
_kCPUkNumberTypeFloat16PrimitiveType_Cos();
_kCPUkNumberTypeFloat16PrimitiveType_Log();
_kCPUkNumberTypeFloat16PrimitiveType_Square();
_kCPUkNumberTypeFloat16PrimitiveType_Sqrt();
_kCPUkNumberTypeFloat16PrimitiveType_Rsqrt();
_kCPUkNumberTypeFloat16PrimitiveType_Sin();
_kCPUkNumberTypeFloat16PrimitiveType_LogicalNot();
_kCPUkNumberTypeFloat16PrimitiveType_Floor();
_kCPUkNumberTypeFloat16PrimitiveType_Ceil();
_kCPUkNumberTypeFloat16PrimitiveType_Round();
_kCPUkNumberTypeFloat16PrimitiveType_Neg();
_kCPUkNumberTypeFloat16PrimitiveType_Reciprocal();
_kCPUkNumberTypeFloat16PrimitiveType_Erf();
_kCPUkNumberTypeFloat16PrimitiveType_AvgPoolFusion();
_kCPUkNumberTypeFloat16PrimitiveType_MaxPoolFusion();
_kCPUkNumberTypeFloat16PrimitiveType_QuantDTypeCast();
_kCPUkNumberTypeFloat16PrimitiveType_PadFusion();
_kCPUkNumberTypeFloat16PrimitiveType_BatchNorm();
_kCPUkNumberTypeFloat16PrimitiveType_Conv2dTransposeFusion();
_kCPUkNumberTypeFloat16PrimitiveType_MulFusion();
_kCPUkNumberTypeFloat16PrimitiveType_AddFusion();
_kCPUkNumberTypeFloat16PrimitiveType_SubFusion();
_kCPUkNumberTypeFloat16PrimitiveType_DivFusion();
_kCPUkNumberTypeFloat16PrimitiveType_FloorMod();
_kCPUkNumberTypeFloat16PrimitiveType_FloorDiv();
_kCPUkNumberTypeFloat16PrimitiveType_LogicalAnd();
_kCPUkNumberTypeFloat16PrimitiveType_LogicalOr();
_kCPUkNumberTypeFloat16PrimitiveType_Maximum();
_kCPUkNumberTypeFloat16PrimitiveType_Minimum();
_kCPUkNumberTypeFloat16PrimitiveType_Eltwise();
_kCPUkNumberTypeFloat16PrimitiveType_SquaredDifference();
_kCPUkNumberTypeFloat16PrimitiveType_Conv2DFusion();
_kCPUkNumberTypeFloat16PrimitiveType_InstanceNorm();
#endif

// fp32
_kCPUkNumberTypeFloat32PrimitiveType_ROIPooling();
_kCPUkNumberTypeFloat32PrimitiveType_PadFusion();
_kCPUkNumberTypeFloat32PrimitiveType_Activation();
_kCPUkNumberTypeFloat32PrimitiveType_ReverseSequence();
_kCPUkNumberTypeFloat32PrimitiveType_AdderFusion();
_kCPUkNumberTypeFloat32PrimitiveType_DetectionPostProcess();
_kCPUkNumberTypeFloat32PrimitiveType_FullConnection();
_kCPUkNumberTypeFloat32PrimitiveType_GatherNd();
_kCPUkNumberTypeInt32PrimitiveType_GatherNd();
_kCPUkNumberTypeFloat32PrimitiveType_Rank();
_kCPUkNumberTypeFloat32PrimitiveType_Elu();
_kCPUkNumberTypeFloat32PrimitiveType_NonMaxSuppression();
_kCPUkNumberTypeFloat32PrimitiveType_BatchNorm();
_kCPUkNumberTypeFloat32PrimitiveType_ReduceFusion();
_kCPUkNumberTypeIntPrimitiveType_ReduceFusion();
_kCPUkNumberTypeInt32PrimitiveType_ReduceFusion();
_kCPUkNumberTypeBoolPrimitiveType_ReduceFusion();
_kCPUkNumberTypeFloat32PrimitiveType_SparseToDense();
_kCPUkNumberTypeInt32PrimitiveType_SparseToDense();
_kCPUkNumberTypeFloat32PrimitiveType_Gather();
_kCPUkNumberTypeInt32PrimitiveType_Gather();
_kCPUkNumberTypeFloat32PrimitiveType_DepthToSpace();
_kCPUkNumberTypeFloat32PrimitiveType_Unique();
_kCPUkNumberTypeFloat32PrimitiveType_ExpFusion();
_kCPUkNumberTypeFloat32PrimitiveType_ScatterNd();
_kCPUkNumberTypeFloat32PrimitiveType_SpaceToDepth();
_kCPUkNumberTypeBoolPrimitiveType_NonZero();
_kCPUkNumberTypeFloat32PrimitiveType_Resize();
_kCPUkNumberTypeFloat32PrimitiveType_PReLUFusion();
_kCPUkNumberTypeFloat32PrimitiveType_MulFusion();
_kCPUkNumberTypeInt32PrimitiveType_MulFusion();
_kCPUkNumberTypeFloat32PrimitiveType_AddFusion();
_kCPUkNumberTypeInt32PrimitiveType_AddFusion();
_kCPUkNumberTypeFloat32PrimitiveType_SubFusion();
_kCPUkNumberTypeInt32PrimitiveType_SubFusion();
_kCPUkNumberTypeFloat32PrimitiveType_DivFusion();
_kCPUkNumberTypeFloat32PrimitiveType_RealDiv();
_kCPUkNumberTypeFloat32PrimitiveType_Mod();
_kCPUkNumberTypeInt32PrimitiveType_Mod();
_kCPUkNumberTypeFloat32PrimitiveType_LogicalAnd();
_kCPUkNumberTypeBoolPrimitiveType_LogicalAnd();
_kCPUkNumberTypeInt32PrimitiveType_LogicalAnd();
_kCPUkNumberTypeFloat32PrimitiveType_LogicalOr();
_kCPUkNumberTypeBoolPrimitiveType_LogicalOr();
_kCPUkNumberTypeFloat32PrimitiveType_Maximum();
_kCPUkNumberTypeFloat32PrimitiveType_Minimum();
_kCPUkNumberTypeInt32PrimitiveType_Maximum();
_kCPUkNumberTypeInt32PrimitiveType_Minimum();
_kCPUkNumberTypeFloat32PrimitiveType_FloorDiv();
_kCPUkNumberTypeFloat32PrimitiveType_FloorMod();
_kCPUkNumberTypeInt32PrimitiveType_FloorDiv();
_kCPUkNumberTypeInt32PrimitiveType_FloorMod();
_kCPUkNumberTypeFloat32PrimitiveType_SquaredDifference();
_kCPUkNumberTypeFloat32PrimitiveType_Eltwise();
_kCPUkNumberTypeInt32PrimitiveType_DivFusion();
_kCPUkNumberTypeFloat32PrimitiveType_AvgPoolFusion();
_kCPUkNumberTypeFloat32PrimitiveType_MaxPoolFusion();
_kCPUkNumberTypeFloat32PrimitiveType_EmbeddingLookupFusion();
_kCPUkNumberTypeInt32PrimitiveType_Size();
_kCPUkNumberTypeFloat32PrimitiveType_Size();
_kCPUkNumberTypeFloat32PrimitiveType_Transpose();
_kCPUkNumberTypeInt32PrimitiveType_Transpose();
_kCPUkNumberTypeFloat32PrimitiveType_PowFusion();
_kCPUkNumberTypeFloat32PrimitiveType_Abs();
_kCPUkNumberTypeFloat32PrimitiveType_Cos();
_kCPUkNumberTypeFloat32PrimitiveType_Log();
_kCPUkNumberTypeFloat32PrimitiveType_Square();
_kCPUkNumberTypeFloat32PrimitiveType_Sqrt();
_kCPUkNumberTypeFloat32PrimitiveType_Rsqrt();
_kCPUkNumberTypeFloat32PrimitiveType_Sin();
_kCPUkNumberTypeFloat32PrimitiveType_LogicalNot();
_kCPUkNumberTypeBoolPrimitiveType_LogicalNot();
_kCPUkNumberTypeFloat32PrimitiveType_Floor();
_kCPUkNumberTypeFloat32PrimitiveType_Ceil();
_kCPUkNumberTypeFloat32PrimitiveType_Round();
_kCPUkNumberTypeFloat32PrimitiveType_Neg();
_kCPUkNumberTypeFloat32PrimitiveType_Reciprocal();
_kCPUkNumberTypeFloat32PrimitiveType_Erf();
_kCPUkNumberTypeFloat32PrimitiveType_ReverseV2();
_kCPUkNumberTypeInt32PrimitiveType_ReverseV2();
_kCPUkNumberTypeFloat32PrimitiveType_Unstack();
_kCPUkNumberTypeInt32PrimitiveType_InvertPermutation();
_kCPUkNumberTypeFloat32PrimitiveType_InvertPermutation();
_kCPUkNumberTypeFloat32PrimitiveType_SpaceToBatch();
_kCPUkNumberTypeFloat32PrimitiveType_SpaceToBatchND();
_kCPUkNumberTypeFloat32PrimitiveType_AddN();
_kCPUkNumberTypeFloat32PrimitiveType_MatMul();
_kCPUkNumberTypeFloat32PrimitiveType_FusedBatchNorm();
_kCPUkNumberTypeFloat32PrimitiveType_BiasAdd();
_kCPUkNumberTypeFloat32PrimitiveType_LRN();
_kCPUkNumberTypeFloat32PrimitiveType_TopKFusion();
_kCPUkNumberTypeFloat32PrimitiveType_GRU();
_kCPUkNumberTypeInt32PrimitiveType_Shape();
_kCPUkNumberTypeFloat16PrimitiveType_Shape();
_kCPUkNumberTypeFloat32PrimitiveType_Shape();
_kCPUkNumberTypeInt8PrimitiveType_Shape();
_kCPUkNumberTypeFloat32PrimitiveType_L2NormalizeFusion();
_kCPUkNumberTypeFloat32PrimitiveType_ScaleFusion();
_kCPUkNumberTypeFloat32PrimitiveType_BatchToSpace();
_kCPUkNumberTypeFloat32PrimitiveType_BatchToSpaceND();
_kCPUkNumberTypeInt32PrimitiveType_Where();
_kCPUkNumberTypeFloat32PrimitiveType_Where();
_kCPUkNumberTypeBoolPrimitiveType_Where();
_kCPUkNumberTypeFloat32PrimitiveType_SkipGram();
_kCPUkNumberTypeFloat32PrimitiveType_BroadcastTo();
_kCPUkNumberTypeFloat32PrimitiveType_CropAndResize();
_kCPUkNumberTypeFloat32PrimitiveType_Conv2dTransposeFusion();
_kCPUkNumberTypeFloat32PrimitiveType_Conv2DFusion();
_kCPUkNumberTypeFloat32PrimitiveType_LayerNormFusion();
_kCPUkNumberTypeFloat32PrimitiveType_ZerosLike();
_kCPUkNumberTypeFloat32PrimitiveType_InstanceNorm();
_kCPUkNumberTypeFloat32PrimitiveType_Cast();
_kCPUkNumberTypeUInt8PrimitiveType_Cast();
_kCPUkNumberTypeInt8PrimitiveType_Cast();
_kCPUkNumberTypeInt32PrimitiveType_Cast();
_kCPUkNumberTypeInt64PrimitiveType_Cast();
_kCPUkNumberTypeBoolPrimitiveType_Cast();
_kCPUkNumberTypeFloat32PrimitiveType_LshProjection();
_kCPUkNumberTypeInt32PrimitiveType_Fill();
_kCPUkNumberTypeFloat32PrimitiveType_Fill();
_kCPUkNumberTypeInt32PrimitiveType_OneHot();
_kCPUkNumberTypeFloat32PrimitiveType_LSTM();
_kCPUkNumberTypeInt32PrimitiveType_Crop();
_kCPUkNumberTypeFloat32PrimitiveType_Crop();
_kCPUkNumberTypeFloat32PrimitiveType_Equal();
_kCPUkNumberTypeInt32PrimitiveType_Equal();
_kCPUkNumberTypeFloat32PrimitiveType_NotEqual();
_kCPUkNumberTypeFloat32PrimitiveType_Less();
_kCPUkNumberTypeInt32PrimitiveType_Less();
_kCPUkNumberTypeFloat32PrimitiveType_LessEqual();
_kCPUkNumberTypeInt32PrimitiveType_LessEqual();
_kCPUkNumberTypeFloat32PrimitiveType_Greater();
_kCPUkNumberTypeFloat32PrimitiveType_GreaterEqual();
_kCPUkNumberTypeInt32PrimitiveType_GreaterEqual();
_kCPUkNumberTypeFloat32PrimitiveType_Range();
_kCPUkNumberTypeFloatPrimitiveType_Range();
_kCPUkNumberTypeInt32PrimitiveType_Range();
_kCPUkNumberTypeIntPrimitiveType_Range();
_kCPUkNumberTypeFloat32PrimitiveType_Softmax();
_kCPUkNumberTypeInt32PrimitiveType_Concat();
_kCPUkNumberTypeFloat32PrimitiveType_Concat();

// int8
_kCPUkNumberTypeInt8PrimitiveType_PowFusion();
_kCPUkNumberTypeInt8PrimitiveType_ReduceFusion();
_kCPUkNumberTypeInt8PrimitiveType_TopKFusion();
_kCPUkNumberTypeInt8PrimitiveType_GatherNd();
_kCPUkNumberTypeInt8PrimitiveType_PadFusion();
_kCPUkNumberTypeInt8PrimitiveType_L2NormalizeFusion();
_kCPUkNumberTypeInt8PrimitiveType_MulFusion();
_kCPUkNumberTypeInt8PrimitiveType_Unsqueeze();
_kCPUkNumberTypeInt8PrimitiveType_Conv2DFusion();
_kCPUkNumberTypeInt8PrimitiveType_AvgPoolFusion();
_kCPUkNumberTypeInt8PrimitiveType_MaxPoolFusion();
_kCPUkNumberTypeInt8PrimitiveType_BatchNorm();
_kCPUkNumberTypeInt8PrimitiveType_FusedBatchNorm();
_kCPUkNumberTypeInt8PrimitiveType_Equal();
_kCPUkNumberTypeInt8PrimitiveType_NotEqual();
_kCPUkNumberTypeInt8PrimitiveType_Less();
_kCPUkNumberTypeInt8PrimitiveType_LessEqual();
_kCPUkNumberTypeInt8PrimitiveType_Greater();
_kCPUkNumberTypeInt8PrimitiveType_GreaterEqual();
_kCPUkNumberTypeInt8PrimitiveType_Eltwise();
_kCPUkNumberTypeInt8PrimitiveType_BatchToSpace();
_kCPUkNumberTypeInt8PrimitiveType_BatchToSpaceND();
_kCPUkNumberTypeInt8PrimitiveType_DepthToSpace();
_kCPUkNumberTypeInt8PrimitiveType_Activation();
_kCPUkNumberTypeInt8PrimitiveType_Round();
_kCPUkNumberTypeInt8PrimitiveType_Floor();
_kCPUkNumberTypeInt8PrimitiveType_Ceil();
_kCPUkNumberTypeInt8PrimitiveType_Abs();
_kCPUkNumberTypeInt8PrimitiveType_Sin();
_kCPUkNumberTypeInt8PrimitiveType_Cos();
_kCPUkNumberTypeInt8PrimitiveType_Log();
_kCPUkNumberTypeInt8PrimitiveType_Sqrt();
_kCPUkNumberTypeInt8PrimitiveType_Rsqrt();
_kCPUkNumberTypeInt8PrimitiveType_Square();
_kCPUkNumberTypeInt8PrimitiveType_LogicalNot();
_kCPUkNumberTypeInt8PrimitiveType_Reciprocal();
_kCPUkNumberTypeInt8PrimitiveType_SliceFusion();
_kCPUkNumberTypeInt8PrimitiveType_Reshape();
_kCPUkNumberTypeInt8PrimitiveType_DivFusion();
_kCPUkNumberTypeInt8PrimitiveType_MatMul();
_kCPUkNumberTypeInt8PrimitiveType_Concat();
_kCPUkNumberTypeInt8PrimitiveType_Crop();
_kCPUkNumberTypeInt8PrimitiveType_SpaceToBatch();
_kCPUkNumberTypeInt8PrimitiveType_SpaceToBatchND();
_kCPUkNumberTypeInt8PrimitiveType_Split();
_kCPUkNumberTypeInt8PrimitiveType_BiasAdd();
_kCPUkNumberTypeInt8PrimitiveType_Resize();
_kCPUkNumberTypeInt8PrimitiveType_Gather();
_kCPUkNumberTypeInt8PrimitiveType_AddFusion();
_kCPUkNumberTypeInt8PrimitiveType_Squeeze();
_kCPUkNumberTypeInt8PrimitiveType_ScaleFusion();
_kCPUkNumberTypeInt8PrimitiveType_Softmax();
_kCPUkNumberTypeInt8PrimitiveType_ArgMaxFusion();
_kCPUkNumberTypeInt8PrimitiveType_ArgMinFusion();
_kCPUkNumberTypeInt8PrimitiveType_FullConnection();
_kCPUkNumberTypeInt8PrimitiveType_Transpose();
_kCPUkNumberTypeInt8PrimitiveType_Conv2dTransposeFusion();
_kCPUkNumberTypeInt8PrimitiveType_DetectionPostProcess();
_kCPUkNumberTypeInt8PrimitiveType_LeakyRelu();
_kCPUkNumberTypeInt8PrimitiveType_LayerNormFusion();
_kCPUkNumberTypeInt8PrimitiveType_SubFusion();
}

#endif

} // namespace kernel
} // namespace mindspore

#endif // MINDSPORE_LITE_SRC_REG_KERNELS_H

+ 0
- 335
mindspore/lite/src/ios_reg_ops.cc View File

@@ -1,335 +0,0 @@
/**
* Copyright 2021 Huawei Technologies Co., Ltd
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

namespace mindspore {
namespace lite {
#ifdef MS_COMPILE_IOS
// populate
extern void _PrimitiveType_MulFusionSCHEMA_CUR();
extern void _PrimitiveType_NonMaxSuppressionSCHEMA_CUR();
extern void _PrimitiveType_TensorListStackSCHEMA_CUR();
extern void _PrimitiveType_EltwiseSCHEMA_CUR();
extern void _PrimitiveType_AssignSCHEMA_CUR();
extern void _PrimitiveType_CropSCHEMA_CUR();
extern void _PrimitiveType_BatchNormSCHEMA_CUR();
extern void _PrimitiveType_NonZeroSCHEMA_CUR();
extern void _PrimitiveType_AddNSCHEMA_CUR();
extern void _PrimitiveType_MergeSCHEMA_CUR();
extern void _PrimitiveType_AbsSCHEMA_CUR();
extern void _PrimitiveType_CosSCHEMA_CUR();
extern void _PrimitiveType_SinSCHEMA_CUR();
extern void _PrimitiveType_LogSCHEMA_CUR();
extern void _PrimitiveType_NegSCHEMA_CUR();
extern void _PrimitiveType_NegGradSCHEMA_CUR();
extern void _PrimitiveType_LogGradSCHEMA_CUR();
extern void _PrimitiveType_SqrtSCHEMA_CUR();
extern void _PrimitiveType_SquareSCHEMA_CUR();
extern void _PrimitiveType_RsqrtSCHEMA_CUR();
extern void _PrimitiveType_LogicalNotSCHEMA_CUR();
extern void _PrimitiveType_FloorSCHEMA_CUR();
extern void _PrimitiveType_CeilSCHEMA_CUR();
extern void _PrimitiveType_RoundSCHEMA_CUR();
extern void _PrimitiveType_ReciprocalSCHEMA_CUR();
extern void _PrimitiveType_AssignAddSCHEMA_CUR();
extern void _PrimitiveType_UniqueSCHEMA_CUR();
extern void _PrimitiveType_IsFiniteSCHEMA_CUR();
extern void _PrimitiveType_TileFusionSCHEMA_CUR();
extern void _PrimitiveType_BinaryCrossEntropyGradSCHEMA_CUR();
extern void _PrimitiveType_StridedSliceSCHEMA_CUR();
extern void _PrimitiveType_L2NormalizeFusionSCHEMA_CUR();
extern void _PrimitiveType_RangeSCHEMA_CUR();
extern void _PrimitiveType_SizeSCHEMA_CUR();
extern void _PrimitiveType_CropAndResizeSCHEMA_CUR();
extern void _PrimitiveType_QuantDTypeCastSCHEMA_CUR();
extern void _PrimitiveType_InstanceNormSCHEMA_CUR();
extern void _PrimitiveType_AddFusionSCHEMA_CUR();
extern void _PrimitiveType_Conv2dTransposeFusionSCHEMA_CUR();
extern void _PrimitiveType_PowFusionSCHEMA_CUR();
extern void _PrimitiveType_ReverseV2SCHEMA_CUR();
extern void _PrimitiveType_BiasAddSCHEMA_CUR();
extern void _PrimitiveType_TensorListReserveSCHEMA_CUR();
extern void _PrimitiveType_SpliceSCHEMA_CUR();
extern void _PrimitiveType_MatMulSCHEMA_CUR();
extern void _PrimitiveType_ErfSCHEMA_CUR();
extern void _PrimitiveType_MinimumGradSCHEMA_CUR();
extern void _PrimitiveType_MaximumGradSCHEMA_CUR();
extern void _PrimitiveType_RealDivSCHEMA_CUR();
extern void _PrimitiveType_LogicalAndSCHEMA_CUR();
extern void _PrimitiveType_LogicalOrSCHEMA_CUR();
extern void _PrimitiveType_EqualSCHEMA_CUR();
extern void _PrimitiveType_NotEqualSCHEMA_CUR();
extern void _PrimitiveType_LessSCHEMA_CUR();
extern void _PrimitiveType_LessEqualSCHEMA_CUR();
extern void _PrimitiveType_GreaterSCHEMA_CUR();
extern void _PrimitiveType_GreaterEqualSCHEMA_CUR();
extern void _PrimitiveType_MaximumSCHEMA_CUR();
extern void _PrimitiveType_MinimumSCHEMA_CUR();
extern void _PrimitiveType_FloorDivSCHEMA_CUR();
extern void _PrimitiveType_FloorModSCHEMA_CUR();
extern void _PrimitiveType_ModSCHEMA_CUR();
extern void _PrimitiveType_SquaredDifferenceSCHEMA_CUR();
extern void _PrimitiveType_OneHotSCHEMA_CUR();
extern void _PrimitiveType_WhileSCHEMA_CUR();
extern void _PrimitiveType_ScatterNdSCHEMA_CUR();
extern void _PrimitiveType_DepthToSpaceSCHEMA_CUR();
extern void _PrimitiveType_GatherSCHEMA_CUR();
extern void _PrimitiveType_AssertSCHEMA_CUR();
extern void _PrimitiveType_InvertPermutationSCHEMA_CUR();
extern void _PrimitiveType_OnesLikeSCHEMA_CUR();
extern void _PrimitiveType_ConcatSCHEMA_CUR();
extern void _PrimitiveType_ScaleFusionSCHEMA_CUR();
extern void _PrimitiveType_HashtableLookupSCHEMA_CUR();
extern void _PrimitiveType_StackSCHEMA_CUR();
extern void _PrimitiveType_ShapeSCHEMA_CUR();
extern void _PrimitiveType_SparseToDenseSCHEMA_CUR();
extern void _PrimitiveType_TensorListFromTensorSCHEMA_CUR();
extern void _PrimitiveType_ReverseSequenceSCHEMA_CUR();
extern void _PrimitiveType_UnsqueezeSCHEMA_CUR();
extern void _PrimitiveType_FlattenSCHEMA_CUR();
extern void _PrimitiveType_ArgMinFusionSCHEMA_CUR();
extern void _PrimitiveType_SpaceToBatchSCHEMA_CUR();
extern void _PrimitiveType_UnstackSCHEMA_CUR();
extern void _PrimitiveType_BroadcastToSCHEMA_CUR();
extern void _PrimitiveType_SelectSCHEMA_CUR();
extern void _PrimitiveType_LinSpaceSCHEMA_CUR();
extern void _PrimitiveType_BiasAddGradSCHEMA_CUR();
extern void _PrimitiveType_LayerNormFusionSCHEMA_CUR();
extern void _PrimitiveType_EmbeddingLookupFusionSCHEMA_CUR();
extern void _PrimitiveType_CustomExtractFeaturesSCHEMA_CUR();
extern void _PrimitiveType_ResizeSCHEMA_CUR();
extern void _PrimitiveType_AdamSCHEMA_CUR();
extern void _PrimitiveType_ExpandDimsSCHEMA_CUR();
extern void _PrimitiveType_IfSCHEMA_CUR();
extern void _PrimitiveType_SoftmaxSCHEMA_CUR();
extern void _PrimitiveType_BatchToSpaceSCHEMA_CUR();
extern void _PrimitiveType_BatchToSpaceNDSCHEMA_CUR();
extern void _PrimitiveType_UniformRealSCHEMA_CUR();
extern void _PrimitiveType_DetectionPostProcessSCHEMA_CUR();
extern void _PrimitiveType_GatherNdSCHEMA_CUR();
extern void _PrimitiveType_GRUSCHEMA_CUR();
extern void _PrimitiveType_CustomNormalizeSCHEMA_CUR();
extern void _PrimitiveType_AdderFusionSCHEMA_CUR();
extern void _PrimitiveType_RandomStandardNormalSCHEMA_CUR();
extern void _PrimitiveType_FusedBatchNormSCHEMA_CUR();
extern void _PrimitiveType_AvgPoolFusionSCHEMA_CUR();
extern void _PrimitiveType_MaxPoolFusionSCHEMA_CUR();
extern void _PrimitiveType_ArgMaxFusionSCHEMA_CUR();
extern void _PrimitiveType_ExpFusionSCHEMA_CUR();
extern void _PrimitiveType_LayerNormGradSCHEMA_CUR();
extern void _PrimitiveType_AudioSpectrogramSCHEMA_CUR();
extern void _PrimitiveType_SpaceToBatchNDSCHEMA_CUR();
extern void _PrimitiveType_ROIPoolingSCHEMA_CUR();
extern void _PrimitiveType_PReLUFusionSCHEMA_CUR();
extern void _PrimitiveType_WhereSCHEMA_CUR();
extern void _PrimitiveType_SparseSoftmaxCrossEntropyWithLogitsSCHEMA_CUR();
extern void _PrimitiveType_PartialFusionSCHEMA_CUR();
extern void _PrimitiveType_SubFusionSCHEMA_CUR();
extern void _PrimitiveType_DivFusionSCHEMA_CUR();
extern void _PrimitiveType_MfccSCHEMA_CUR();
extern void _PrimitiveType_SplitSCHEMA_CUR();
extern void _PrimitiveType_ActivationSCHEMA_CUR();
extern void _PrimitiveType_TopKFusionSCHEMA_CUR();
extern void _PrimitiveType_CastSCHEMA_CUR();
extern void _PrimitiveType_StridedSliceGradSCHEMA_CUR();
extern void _PrimitiveType_SliceFusionSCHEMA_CUR();
extern void _PrimitiveType_TransposeSCHEMA_CUR();
extern void _PrimitiveType_ReduceFusionSCHEMA_CUR();
extern void _PrimitiveType_FullConnectionSCHEMA_CUR();
extern void _PrimitiveType_LshProjectionSCHEMA_CUR();
extern void _PrimitiveType_SkipGramSCHEMA_CUR();
extern void _PrimitiveType_SqueezeSCHEMA_CUR();
extern void _PrimitiveType_ActivationGradSCHEMA_CUR();
extern void _PrimitiveType_SwitchSCHEMA_CUR();
extern void _PrimitiveType_LSTMSCHEMA_CUR();
extern void _PrimitiveType_BinaryCrossEntropySCHEMA_CUR();
extern void _PrimitiveType_EluSCHEMA_CUR();
extern void _PrimitiveType_Conv2DFusionSCHEMA_CUR();
extern void _PrimitiveType_TensorListGetItemSCHEMA_CUR();
extern void _PrimitiveType_LRNSCHEMA_CUR();
extern void _PrimitiveType_ReshapeSCHEMA_CUR();
extern void _PrimitiveType_ConstantOfShapeSCHEMA_CUR();
extern void _PrimitiveType_CustomPredictSCHEMA_CUR();
extern void _PrimitiveType_PadFusionSCHEMA_CUR();
extern void _PrimitiveType_PriorBoxSCHEMA_CUR();
extern void _PrimitiveType_ZerosLikeSCHEMA_CUR();
extern void _PrimitiveType_DependSCHEMA_CUR();
extern void _PrimitiveType_UnsortedSegmentSumSCHEMA_CUR();
extern void _PrimitiveType_TensorListSetItemSCHEMA_CUR();
extern void _PrimitiveType_FillSCHEMA_CUR();
extern void _PrimitiveType_RankSCHEMA_CUR();
extern void _PrimitiveType_ClipSCHEMA_CUR();
extern void _PrimitiveType_SpaceToDepthSCHEMA_CUR();

void IosRegisterOps() {
_PrimitiveType_MulFusionSCHEMA_CUR();
_PrimitiveType_NonMaxSuppressionSCHEMA_CUR();
_PrimitiveType_TensorListStackSCHEMA_CUR();
_PrimitiveType_EltwiseSCHEMA_CUR();
_PrimitiveType_AssignSCHEMA_CUR();
_PrimitiveType_CropSCHEMA_CUR();
_PrimitiveType_BatchNormSCHEMA_CUR();
_PrimitiveType_NonZeroSCHEMA_CUR();
_PrimitiveType_AddNSCHEMA_CUR();
_PrimitiveType_MergeSCHEMA_CUR();
_PrimitiveType_AbsSCHEMA_CUR();
_PrimitiveType_CosSCHEMA_CUR();
_PrimitiveType_SinSCHEMA_CUR();
_PrimitiveType_LogSCHEMA_CUR();
_PrimitiveType_NegSCHEMA_CUR();
_PrimitiveType_NegGradSCHEMA_CUR();
_PrimitiveType_LogGradSCHEMA_CUR();
_PrimitiveType_SqrtSCHEMA_CUR();
_PrimitiveType_SquareSCHEMA_CUR();
_PrimitiveType_RsqrtSCHEMA_CUR();
_PrimitiveType_LogicalNotSCHEMA_CUR();
_PrimitiveType_FloorSCHEMA_CUR();
_PrimitiveType_CeilSCHEMA_CUR();
_PrimitiveType_RoundSCHEMA_CUR();
_PrimitiveType_ReciprocalSCHEMA_CUR();
_PrimitiveType_AssignAddSCHEMA_CUR();
_PrimitiveType_UniqueSCHEMA_CUR();
_PrimitiveType_IsFiniteSCHEMA_CUR();
_PrimitiveType_TileFusionSCHEMA_CUR();
_PrimitiveType_BinaryCrossEntropyGradSCHEMA_CUR();
_PrimitiveType_StridedSliceSCHEMA_CUR();
_PrimitiveType_L2NormalizeFusionSCHEMA_CUR();
_PrimitiveType_RangeSCHEMA_CUR();
_PrimitiveType_SizeSCHEMA_CUR();
_PrimitiveType_CropAndResizeSCHEMA_CUR();
_PrimitiveType_QuantDTypeCastSCHEMA_CUR();
_PrimitiveType_InstanceNormSCHEMA_CUR();
_PrimitiveType_AddFusionSCHEMA_CUR();
_PrimitiveType_Conv2dTransposeFusionSCHEMA_CUR();
_PrimitiveType_PowFusionSCHEMA_CUR();
_PrimitiveType_ReverseV2SCHEMA_CUR();
_PrimitiveType_BiasAddSCHEMA_CUR();
_PrimitiveType_TensorListReserveSCHEMA_CUR();
_PrimitiveType_SpliceSCHEMA_CUR();
_PrimitiveType_MatMulSCHEMA_CUR();
_PrimitiveType_ErfSCHEMA_CUR();
_PrimitiveType_MinimumGradSCHEMA_CUR();
_PrimitiveType_MaximumGradSCHEMA_CUR();
_PrimitiveType_RealDivSCHEMA_CUR();
_PrimitiveType_LogicalAndSCHEMA_CUR();
_PrimitiveType_LogicalOrSCHEMA_CUR();
_PrimitiveType_EqualSCHEMA_CUR();
_PrimitiveType_NotEqualSCHEMA_CUR();
_PrimitiveType_LessSCHEMA_CUR();
_PrimitiveType_LessEqualSCHEMA_CUR();
_PrimitiveType_GreaterSCHEMA_CUR();
_PrimitiveType_GreaterEqualSCHEMA_CUR();
_PrimitiveType_MaximumSCHEMA_CUR();
_PrimitiveType_MinimumSCHEMA_CUR();
_PrimitiveType_FloorDivSCHEMA_CUR();
_PrimitiveType_FloorModSCHEMA_CUR();
_PrimitiveType_ModSCHEMA_CUR();
_PrimitiveType_SquaredDifferenceSCHEMA_CUR();
_PrimitiveType_OneHotSCHEMA_CUR();
_PrimitiveType_WhileSCHEMA_CUR();
_PrimitiveType_ScatterNdSCHEMA_CUR();
_PrimitiveType_DepthToSpaceSCHEMA_CUR();
_PrimitiveType_GatherSCHEMA_CUR();
_PrimitiveType_AssertSCHEMA_CUR();
_PrimitiveType_InvertPermutationSCHEMA_CUR();
_PrimitiveType_OnesLikeSCHEMA_CUR();
_PrimitiveType_ConcatSCHEMA_CUR();
_PrimitiveType_ScaleFusionSCHEMA_CUR();
_PrimitiveType_HashtableLookupSCHEMA_CUR();
_PrimitiveType_StackSCHEMA_CUR();
_PrimitiveType_ShapeSCHEMA_CUR();
_PrimitiveType_SparseToDenseSCHEMA_CUR();
_PrimitiveType_TensorListFromTensorSCHEMA_CUR();
_PrimitiveType_ReverseSequenceSCHEMA_CUR();
_PrimitiveType_UnsqueezeSCHEMA_CUR();
_PrimitiveType_FlattenSCHEMA_CUR();
_PrimitiveType_ArgMinFusionSCHEMA_CUR();
_PrimitiveType_SpaceToBatchSCHEMA_CUR();
_PrimitiveType_UnstackSCHEMA_CUR();
_PrimitiveType_BroadcastToSCHEMA_CUR();
_PrimitiveType_SelectSCHEMA_CUR();
_PrimitiveType_LinSpaceSCHEMA_CUR();
_PrimitiveType_BiasAddGradSCHEMA_CUR();
_PrimitiveType_LayerNormFusionSCHEMA_CUR();
_PrimitiveType_EmbeddingLookupFusionSCHEMA_CUR();
_PrimitiveType_CustomExtractFeaturesSCHEMA_CUR();
_PrimitiveType_ResizeSCHEMA_CUR();
_PrimitiveType_AdamSCHEMA_CUR();
_PrimitiveType_ExpandDimsSCHEMA_CUR();
_PrimitiveType_IfSCHEMA_CUR();
_PrimitiveType_SoftmaxSCHEMA_CUR();
_PrimitiveType_BatchToSpaceSCHEMA_CUR();
_PrimitiveType_BatchToSpaceNDSCHEMA_CUR();
_PrimitiveType_UniformRealSCHEMA_CUR();
_PrimitiveType_DetectionPostProcessSCHEMA_CUR();
_PrimitiveType_GatherNdSCHEMA_CUR();
_PrimitiveType_GRUSCHEMA_CUR();
_PrimitiveType_CustomNormalizeSCHEMA_CUR();
_PrimitiveType_AdderFusionSCHEMA_CUR();
_PrimitiveType_RandomStandardNormalSCHEMA_CUR();
_PrimitiveType_FusedBatchNormSCHEMA_CUR();
_PrimitiveType_AvgPoolFusionSCHEMA_CUR();
_PrimitiveType_MaxPoolFusionSCHEMA_CUR();
_PrimitiveType_ArgMaxFusionSCHEMA_CUR();
_PrimitiveType_ExpFusionSCHEMA_CUR();
_PrimitiveType_LayerNormGradSCHEMA_CUR();
_PrimitiveType_AudioSpectrogramSCHEMA_CUR();
_PrimitiveType_SpaceToBatchNDSCHEMA_CUR();
_PrimitiveType_ROIPoolingSCHEMA_CUR();
_PrimitiveType_PReLUFusionSCHEMA_CUR();
_PrimitiveType_WhereSCHEMA_CUR();
_PrimitiveType_SparseSoftmaxCrossEntropyWithLogitsSCHEMA_CUR();
_PrimitiveType_PartialFusionSCHEMA_CUR();
_PrimitiveType_SubFusionSCHEMA_CUR();
_PrimitiveType_DivFusionSCHEMA_CUR();
_PrimitiveType_MfccSCHEMA_CUR();
_PrimitiveType_SplitSCHEMA_CUR();
_PrimitiveType_ActivationSCHEMA_CUR();
_PrimitiveType_TopKFusionSCHEMA_CUR();
_PrimitiveType_CastSCHEMA_CUR();
_PrimitiveType_StridedSliceGradSCHEMA_CUR();
_PrimitiveType_SliceFusionSCHEMA_CUR();
_PrimitiveType_TransposeSCHEMA_CUR();
_PrimitiveType_ReduceFusionSCHEMA_CUR();
_PrimitiveType_FullConnectionSCHEMA_CUR();
_PrimitiveType_LshProjectionSCHEMA_CUR();
_PrimitiveType_SkipGramSCHEMA_CUR();
_PrimitiveType_SqueezeSCHEMA_CUR();
_PrimitiveType_ActivationGradSCHEMA_CUR();
_PrimitiveType_SwitchSCHEMA_CUR();
_PrimitiveType_LSTMSCHEMA_CUR();
_PrimitiveType_BinaryCrossEntropySCHEMA_CUR();
_PrimitiveType_EluSCHEMA_CUR();
_PrimitiveType_Conv2DFusionSCHEMA_CUR();
_PrimitiveType_TensorListGetItemSCHEMA_CUR();
_PrimitiveType_LRNSCHEMA_CUR();
_PrimitiveType_ReshapeSCHEMA_CUR();
_PrimitiveType_ConstantOfShapeSCHEMA_CUR();
_PrimitiveType_CustomPredictSCHEMA_CUR();
_PrimitiveType_PadFusionSCHEMA_CUR();
_PrimitiveType_PriorBoxSCHEMA_CUR();
_PrimitiveType_ZerosLikeSCHEMA_CUR();
_PrimitiveType_DependSCHEMA_CUR();
_PrimitiveType_UnsortedSegmentSumSCHEMA_CUR();
_PrimitiveType_TensorListSetItemSCHEMA_CUR();
_PrimitiveType_FillSCHEMA_CUR();
_PrimitiveType_RankSCHEMA_CUR();
_PrimitiveType_ClipSCHEMA_CUR();
_PrimitiveType_SpaceToDepthSCHEMA_CUR();
}

#endif
} // namespace lite
} // namespace mindspore

+ 0
- 8
mindspore/lite/src/kernel_registry.cc View File

@@ -18,7 +18,6 @@
#include "src/ops/populate/populate_register.h"
#include "src/common/version_manager.h"
#include "nnacl/pooling_parameter.h"
#include "src/ios_reg_kernels.h"
#if defined(ENABLE_FP16) && defined(ENABLE_ARM)
#if defined(__ANDROID__)
#include <asm/hwcap.h>
@@ -140,11 +139,4 @@ kernel::LiteKernel *KernelRegistry::GetKernel(const std::vector<Tensor *> &in_te
}
return nullptr;
}

#ifdef MS_COMPILE_IOS
void KernelRegistry::IosRegisterAllKernels() {
static std::once_flag flag_kernels;
std::call_once(flag_kernels, [&]() { kernel::IosRegisterKernels(); });
}
#endif
} // namespace mindspore::lite

+ 0
- 10
mindspore/lite/src/kernel_registry.h View File

@@ -47,9 +47,6 @@ class KernelRegistry {
bool SupportKernel(const kernel::KernelKey &key);
kernel::LiteKernel *GetKernel(const std::vector<Tensor *> &in_tensors, const std::vector<Tensor *> &out_tensors,
const InnerContext *ctx, const kernel::KernelKey &key, OpParameter *op_parameter);
#ifdef MS_COMPILE_IOS
void IosRegisterAllKernels();
#endif

protected:
static const int device_type_length_{kKernelArch_MAX - kKernelArch_MIN + 1};
@@ -75,15 +72,8 @@ class KernelRegistrar {
}
};

#ifdef MS_COMPILE_IOS
#define REG_KERNEL(arch, data_type, op_type, kernelCreater) \
void _##arch##data_type##op_type() { \
lite::KernelRegistry::GetInstance()->RegKernel(arch, data_type, op_type, kernelCreater); \
}
#else
#define REG_KERNEL(arch, data_type, op_type, kernelCreater) \
static KernelRegistrar g_##arch##data_type##op_type##kernelReg(arch, data_type, op_type, kernelCreater);
#endif
} // namespace mindspore::lite

#endif // MINDSPORE_LITE_SRC_KERNEL_REGISTRY_H_

+ 0
- 16
mindspore/lite/src/ops/populate/populate_register.h View File

@@ -25,9 +25,6 @@

namespace mindspore {
namespace lite {
#ifdef MS_COMPILE_IOS
void IosRegisterOps();
#endif
typedef OpParameter *(*ParameterGen)(const void *prim);
class PopulateRegistry {
public:
@@ -51,12 +48,6 @@ class PopulateRegistry {
param_creator = iter->second;
return param_creator;
}
#ifdef MS_COMPILE_IOS
void IosRegisterAllOps() {
static std::once_flag flag_ops;
std::call_once(flag_ops, [&]() { IosRegisterOps(); });
}
#endif

protected:
// key:type * 1000 + schema_version
@@ -71,15 +62,8 @@ class Registry {
~Registry() = default;
};

#ifdef MS_COMPILE_IOS
#define REG_POPULATE(primitive_type, creator, version) \
void _##primitive_type##version() { \
PopulateRegistry::GetInstance()->InsertParameterMap(primitive_type, creator, version); \
}
#else
#define REG_POPULATE(primitive_type, creator, version) \
static Registry g_##primitive_type##version(primitive_type, creator, version);
#endif

} // namespace lite
} // namespace mindspore


+ 0
- 4
mindspore/lite/src/scheduler.cc View File

@@ -58,10 +58,6 @@ constexpr int kMainSubGraphIndex = 0;
} // namespace

int Scheduler::Schedule(std::vector<kernel::LiteKernel *> *dst_kernels) {
#ifdef MS_COMPILE_IOS
PopulateRegistry::GetInstance()->IosRegisterAllOps();
KernelRegistry::GetInstance()->IosRegisterAllKernels();
#endif
if (src_model_ == nullptr) {
MS_LOG(ERROR) << "Input model is nullptr";
return RET_PARAM_INVALID;


Loading…
Cancel
Save