46 const circle::Tensor *input =
nullptr;
47 const circle::Tensor *output =
nullptr;
49 uint8_t *input_data =
nullptr;
50 uint8_t *output_data =
nullptr;
52 SISOHeader(execute_args, &input, &output, &input_data, &output_data);
56 assert(input->type() == circle::TensorType_FLOAT32);
58 switch (output->type())
61 case circle::TensorType_INT8:
63 assert(output->quantization() !=
nullptr);
64 assert(output->quantization()->scale() !=
nullptr and
65 output->quantization()->scale()->size() == 1);
66 assert(output->quantization()->zero_point() !=
nullptr and
67 output->quantization()->zero_point()->size() == 1);
69 params.
zero_point = output->quantization()->zero_point()->operator[](0);
70 params.scale = output->quantization()->scale()->operator[](0);
73 core::utils::castInputData<float>(input_data),
74 core::utils::castOutputData<int8_t>(output_data));
81 assert(
false &&
"Unsupported type.");