[Mlir-commits] [mlir] [mlir][spirv] Update math.powf lowering (PR #111388)

Jakub Kuderski llvmlistbot at llvm.org
Mon Oct 7 13:16:40 PDT 2024


================
@@ -377,40 +377,40 @@ struct PowFOpPattern final : public OpConversionPattern<math::PowFOp> {
     // Get int type of the same shape as the float type.
     Type scalarIntType = rewriter.getIntegerType(32);
     Type intType = scalarIntType;
-    if (auto vectorType = dyn_cast<VectorType>(adaptor.getRhs().getType())) {
+    auto exponentType = adaptor.getRhs().getType();
+    if (auto vectorType = dyn_cast<VectorType>(exponentType)) {
       auto shape = vectorType.getShape();
       intType = VectorType::get(shape, scalarIntType);
     }
 
     // Per GL Pow extended instruction spec:
     // "Result is undefined if x < 0. Result is undefined if x = 0 and y <= 0."
     Location loc = powfOp.getLoc();
-    Value zero =
-        spirv::ConstantOp::getZero(adaptor.getLhs().getType(), loc, rewriter);
+    auto baseType = adaptor.getLhs().getType();
----------------
kuhar wrote:

Isn't LHS required to be the same as the RHS? https://mlir.llvm.org/docs/Dialects/MathOps/#mathpowf-mathpowfop

https://github.com/llvm/llvm-project/pull/111388


More information about the Mlir-commits mailing list