[Mlir-commits] [mlir] [mlir][ComplexToLLVM] Fix abs op fmf propagation (PR #222621)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Thu Sep 10 05:02:55 PDT 2026
llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-mlir
Author: Mattéo Rizza Murgier (matteo-rm)
<details>
<summary>Changes</summary>
---
Full diff: https://github.com/llvm/llvm-project/pull/222621.diff
2 Files Affected:
- (modified) mlir/lib/Conversion/ComplexToLLVM/ComplexToLLVM.cpp (+1-1)
- (modified) mlir/test/Conversion/ComplexToLLVM/convert-to-llvm.mlir (+1-1)
``````````diff
diff --git a/mlir/lib/Conversion/ComplexToLLVM/ComplexToLLVM.cpp b/mlir/lib/Conversion/ComplexToLLVM/ComplexToLLVM.cpp
index 74acbe325c656..cbe5820300f82 100644
--- a/mlir/lib/Conversion/ComplexToLLVM/ComplexToLLVM.cpp
+++ b/mlir/lib/Conversion/ComplexToLLVM/ComplexToLLVM.cpp
@@ -83,7 +83,7 @@ struct AbsOpConversion : public ConvertOpToLLVMPattern<complex::AbsOp> {
rewriter, loc, LLVM::FMulOp::create(rewriter, loc, real, real, fmf),
LLVM::FMulOp::create(rewriter, loc, imag, imag, fmf), fmf);
- rewriter.replaceOpWithNewOp<LLVM::SqrtOp>(op, sqNorm);
+ rewriter.replaceOpWithNewOp<LLVM::SqrtOp>(op, sqNorm, fmf);
return success();
}
};
diff --git a/mlir/test/Conversion/ComplexToLLVM/convert-to-llvm.mlir b/mlir/test/Conversion/ComplexToLLVM/convert-to-llvm.mlir
index c2f627af5d407..5305ca2de4d36 100644
--- a/mlir/test/Conversion/ComplexToLLVM/convert-to-llvm.mlir
+++ b/mlir/test/Conversion/ComplexToLLVM/convert-to-llvm.mlir
@@ -270,7 +270,7 @@ func.func @complex_mul_with_fmf(%lhs: complex<f32>, %rhs: complex<f32>) -> compl
// CHECK-DAG: %[[REAL_SQ:.*]] = llvm.fmul %[[REAL]], %[[REAL]] fastmath<contract> : f32
// CHECK-DAG: %[[IMAG_SQ:.*]] = llvm.fmul %[[IMAG]], %[[IMAG]] fastmath<contract> : f32
// CHECK: %[[SQ_NORM:.*]] = llvm.fadd %[[REAL_SQ]], %[[IMAG_SQ]] fastmath<contract> : f32
-// CHECK: %[[NORM:.*]] = llvm.intr.sqrt(%[[SQ_NORM]]) : (f32) -> f32
+// CHECK: %[[NORM:.*]] = llvm.intr.sqrt(%[[SQ_NORM]]) fastmath<contract> : (f32) -> f32
// CHECK: return %[[NORM]] : f32
func.func @complex_abs_with_fmf(%arg: complex<f32>) -> f32 {
%abs = complex.abs %arg fastmath<contract> : complex<f32>
``````````
</details>
https://github.com/llvm/llvm-project/pull/222621
More information about the Mlir-commits
mailing list