clang 17.0.0git
Namespaces | Macros | Functions
Sanitizers.cpp File Reference
#include "clang/Basic/Sanitizers.h"
#include "llvm/ADT/Hashing.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringSwitch.h"
#include "llvm/Support/MathExtras.h"
#include "clang/Basic/Sanitizers.def"
Include dependency graph for Sanitizers.cpp:

Go to the source code of this file.

Namespaces

namespace  clang
 

Macros

#define SANITIZER(NAME, ID)   constexpr SanitizerMask SanitizerKind::ID;
 
#define SANITIZER_GROUP(NAME, ID, ALIAS)
 
#define SANITIZER(NAME, ID)   .Case(NAME, SanitizerKind::ID)
 
#define SANITIZER_GROUP(NAME, ID, ALIAS)    .Case(NAME, AllowGroups ? SanitizerKind::ID##Group : SanitizerMask())
 
#define SANITIZER(NAME, ID)
 
#define SANITIZER(NAME, ID)
 
#define SANITIZER_GROUP(NAME, ID, ALIAS)
 

Functions

llvm::hash_code clang::hash_value (const clang::SanitizerMask &Arg)
 
StringRef clang::AsanDtorKindToString (llvm::AsanDtorKind kind)
 
llvm::AsanDtorKind clang::AsanDtorKindFromString (StringRef kind)
 
StringRef clang::AsanDetectStackUseAfterReturnModeToString (llvm::AsanDetectStackUseAfterReturnMode mode)
 
llvm::AsanDetectStackUseAfterReturnMode clang::AsanDetectStackUseAfterReturnModeFromString (StringRef modeStr)
 

Macro Definition Documentation

◆ SANITIZER [1/4]

#define SANITIZER (   NAME,
  ID 
)    constexpr SanitizerMask SanitizerKind::ID;

Definition at line 23 of file Sanitizers.cpp.

◆ SANITIZER [2/4]

#define SANITIZER (   NAME,
  ID 
)    .Case(NAME, SanitizerKind::ID)

Definition at line 23 of file Sanitizers.cpp.

◆ SANITIZER [3/4]

#define SANITIZER (   NAME,
  ID 
)
Value:
if (Set.has(SanitizerKind::ID)) \
Values.push_back(NAME);

Definition at line 23 of file Sanitizers.cpp.

◆ SANITIZER [4/4]

#define SANITIZER (   NAME,
  ID 
)

Definition at line 23 of file Sanitizers.cpp.

◆ SANITIZER_GROUP [1/3]

#define SANITIZER_GROUP (   NAME,
  ID,
  ALIAS 
)
Value:
constexpr SanitizerMask SanitizerKind::ID; \
constexpr SanitizerMask SanitizerKind::ID##Group;

Definition at line 24 of file Sanitizers.cpp.

◆ SANITIZER_GROUP [2/3]

#define SANITIZER_GROUP (   NAME,
  ID,
  ALIAS 
)     .Case(NAME, AllowGroups ? SanitizerKind::ID##Group : SanitizerMask())

Definition at line 24 of file Sanitizers.cpp.

◆ SANITIZER_GROUP [3/3]

#define SANITIZER_GROUP (   NAME,
  ID,
  ALIAS 
)
Value:
if (Kinds & SanitizerKind::ID##Group) \
Kinds |= SanitizerKind::ID;

Definition at line 24 of file Sanitizers.cpp.