33template <loco::DataType T>
36 assert(T == node->dtype());
37 assert(T == cloned->dtype());
41 for (uint32_t i = 0; i <
size; i++)
42 cloned->
at<T>(i) = node->
at<T>(i);
49 if (cloned !=
nullptr)
52 cloned->dtype(node->dtype());
53 cloned->rank(node->rank());
56 switch (node->dtype())
58 case loco::DataType::FLOAT32:
59 copy_values<loco::DataType::FLOAT32>(node, cloned);
62 case loco::DataType::U4:
63 copy_values<loco::DataType::U4>(node, cloned);
66 case loco::DataType::U8:
67 copy_values<loco::DataType::U8>(node, cloned);
70 case loco::DataType::S4:
71 copy_values<loco::DataType::S4>(node, cloned);
74 case loco::DataType::S8:
75 copy_values<loco::DataType::S8>(node, cloned);
78 case loco::DataType::S16:
79 copy_values<loco::DataType::S16>(node, cloned);
82 case loco::DataType::S32:
83 copy_values<loco::DataType::S32>(node, cloned);
86 case loco::DataType::S64:
87 copy_values<loco::DataType::S64>(node, cloned);
90 case loco::DataType::BOOL:
91 copy_values<loco::DataType::BOOL>(node, cloned);
109 auto *cloned = clone_circleconst(node, node->
graph());
123 return clone_circleconst(node, _graph);
Class to build tensor data.
const loco::DataTypeImpl< DT >::Type & at(uint32_t n) const
uint32_t size(void) const
void copy_common_attributes(const luci::CircleNode *src, luci::CircleNode *dst)
Copy common attributes of CircleNode from src to dst.
luci::CircleConst * clone(luci::CircleConst *node)
Return cloned object of CircleConst node.