class SanitizerArgs
Declaration
class SanitizerArgs { /* full declaration omitted */ };
Declared at: clang/include/clang/Driver/SanitizerArgs.h:24
Member Variables
- private clang::SanitizerSet Sanitizers
- private clang::SanitizerSet RecoverableSanitizers
- private clang::SanitizerSet TrapSanitizers
- private std::vector<std::string> UserIgnorelistFiles
- private std::vector<std::string> SystemIgnorelistFiles
- private std::vector<std::string> CoverageAllowlistFiles
- private std::vector<std::string> CoverageIgnorelistFiles
- private int CoverageFeatures = 0
- private int MsanTrackOrigins = 0
- private bool MsanUseAfterDtor = true
- private bool MsanParamRetval = false
- private bool CfiCrossDso = false
- private bool CfiICallGeneralizePointers = false
- private bool CfiCanonicalJumpTables = false
- private int AsanFieldPadding = 0
- private bool AsanUseAfterScope = true
- private bool AsanPoisonCustomArrayCookie = false
- private bool AsanGlobalsDeadStripping = false
- private bool AsanUseOdrIndicator = false
- private bool AsanInvalidPointerCmp = false
- private bool AsanInvalidPointerSub = false
- private bool AsanOutlineInstrumentation = false
- private llvm::AsanDtorKind AsanDtorKind = llvm::AsanDtorKind::Invalid
- private std::string HwasanAbi
- private bool LinkRuntimes = true
- private bool LinkCXXRuntimes = false
- private bool NeedPIE = false
- private bool SafeStackRuntime = false
- private bool Stats = false
- private bool TsanMemoryAccess = true
- private bool TsanFuncEntryExit = true
- private bool TsanAtomics = true
- private bool MinimalRuntime = false
- private bool ImplicitCfiRuntime = false
- private bool NeedsMemProfRt = false
- private bool HwasanUseAliases = false
- private llvm::AsanDetectStackUseAfterReturnMode AsanUseAfterReturn = llvm::AsanDetectStackUseAfterReturnMode::Invalid
- private std::string MemtagMode
Method Overview
- public SanitizerArgs(const clang::driver::ToolChain & TC, const llvm::opt::ArgList & Args, bool DiagnoseErrors = true)
- public void addArgs(const clang::driver::ToolChain & TC, const llvm::opt::ArgList & Args, llvm::opt::ArgStringList & CmdArgs, types::ID InputType) const
- public const std::string & getMemtagMode() const
- public bool hasAnySanitizer() const
- public bool hasCrossDsoCfi() const
- public bool hasMemTag() const
- public bool hasMemtagGlobals() const
- public bool hasMemtagHeap() const
- public bool hasMemtagStack() const
- public bool linkCXXRuntimes() const
- public bool linkRuntimes() const
- public bool needsAsanRt() const
- public bool needsCfiDiagRt() const
- public bool needsCfiRt() const
- public bool needsDfsanRt() const
- public bool needsFuzzer() const
- public bool needsFuzzerInterceptors() const
- public bool needsHwasanAliasesRt() const
- public bool needsHwasanRt() const
- public bool needsLTO() const
- public bool needsLsanRt() const
- public bool needsMemProfRt() const
- public bool needsMsanRt() const
- public bool needsSafeStackRt() const
- public bool needsScudoRt() const
- public bool needsSharedRt() const
- public bool needsStatsRt() const
- public bool needsTsanRt() const
- public bool needsUbsanRt() const
- public bool needsUnwindTables() const
- public bool requiresMinimalRuntime() const
- public bool requiresPIE() const
Methods
¶SanitizerArgs(const clang::driver::ToolChain& TC,
const llvm::opt::ArgList& Args,
bool DiagnoseErrors = true)
SanitizerArgs(const clang::driver::ToolChain& TC,
const llvm::opt::ArgList& Args,
bool DiagnoseErrors = true)
Description
Parses the sanitizer arguments from an argument list.
Declared at: clang/include/clang/Driver/SanitizerArgs.h:71
Parameters
- const clang::driver::ToolChain& TC
- const llvm::opt::ArgList& Args
- bool DiagnoseErrors = true
¶void addArgs(const clang::driver::ToolChain& TC,
const llvm::opt::ArgList& Args,
llvm::opt::ArgStringList& CmdArgs,
types::ID InputType) const
void addArgs(const clang::driver::ToolChain& TC,
const llvm::opt::ArgList& Args,
llvm::opt::ArgStringList& CmdArgs,
types::ID InputType) const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:126
Parameters
- const clang::driver::ToolChain& TC
- const llvm::opt::ArgList& Args
- llvm::opt::ArgStringList& CmdArgs
- types::ID InputType
¶const std::string& getMemtagMode() const
const std::string& getMemtagMode() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:114
¶bool hasAnySanitizer() const
bool hasAnySanitizer() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:125
¶bool hasCrossDsoCfi() const
bool hasCrossDsoCfi() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:124
¶bool hasMemTag() const
bool hasMemTag() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:102
¶bool hasMemtagGlobals() const
bool hasMemtagGlobals() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:111
¶bool hasMemtagHeap() const
bool hasMemtagHeap() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:105
¶bool hasMemtagStack() const
bool hasMemtagStack() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:108
¶bool linkCXXRuntimes() const
bool linkCXXRuntimes() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:123
¶bool linkRuntimes() const
bool linkRuntimes() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:122
¶bool needsAsanRt() const
bool needsAsanRt() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:77
¶bool needsCfiDiagRt() const
bool needsCfiDiagRt() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:98
¶bool needsCfiRt() const
bool needsCfiRt() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:97
¶bool needsDfsanRt() const
bool needsDfsanRt() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:95
¶bool needsFuzzer() const
bool needsFuzzer() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:86
¶bool needsFuzzerInterceptors() const
bool needsFuzzerInterceptors() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:92
¶bool needsHwasanAliasesRt() const
bool needsHwasanAliasesRt() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:81
¶bool needsHwasanRt() const
bool needsHwasanRt() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:78
¶bool needsLTO() const
bool needsLTO() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:121
¶bool needsLsanRt() const
bool needsLsanRt() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:87
¶bool needsMemProfRt() const
bool needsMemProfRt() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:76
¶bool needsMsanRt() const
bool needsMsanRt() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:85
¶bool needsSafeStackRt() const
bool needsSafeStackRt() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:96
¶bool needsScudoRt() const
bool needsScudoRt() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:100
¶bool needsSharedRt() const
bool needsSharedRt() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:74
¶bool needsStatsRt() const
bool needsStatsRt() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:99
¶bool needsTsanRt() const
bool needsTsanRt() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:84
¶bool needsUbsanRt() const
bool needsUbsanRt() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:93
¶bool needsUnwindTables() const
bool needsUnwindTables() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:120
¶bool requiresMinimalRuntime() const
bool requiresMinimalRuntime() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:94
¶bool requiresPIE() const
bool requiresPIE() const
Declared at: clang/include/clang/Driver/SanitizerArgs.h:119