annotate libsanitizer/ubsan/ubsan_init_standalone.cpp @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 1830386684a0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
145
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1 //===-- ubsan_init_standalone.cpp -----------------------------------------===//
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
2 //
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
4 // See https://llvm.org/LICENSE.txt for license information.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
6 //
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
7 //===----------------------------------------------------------------------===//
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
8 //
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
9 // Initialization of standalone UBSan runtime.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
10 //
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
11 //===----------------------------------------------------------------------===//
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
12
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
13 #include "ubsan_platform.h"
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
14 #if !CAN_SANITIZE_UB
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
15 # error "UBSan is not supported on this platform!"
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
16 #endif
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
17
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
18 #include "sanitizer_common/sanitizer_internal_defs.h"
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
19 #include "ubsan_init.h"
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
20 #include "ubsan_signals_standalone.h"
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
21
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
22 namespace __ubsan {
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
23
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
24 class UbsanStandaloneInitializer {
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
25 public:
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
26 UbsanStandaloneInitializer() {
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
27 InitAsStandalone();
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
28 InitializeDeadlySignals();
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
29 }
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
30 };
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
31 static UbsanStandaloneInitializer ubsan_standalone_initializer;
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
32
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
33 } // namespace __ubsan