[Mlir-commits] [mlir] [MLIR][NVVM] Fix the lowering of legacy mbar.arrive_drop (PR #222916)
Dhairyashil R G
llvmlistbot at llvm.org
Fri Sep 11 06:06:58 PDT 2026
dhairyashilRG wrote:
@durga4github Thanks for the pointer, I've updated the description (email as well).
No, I didn't hit this in a real workload. I was checking, for each mbarrier op, whether what it lowers to is selectable at sm_80. `arrive_drop` was the only one where a legacy sm_80 intrinsic exists but the op never uses it, the other ops either already lower to something selectable at sm_80, or have no legacy form at all so their sm_90 requirement is real.
It does reproduce:
```mlir
llvm.func @k(%b: !llvm.ptr<3>) {
%0 = nvvm.mbarrier.arrive_drop %b : !llvm.ptr<3> -> i64
llvm.return
}
```
```
$ mlir-translate -mlir-to-llvmir t.mlir | llc -mtriple=nvptx64 -mcpu=sm_80
LLVM ERROR: Cannot select: intrinsic %llvm.nvvm.mbarrier.arrive.drop.scope.cta.space.cta
```
So it's the same gap as the `arrive` one, and as far as I can tell the last of its kind here. It's a small fix, happy to close it if you'd rather not take it.
https://github.com/llvm/llvm-project/pull/222916
More information about the Mlir-commits
mailing list