1//===-- ubsan_init.h --------------------------------------------*- C++ -*-===// 2// 3// This file is distributed under the University of Illinois Open Source 4// License. See LICENSE.TXT for details. 5// 6//===----------------------------------------------------------------------===// 7// 8// Initialization function for UBSan runtime. 9// 10//===----------------------------------------------------------------------===// 11#ifndef UBSAN_INIT_H 12#define UBSAN_INIT_H 13 14namespace __ubsan { 15 16// Get the full tool name for UBSan. 17const char *GetSanititizerToolName(); 18 19// Initialize UBSan as a standalone tool. Typically should be called early 20// during initialization. 21void InitAsStandalone(); 22 23// Initialize UBSan as a standalone tool, if it hasn't been initialized before. 24void InitAsStandaloneIfNecessary(); 25 26// Initializes UBSan as a plugin tool. This function should be called once 27// from "parent tool" (e.g. ASan) initialization. 28void InitAsPlugin(); 29 30} // namespace __ubsan 31 32#endif // UBSAN_INIT_H 33