LLVM 22.0.0git
CoroInternal.h File Reference

Go to the source code of this file.

Classes

struct  llvm::coro::LowererBase

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
namespace  llvm::coro

Functions

bool llvm::coro::isSuspendBlock (BasicBlock *BB)
bool llvm::coro::declaresAnyIntrinsic (const Module &M)
bool llvm::coro::declaresIntrinsics (const Module &M, ArrayRef< Intrinsic::ID > List)
void llvm::coro::replaceCoroFree (CoroIdInst *CoroId, bool Elide)
void llvm::coro::suppressCoroAllocs (CoroIdInst *CoroId)
 Replaces all @llvm.coro.alloc intrinsics calls associated with a given call @llvm.coro.id instruction with boolean value false.
void llvm::coro::suppressCoroAllocs (LLVMContext &Context, ArrayRef< CoroAllocInst * > CoroAllocs)
 Replaces CoroAllocs with boolean value false.
void llvm::coro::salvageDebugInfo (SmallDenseMap< Argument *, AllocaInst *, 4 > &ArgToAllocaMap, DbgVariableRecord &DVR, bool UseEntryValue)
 Attempts to rewrite the location operand of debug records in terms of the coroutine frame pointer, folding pointer offsets into the DIExpression of the intrinsic.
bool llvm::coro::defaultMaterializable (Instruction &V)
 Default materializable callback.
void llvm::coro::normalizeCoroutine (Function &F, coro::Shape &Shape, TargetTransformInfo &TTI)
CallInstllvm::coro::createMustTailCall (DebugLoc Loc, Function *MustTailCallFn, TargetTransformInfo &TTI, ArrayRef< Value * > Arguments, IRBuilder<> &)