]>
Commit | Line | Data |
---|---|---|
866e32ad KS |
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 | ||
14 | namespace __ubsan { | |
15 | ||
5d3805fc JJ |
16 | // Get the full tool name for UBSan. |
17 | const char *GetSanititizerToolName(); | |
18 | ||
696d846a MO |
19 | // Initialize UBSan as a standalone tool. Typically should be called early |
20 | // during initialization. | |
21 | void InitAsStandalone(); | |
22 | ||
23 | // Initialize UBSan as a standalone tool, if it hasn't been initialized before. | |
24 | void InitAsStandaloneIfNecessary(); | |
25 | ||
26 | // Initializes UBSan as a plugin tool. This function should be called once | |
27 | // from "parent tool" (e.g. ASan) initialization. | |
28 | void InitAsPlugin(); | |
866e32ad KS |
29 | |
30 | } // namespace __ubsan | |
31 | ||
32 | #endif // UBSAN_INIT_H |