clang 19.0.0git
Functions
Descriptor.cpp File Reference
#include "Descriptor.h"
#include "Boolean.h"
#include "Floating.h"
#include "FunctionPointer.h"
#include "IntegralAP.h"
#include "Pointer.h"
#include "PrimType.h"
#include "Record.h"

Go to the source code of this file.

Functions

template<typename T >
static void ctorTy (Block *, std::byte *Ptr, bool, bool, bool, const Descriptor *)
 
template<typename T >
static void dtorTy (Block *, std::byte *Ptr, const Descriptor *)
 
template<typename T >
static void moveTy (Block *, const std::byte *Src, std::byte *Dst, const Descriptor *)
 
template<typename T >
static void ctorArrayTy (Block *, std::byte *Ptr, bool, bool, bool, const Descriptor *D)
 
template<typename T >
static void dtorArrayTy (Block *, std::byte *Ptr, const Descriptor *D)
 
template<typename T >
static void moveArrayTy (Block *, const std::byte *Src, std::byte *Dst, const Descriptor *D)
 
static void ctorArrayDesc (Block *B, std::byte *Ptr, bool IsConst, bool IsMutable, bool IsActive, const Descriptor *D)
 
static void dtorArrayDesc (Block *B, std::byte *Ptr, const Descriptor *D)
 
static void moveArrayDesc (Block *B, const std::byte *Src, std::byte *Dst, const Descriptor *D)
 
static void ctorRecord (Block *B, std::byte *Ptr, bool IsConst, bool IsMutable, bool IsActive, const Descriptor *D)
 
static void dtorRecord (Block *B, std::byte *Ptr, const Descriptor *D)
 
static void moveRecord (Block *B, const std::byte *Src, std::byte *Dst, const 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,
std::byte *  Ptr,
bool  IsConst,
bool  IsMutable,
bool  IsActive,
const Descriptor D 
)
static

◆ ctorArrayTy()

template<typename T >
static void ctorArrayTy ( Block ,
std::byte *  Ptr,
bool  ,
bool  ,
bool  ,
const Descriptor D 
)
static

◆ ctorRecord()

static void ctorRecord ( Block B,
std::byte *  Ptr,
bool  IsConst,
bool  IsMutable,
bool  IsActive,
const Descriptor D 
)
static

◆ ctorTy()

template<typename T >
static void ctorTy ( Block ,
std::byte *  Ptr,
bool  ,
bool  ,
bool  ,
const Descriptor  
)
static

Definition at line 22 of file Descriptor.cpp.

References clang::T.

◆ dtorArrayDesc()

static void dtorArrayDesc ( Block B,
std::byte *  Ptr,
const Descriptor D 
)
static

◆ dtorArrayTy()

template<typename T >
static void dtorArrayTy ( Block ,
std::byte *  Ptr,
const Descriptor D 
)
static

◆ dtorRecord()

static void dtorRecord ( Block B,
std::byte *  Ptr,
const Descriptor D 
)
static

◆ dtorTy()

template<typename T >
static void dtorTy ( Block ,
std::byte *  Ptr,
const Descriptor  
)
static

Definition at line 28 of file Descriptor.cpp.

References clang::T.

Referenced by emitGlobalDtorWithCXAAtExit().

◆ getCtorArrayPrim()

static BlockCtorFn getCtorArrayPrim ( PrimType  Type)
static

Definition at line 217 of file Descriptor.cpp.

References TYPE_SWITCH.

◆ getCtorPrim()

static BlockCtorFn getCtorPrim ( PrimType  Type)
static

◆ getDtorArrayPrim()

static BlockDtorFn getDtorArrayPrim ( PrimType  Type)
static

Definition at line 222 of file Descriptor.cpp.

References TYPE_SWITCH.

◆ getDtorPrim()

static BlockDtorFn getDtorPrim ( PrimType  Type)
static

◆ getMoveArrayPrim()

static BlockMoveFn getMoveArrayPrim ( PrimType  Type)
static

Definition at line 227 of file Descriptor.cpp.

References TYPE_SWITCH.

◆ getMovePrim()

static BlockMoveFn getMovePrim ( PrimType  Type)
static

Definition at line 213 of file Descriptor.cpp.

References COMPOSITE_TYPE_SWITCH.

◆ moveArrayDesc()

static void moveArrayDesc ( Block B,
const std::byte *  Src,
std::byte *  Dst,
const Descriptor D 
)
static

◆ moveArrayTy()

template<typename T >
static void moveArrayTy ( Block ,
const std::byte *  Src,
std::byte *  Dst,
const Descriptor D 
)
static

◆ moveRecord()

static void moveRecord ( Block B,
const std::byte *  Src,
std::byte *  Dst,
const Descriptor D 
)
static

◆ moveTy()

template<typename T >
static void moveTy ( Block ,
const std::byte *  Src,
std::byte *  Dst,
const Descriptor  
)
static

Definition at line 33 of file Descriptor.cpp.

References clang::T.