sanitizer_win.cc revision 7f9c5a220b2768a450696bbd157a0e6f2e9ceea3
17f9c5a220b2768a450696bbd157a0e6f2e9ceea3Alexey Samsonov//===-- sanitizer_win.cc --------------------------------------------------===//
2c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov//
3c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov//                     The LLVM Compiler Infrastructure
4c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov//
5c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov// This file is distributed under the University of Illinois Open Source
6c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov// License. See LICENSE.TXT for details.
7c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov//
8c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov//===----------------------------------------------------------------------===//
9c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov//
10c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov// This file is shared between AddressSanitizer and ThreadSanitizer
11c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov// run-time libraries and implements windows-specific functions from
12c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov// sanitizer_libc.h.
13c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov//===----------------------------------------------------------------------===//
14c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov#ifdef _WIN32
15c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov#include <windows.h>
16c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov
17c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov#include <assert.h>
18c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov
19c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov#include "sanitizer_defs.h"
20c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov#include "sanitizer_libc.h"
21c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov
22c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov#define UNIMPLEMENTED_WIN() assert(false)
23c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov
24c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonovnamespace __sanitizer {
25c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov
26c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonovvoid *internal_mmap(void *addr, uptr length, int prot, int flags,
27c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov                    int fd, u64 offset) {
28c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov  UNIMPLEMENTED_WIN();
29c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov  return 0;
30c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov}
31c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov
32c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonovfd_t internal_open(const char *filename, bool write) {
33c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov  UNIMPLEMENTED_WIN();
34c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov  return 0;
35c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov}
36c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov
37c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov}  // namespace __sanitizer
38c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov
39c5d465136b911bf925f2a631e2b79f1c03e8a1b0Alexey Samsonov#endif  // _WIN32
40