clang 23.0.0git
cir::CIRABIRewriteContext Class Reference

CIR-specific implementation of mlir::abi::ABIRewriteContext. More...

#include "/work/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.h"

Inheritance diagram for cir::CIRABIRewriteContext:
[legend]

Public Member Functions

 CIRABIRewriteContext (mlir::ModuleOp module)
mlir::LogicalResult rewriteFunctionDefinition (mlir::FunctionOpInterface funcOp, const mlir::abi::FunctionClassification &fc, mlir::OpBuilder &builder) override
mlir::LogicalResult rewriteCallSite (mlir::Operation *callOp, const mlir::abi::FunctionClassification &fc, mlir::OpBuilder &builder) override
mlir::StringRef getDialectNamespace () const override

Detailed Description

CIR-specific implementation of mlir::abi::ABIRewriteContext.

The driver pass (CallConvLoweringPass) computes a FunctionClassification for each cir.func / cir.call and dispatches to this class to perform the actual IR rewriting using cir dialect operations.

Definition at line 34 of file CIRABIRewriteContext.h.

Constructor & Destructor Documentation

◆ CIRABIRewriteContext()

cir::CIRABIRewriteContext::CIRABIRewriteContext ( mlir::ModuleOp module)
inlineexplicit

Definition at line 36 of file CIRABIRewriteContext.h.

Member Function Documentation

◆ getDialectNamespace()

mlir::StringRef cir::CIRABIRewriteContext::getDialectNamespace ( ) const
inlineoverride

Definition at line 48 of file CIRABIRewriteContext.h.

◆ rewriteCallSite()

LogicalResult CIRABIRewriteContext::rewriteCallSite ( mlir::Operation * callOp,
const mlir::abi::FunctionClassification & fc,
mlir::OpBuilder & builder )
override

Definition at line 236 of file CIRABIRewriteContext.cpp.

◆ rewriteFunctionDefinition()

LogicalResult CIRABIRewriteContext::rewriteFunctionDefinition ( mlir::FunctionOpInterface funcOp,
const mlir::abi::FunctionClassification & fc,
mlir::OpBuilder & builder )
override

Definition at line 129 of file CIRABIRewriteContext.cpp.

References blockIdx.


The documentation for this class was generated from the following files: