123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206 |
- /*
- * Copyright (C) 2016-2022 T-Head Semiconductor Co., Ltd. All rights reserved.
- *
- * SPDX-License-Identifier: Apache-2.0
- *
- * 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
- *
- * 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.
- */
- /* CSI-NN2 version 2.0.x */
- #ifndef INCLUDE_SHL_REF_H_
- #define INCLUDE_SHL_REF_H_
- #include "csi_nn.h"
- #include "shl_utils.h"
- #ifdef __cplusplus
- extern "C" {
- #endif
- int shl_ref_abs_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_abs_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_acos_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_acos_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_acosh_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_acosh_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_add_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_add_u8(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_add_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_add_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_and_u32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_and_u8(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_and_i8(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_arange_f32(struct csinn_tensor *output, struct csinn_arange_params *params);
- int shl_ref_arange_quant(struct csinn_tensor *output, struct csinn_arange_params *params);
- int shl_ref_argmax_stride_i32_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_argmax_stride_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_argmin_stride_i32_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_argmin_stride_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_asin_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_asin_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_asinh_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_asinh_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_atan_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_atan_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_atanh_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_atanh_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_avgpool2d_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_pool_params *params);
- int shl_ref_avgpool2d_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_pool_params *params);
- int shl_ref_avgpool3d_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_pool_params *params);
- int shl_ref_avgpool3d_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_pool_params *params);
- int shl_ref_batch_normalization_f32(struct csinn_tensor *input, struct csinn_tensor *mean,
- struct csinn_tensor *variance, struct csinn_tensor *gamma,
- struct csinn_tensor *beta, struct csinn_tensor *output,
- struct csinn_bn_params *params);
- int shl_ref_batch_normalization_quant(struct csinn_tensor *input, struct csinn_tensor *mean,
- struct csinn_tensor *variance, struct csinn_tensor *gamma,
- struct csinn_tensor *beta, struct csinn_tensor *output,
- struct csinn_bn_params *params);
- int shl_ref_batch_to_space_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_batch_to_space_params *params);
- int shl_ref_batch_to_space_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_batch_to_space_params *params);
- int shl_ref_broadcast_to_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_broadcast_to_params *params);
- int shl_ref_broadcast_to_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_broadcast_to_params *params);
- int shl_ref_ceil_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_ceil_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_clip_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_clip_params *params);
- int shl_ref_clip_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_clip_params *params);
- int shl_ref_col2im_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_col2im_params *params);
- int shl_ref_concat_f32(struct csinn_tensor **input, struct csinn_tensor *output,
- struct csinn_concat_params *params);
- int shl_ref_concat_quant(struct csinn_tensor **input, struct csinn_tensor *output,
- struct csinn_concat_params *params);
- int shl_ref_conv1d_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv1d_params *params);
- int shl_ref_conv1d_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv1d_params *params);
- int shl_ref_conv2d_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_conv2d_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_conv2d_channel_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_conv2d_relu_f32(struct csinn_tensor *o_input, struct csinn_tensor *o_output,
- struct csinn_tensor *o_kernel, struct csinn_tensor *o_bias,
- struct csinn_conv2d_params *params);
- int shl_ref_conv2d_relu_quant(struct csinn_tensor *o_input, struct csinn_tensor *o_output,
- struct csinn_tensor *o_kernel, struct csinn_tensor *o_bias,
- struct csinn_conv2d_params *params);
- int shl_ref_cache_matmul_init(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *weight, struct csinn_tensor *bias,
- struct csinn_cache_matmul_params *params);
- int shl_ref_cache_matmul_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *weight, struct csinn_tensor *bias,
- struct csinn_cache_matmul_params *params);
- int shl_ref_cache_matmul_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *weight, struct csinn_tensor *bias,
- struct csinn_cache_matmul_params *params);
- int shl_ref_cache_conv1d_init(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *weight, struct csinn_tensor *bias,
- struct csinn_cache_conv1d_params *params);
- int shl_ref_cache_conv1d_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *weight, struct csinn_tensor *bias,
- struct csinn_cache_conv1d_params *params);
- int shl_ref_cache_conv1d_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *weight, struct csinn_tensor *bias,
- struct csinn_cache_conv1d_params *params);
- int shl_ref_conv2d_channel_relu_quant(struct csinn_tensor *o_input, struct csinn_tensor *o_output,
- struct csinn_tensor *o_kernel, struct csinn_tensor *o_bias,
- struct csinn_conv2d_params *params);
- int shl_ref_conv2d_relu6_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_conv2d_channel_relu6_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_depthwise_conv2d_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_depthwise_conv2d_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_depthwise_conv2d_channel_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_depthwise_conv2d_relu_f32(struct csinn_tensor *o_input, struct csinn_tensor *o_output,
- struct csinn_tensor *o_kernel, struct csinn_tensor *o_bias,
- struct csinn_conv2d_params *params);
- int shl_ref_depthwise_conv2d_relu_quant(struct csinn_tensor *o_input, struct csinn_tensor *o_output,
- struct csinn_tensor *o_kernel, struct csinn_tensor *o_bias,
- struct csinn_conv2d_params *params);
- int shl_ref_depthwise_conv2d_channel_relu_quant(struct csinn_tensor *o_input,
- struct csinn_tensor *o_output,
- struct csinn_tensor *o_kernel,
- struct csinn_tensor *o_bias,
- struct csinn_conv2d_params *params);
- int shl_ref_depthwise_conv2d_relu6_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_depthwise_conv2d_channel_relu6_quant(struct csinn_tensor *input,
- struct csinn_tensor *output,
- struct csinn_tensor *kernel,
- struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_group_conv2d_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_group_conv2d_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_group_conv2d_channel_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_group_conv2d_relu_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_group_conv2d_relu6_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_group_conv2d_channel_relu_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_conv3d_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv3d_params *params);
- int shl_ref_conv3d_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv3d_params *params);
- int shl_ref_cos_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_cos_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_cosh_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_cosh_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_cumprod_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_cumprod_params *params);
- int shl_ref_cumprod_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_cumprod_params *params);
- int shl_ref_cumsum_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_cumsum_params *params);
- int shl_ref_cumsum_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_cumsum_params *params);
- int shl_ref_data_convert_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_data_convert_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_deconv2d_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_deconv2d_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_depthwise_deconv2d_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_depthwise_deconv2d_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv2d_params *params);
- int shl_ref_deconv3d_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv3d_params *params);
- int shl_ref_deconv3d_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias,
- struct csinn_conv3d_params *params);
- int shl_ref_depth_to_space_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_depth_to_space_params *params);
- int shl_ref_depth_to_space_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_depth_to_space_params *params);
- int shl_ref_div_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_div_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_elu_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_relu_params *params);
- int shl_ref_elu_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_relu_params *params);
- int shl_ref_fsmn_f32(struct csinn_tensor *frame, struct csinn_tensor *l_filter,
- struct csinn_tensor *r_filter, struct csinn_tensor *frame_sequence,
- struct csinn_tensor *frame_counter, struct csinn_tensor *output,
- struct csinn_fsmn_params *params);
- int shl_ref_fsmn_quant(struct csinn_tensor *frame, struct csinn_tensor *l_filter,
- struct csinn_tensor *r_filter, struct csinn_tensor *frame_sequence,
- struct csinn_tensor *frame_counter, struct csinn_tensor *output,
- struct csinn_fsmn_params *params);
- int shl_ref_equal_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_equal_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_erf_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_erf_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_exp_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_exp_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_expand_dims_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_expand_dims_params *params);
- int shl_ref_expand_dims_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_expand_dims_params *params);
- int shl_ref_expm1_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_expm1_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_flatten(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_flatten_params *params);
- int shl_ref_flatten_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_flatten_params *params);
- int shl_ref_floor_divide_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_floor_divide_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_floor_mod_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_floor_mod_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_floor_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_floor_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_fullyconnected_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *weights, struct csinn_tensor *bias,
- struct csinn_fc_params *params);
- int shl_ref_fullyconnected_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *weights, struct csinn_tensor *bias,
- struct csinn_fc_params *params);
- int shl_ref_gather_nd_f32(struct csinn_tensor *input, struct csinn_tensor *indices,
- struct csinn_tensor *output, struct csinn_gather_nd_params *params);
- int shl_ref_gather_nd_quant(struct csinn_tensor *input, struct csinn_tensor *indices,
- struct csinn_tensor *output, struct csinn_gather_nd_params *params);
- int shl_ref_gather_f32(struct csinn_tensor *input, struct csinn_tensor *indices,
- struct csinn_tensor *output, struct csinn_gather_params *params);
- int shl_ref_gather_quant(struct csinn_tensor *input, struct csinn_tensor *indices,
- struct csinn_tensor *output, struct csinn_gather_params *params);
- int shl_ref_global_avgpool2d_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_pool_params *params);
- int shl_ref_global_avgpool2d_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_pool_params *params);
- int shl_ref_global_maxpool2d_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_pool_params *params);
- int shl_ref_global_maxpool2d_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_pool_params *params);
- int shl_ref_greater_equal_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_greater_equal_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_greater_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_greater_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_hard_sigmoid_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_sigmoid_params *params);
- int shl_ref_hard_sigmoid_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_sigmoid_params *params);
- int shl_ref_im2col_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_im2col_params *params);
- int shl_ref_im2col_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_im2col_params *params);
- int shl_ref_isnan_bool_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_l2_normalization_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_l2n_params *params);
- int shl_ref_l2_normalization_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_l2n_params *params);
- int shl_ref_l2pool_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_pool_params *params);
- int shl_ref_layer_norm_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *gamma, struct csinn_tensor *beta,
- struct csinn_layer_norm_params *params);
- int shl_ref_layer_norm_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *gamma, struct csinn_tensor *beta,
- struct csinn_layer_norm_params *params);
- int shl_ref_leaky_relu_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_relu_params *params);
- int shl_ref_leaky_relu_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_relu_params *params);
- int shl_ref_less_equal_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_less_equal_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_less_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_less_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_log_softmax_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_softmax_params *params);
- int shl_ref_log_softmax_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_softmax_params *params);
- int shl_ref_log_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_log_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_log1p_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_log1p_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_logical_and_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_logical_and_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_logical_not_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_logical_not_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_logical_or_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_logical_or_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_logical_xor_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_logical_xor_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_lrn_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_lrn_params *params);
- int shl_ref_lrn_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_lrn_params *params);
- int shl_ref_matmul_f32(struct csinn_tensor *mat0, struct csinn_tensor *mat1,
- struct csinn_tensor *output, struct csinn_matmul_params *params);
- int shl_ref_matmul_quant(struct csinn_tensor *mat0, struct csinn_tensor *mat1,
- struct csinn_tensor *output, struct csinn_matmul_params *params);
- int shl_ref_max_stride_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_max_stride_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_maximum_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_maximum_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_maxpool2d_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_pool_params *params);
- int shl_ref_maxpool2d_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_pool_params *params);
- int shl_ref_maxpool2d_locat_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_pool_params *params);
- int shl_ref_maxpool2d_locat_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_pool_params *params);
- int shl_ref_maxpool3d_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_pool_params *params);
- int shl_ref_maxpool3d_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_pool_params *params);
- int shl_ref_mean_stride_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_mean_stride_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_mean_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_min_stride_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_min_stride_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_minimum_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_minimum_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_mod_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_mod_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_mul_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_mul_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_ndarray_size_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_ndarray_size_params *params);
- int shl_ref_ndarray_size_u8(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_ndarray_size_params *params);
- int shl_ref_ndarray_size_i8(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_ndarray_size_params *params);
- int shl_ref_ndarray_size_i32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_ndarray_size_params *params);
- int shl_ref_negative_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_negative_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_non_max_suppression_std(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output,
- struct csinn_non_max_suppression_params *params);
- int shl_ref_not_equal_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_not_equal_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_not_u32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_not_u8(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_not_i8(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_or_u32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_or_u8(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_or_i8(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_pad_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_pad_params *params);
- int shl_ref_pad_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_pad_params *params);
- int shl_ref_power_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_power_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_prelu_f32(struct csinn_tensor *input, struct csinn_tensor *alpha,
- struct csinn_tensor *output, struct csinn_prelu_params *params);
- int shl_ref_prelu_quant(struct csinn_tensor *input, struct csinn_tensor *alpha,
- struct csinn_tensor *output, struct csinn_prelu_params *params);
- int shl_ref_prod_stride_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_prod_stride_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_proposal_f32(struct csinn_tensor *cls_prob, struct csinn_tensor *bbox_pred,
- struct csinn_tensor *im_info, struct csinn_tensor *output,
- struct csinn_proposal_params *params);
- int shl_ref_proposal_quant(struct csinn_tensor *cls_prob, struct csinn_tensor *bbox_pred,
- struct csinn_tensor *im_info, struct csinn_tensor *output,
- struct csinn_proposal_params *params);
- int shl_ref_psroipooling_f32(struct csinn_tensor *data, struct csinn_tensor *rois,
- struct csinn_tensor *output, struct csinn_psroipooling_params *params);
- int shl_ref_psroipooling_quant(struct csinn_tensor *data, struct csinn_tensor *rois,
- struct csinn_tensor *output,
- struct csinn_psroipooling_params *params);
- int shl_ref_reduce_logsumexp_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_reduce_logsumexp_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_reduce_max_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_reduce_max_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_reduce_mean_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_reduce_mean_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_reduce_min_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_reduce_min_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_reduce_prod_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_reduce_prod_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_reduce_sum_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_reduce_sum_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_relu_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_relu_params *params);
- int shl_ref_relu_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_relu_params *params);
- int shl_ref_relu1_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_relu_params *params);
- int shl_ref_relu1_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_relu_params *params);
- int shl_ref_relu6_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_relu_params *params);
- int shl_ref_relu6_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_relu_params *params);
- int shl_ref_relun_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_relu_params *params);
- int shl_ref_relun_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_relu_params *params);
- int shl_ref_reshape(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reshape_params *params);
- int shl_ref_reshape_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reshape_params *params);
- int shl_ref_resize_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_resize_params *params);
- int shl_ref_resize_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_resize_params *params);
- int shl_ref_reverse_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reverse_params *params);
- int shl_ref_reverse_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reverse_params *params);
- int shl_ref_roi_align_f32(struct csinn_tensor *data, struct csinn_tensor *rois,
- struct csinn_tensor *output, struct csinn_roi_align_params *params);
- int shl_ref_roipool_f32(struct csinn_tensor *data, struct csinn_tensor *rois,
- struct csinn_tensor *output, struct csinn_roi_pool_params *params);
- int shl_ref_roipool_quant(struct csinn_tensor *data, struct csinn_tensor *rois,
- struct csinn_tensor *output, struct csinn_roi_pool_params *params);
- int shl_ref_round_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_round_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_rsqrt_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_rsqrt_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_scatter_nd_f32(struct csinn_tensor *input, struct csinn_tensor *indices,
- struct csinn_tensor *updates, struct csinn_tensor *output,
- struct csinn_scatter_nd_params *params);
- int shl_ref_scatter_nd_quant(struct csinn_tensor *input, struct csinn_tensor *indices,
- struct csinn_tensor *updates, struct csinn_tensor *output,
- struct csinn_scatter_nd_params *params);
- int shl_ref_unsorted_segment_max_f32(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output,
- struct csinn_segment_params *params);
- int shl_ref_segment_max_f32(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output, struct csinn_segment_params *params);
- int shl_ref_unsorted_segment_max_quant(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output,
- struct csinn_segment_params *params);
- int shl_ref_segment_max_quant(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output, struct csinn_segment_params *params);
- int shl_ref_unsorted_segment_mean_f32(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output,
- struct csinn_segment_params *params);
- int shl_ref_segment_mean_f32(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output, struct csinn_segment_params *params);
- int shl_ref_unsorted_segment_mean_quant(struct csinn_tensor *input,
- struct csinn_tensor *segment_ids,
- struct csinn_tensor *output,
- struct csinn_segment_params *params);
- int shl_ref_segment_mean_quant(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output, struct csinn_segment_params *params);
- int shl_ref_unsorted_segment_min_f32(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output,
- struct csinn_segment_params *params);
- int shl_ref_segment_min_f32(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output, struct csinn_segment_params *params);
- int shl_ref_unsorted_segment_min_quant(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output,
- struct csinn_segment_params *params);
- int shl_ref_segment_min_quant(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output, struct csinn_segment_params *params);
- int shl_ref_unsorted_segment_prod_f32(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output,
- struct csinn_segment_params *params);
- int shl_ref_segment_prod_f32(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output, struct csinn_segment_params *params);
- int shl_ref_unsorted_segment_prod_quant(struct csinn_tensor *input,
- struct csinn_tensor *segment_ids,
- struct csinn_tensor *output,
- struct csinn_segment_params *params);
- int shl_ref_segment_prod_quant(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output, struct csinn_segment_params *params);
- int shl_ref_unsorted_segment_sum_f32(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output,
- struct csinn_segment_params *params);
- int shl_ref_segment_sum_f32(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output, struct csinn_segment_params *params);
- int shl_ref_unsorted_segment_sum_quant(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output,
- struct csinn_segment_params *params);
- int shl_ref_segment_sum_quant(struct csinn_tensor *input, struct csinn_tensor *segment_ids,
- struct csinn_tensor *output, struct csinn_segment_params *params);
- int shl_ref_select_f32(struct csinn_tensor *condition, struct csinn_tensor *input0,
- struct csinn_tensor *input1, struct csinn_tensor *output,
- struct csinn_select_params *params);
- int shl_ref_select_u8(struct csinn_tensor *condition, struct csinn_tensor *input0,
- struct csinn_tensor *input1, struct csinn_tensor *output,
- struct csinn_select_params *params);
- int shl_ref_select_i8(struct csinn_tensor *condition, struct csinn_tensor *input0,
- struct csinn_tensor *input1, struct csinn_tensor *output,
- struct csinn_select_params *params);
- int shl_ref_shape_i32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_shape_params *params);
- int shl_ref_shape_u8(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_shape_params *params);
- int shl_ref_shape_i8(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_shape_params *params);
- int shl_ref_shuffle_channel_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_shuffle_channel_params *params);
- int shl_ref_shuffle_channel_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_shuffle_channel_params *params);
- int shl_ref_sigmoid_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_sigmoid_params *params);
- int shl_ref_sigmoid_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_sigmoid_params *params);
- int shl_ref_sign_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_sign_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_sin_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_sin_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_sinh_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_sinh_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_slice_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_slice_params *params);
- int shl_ref_slice_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_slice_params *params);
- int shl_ref_softmax_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_softmax_params *params);
- int shl_ref_softmax_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_softmax_params *params);
- int shl_ref_softplus_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_softplus_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_softrelu_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_relu_params *params);
- int shl_ref_softrelu_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_relu_params *params);
- int shl_ref_softsign_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_softsign_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_space_to_batch_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_space_to_batch_params *params);
- int shl_ref_space_to_batch_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_space_to_batch_params *params);
- int shl_ref_space_to_depth_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_space_to_depth_params *params);
- int shl_ref_space_to_depth_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_space_to_depth_params *params);
- int shl_ref_split_f32(struct csinn_tensor *input, struct csinn_tensor **output,
- struct csinn_split_params *params);
- int shl_ref_split_quant(struct csinn_tensor *input, struct csinn_tensor **output,
- struct csinn_split_params *params);
- int shl_ref_sqrt_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_sqrt_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_square_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_squeeze(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_squeeze_params *params);
- int shl_ref_stack_f32(struct csinn_tensor **input, struct csinn_tensor *output,
- struct csinn_stack_params *params);
- int shl_ref_stack_quant(struct csinn_tensor **input, struct csinn_tensor *output,
- struct csinn_stack_params *params);
- int shl_ref_strided_slice_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_strided_slice_params *params);
- int shl_ref_strided_slice_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_strided_slice_params *params);
- int shl_ref_sub_f32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_sub_quant(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_sum_stride_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_sum_stride_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reduce_params *params);
- int shl_ref_tan_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_tan_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_tanh_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_tanh_f64(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_tanh_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_threshold_relu_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_relu_params *params);
- int shl_ref_threshold_relu_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_relu_params *params);
- int shl_ref_tile_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tile_params *params);
- int shl_ref_tile_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tile_params *params);
- int shl_ref_topk_f32(struct csinn_tensor *input, struct csinn_tensor *output1,
- struct csinn_tensor *output2, struct csinn_topk_params *params);
- int shl_ref_topk_quant(struct csinn_tensor *input, struct csinn_tensor *output1,
- struct csinn_tensor *output2, struct csinn_topk_params *params);
- int shl_ref_transpose(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_transpose_params *params);
- int shl_ref_transpose_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_transpose_params *params);
- int shl_ref_trunc_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_trunc_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_unpooling_f32(struct csinn_tensor *input, struct csinn_tensor *mask,
- struct csinn_tensor *output, struct csinn_unpooling_params *params);
- int shl_ref_unpooling_quant(struct csinn_tensor *input, struct csinn_tensor *mask,
- struct csinn_tensor *output, struct csinn_unpooling_params *params);
- int shl_ref_unstack_f32(struct csinn_tensor *input, struct csinn_tensor **output,
- struct csinn_unstack_params *params);
- int shl_ref_unstack_qunat(struct csinn_tensor *input, struct csinn_tensor **output,
- struct csinn_unstack_params *params);
- int shl_ref_xor_u32(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_xor_u8(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_xor_i8(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params);
- int shl_ref_yuv_rgb_scale_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int shl_ref_yuv_rgb_scale_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_siso_params *params);
- int32_t shl_ref_max_internal_s32(int32_t a, int32_t b);
- int32_t shl_ref_min_internal_s32(int32_t a, int32_t b);
- int32_t shl_ref_get_index(int32_t *dim, int32_t index0, int32_t index1, int32_t index2,
- int32_t index3);
- int32_t shl_ref_get_index_5(int32_t *dim, int32_t index0, int32_t index1, int32_t index2,
- int32_t index3, int32_t index4);
- int32_t shl_ref_get_index_iter(int32_t *dim, int dim_count, int32_t *index);
- float shl_ref_get_scale(int32_t multiplier, int32_t shift);
- float shl_ref_dequantize_u8_to_f32(uint8_t input, struct csinn_quant_info *qinfo);
- float shl_ref_dequantize_i8_to_f32(int8_t input, struct csinn_quant_info *qinfo);
- uint8_t shl_ref_quantize_f32_to_u8(float input, struct csinn_quant_info *qinfo);
- int8_t shl_ref_quantize_f32_to_i8(float input, struct csinn_quant_info *qinfo);
- uint8_t shl_ref_quantize_channel_u8(int32_t data, struct csinn_tensor *input,
- struct csinn_tensor *output, float wscale);
- int8_t shl_ref_quantize_channel_i8(int32_t data, struct csinn_tensor *input,
- struct csinn_tensor *output, float wscale);
- float shl_ref_uint8_to_float(uint8_t i, struct csinn_tensor *t);
- float shl_ref_int8_to_float(int8_t i, struct csinn_tensor *t);
- int16_t shl_ref_float32_to_float16(float value);
- float shl_ref_float16_to_float32(int16_t value);
- int16_t shl_ref_float32_to_bfloat16(float value);
- float shl_ref_bfloat16_to_float32(int16_t value);
- struct csinn_tensor *shl_ref_nchw_to_nhwc_8(struct csinn_tensor *t);
- void shl_ref_nhwc_to_nchw_8(struct csinn_tensor *nt, struct csinn_tensor *t);
- struct csinn_tensor *shl_ref_deconv_kernel_nchw_to_nhwc_f32(struct csinn_tensor *t,
- int32_t permute[4]);
- struct csinn_tensor *shl_ref_nchw_to_nhwc_f32(struct csinn_tensor *t);
- void shl_ref_nhwc_to_nchw_f32(struct csinn_tensor *nt, struct csinn_tensor *t);
- int32_t shl_ref_get_reduction_index(int32_t k, const int32_t *strides, const int32_t *extents,
- int32_t n);
- struct csinn_tensor *shl_ref_alloc_float_tensor(struct csinn_tensor *src);
- void shl_ref_free_float_tensor(struct csinn_tensor *src);
- struct csinn_tensor *shl_ref_convert_float_tensor(struct csinn_tensor *src);
- void shl_ref_conv_free_float_tensor(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias);
- struct csinn_tensor *shl_ref_tensor_transform_f32(struct csinn_tensor *input);
- int shl_ref_tensor_transform_free_f32(struct csinn_tensor *input);
- uint8_t *shl_ref_f32_to_input_dtype(uint32_t index, float *data, struct csinn_session *sess);
- struct shl_ref_diso_callback {
- void (*bc)();
- struct csinn_tensor *input0;
- struct csinn_tensor *input1;
- struct csinn_tensor *output;
- int32_t *input_dim;
- };
- int shl_ref_diso_broadcast_base(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, struct csinn_diso_params *params,
- struct shl_ref_diso_callback *cb);
- int shl_ref_broadcast_to_shape(struct csinn_tensor *input, struct csinn_tensor *output,
- int32_t *shape, int32_t shape_count);
- int shl_ref_broadcast_to_shape_f32(struct csinn_tensor *input, struct csinn_tensor *output,
- int32_t *shape, int32_t shape_count);
- int shl_ref_broadcast_to_shape_quant(struct csinn_tensor *input, struct csinn_tensor *output,
- int32_t *shape, int32_t shape_count);
- int shl_ref_siso_callback_base(struct csinn_tensor *input, struct csinn_tensor *output,
- void *params, void *cb);
- int shl_ref_diso_callback_base(struct csinn_tensor *input0, struct csinn_tensor *input1,
- struct csinn_tensor *output, void *params, void *cb);
- int shl_ref_conv_callback_base(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_tensor *kernel, struct csinn_tensor *bias, void *params,
- void *cb);
- void shl_ref_nn_init(struct csinn_tensor *input, struct csinn_tensor *output);
- void shl_ref_nn_deinit(struct csinn_tensor *input, struct csinn_tensor *output);
- int shl_ref_flatten_init(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reshape_params *params);
- int shl_ref_reshape_init(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_reshape_params *params);
- int shl_ref_transpose_init(struct csinn_tensor *input, struct csinn_tensor *output,
- struct csinn_transpose_params *params);
- void asr_buffer_init(struct csinn_asr_buffer_t *buffer, size_t buffer_size, size_t data_lenth);
- void *asr_buffer_insert_front(struct csinn_asr_buffer_t *buffer, void *input, size_t len);
- void *asr_buffer_insert_back(struct csinn_asr_buffer_t *buffer, void *input, size_t len);
- void *asr_buffer_get_buffer(struct csinn_asr_buffer_t *buffer);
- void asr_buffer_reset(struct csinn_asr_buffer_t *buffer);
- #ifdef __cplusplus
- }
- #endif
- #endif // INCLUDE_SHL_REF_H_
|