[clang] [CIR] Upstream support for break and continue statements (PR #134181)

Erich Keane via cfe-commits cfe-commits at lists.llvm.org
Thu Apr 3 18:07:56 PDT 2025


================
@@ -569,6 +569,36 @@ def YieldOp : CIR_Op<"yield", [ReturnLike, Terminator,
   ];
 }
 
+//===----------------------------------------------------------------------===//
+// BreakOp
+//===----------------------------------------------------------------------===//
+
+def BreakOp : CIR_Op<"break", [Terminator]> {
+  let summary = "C/C++ `break` statement equivalent";
+  let description = [{
+    The `cir.break` operation is used to cease the execution of the current
+    loop or switch and transfer control to the parent operation. It is only
----------------
erichkeane wrote:

```suggestion
    loop and switch and transfer control to the parent operation. It is only
```

I think?

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


More information about the cfe-commits mailing list