V8 API Reference, 7.2.502.16 (for Deno 0.2.4)
Main Page
Related Pages
+
Namespaces
Namespace List
+
Namespace Members
+
All
a
c
d
g
i
k
n
p
r
s
t
Functions
Typedefs
Enumerations
Enumerator
+
Classes
Class List
Class Index
Class Hierarchy
+
Class Members
+
All
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
~
+
Functions
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
~
+
Variables
a
c
d
e
h
k
l
n
o
s
Typedefs
Enumerations
+
Files
File List
Examples
▼
V8 API Reference Guide
The V8 public C++ API
▶
Namespaces
▶
Classes
▼
Files
▶
File List
▶
Examples
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Pages
msan.h
1
// Copyright 2013 the V8 project authors. All rights reserved.
2
// Use of this source code is governed by a BSD-style license that can be
3
// found in the LICENSE file.
4
5
// MemorySanitizer support.
6
7
#ifndef V8_MSAN_H_
8
#define V8_MSAN_H_
9
10
#include "src/base/macros.h"
11
#include "src/globals.h"
12
13
#ifdef V8_USE_MEMORY_SANITIZER
14
15
#include <sanitizer/msan_interface.h>
16
17
// Marks a memory range as uninitialized, as if it was allocated here.
18
#define MSAN_ALLOCATED_UNINITIALIZED_MEMORY(p, s) \
19
__msan_allocated_memory(reinterpret_cast<const void*>(p), (s))
20
// Marks a memory range as initialized.
21
#define MSAN_MEMORY_IS_INITIALIZED(p, s) \
22
__msan_unpoison(reinterpret_cast<const void*>(p), (s))
23
24
#else // !V8_USE_MEMORY_SANITIZER
25
26
#define MSAN_ALLOCATED_UNINITIALIZED_MEMORY(p, s) \
27
static_assert((std::is_pointer<decltype(p)>::value || \
28
std::is_same<v8::internal::Address, decltype(p)>::value) && \
29
std::is_convertible<decltype(s), size_t>::value, \
30
"static type violation")
31
#define MSAN_MEMORY_IS_INITIALIZED(p, s) \
32
MSAN_ALLOCATED_UNINITIALIZED_MEMORY(p, s)
33
34
#endif // V8_USE_MEMORY_SANITIZER
35
36
#endif // V8_MSAN_H_
v8
src
msan.h
Generated on Tue Dec 25 2018 14:39:20 by
1.8.14