|
clang 24.0.0git
|
Produces the classification CallConvLowering rewrites a signature from. More...
Public Member Functions | |
| virtual | ~CIRABIClassifier ()=default |
| virtual std::optional< mlir::abi::FunctionClassification > | classifyFunction (cir::FuncOp func)=0 |
Classify func's declared signature. | |
| virtual std::optional< mlir::abi::FunctionClassification > | classifyVariadicCall (cir::CIRCallOpInterface call, cir::FuncOp callee)=0 |
Classify a direct call to the variadic function callee that passes arguments through the ellipsis. | |
| virtual std::optional< mlir::abi::FunctionClassification > | classifyIndirectCall (cir::CIRCallOpInterface call)=0 |
Classify call, whose callee is resolved at run time, from the signature its callee pointer points to. | |
| virtual std::optional< mlir::abi::ArgClassification > | classifyVAArg (cir::VAArgOp vaArg)=0 |
Classify the type fetched by vaArg as an unnamed argument with a full register budget. | |
Produces the classification CallConvLowering rewrites a signature from.
A subclass supplies one target's rules, or one of the two test drivers that stand in for a target. The pass holds a single instance for the whole module. Each method returns std::nullopt after emitting an error on the operation it was given, including for an operation the subclass does not support yet.
Definition at line 64 of file CIRABIClassifier.h.
|
virtualdefault |
|
pure virtual |
Classify func's declared signature.
Implemented in cir::CIRABIClassifierCommon.
|
pure virtual |
Classify call, whose callee is resolved at run time, from the signature its callee pointer points to.
Implemented in cir::CIRABIClassifierCommon.
|
pure virtual |
Classify the type fetched by vaArg as an unnamed argument with a full register budget.
|
pure virtual |
Classify a direct call to the variadic function callee that passes arguments through the ellipsis.
The classification covers every operand of call, and classifies the declared parameters the same way as classifyFunction(callee).
Implemented in cir::CIRABIClassifierCommon.