xref: /llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_common_nolibc.cpp (revision a0bb2e21c10bebcdb6bc6b8bc18f74dcf7c4b8b2)
1 //===-- sanitizer_common_nolibc.cpp ---------------------------------------===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 //
9 // This file contains stubs for libc function to facilitate optional use of
10 // libc in no-libcdep sources.
11 //===----------------------------------------------------------------------===//
12 
13 #include "sanitizer_common.h"
14 #include "sanitizer_flags.h"
15 #include "sanitizer_libc.h"
16 #include "sanitizer_platform.h"
17 
18 namespace __sanitizer {
19 
20 // The Windows implementations of these functions use the win32 API directly,
21 // bypassing libc.
22 #if !SANITIZER_WINDOWS
23 #  if SANITIZER_LINUX
24 void LogMessageOnPrintf(const char *str) {}
25 void InitTlsSize() {}
26 #  endif
27 void WriteToSyslog(const char *buffer) {}
28 void Abort() { internal__exit(1); }
29 bool CreateDir(const char *pathname) { return false; }
30 #endif  // !SANITIZER_WINDOWS
31 
32 #if !SANITIZER_WINDOWS && !SANITIZER_APPLE
33 void ListOfModules::init() {}
34 void InitializePlatformCommonFlags(CommonFlags *cf) {}
35 #endif
36 
37 }  // namespace __sanitizer
38