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);
51 cloned->dtype(node->dtype());
52 cloned->rank(node->rank());
55 switch (node->dtype())
57 case loco::DataType::FLOAT32:
58 copy_values<loco::DataType::FLOAT32>(node, cloned);
61 case loco::DataType::U4:
62 copy_values<loco::DataType::U4>(node, cloned);
65 case loco::DataType::U8:
66 copy_values<loco::DataType::U8>(node, cloned);
69 case loco::DataType::S4:
70 copy_values<loco::DataType::S4>(node, cloned);
73 case loco::DataType::S8:
74 copy_values<loco::DataType::S8>(node, cloned);
77 case loco::DataType::S16:
78 copy_values<loco::DataType::S16>(node, cloned);
81 case loco::DataType::S32:
82 copy_values<loco::DataType::S32>(node, cloned);
85 case loco::DataType::S64:
86 copy_values<loco::DataType::S64>(node, cloned);
89 case loco::DataType::BOOL:
90 copy_values<loco::DataType::BOOL>(node, cloned);
108 auto *cloned = clone_circleconst(node, node->
graph());
122 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.