================
@@ -83,15 +83,25 @@ def GotoSolver : Pass<"cir-goto-solver"> {
 }
 
 def CXXABILowering : Pass<"cir-cxxabi-lowering", "mlir::ModuleOp"> {
-  let summary = "Lower abstract C++ operations to target-specific ABI form";
+  let summary = "Lower CIR according to ABI requirements";
   let description = [{
-    This pass lowers high-level operations that represent C++ constructs in a
-    target-independent way to concrete, target specific operations.
+    This pass lowers CIR operations and types that represent high-level C/C++
+    constructs to a more "fundamental" form according to the target ABI
+    requirements.
   }];
   let constructor = "mlir::createCXXABILoweringPass()";
   let dependentDialects = ["cir::CIRDialect"];
 }
 
+def TargetLowering : Pass<"cir-target-lowering", "mlir::ModuleOp"> {
+  let summary = "Lower CIR to a target-specific form";
+  let description = [{
+    This pass lowers CIR operations from a target-agnostic form to a
----------------
andykaylor wrote:

It would be helpful to have a more verbose description that would, for example, 
help one understand the difference between this, the CXXABI lowering pass, and 
the forthcoming calling convention lowering pass.

https://github.com/llvm/llvm-project/pull/179245
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to