LLVM 22.0.0git
llvm::coro::AsyncABI Class Reference

#include "llvm/Transforms/Coroutines/ABI.h"

Inheritance diagram for llvm::coro::AsyncABI:
[legend]

Public Member Functions

 AsyncABI (Function &F, coro::Shape &S, std::function< bool(Instruction &)> IsMaterializable)
void init () override
void splitCoroutine (Function &F, coro::Shape &Shape, SmallVectorImpl< Function * > &Clones, TargetTransformInfo &TTI) override
Public Member Functions inherited from llvm::coro::BaseABI
 BaseABI (Function &F, coro::Shape &S, std::function< bool(Instruction &)> IsMaterializable)
virtual ~BaseABI ()=default
virtual void buildCoroutineFrame (bool OptimizeFrame)

Additional Inherited Members

Public Attributes inherited from llvm::coro::BaseABI
FunctionF
coro::ShapeShape
std::function< bool(Instruction &I)> IsMaterializable

Detailed Description

Definition at line 80 of file ABI.h.

Constructor & Destructor Documentation

◆ AsyncABI()

llvm::coro::AsyncABI::AsyncABI ( Function & F,
coro::Shape & S,
std::function< bool(Instruction &)> IsMaterializable )
inline

Member Function Documentation

◆ init()

void coro::AsyncABI::init ( )
overridevirtual

Implements llvm::coro::BaseABI.

Definition at line 389 of file Coroutines.cpp.

References assert(), llvm::coro::Async, and llvm::coro::BaseABI::Shape.

◆ splitCoroutine()


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