File tree Expand file tree Collapse file tree 2 files changed +26
-1
lines changed
include/mlir/Dialect/LLVMIR Expand file tree Collapse file tree 2 files changed +26
-1
lines changed Original file line number Diff line number Diff line change @@ -2101,6 +2101,23 @@ def NVVM_WgmmaMmaAsyncOp : NVVM_Op<"wgmma.mma_async",
2101
2101
}];
2102
2102
}
2103
2103
2104
+ //===----------------------------------------------------------------------===//
2105
+ // NVVM breakpoint Op
2106
+ //===----------------------------------------------------------------------===//
2107
+
2108
+ def NVVM_Breakpoint : NVVM_Op<"breakpoint"> {
2109
+ let summary = "Breakpoint Op";
2110
+ let description = [{
2111
+ Breakpoint suspends execution of the program for debugging.
2112
+ [For more information, see PTX ISA](https://docs.nvidia.com/cuda/parallel-thread-execution/index.html#miscellaneous-instructions-brkpt)
2113
+ }];
2114
+ string llvmBuilder = [{
2115
+ createIntrinsicCall(builder, llvm::Intrinsic::debugtrap);
2116
+ }];
2117
+
2118
+ let assemblyFormat = "attr-dict";
2119
+ }
2120
+
2104
2121
//===----------------------------------------------------------------------===//
2105
2122
// NVVM target attribute.
2106
2123
//===----------------------------------------------------------------------===//
Original file line number Diff line number Diff line change @@ -610,4 +610,12 @@ llvm.func @nvvm_fence_proxy_tensormap_generic_acquire(%addr : !llvm.ptr) {
610
610
// CHECK: call void @llvm.nvvm.fence.proxy.tensormap_generic.acquire.sys(ptr {{%[0-9]+}}, i32 128)
611
611
nvvm.fence.proxy.acquire #nvvm.mem_scope <sys > %addr , %c128
612
612
llvm.return
613
- }
613
+ }
614
+
615
+ // -----
616
+ // CHECK-LABEL: @nvvm_breakpoint
617
+ llvm.func @nvvm_breakpoint () {
618
+ // CHECK: call void @llvm.debugtrap()
619
+ nvvm.breakpoint
620
+ llvm.return
621
+ }
You can’t perform that action at this time.
0 commit comments