sanitizer_mac.cc revision ae4d9caa4f47fa6abcd641719e9f520622940c17
1ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov//===-- sanitizer_mac.cc --------------------------------------------------===//
2ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov//
3ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov//                     The LLVM Compiler Infrastructure
4ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov//
5ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov// This file is distributed under the University of Illinois Open Source
6ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov// License. See LICENSE.TXT for details.
7ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov//
8ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov//===----------------------------------------------------------------------===//
9ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov//
10ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov// This file is shared between AddressSanitizer and ThreadSanitizer
11ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov// run-time libraries and implements mac-specific functions from
12ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov// sanitizer_libc.h.
13ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov//===----------------------------------------------------------------------===//
14ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov
15ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov#ifdef __APPLE__
16ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov
17ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov#include "sanitizer_defs.h"
18ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov#include "sanitizer_libc.h"
19ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov
20ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov#include <sys/mman.h>
21ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov
22ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonovnamespace __sanitizer {
23ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov
24ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonovvoid *internal_mmap(void *addr, size_t length, int prot, int flags,
25ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov                    int fd, u64 offset) {
26ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov  return mmap(addr, length, prot, flags, fd, offset);
27ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov}
28ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov
29ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov}  // namespace __sanitizer
30ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov
31ae4d9caa4f47fa6abcd641719e9f520622940c17Alexey Samsonov#endif  // __APPLE__
32