diff options
author | Chunseok Lee <chunseok.lee@samsung.com> | 2021-04-20 18:01:41 +0900 |
---|---|---|
committer | Chunseok Lee <chunseok.lee@samsung.com> | 2021-04-20 18:01:41 +0900 |
commit | 589bb1db6db6784efe21b3fbbfbfdb79aaa5f14e (patch) | |
tree | 47a2b23ce4220e3a4150c8b12ed941555272fb0c /compiler/tflite2circle/src/BuildBuiltinOptions | |
parent | 62529acabbafce7730601ed01d5709d7bc0d378a (diff) | |
download | nnfw-589bb1db6db6784efe21b3fbbfbfdb79aaa5f14e.tar.gz nnfw-589bb1db6db6784efe21b3fbbfbfdb79aaa5f14e.tar.bz2 nnfw-589bb1db6db6784efe21b3fbbfbfdb79aaa5f14e.zip |
Imported Upstream version 1.15.0upstream/1.15.0submit/tizen/20210427.093759submit/tizen/20210423.055448submit/tizen/20210422.015846submit/tizen/20210421.062230accepted/tizen/unified/20210428.040443
Diffstat (limited to 'compiler/tflite2circle/src/BuildBuiltinOptions')
19 files changed, 158 insertions, 18 deletions
diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/AddOptions.cpp b/compiler/tflite2circle/src/BuildBuiltinOptions/AddOptions.cpp index f93a0f21f..5bdb1020a 100644 --- a/compiler/tflite2circle/src/BuildBuiltinOptions/AddOptions.cpp +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/AddOptions.cpp @@ -29,7 +29,7 @@ flatbuffers::Offset<circle::AddOptions> build_circle_AddOptions(flatbuffers::Fla assert(tflite_builtin_options); circle::AddOptionsBuilder builtin_options_builder{fb}; builtin_options_builder.add_fused_activation_function( - get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); + get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); return builtin_options_builder.Finish(); } diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/ArgMaxOptions.cpp b/compiler/tflite2circle/src/BuildBuiltinOptions/ArgMaxOptions.cpp index 0ccdde4cb..ac0044a8f 100644 --- a/compiler/tflite2circle/src/BuildBuiltinOptions/ArgMaxOptions.cpp +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/ArgMaxOptions.cpp @@ -29,7 +29,7 @@ build_circle_ArgMaxOptions(flatbuffers::FlatBufferBuilder &fb, const tflite::Ope assert(tflite_builtin_options); circle::ArgMaxOptionsBuilder builtin_options_builder{fb}; builtin_options_builder.add_output_type( - get_circle_tensortype(tflite_builtin_options->output_type())); + get_circle_tensortype(tflite_builtin_options->output_type())); return builtin_options_builder.Finish(); } diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/ArgMinOptions.cpp b/compiler/tflite2circle/src/BuildBuiltinOptions/ArgMinOptions.cpp index 204558df8..3011c8b65 100644 --- a/compiler/tflite2circle/src/BuildBuiltinOptions/ArgMinOptions.cpp +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/ArgMinOptions.cpp @@ -29,7 +29,7 @@ build_circle_ArgMinOptions(flatbuffers::FlatBufferBuilder &fb, const tflite::Ope assert(tflite_builtin_options); circle::ArgMinOptionsBuilder builtin_options_builder{fb}; builtin_options_builder.add_output_type( - get_circle_tensortype(tflite_builtin_options->output_type())); + get_circle_tensortype(tflite_builtin_options->output_type())); return builtin_options_builder.Finish(); } diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/BidirectionalSequenceLSTMOptions.cpp b/compiler/tflite2circle/src/BuildBuiltinOptions/BidirectionalSequenceLSTMOptions.cpp new file mode 100644 index 000000000..2a6cf171b --- /dev/null +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/BidirectionalSequenceLSTMOptions.cpp @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2020 Samsung Electronics Co., Ltd. All Rights Reserved + * + * 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. + */ + +#include "BidirectionalSequenceLSTMOptions.h" +#include "DataLookup.h" + +#include <cassert> + +namespace tflite2circle +{ + +flatbuffers::Offset<circle::BidirectionalSequenceLSTMOptions> +build_circle_BidirectionalSequenceLSTMOptions(flatbuffers::FlatBufferBuilder &fb, + const tflite::Operator *op) +{ + auto tflite_builtin_options = op->builtin_options_as_BidirectionalSequenceLSTMOptions(); + circle::BidirectionalSequenceLSTMOptionsBuilder builtin_options_builder{fb}; + builtin_options_builder.add_fused_activation_function( + get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); + builtin_options_builder.add_cell_clip(tflite_builtin_options->cell_clip()); + builtin_options_builder.add_proj_clip(tflite_builtin_options->proj_clip()); + builtin_options_builder.add_time_major(tflite_builtin_options->time_major()); + builtin_options_builder.add_merge_outputs(tflite_builtin_options->merge_outputs()); + builtin_options_builder.add_asymmetric_quantize_inputs( + tflite_builtin_options->asymmetric_quantize_inputs()); + return builtin_options_builder.Finish(); +} + +} // namespace tflite2circle diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/BidirectionalSequenceLSTMOptions.h b/compiler/tflite2circle/src/BuildBuiltinOptions/BidirectionalSequenceLSTMOptions.h new file mode 100644 index 000000000..7b77b1cea --- /dev/null +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/BidirectionalSequenceLSTMOptions.h @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2020 Samsung Electronics Co., Ltd. All Rights Reserved + * + * 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 __BBO_BIDIRECTIONALSEQUENCE_LSTM_OPTIONS_H__ +#define __BBO_BIDIRECTIONALSEQUENCE_LSTM_OPTIONS_H__ + +#include <mio/tflite/schema_generated.h> +#include <mio/circle/schema_generated.h> + +namespace tflite2circle +{ + +flatbuffers::Offset<circle::BidirectionalSequenceLSTMOptions> +build_circle_BidirectionalSequenceLSTMOptions(flatbuffers::FlatBufferBuilder &fb, + const tflite::Operator *op); + +} // namespace tflite2circle + +#endif // __BBO_BIDIRECTIONALSEQUENCE_LSTM_OPTIONS_H__ diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/CastOptions.cpp b/compiler/tflite2circle/src/BuildBuiltinOptions/CastOptions.cpp index bc1445248..0f2422c05 100644 --- a/compiler/tflite2circle/src/BuildBuiltinOptions/CastOptions.cpp +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/CastOptions.cpp @@ -31,9 +31,9 @@ build_circle_CastOptions(flatbuffers::FlatBufferBuilder &fb, const tflite::Opera circle::CastOptionsBuilder builtin_options_builder{fb}; builtin_options_builder.add_in_data_type( - get_circle_tensortype(tflite_builtin_options->in_data_type())); + get_circle_tensortype(tflite_builtin_options->in_data_type())); builtin_options_builder.add_out_data_type( - get_circle_tensortype(tflite_builtin_options->out_data_type())); + get_circle_tensortype(tflite_builtin_options->out_data_type())); return builtin_options_builder.Finish(); } diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/ConcatenationOptions.cpp b/compiler/tflite2circle/src/BuildBuiltinOptions/ConcatenationOptions.cpp index 933e7cf66..becc63bf6 100644 --- a/compiler/tflite2circle/src/BuildBuiltinOptions/ConcatenationOptions.cpp +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/ConcatenationOptions.cpp @@ -30,7 +30,7 @@ build_circle_ConcatenationOptions(flatbuffers::FlatBufferBuilder &fb, const tfli circle::ConcatenationOptionsBuilder builtin_options_builder{fb}; builtin_options_builder.add_axis(tflite_builtin_options->axis()); builtin_options_builder.add_fused_activation_function( - get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); + get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); return builtin_options_builder.Finish(); } diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/Conv2DOptions.cpp b/compiler/tflite2circle/src/BuildBuiltinOptions/Conv2DOptions.cpp index ace63dd26..ec0cffeda 100644 --- a/compiler/tflite2circle/src/BuildBuiltinOptions/Conv2DOptions.cpp +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/Conv2DOptions.cpp @@ -32,7 +32,7 @@ build_circle_Conv2DOptions(flatbuffers::FlatBufferBuilder &fb, const tflite::Ope builtin_options_builder.add_stride_w(tflite_builtin_options->stride_w()); builtin_options_builder.add_stride_h(tflite_builtin_options->stride_h()); builtin_options_builder.add_fused_activation_function( - get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); + get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); builtin_options_builder.add_dilation_w_factor(tflite_builtin_options->dilation_w_factor()); builtin_options_builder.add_dilation_h_factor(tflite_builtin_options->dilation_h_factor()); return builtin_options_builder.Finish(); diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/DepthwiseConv2DOptions.cpp b/compiler/tflite2circle/src/BuildBuiltinOptions/DepthwiseConv2DOptions.cpp index 2aa35abc6..910a6ead9 100644 --- a/compiler/tflite2circle/src/BuildBuiltinOptions/DepthwiseConv2DOptions.cpp +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/DepthwiseConv2DOptions.cpp @@ -33,7 +33,7 @@ build_circle_DepthwiseConv2DOptions(flatbuffers::FlatBufferBuilder &fb, const tf builtin_options_builder.add_stride_h(tflite_builtin_options->stride_h()); builtin_options_builder.add_depth_multiplier(tflite_builtin_options->depth_multiplier()); builtin_options_builder.add_fused_activation_function( - get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); + get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); builtin_options_builder.add_dilation_w_factor(tflite_builtin_options->dilation_w_factor()); builtin_options_builder.add_dilation_h_factor(tflite_builtin_options->dilation_h_factor()); return builtin_options_builder.Finish(); diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/DivOptions.cpp b/compiler/tflite2circle/src/BuildBuiltinOptions/DivOptions.cpp index 4272fe144..3678928a5 100644 --- a/compiler/tflite2circle/src/BuildBuiltinOptions/DivOptions.cpp +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/DivOptions.cpp @@ -29,7 +29,7 @@ flatbuffers::Offset<circle::DivOptions> build_circle_DivOptions(flatbuffers::Fla assert(tflite_builtin_options); circle::DivOptionsBuilder builtin_options_builder{fb}; builtin_options_builder.add_fused_activation_function( - get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); + get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); return builtin_options_builder.Finish(); } diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/FakeQuantOptions.cpp b/compiler/tflite2circle/src/BuildBuiltinOptions/FakeQuantOptions.cpp new file mode 100644 index 000000000..e38600f82 --- /dev/null +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/FakeQuantOptions.cpp @@ -0,0 +1,35 @@ +/* + * Copyright (c) 2021 Samsung Electronics Co., Ltd. All Rights Reserved + * + * 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. + */ + +#include "FillOptions.h" + +namespace tflite2circle +{ + +flatbuffers::Offset<circle::FakeQuantOptions> +build_circle_FakeQuantOptions(flatbuffers::FlatBufferBuilder &fb, const tflite::Operator *op) +{ + auto tflite_builtin_options = op->builtin_options_as_FakeQuantOptions(); + assert(tflite_builtin_options); + circle::FakeQuantOptionsBuilder builtin_options_builder{fb}; + builtin_options_builder.add_min(tflite_builtin_options->min()); + builtin_options_builder.add_max(tflite_builtin_options->max()); + builtin_options_builder.add_num_bits(tflite_builtin_options->num_bits()); + builtin_options_builder.add_narrow_range(tflite_builtin_options->narrow_range()); + return builtin_options_builder.Finish(); +} + +} // namespace tflite2circle diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/FakeQuantOptions.h b/compiler/tflite2circle/src/BuildBuiltinOptions/FakeQuantOptions.h new file mode 100644 index 000000000..1f5f12b86 --- /dev/null +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/FakeQuantOptions.h @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2021 Samsung Electronics Co., Ltd. All Rights Reserved + * + * 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 __BBO_FAKEQUANT_OPTIONS_H__ +#define __BBO_FAKEQUANT_OPTIONS_H__ + +#include <mio/tflite/schema_generated.h> +#include <mio/circle/schema_generated.h> + +namespace tflite2circle +{ + +flatbuffers::Offset<circle::FillOptions> +build_circle_FakeQuantOptions(flatbuffers::FlatBufferBuilder &fb, const tflite::Operator *op); + +} // namespace tflite2circle + +#endif // __BBO_FAKEQUANT_OPTIONS_H__ diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/FullyConnectedOptions.cpp b/compiler/tflite2circle/src/BuildBuiltinOptions/FullyConnectedOptions.cpp index 098a96a40..2619b73eb 100644 --- a/compiler/tflite2circle/src/BuildBuiltinOptions/FullyConnectedOptions.cpp +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/FullyConnectedOptions.cpp @@ -29,14 +29,14 @@ build_circle_FullyConnectedOptions(flatbuffers::FlatBufferBuilder &fb, const tfl assert(tflite_builtin_options); circle::FullyConnectedOptionsBuilder builtin_options_builder{fb}; builtin_options_builder.add_fused_activation_function( - get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); + get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); // Get FullyConnectedOptionsWeightsFormat auto tflite_weight_format = tflite_builtin_options->weights_format(); if (tflite_weight_format == tflite::FullyConnectedOptionsWeightsFormat_DEFAULT) builtin_options_builder.add_weights_format(circle::FullyConnectedOptionsWeightsFormat_DEFAULT); else if (tflite_weight_format == tflite::FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8) builtin_options_builder.add_weights_format( - circle::FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8); + circle::FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8); return builtin_options_builder.Finish(); } diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/L2NormalizeOptions.cpp b/compiler/tflite2circle/src/BuildBuiltinOptions/L2NormalizeOptions.cpp index d58aed83d..f5121a811 100644 --- a/compiler/tflite2circle/src/BuildBuiltinOptions/L2NormalizeOptions.cpp +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/L2NormalizeOptions.cpp @@ -29,7 +29,7 @@ build_circle_L2NormOptions(flatbuffers::FlatBufferBuilder &fb, const tflite::Ope assert(tflite_builtin_options); circle::L2NormOptionsBuilder builtin_options_builder{fb}; builtin_options_builder.add_fused_activation_function( - get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); + get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); return builtin_options_builder.Finish(); } diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/MulOptions.cpp b/compiler/tflite2circle/src/BuildBuiltinOptions/MulOptions.cpp index 009daea8b..3d4b9deb5 100644 --- a/compiler/tflite2circle/src/BuildBuiltinOptions/MulOptions.cpp +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/MulOptions.cpp @@ -29,7 +29,7 @@ flatbuffers::Offset<circle::MulOptions> build_circle_MulOptions(flatbuffers::Fla assert(tflite_builtin_options); circle::MulOptionsBuilder builtin_options_builder{fb}; builtin_options_builder.add_fused_activation_function( - get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); + get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); return builtin_options_builder.Finish(); } diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/Pool2DOptions.cpp b/compiler/tflite2circle/src/BuildBuiltinOptions/Pool2DOptions.cpp index 6b0bd1288..d796eadfa 100644 --- a/compiler/tflite2circle/src/BuildBuiltinOptions/Pool2DOptions.cpp +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/Pool2DOptions.cpp @@ -34,7 +34,7 @@ build_circle_Pool2DOptions(flatbuffers::FlatBufferBuilder &fb, const tflite::Ope builtin_options_builder.add_filter_width(tflite_builtin_options->filter_width()); builtin_options_builder.add_filter_height(tflite_builtin_options->filter_height()); builtin_options_builder.add_fused_activation_function( - get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); + get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); return builtin_options_builder.Finish(); } diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/SubOptions.cpp b/compiler/tflite2circle/src/BuildBuiltinOptions/SubOptions.cpp index 2e55f4dab..982f3fd68 100644 --- a/compiler/tflite2circle/src/BuildBuiltinOptions/SubOptions.cpp +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/SubOptions.cpp @@ -29,7 +29,7 @@ flatbuffers::Offset<circle::SubOptions> build_circle_SubOptions(flatbuffers::Fla assert(tflite_builtin_options); circle::SubOptionsBuilder builtin_options_builder{fb}; builtin_options_builder.add_fused_activation_function( - get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); + get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); return builtin_options_builder.Finish(); } diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/UnidirectionalSequenceLSTMOptions.cpp b/compiler/tflite2circle/src/BuildBuiltinOptions/UnidirectionalSequenceLSTMOptions.cpp index 64ceb5a74..6e8143be9 100644 --- a/compiler/tflite2circle/src/BuildBuiltinOptions/UnidirectionalSequenceLSTMOptions.cpp +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/UnidirectionalSequenceLSTMOptions.cpp @@ -29,12 +29,12 @@ build_circle_UnidirectionalSequenceLSTMOptions(flatbuffers::FlatBufferBuilder &f auto tflite_builtin_options = op->builtin_options_as_UnidirectionalSequenceLSTMOptions(); circle::UnidirectionalSequenceLSTMOptionsBuilder builtin_options_builder{fb}; builtin_options_builder.add_fused_activation_function( - get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); + get_circle_activation_function_type(tflite_builtin_options->fused_activation_function())); builtin_options_builder.add_cell_clip(tflite_builtin_options->cell_clip()); builtin_options_builder.add_proj_clip(tflite_builtin_options->proj_clip()); builtin_options_builder.add_time_major(tflite_builtin_options->time_major()); builtin_options_builder.add_asymmetric_quantize_inputs( - tflite_builtin_options->asymmetric_quantize_inputs()); + tflite_builtin_options->asymmetric_quantize_inputs()); return builtin_options_builder.Finish(); } diff --git a/compiler/tflite2circle/src/BuildBuiltinOptions/UniqueOptions.cpp b/compiler/tflite2circle/src/BuildBuiltinOptions/UniqueOptions.cpp index 96ddc15ad..f7ddeffcb 100644 --- a/compiler/tflite2circle/src/BuildBuiltinOptions/UniqueOptions.cpp +++ b/compiler/tflite2circle/src/BuildBuiltinOptions/UniqueOptions.cpp @@ -29,7 +29,7 @@ build_circle_UniqueOptions(flatbuffers::FlatBufferBuilder &fb, const tflite::Ope assert(tflite_builtin_options); circle::UniqueOptionsBuilder builtin_options_builder{fb}; builtin_options_builder.add_idx_out_type( - get_circle_tensortype(tflite_builtin_options->idx_out_type())); + get_circle_tensortype(tflite_builtin_options->idx_out_type())); return builtin_options_builder.Finish(); } |