clang 19.0.0git
Public Member Functions | Protected Member Functions | List of all members
clang::targets::DarwinTargetInfo< Target > Class Template Reference

#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/Basic/Targets/OSTargets.h"

Inheritance diagram for clang::targets::DarwinTargetInfo< Target >:
Inheritance graph
[legend]

Public Member Functions

 DarwinTargetInfo (const llvm::Triple &Triple, const TargetOptions &Opts)
 
const char * getStaticInitSectionSpecifier () const override
 
bool hasProtectedVisibility () const override
 Darwin does not support protected visibility.
 
unsigned getExnObjectAlignment () const override
 
TargetInfo::IntType getLeastIntTypeByWidth (unsigned BitWidth, bool IsSigned) const final
 
bool areDefaultedSMFStillPOD (const LangOptions &) const override
 
- Public Member Functions inherited from clang::targets::OSTargetInfo< Target >
 OSTargetInfo (const llvm::Triple &Triple, const TargetOptions &Opts)
 
void getTargetDefines (const LangOptions &Opts, MacroBuilder &Builder) const override
 

Protected Member Functions

void getOSDefines (const LangOptions &Opts, const llvm::Triple &Triple, MacroBuilder &Builder) const override
 
virtual void getOSDefines (const LangOptions &Opts, const llvm::Triple &Triple, MacroBuilder &Builder) const=0
 

Detailed Description

template<typename Target>
class clang::targets::DarwinTargetInfo< Target >

Definition at line 42 of file OSTargets.h.

Constructor & Destructor Documentation

◆ DarwinTargetInfo()

template<typename Target >
clang::targets::DarwinTargetInfo< Target >::DarwinTargetInfo ( const llvm::Triple &  Triple,
const TargetOptions Opts 
)
inline

Definition at line 51 of file OSTargets.h.

Member Function Documentation

◆ areDefaultedSMFStillPOD()

template<typename Target >
bool clang::targets::DarwinTargetInfo< Target >::areDefaultedSMFStillPOD ( const LangOptions ) const
inlineoverride

Definition at line 135 of file OSTargets.h.

◆ getExnObjectAlignment()

template<typename Target >
unsigned clang::targets::DarwinTargetInfo< Target >::getExnObjectAlignment ( ) const
inlineoverride

Definition at line 93 of file OSTargets.h.

References clang::T.

◆ getLeastIntTypeByWidth()

template<typename Target >
TargetInfo::IntType clang::targets::DarwinTargetInfo< Target >::getLeastIntTypeByWidth ( unsigned  BitWidth,
bool  IsSigned 
) const
inlinefinal

Definition at line 126 of file OSTargets.h.

◆ getOSDefines()

template<typename Target >
void clang::targets::DarwinTargetInfo< Target >::getOSDefines ( const LangOptions Opts,
const llvm::Triple &  Triple,
MacroBuilder Builder 
) const
inlineoverrideprotectedvirtual

Implements clang::targets::OSTargetInfo< Target >.

Definition at line 44 of file OSTargets.h.

References clang::targets::getDarwinDefines().

◆ getStaticInitSectionSpecifier()

template<typename Target >
const char * clang::targets::DarwinTargetInfo< Target >::getStaticInitSectionSpecifier ( ) const
inlineoverride

Definition at line 83 of file OSTargets.h.

◆ hasProtectedVisibility()

template<typename Target >
bool clang::targets::DarwinTargetInfo< Target >::hasProtectedVisibility ( ) const
inlineoverride

Darwin does not support protected visibility.

Darwin's "default" is very similar to ELF's "protected"; Darwin requires a "weak" attribute on declarations that can be dynamically replaced.

Definition at line 91 of file OSTargets.h.


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