[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