[Mlir-commits] [mlir] [NVVM][MLIR] Remove Pure trait from clock, clock64, globaltimer Ops (PR #147608)

Pradeep Kumar llvmlistbot at llvm.org
Thu Jul 10 02:01:13 PDT 2025


================
@@ -153,14 +153,21 @@ class NVVM_IntrOp<string mnem, list<Trait> traits = [],
 // NVVM special register op definitions
 //===----------------------------------------------------------------------===//
 
-class NVVM_SpecialRegisterOp<string mnemonic, list<Trait> traits = []> :
+class NVVM_PureSpecialRegisterOp<string mnemonic, list<Trait> traits = []> :
   NVVM_IntrOp<mnemonic, !listconcat(traits, [Pure]), 1> {
   let arguments = (ins);
   let assemblyFormat = "attr-dict `:` type($res)";
 }
 
+// NVVM_SpecialRegisterOp represents a non-constant special register
----------------
schwarzschild-radius wrote:

>Something like having-memory-effects..
It does not have any memory effect as it is a register but it's values changes over time. Maybe we can call it volatile?

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


More information about the Mlir-commits mailing list