| //===-- ubsan_init.h --------------------------------------------*- C++ -*-===// |
| // |
| // This file is distributed under the University of Illinois Open Source |
| // License. See LICENSE.TXT for details. |
| // |
| //===----------------------------------------------------------------------===// |
| // |
| // Initialization function for UBSan runtime. |
| // |
| //===----------------------------------------------------------------------===// |
| #ifndef UBSAN_INIT_H |
| #define UBSAN_INIT_H |
| |
| namespace __ubsan { |
| |
| // Get the full tool name for UBSan. |
| const char *GetSanititizerToolName(); |
| |
| // Initialize UBSan as a standalone tool. Typically should be called early |
| // during initialization. |
| void InitAsStandalone(); |
| |
| // Initialize UBSan as a standalone tool, if it hasn't been initialized before. |
| void InitAsStandaloneIfNecessary(); |
| |
| // Initializes UBSan as a plugin tool. This function should be called once |
| // from "parent tool" (e.g. ASan) initialization. |
| void InitAsPlugin(); |
| |
| } // namespace __ubsan |
| |
| #endif // UBSAN_INIT_H |