================
@@ -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
----------------
Lancern wrote:
Updated. I added a more detailed description of the `TargetLowering` pass, the
`CXXABILowering` pass, and the not-yet-implemented `CallConvLowering` pass here.
https://github.com/llvm/llvm-project/pull/179245
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits