[all-commits] [llvm/llvm-project] 875b36: [mlir] fix MemRefToLLVM lowering of atomic operati...
ftynse via All-commits
all-commits at lists.llvm.org
Tue Jun 17 04:41:18 PDT 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 875b36a8742437b95f623bab1e0332562c7b4b3f
https://github.com/llvm/llvm-project/commit/875b36a8742437b95f623bab1e0332562c7b4b3f
Author: Oleksandr "Alex" Zinenko <git at ozinenko.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
M mlir/test/Conversion/MemRefToLLVM/memref-to-llvm.mlir
Log Message:
-----------
[mlir] fix MemRefToLLVM lowering of atomic operations (#139045)
We have been confusingly, and arguably incorrectly, lowering `m**imumf`
atomic RMW operations in the MemRef dialect to `fm**` atomic RMW
operations in the LLVM dialect, which have different NaN-propagation
semantics: `m**imumf` propagates NaNs from either operand whereas
`fm**`, which lowers to the `fm**num` intrinsic returns the non-NaN
operand. This also contradicts the lowering of `arith.m**imumf` and
`arith.m**numf` operations.
Change the lowering to match the terminology in arith.
Add tests for these lowerings.
Keep a debug message in case of surprising behavior downstream (the code
may be producing more NaNs now).
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list