clang
3.9.0
|
A pair of helper functions for a __block variable. More...
#include <CodeGenModule.h>
Public Member Functions | |
BlockByrefHelpers (CharUnits alignment) | |
BlockByrefHelpers (const BlockByrefHelpers &)=default | |
virtual | ~BlockByrefHelpers () |
void | Profile (llvm::FoldingSetNodeID &id) const |
virtual void | profileImpl (llvm::FoldingSetNodeID &id) const =0 |
virtual bool | needsCopy () const |
virtual void | emitCopy (CodeGenFunction &CGF, Address dest, Address src)=0 |
virtual bool | needsDispose () const |
virtual void | emitDispose (CodeGenFunction &CGF, Address field)=0 |
Public Attributes | |
llvm::Constant * | CopyHelper |
llvm::Constant * | DisposeHelper |
CharUnits | Alignment |
The alignment of the field. More... | |
A pair of helper functions for a __block variable.
Definition at line 215 of file CodeGenModule.h.
|
inline |
Definition at line 227 of file CodeGenModule.h.
|
default |
|
virtual |
Definition at line 43 of file CGBlocks.cpp.
|
pure virtual |
Referenced by generateByrefCopyHelper().
|
pure virtual |
Referenced by generateByrefDisposeHelper().
|
inlinevirtual |
Definition at line 237 of file CodeGenModule.h.
Referenced by generateByrefCopyHelper().
|
inlinevirtual |
Definition at line 240 of file CodeGenModule.h.
Referenced by generateByrefDisposeHelper().
|
inline |
Definition at line 231 of file CodeGenModule.h.
References Alignment, clang::CharUnits::getQuantity(), and profileImpl().
|
pure virtual |
Referenced by Profile().
CharUnits clang::CodeGen::BlockByrefHelpers::Alignment |
The alignment of the field.
This is important because different offsets to the field within the byref struct need to have different helper functions.
Definition at line 225 of file CodeGenModule.h.
Referenced by Profile().
llvm::Constant* clang::CodeGen::BlockByrefHelpers::CopyHelper |
Definition at line 219 of file CodeGenModule.h.
Referenced by clang::CodeGen::CodeGenFunction::emitByrefStructureInit().
llvm::Constant* clang::CodeGen::BlockByrefHelpers::DisposeHelper |
Definition at line 220 of file CodeGenModule.h.
Referenced by clang::CodeGen::CodeGenFunction::emitByrefStructureInit().