clang 22.0.0git
clang::SanitizerMask Class Reference

#include "clang/Basic/Sanitizers.h"

Public Member Functions

 SanitizerMask ()=default
unsigned countPopulation () const
void flipAllBits ()
bool isPowerOf2 () const
llvm::hash_code hash_value () const
constexpr operator bool () const
constexpr bool operator== (const SanitizerMask &V) const
SanitizerMaskoperator&= (const SanitizerMask &RHS)
SanitizerMaskoperator|= (const SanitizerMask &RHS)
constexpr bool operator! () const
constexpr bool operator!= (const SanitizerMask &RHS) const

Static Public Member Functions

static constexpr bool checkBitPos (const unsigned Pos)
static constexpr SanitizerMask bitPosToMask (const unsigned Pos)
 Create a mask with a bit enabled at position Pos.

Friends

template<typename HasherT, llvm::endianness Endianness>
void addHash (llvm::HashBuilder< HasherT, Endianness > &HBuilder, const SanitizerMask &SM)
constexpr SanitizerMask operator~ (SanitizerMask v)
constexpr SanitizerMask operator& (SanitizerMask a, const SanitizerMask &b)
constexpr SanitizerMask operator| (SanitizerMask a, const SanitizerMask &b)

Detailed Description

Definition at line 34 of file Sanitizers.h.

Constructor & Destructor Documentation

◆ SanitizerMask()

clang::SanitizerMask::SanitizerMask ( )
default

Member Function Documentation

◆ bitPosToMask()

constexpr SanitizerMask clang::SanitizerMask::bitPosToMask ( const unsigned Pos)
inlinestaticconstexpr

Create a mask with a bit enabled at position Pos.

Definition at line 59 of file Sanitizers.h.

References SanitizerMask().

Referenced by clang::CodeGen::CodeGenFunction::EmitVTablePtrCheck(), clang::SanitizerSet::has(), and clang::SanitizerMaskCutoffs::set().

◆ checkBitPos()

constexpr bool clang::SanitizerMask::checkBitPos ( const unsigned Pos)
inlinestaticconstexpr

Definition at line 54 of file Sanitizers.h.

◆ countPopulation()

unsigned clang::SanitizerMask::countPopulation ( ) const

Definition at line 140 of file Sanitizers.cpp.

Referenced by isPowerOf2().

◆ flipAllBits()

void clang::SanitizerMask::flipAllBits ( )
inline

Definition at line 69 of file Sanitizers.h.

◆ hash_value()

llvm::hash_code SanitizerMask::hash_value ( ) const

Definition at line 135 of file Sanitizers.cpp.

Referenced by clang::hash_value().

◆ isPowerOf2()

bool clang::SanitizerMask::isPowerOf2 ( ) const
inline

Definition at line 74 of file Sanitizers.h.

References countPopulation().

Referenced by clang::SanitizerSet::has(), and clang::SanitizerSet::set().

◆ operator bool()

clang::SanitizerMask::operator bool ( ) const
inlineexplicitconstexpr

Definition at line 86 of file Sanitizers.h.

◆ operator!()

bool clang::SanitizerMask::operator! ( ) const
inlineconstexpr

Definition at line 107 of file Sanitizers.h.

References bool.

◆ operator!=()

bool clang::SanitizerMask::operator!= ( const SanitizerMask & RHS) const
inlineconstexpr

Definition at line 109 of file Sanitizers.h.

◆ operator&=()

SanitizerMask & clang::SanitizerMask::operator&= ( const SanitizerMask & RHS)
inline

Definition at line 95 of file Sanitizers.h.

◆ operator==()

bool clang::SanitizerMask::operator== ( const SanitizerMask & V) const
inlineconstexpr

Definition at line 90 of file Sanitizers.h.

References V.

◆ operator|=()

SanitizerMask & clang::SanitizerMask::operator|= ( const SanitizerMask & RHS)
inline

Definition at line 101 of file Sanitizers.h.

◆ addHash

template<typename HasherT, llvm::endianness Endianness>
void addHash ( llvm::HashBuilder< HasherT, Endianness > & HBuilder,
const SanitizerMask & SM )
friend

Definition at line 81 of file Sanitizers.h.

References SM.

◆ operator&

SanitizerMask operator& ( SanitizerMask a,
const SanitizerMask & b )
friend

Definition at line 117 of file Sanitizers.h.

References b, and SanitizerMask().

◆ operator|

SanitizerMask operator| ( SanitizerMask a,
const SanitizerMask & b )
friend

Definition at line 123 of file Sanitizers.h.

References b, and SanitizerMask().

◆ operator~

SanitizerMask operator~ ( SanitizerMask v)
friend

Definition at line 113 of file Sanitizers.h.

References SanitizerMask().


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