================
@@ -5366,6 +5366,48 @@ def CIR_CatchParamOp : CIR_Op<"catch_param",
[HasParent<"cir::TryOp">]> {
let hasLLVMLowering = false;
}
+//===----------------------------------------------------------------------===//
+// CatchParamFlatOp
+//===----------------------------------------------------------------------===//
+
+def CIR_FlatCatchParamKind : CIR_I32EnumAttr<
+ "FlatCatchParamKind", "Designate limits for begin/end of catch param
handling", [
+ I32EnumAttrCase<"Begin", 0, "begin">,
+ I32EnumAttrCase<"End", 1, "end">
+]>;
+
+def CIR_CatchParamFlatOp : CIR_Op<"catch_param.flat"> {
+ let summary = "A flattened version of `cir.catch_param`";
+ let description = [{
+ The `cir.catch_param.flat` operation is a region-less and simplified
+ version of the `cir.catch_param`.
----------------
xlauko wrote:
```suggestion
version of the `cir.catch_param`. It is used to retrieve the exception
object inside lowered `try` control flow.
```
https://github.com/llvm/llvm-project/pull/172713
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits