[Mlir-commits] [mlir] [MLIR][NVVM] Add definition for nvvm dialect (PR #156807)

Mehdi Amini llvmlistbot at llvm.org
Thu Sep 4 08:21:42 PDT 2025


================
@@ -35,6 +35,46 @@ def LLVM_PointerSharedCluster : LLVM_PointerInAddressSpace<7>;
 //===----------------------------------------------------------------------===//
 
 def NVVM_Dialect : Dialect {
+  let summary = "The NVVM dialect that models NVIDIA's public ISA";
+
+  let description = [{
+  The NVVM dialect is MLIR's LLVM-IR-based, NVIDIA-specific backend dialect. It
+  models NVVM intrinsics and public ISA functionality and introduces NVIDIA
+  extensions to the LLVM type system and address spaces (e.g., global, shared,
+  and cluster memory), enabling faithful lowering of GPU kernels to the NVPTX
+  toolchain. Many ops have a one-to-many mapping to NVVM/PTX: a single overloaded op
+  emits one intrinsic, selected by its operand types.
----------------
joker-eph wrote:

```suggestion
  toolchain. While a NVVM op maps to a single LLVM IR intrinsics, the NVVM dialect uses type
  polymorphism and other attributes that make it so that a NVVM op can map to different LLVM 
  intrinsics.
```


I'm trying to avoid the "one-to-many" which is confusing since we aim to 1-1 in terms of cardinality.

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


More information about the Mlir-commits mailing list