48 const circle::Tensor *input =
nullptr;
49 const circle::Tensor *output =
nullptr;
51 uint8_t *input_data =
nullptr;
52 uint8_t *output_data =
nullptr;
57 runtime_kernel.
readKernel(op_index, runtime_context);
59 input = runtime_kernel.
inputs[inputTensorIdx];
60 output = runtime_kernel.
outputs[outputTensorIdx];
62 assert(input !=
nullptr);
63 assert(output !=
nullptr);
65 status = runtime_kernel.
getDataFromStorage(op_index, runtime_storage, runtime_context);
69 input_data = runtime_kernel.
inputs_data[inputTensorIdx];
70 output_data = runtime_kernel.
outputs_data[outputTensorIdx];
72 assert(input_data !=
nullptr);
73 assert(output_data !=
nullptr);
75 switch (input->type())
78 case circle::TensorType_FLOAT32:
83 const auto *input_data_float = core::utils::castInputData<float>(input_data);
84 auto *output_data_float = core::utils::castOutputData<float>(output_data);
86 assert(output_data_float);
87 const int flat_size = input_shape.
flatSize();
89 status =
pal::Elu(flat_size, input_data_float, output_data_float);
96 assert(
false &&
"Unsupported type.");