[Mlir-commits] [mlir] [MLIR][Linalg] More Linalg named ops (PR #90236)
Renato Golin
llvmlistbot at llvm.org
Fri Apr 26 15:07:24 PDT 2024
================
@@ -395,6 +395,26 @@ class RegionBuilderHelper {
return builder.create<math::FloorOp>(arg.getLoc(), arg);
case UnaryFn::negf:
return builder.create<arith::NegFOp>(arg.getLoc(), arg);
+ case UnaryFn::reciprocal:
+ {
+ Attribute oneAttr = builder.getNumberAttr(1.0, arg.getType());
+ auto one = builder.create<arith::ConstantOp>(arg.getLoc(), ::cast<TypedAttr>(oneAttr));
+ return builder.create<arith::DivFOp>(arg.getLoc(), one, arg);
+ }
+ case UnaryFn::round:
+ return builder.create<math::RoundOp>(arg.getLoc(), arg);
+ case UnaryFn::sqrt:
+ return builder.create<math::SqrtOp>(arg.getLoc(), arg);
+ case UnaryFn::rsqrt:
+ return builder.create<math::RsqrtOp>(arg.getLoc(), arg);
+ case UnaryFn::square:
+ {
+ Attribute twoAttr = builder.getNumberAttr(2.0, arg.getType());
+ auto two = builder.create<arith::ConstantOp>(arg.getLoc(), ::cast<TypedAttr>(twoAttr));
+ return builder.create<math::PowFOp>(arg.getLoc(), arg, two);
----------------
rengolin wrote:
Yeah, I was working on pow then square together, but it didn't work. I'll change to x*x that is way simpler.
https://github.com/llvm/llvm-project/pull/90236
More information about the Mlir-commits
mailing list