18#include "kernels/Utils.h"
26 const auto input_index =
cur_op->inputs()->operator[](0);
30 assert(input_index != -1);
38 assert(input !=
nullptr);
39 assert(axis !=
nullptr);
40 assert(output !=
nullptr);
47 switch (Tensor::element_type(axis))
56 assert(
false &&
"Unsupported type.");
70 const auto input_index =
cur_op->inputs()->operator[](0);
73 assert(input_index != -1);
91 assert(input_data !=
nullptr);
92 assert(output_data !=
nullptr);
94 const size_t element_size =
getDataTypeSize(Tensor::element_type(input));
95 const int32_t num_elements = Tensor::num_elements(input);
96 std::memcpy(output_data, input_data, num_elements * element_size);
void makeInplaceOperation(const circle::Tensor *src_tensor, const circle::Tensor *dst_tensor)
uint8_t * getConstDataByTensor(const circle::Tensor *raw_tensor)
const circle::Tensor * getCircleTensorByIndex(int32_t index)
bool is_inplace_op(const circle::Operator *op)
uint8_t * getDataByTensor(const circle::Tensor *raw_tensor)
#define LUCI_INTERPRETER_CHECK(cond)
void execute_kernel_CircleExpandDims(const circle::Operator *cur_op, BaseRuntimeGraph *runtime_graph)
size_t getDataTypeSize(DataType data_type)
void configure_kernel_CircleExpandDims(const circle::Operator *cur_op, BaseRuntimeGraph *runtime_graph)
T must_cast(loco::Node *node)