clang 20.0.0git
Public Member Functions | Static Public Member Functions | List of all members
clang::CodeGen::ConstantAddress Class Reference

A specialization of Address that requires the address to be an LLVM Constant. More...

#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/CodeGen/Address.h"

Inheritance diagram for clang::CodeGen::ConstantAddress:
Inheritance graph
[legend]

Public Member Functions

 ConstantAddress (llvm::Constant *pointer, llvm::Type *elementType, CharUnits alignment)
 
llvm::Constant * getPointer () const
 
ConstantAddress withElementType (llvm::Type *ElemTy) const
 
- Public Member Functions inherited from clang::CodeGen::RawAddress
 RawAddress (llvm::Value *Pointer, llvm::Type *ElementType, CharUnits Alignment, KnownNonNull_t IsKnownNonNull=NotKnownNonNull)
 
 RawAddress (Address Addr)
 
bool isValid () const
 
llvm::Value * getPointer () const
 
llvm::PointerType * getType () const
 Return the type of the pointer value.
 
llvm::Type * getElementType () const
 Return the type of the values stored in this address.
 
unsigned getAddressSpace () const
 Return the address space that this address resides in.
 
llvm::StringRef getName () const
 Return the IR name of the pointer value.
 
CharUnits getAlignment () const
 Return the alignment of this pointer.
 
RawAddress withElementType (llvm::Type *ElemTy) const
 Return address with different element type, but same pointer and alignment.
 
KnownNonNull_t isKnownNonNull () const
 

Static Public Member Functions

static ConstantAddress invalid ()
 
static bool isaImpl (RawAddress addr)
 
static ConstantAddress castImpl (RawAddress addr)
 
- Static Public Member Functions inherited from clang::CodeGen::RawAddress
static RawAddress invalid ()
 

Additional Inherited Members

- Protected Member Functions inherited from clang::CodeGen::RawAddress
 RawAddress (std::nullptr_t)
 

Detailed Description

A specialization of Address that requires the address to be an LLVM Constant.

Definition at line 294 of file Address.h.

Constructor & Destructor Documentation

◆ ConstantAddress()

clang::CodeGen::ConstantAddress::ConstantAddress ( llvm::Constant *  pointer,
llvm::Type *  elementType,
CharUnits  alignment 
)
inline

Definition at line 298 of file Address.h.

Member Function Documentation

◆ castImpl()

static ConstantAddress clang::CodeGen::ConstantAddress::castImpl ( RawAddress  addr)
inlinestatic

◆ getPointer()

llvm::Constant * clang::CodeGen::ConstantAddress::getPointer ( ) const
inline

◆ invalid()

static ConstantAddress clang::CodeGen::ConstantAddress::invalid ( )
inlinestatic

◆ isaImpl()

static bool clang::CodeGen::ConstantAddress::isaImpl ( RawAddress  addr)
inlinestatic

Definition at line 314 of file Address.h.

References clang::CodeGen::RawAddress::getPointer().

◆ withElementType()

ConstantAddress clang::CodeGen::ConstantAddress::withElementType ( llvm::Type *  ElemTy) const
inline

Definition at line 310 of file Address.h.

References clang::CodeGen::RawAddress::getAlignment(), and getPointer().

Referenced by EmitDeclDestroy().


The documentation for this class was generated from the following file: