@@ -38,6 +38,7 @@ namespace refactor::onnx {
3838 opType == " onnx::Neg" ? Ty::Neg :
3939 opType == " onnx::Identity" ? Ty::Identity:
4040 opType == " onnx::HardSwish" ? Ty::HardSwish :
41+ opType == " onnx::Exp" ? Ty::Exp :
4142 UNREACHABLEX (Ty, " Unsupported unary operator: {}" , opType);
4243 // clang-format on
4344
@@ -134,6 +135,10 @@ namespace refactor::onnx {
134135 static uint8_t ID = 22 ;
135136 return reinterpret_cast <size_t >(&ID);
136137 }
138+ case Ty::Exp: {
139+ static uint8_t ID = 23 ;
140+ return reinterpret_cast <size_t >(&ID);
141+ }
137142 default :
138143 UNREACHABLE ();
139144 }
@@ -165,6 +170,7 @@ namespace refactor::onnx {
165170 case Ty::Neg : return " onnx::Neg" ;
166171 case Ty::Identity : return " onnx::Identity" ;
167172 case Ty::HardSwish : return " onnx::HardSwish" ;
173+ case Ty::Exp : return " onnx::Exp" ;
168174 default : UNREACHABLE ();
169175 }
170176 // clang-format on
@@ -194,7 +200,7 @@ namespace refactor::onnx {
194200 Ty::Cos, Ty::Cosh,
195201 Ty::Sin, Ty::Sinh,
196202 Ty::Tan, Ty::HardSwish},
197- {Ty::Tanh, Ty::Sqrt, Ty::Sigmoid, Ty::Log},
203+ {Ty::Tanh, Ty::Sqrt, Ty::Sigmoid, Ty::Log, Ty::Exp },
198204 {Ty::Neg},
199205 {Ty::Identity}};
200206 if (SET[0 ].contains (type)) {
@@ -294,6 +300,7 @@ namespace refactor::onnx {
294300 case Ty::Neg : type_ = Ty_::Neg ; break ;
295301 case Ty::Identity : return std::make_unique<computation::Identity>();
296302 case Ty::HardSwish : type_ = Ty_::HardSwish ; break ;
303+ case Ty::Exp : type_ = Ty_::Exp ; break ;
297304 default : UNREACHABLE ();
298305 }
299306 // clang-format on
0 commit comments