================
@@ -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