class AddressSanitizerPass

Declaration

class AddressSanitizerPass : public PassInfoMixin { /* full declaration omitted */ };

Description

Public interface to the address sanitizer pass for instrumenting code to check for various memory errors at runtime. The sanitizer itself is a function pass that works by inserting various calls to the ASan runtime library functions. The runtime library essentially replaces malloc() and free() with custom implementations that allow regions surrounding requested memory to be checked for invalid accesses.

Declared at: llvm/include/llvm/Transforms/Instrumentation/AddressSanitizer.h:99

Inherits from: PassInfoMixin

Method Overview

  • public AddressSanitizerPass(bool CompileKernel = false, bool Recover = false, bool UseAfterScope = false)
  • public llvm::PreservedAnalyses run(llvm::Function & F, llvm::FunctionAnalysisManager & AM)

Methods

AddressSanitizerPass(bool CompileKernel = false,
                     bool Recover = false,
                     bool UseAfterScope = false)

Declared at: llvm/include/llvm/Transforms/Instrumentation/AddressSanitizer.h:101

Parameters

bool CompileKernel = false
bool Recover = false
bool UseAfterScope = false

llvm::PreservedAnalyses run(
    llvm::Function& F,
    llvm::FunctionAnalysisManager& AM)

Declared at: llvm/include/llvm/Transforms/Instrumentation/AddressSanitizer.h:104

Parameters

llvm::Function& F
llvm::FunctionAnalysisManager& AM