struct Shape

Declaration

struct Shape { /* full declaration omitted */ };

Declared at: llvm/lib/Transforms/Coroutines/CoroInternal.h:88

Member Variables

public llvm::CoroBeginInst* CoroBegin
public SmallVector<llvm::CoroEndInst*, 4> CoroEnds
public SmallVector<llvm::CoroSizeInst*, 2> CoroSizes
public SmallVector<llvm::AnyCoroSuspendInst*, 4> CoroSuspends
public SmallVector<llvm::CallInst*, 2> SwiftErrorOps
public coro::ABI ABI
public llvm::StructType* FrameTy
public llvm::Instruction* FramePtr
public llvm::BasicBlock* AllocaSpillBlock
public anonymous struct / union

Method Overview

Methods

Shape()

Declared at: llvm/lib/Transforms/Coroutines/CoroInternal.h:234

Shape(llvm::Function& F)

Declared at: llvm/lib/Transforms/Coroutines/CoroInternal.h:235

Parameters

llvm::Function& F

void buildFrom(llvm::Function& F)

Declared at: llvm/lib/Transforms/Coroutines/CoroInternal.h:236

Parameters

llvm::Function& F

llvm::Value* emitAlloc(IRBuilder<>& Builder,
                       llvm::Value* Size,
                       llvm::CallGraph* CG) const

Description

Allocate memory according to the rules of the active lowering.

Declared at: llvm/lib/Transforms/Coroutines/CoroInternal.h:227

Parameters

IRBuilder<>& Builder
llvm::Value* Size
llvm::CallGraph* CG
- if non-null, will be updated for the new call

void emitDealloc(IRBuilder<>& Builder,
                 llvm::Value* Ptr,
                 llvm::CallGraph* CG) const

Description

Deallocate memory according to the rules of the active lowering.

Declared at: llvm/lib/Transforms/Coroutines/CoroInternal.h:232

Parameters

IRBuilder<>& Builder
llvm::Value* Ptr
llvm::CallGraph* CG
- if non-null, will be updated for the new call

unsigned int getFirstSpillFieldIndex() const

Declared at: llvm/lib/Transforms/Coroutines/CoroInternal.h:206

llvm::ConstantInt* getIndex(uint64_t Value) const

Declared at: llvm/lib/Transforms/Coroutines/CoroInternal.h:149

Parameters

uint64_t Value

llvm::IntegerType* getIndexType() const

Declared at: llvm/lib/Transforms/Coroutines/CoroInternal.h:144

llvm::AllocaInst* getPromiseAlloca() const

Declared at: llvm/lib/Transforms/Coroutines/CoroInternal.h:218

CallingConv::ID getResumeFunctionCC() const

Declared at: llvm/lib/Transforms/Coroutines/CoroInternal.h:194

llvm::FunctionType* getResumeFunctionType() const

Declared at: llvm/lib/Transforms/Coroutines/CoroInternal.h:159

llvm::AnyCoroIdRetconInst* getRetconCoroId() const

Declared at: llvm/lib/Transforms/Coroutines/CoroInternal.h:138

ArrayRef<llvm::Type*> getRetconResultTypes() const

Declared at: llvm/lib/Transforms/Coroutines/CoroInternal.h:172

ArrayRef<llvm::Type*> getRetconResumeTypes() const

Declared at: llvm/lib/Transforms/Coroutines/CoroInternal.h:185

llvm::CoroIdInst* getSwitchCoroId() const

Declared at: llvm/lib/Transforms/Coroutines/CoroInternal.h:133

llvm::PointerType* getSwitchResumePointerType()
    const

Declared at: llvm/lib/Transforms/Coroutines/CoroInternal.h:153