clang  10.0.0svn
Functions
Descriptor.cpp File Reference
#include "Descriptor.h"
#include "Pointer.h"
#include "PrimType.h"
#include "Record.h"
Include dependency graph for Descriptor.cpp:

Go to the source code of this file.

Functions

template<typename T >
static void ctorTy (Block *, char *Ptr, bool, bool, bool, Descriptor *)
 
template<typename T >
static void dtorTy (Block *, char *Ptr, Descriptor *)
 
template<typename T >
static void moveTy (Block *, char *Src, char *Dst, Descriptor *)
 
template<typename T >
static void ctorArrayTy (Block *, char *Ptr, bool, bool, bool, Descriptor *D)
 
template<typename T >
static void dtorArrayTy (Block *, char *Ptr, Descriptor *D)
 
template<typename T >
static void moveArrayTy (Block *, char *Src, char *Dst, Descriptor *D)
 
static void ctorArrayDesc (Block *B, char *Ptr, bool IsConst, bool IsMutable, bool IsActive, Descriptor *D)
 
static void dtorArrayDesc (Block *B, char *Ptr, Descriptor *D)
 
static void moveArrayDesc (Block *B, char *Src, char *Dst, Descriptor *D)
 
static void ctorRecord (Block *B, char *Ptr, bool IsConst, bool IsMutable, bool IsActive, Descriptor *D)
 
static void dtorRecord (Block *B, char *Ptr, Descriptor *D)
 
static void moveRecord (Block *B, char *Src, char *Dst, Descriptor *D)
 
static BlockCtorFn getCtorPrim (PrimType Type)
 
static BlockDtorFn getDtorPrim (PrimType Type)
 
static BlockMoveFn getMovePrim (PrimType Type)
 
static BlockCtorFn getCtorArrayPrim (PrimType Type)
 
static BlockDtorFn getDtorArrayPrim (PrimType Type)
 
static BlockMoveFn getMoveArrayPrim (PrimType Type)
 

Function Documentation

◆ ctorArrayDesc()

static void ctorArrayDesc ( Block B,
char *  Ptr,
bool  IsConst,
bool  IsMutable,
bool  IsActive,
Descriptor D 
)
static

◆ ctorArrayTy()

template<typename T >
static void ctorArrayTy ( Block ,
char *  Ptr,
bool  ,
bool  ,
bool  ,
Descriptor D 
)
static

Definition at line 34 of file Descriptor.cpp.

References clang::interp::Descriptor::getNumElems(), and clang::interp::NE().

◆ ctorRecord()

static void ctorRecord ( Block B,
char *  Ptr,
bool  IsConst,
bool  IsMutable,
bool  IsActive,
Descriptor D 
)
static

◆ ctorTy()

template<typename T >
static void ctorTy ( Block ,
char *  Ptr,
bool  ,
bool  ,
bool  ,
Descriptor  
)
static

Definition at line 18 of file Descriptor.cpp.

◆ dtorArrayDesc()

static void dtorArrayDesc ( Block B,
char *  Ptr,
Descriptor D 
)
static

◆ dtorArrayTy()

template<typename T >
static void dtorArrayTy ( Block ,
char *  Ptr,
Descriptor D 
)
static

Definition at line 41 of file Descriptor.cpp.

References clang::interp::Descriptor::getNumElems(), and clang::interp::NE().

◆ dtorRecord()

static void dtorRecord ( Block B,
char *  Ptr,
Descriptor D 
)
static

◆ dtorTy()

template<typename T >
static void dtorTy ( Block ,
char *  Ptr,
Descriptor  
)
static

Definition at line 22 of file Descriptor.cpp.

Referenced by emitGlobalDtorWithCXAAtExit().

◆ getCtorArrayPrim()

static BlockCtorFn getCtorArrayPrim ( PrimType  Type)
static

Definition at line 176 of file Descriptor.cpp.

References COMPOSITE_TYPE_SWITCH.

◆ getCtorPrim()

static BlockCtorFn getCtorPrim ( PrimType  Type)
static

Definition at line 164 of file Descriptor.cpp.

References COMPOSITE_TYPE_SWITCH.

◆ getDtorArrayPrim()

static BlockDtorFn getDtorArrayPrim ( PrimType  Type)
static

Definition at line 180 of file Descriptor.cpp.

References COMPOSITE_TYPE_SWITCH.

◆ getDtorPrim()

static BlockDtorFn getDtorPrim ( PrimType  Type)
static

Definition at line 168 of file Descriptor.cpp.

References COMPOSITE_TYPE_SWITCH.

◆ getMoveArrayPrim()

static BlockMoveFn getMoveArrayPrim ( PrimType  Type)
static

Definition at line 184 of file Descriptor.cpp.

References COMPOSITE_TYPE_SWITCH.

◆ getMovePrim()

static BlockMoveFn getMovePrim ( PrimType  Type)
static

Definition at line 172 of file Descriptor.cpp.

References COMPOSITE_TYPE_SWITCH.

◆ moveArrayDesc()

static void moveArrayDesc ( Block B,
char *  Src,
char *  Dst,
Descriptor D 
)
static

◆ moveArrayTy()

template<typename T >
static void moveArrayTy ( Block ,
char *  Src,
char *  Dst,
Descriptor D 
)
static

Definition at line 48 of file Descriptor.cpp.

References clang::interp::Descriptor::getNumElems(), and clang::interp::NE().

◆ moveRecord()

static void moveRecord ( Block B,
char *  Src,
char *  Dst,
Descriptor D 
)
static

◆ moveTy()

template<typename T >
static void moveTy ( Block ,
char *  Src,
char *  Dst,
Descriptor  
)
static

Definition at line 27 of file Descriptor.cpp.