[clang][Codegen] Introduce the disable_sanitizer_instrumentation attribute
The purpose of __attribute__((disable_sanitizer_instrumentation)) is to prevent all kinds of sanitizer instrumentation applied to a certain function, Objective-C method, or global variable. The no_sanitize(...) attribute drops instrumentation checks, but may still insert code preventing false positive reports. In some cases though (e.g. when building Linux kernel with -fsanitize=kernel-memory or -fsanitize=thread) the users may want to avoid any kind of instrumentation. Differential Revision: https://reviews.llvm.org/D108029
This commit is contained in:
@@ -1388,6 +1388,8 @@ static Attribute::AttrKind getAttrFromCode(uint64_t Code) {
|
||||
return Attribute::Cold;
|
||||
case bitc::ATTR_KIND_CONVERGENT:
|
||||
return Attribute::Convergent;
|
||||
case bitc::ATTR_KIND_DISABLE_SANITIZER_INSTRUMENTATION:
|
||||
return Attribute::DisableSanitizerInstrumentation;
|
||||
case bitc::ATTR_KIND_ELEMENTTYPE:
|
||||
return Attribute::ElementType;
|
||||
case bitc::ATTR_KIND_INACCESSIBLEMEM_ONLY:
|
||||
|
||||
Reference in New Issue
Block a user