libv8-node 15.14.0.0-x86_64-linux → 16.17.0.0-x86_64-linux
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ext/libv8-node/location.rb +1 -1
- data/ext/libv8-node/paths.rb +5 -1
- data/lib/libv8/node/version.rb +3 -3
- data/vendor/v8/include/cppgc/allocation.h +105 -45
- data/vendor/v8/include/cppgc/common.h +9 -6
- data/vendor/v8/include/cppgc/cross-thread-persistent.h +413 -0
- data/vendor/v8/include/cppgc/custom-space.h +37 -2
- data/vendor/v8/include/cppgc/default-platform.h +47 -48
- data/vendor/v8/include/cppgc/ephemeron-pair.h +30 -0
- data/vendor/v8/include/cppgc/explicit-management.h +82 -0
- data/vendor/v8/include/cppgc/garbage-collected.h +4 -3
- data/vendor/v8/include/cppgc/heap-consistency.h +253 -0
- data/vendor/v8/include/cppgc/heap-state.h +70 -0
- data/vendor/v8/include/cppgc/heap-statistics.h +120 -0
- data/vendor/v8/include/cppgc/heap.h +68 -6
- data/vendor/v8/include/cppgc/internal/api-constants.h +3 -3
- data/vendor/v8/include/cppgc/internal/caged-heap-local-data.h +2 -1
- data/vendor/v8/include/cppgc/internal/compiler-specific.h +2 -2
- data/vendor/v8/include/cppgc/internal/gc-info.h +44 -13
- data/vendor/v8/include/cppgc/internal/name-trait.h +111 -0
- data/vendor/v8/include/cppgc/internal/persistent-node.h +58 -2
- data/vendor/v8/include/cppgc/internal/pointer-policies.h +69 -28
- data/vendor/v8/include/cppgc/internal/prefinalizer-handler.h +1 -1
- data/vendor/v8/include/cppgc/internal/write-barrier.h +390 -35
- data/vendor/v8/include/cppgc/liveness-broker.h +11 -2
- data/vendor/v8/include/cppgc/macros.h +2 -0
- data/vendor/v8/include/cppgc/member.h +87 -25
- data/vendor/v8/include/cppgc/name-provider.h +65 -0
- data/vendor/v8/include/cppgc/object-size-trait.h +58 -0
- data/vendor/v8/include/cppgc/persistent.h +40 -10
- data/vendor/v8/include/cppgc/platform.h +49 -25
- data/vendor/v8/include/cppgc/prefinalizer.h +1 -1
- data/vendor/v8/include/cppgc/process-heap-statistics.h +36 -0
- data/vendor/v8/include/cppgc/sentinel-pointer.h +32 -0
- data/vendor/v8/include/cppgc/source-location.h +2 -1
- data/vendor/v8/include/cppgc/testing.h +99 -0
- data/vendor/v8/include/cppgc/trace-trait.h +8 -3
- data/vendor/v8/include/cppgc/type-traits.h +157 -19
- data/vendor/v8/include/cppgc/visitor.h +194 -28
- data/vendor/v8/include/libplatform/libplatform.h +11 -0
- data/vendor/v8/include/libplatform/v8-tracing.h +2 -0
- data/vendor/v8/include/v8-cppgc.h +258 -159
- data/vendor/v8/include/v8-fast-api-calls.h +603 -155
- data/vendor/v8/include/v8-inspector.h +22 -4
- data/vendor/v8/include/v8-internal.h +111 -27
- data/vendor/v8/include/v8-metrics.h +77 -8
- data/vendor/v8/include/v8-platform.h +47 -22
- data/vendor/v8/include/v8-profiler.h +75 -11
- data/vendor/v8/include/v8-unwinder-state.h +30 -0
- data/vendor/v8/include/v8-util.h +1 -1
- data/vendor/v8/include/v8-version.h +4 -4
- data/vendor/v8/include/v8.h +1196 -642
- data/vendor/v8/include/v8config.h +87 -11
- data/vendor/v8/{out.gn → x86_64-linux}/libv8/obj/libv8_monolith.a +0 -0
- metadata +17 -5
- data/vendor/v8/include/cppgc/internal/process-heap.h +0 -34
@@ -5,6 +5,14 @@
|
|
5
5
|
#ifndef V8CONFIG_H_
|
6
6
|
#define V8CONFIG_H_
|
7
7
|
|
8
|
+
#ifdef V8_GN_HEADER
|
9
|
+
#if __cplusplus >= 201703L && !__has_include("v8-gn.h")
|
10
|
+
#error Missing v8-gn.h. The configuration for v8 is missing from the include \
|
11
|
+
path. Add it with -I<path> to the command line
|
12
|
+
#endif
|
13
|
+
#include "v8-gn.h" // NOLINT(build/include_directory)
|
14
|
+
#endif
|
15
|
+
|
8
16
|
// clang-format off
|
9
17
|
|
10
18
|
// Platform headers for feature detection below.
|
@@ -70,6 +78,7 @@
|
|
70
78
|
// V8_OS_POSIX - POSIX compatible (mostly everything except Windows)
|
71
79
|
// V8_OS_QNX - QNX Neutrino
|
72
80
|
// V8_OS_SOLARIS - Sun Solaris and OpenSolaris
|
81
|
+
// V8_OS_STARBOARD - Starboard (platform abstraction for Cobalt)
|
73
82
|
// V8_OS_AIX - AIX
|
74
83
|
// V8_OS_WIN - Microsoft Windows
|
75
84
|
|
@@ -77,49 +86,80 @@
|
|
77
86
|
# define V8_OS_ANDROID 1
|
78
87
|
# define V8_OS_LINUX 1
|
79
88
|
# define V8_OS_POSIX 1
|
89
|
+
# define V8_OS_STRING "android"
|
90
|
+
|
80
91
|
#elif defined(__APPLE__)
|
81
92
|
# define V8_OS_BSD 1
|
82
93
|
# define V8_OS_MACOSX 1
|
83
94
|
# define V8_OS_POSIX 1
|
84
95
|
# if defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE
|
85
96
|
# define V8_OS_IOS 1
|
97
|
+
# define V8_OS_STRING "ios"
|
98
|
+
# else
|
99
|
+
# define V8_OS_STRING "macos"
|
86
100
|
# endif // defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE
|
101
|
+
|
87
102
|
#elif defined(__CYGWIN__)
|
88
103
|
# define V8_OS_CYGWIN 1
|
89
104
|
# define V8_OS_POSIX 1
|
105
|
+
# define V8_OS_STRING "cygwin"
|
106
|
+
|
90
107
|
#elif defined(__linux__)
|
91
108
|
# define V8_OS_LINUX 1
|
92
109
|
# define V8_OS_POSIX 1
|
110
|
+
# define V8_OS_STRING "linux"
|
111
|
+
|
93
112
|
#elif defined(__sun)
|
94
113
|
# define V8_OS_POSIX 1
|
95
114
|
# define V8_OS_SOLARIS 1
|
115
|
+
# define V8_OS_STRING "sun"
|
116
|
+
|
117
|
+
#elif defined(STARBOARD)
|
118
|
+
# define V8_OS_STARBOARD 1
|
119
|
+
# define V8_OS_STRING "starboard"
|
120
|
+
|
96
121
|
#elif defined(_AIX)
|
97
|
-
#define V8_OS_POSIX 1
|
98
|
-
#define V8_OS_AIX 1
|
122
|
+
# define V8_OS_POSIX 1
|
123
|
+
# define V8_OS_AIX 1
|
124
|
+
# define V8_OS_STRING "aix"
|
125
|
+
|
99
126
|
#elif defined(__FreeBSD__)
|
100
127
|
# define V8_OS_BSD 1
|
101
128
|
# define V8_OS_FREEBSD 1
|
102
129
|
# define V8_OS_POSIX 1
|
130
|
+
# define V8_OS_STRING "freebsd"
|
131
|
+
|
103
132
|
#elif defined(__Fuchsia__)
|
104
133
|
# define V8_OS_FUCHSIA 1
|
105
134
|
# define V8_OS_POSIX 1
|
135
|
+
# define V8_OS_STRING "fuchsia"
|
136
|
+
|
106
137
|
#elif defined(__DragonFly__)
|
107
138
|
# define V8_OS_BSD 1
|
108
139
|
# define V8_OS_DRAGONFLYBSD 1
|
109
140
|
# define V8_OS_POSIX 1
|
141
|
+
# define V8_OS_STRING "dragonflybsd"
|
142
|
+
|
110
143
|
#elif defined(__NetBSD__)
|
111
144
|
# define V8_OS_BSD 1
|
112
145
|
# define V8_OS_NETBSD 1
|
113
146
|
# define V8_OS_POSIX 1
|
147
|
+
# define V8_OS_STRING "netbsd"
|
148
|
+
|
114
149
|
#elif defined(__OpenBSD__)
|
115
150
|
# define V8_OS_BSD 1
|
116
151
|
# define V8_OS_OPENBSD 1
|
117
152
|
# define V8_OS_POSIX 1
|
153
|
+
# define V8_OS_STRING "openbsd"
|
154
|
+
|
118
155
|
#elif defined(__QNXNTO__)
|
119
156
|
# define V8_OS_POSIX 1
|
120
157
|
# define V8_OS_QNX 1
|
158
|
+
# define V8_OS_STRING "qnx"
|
159
|
+
|
121
160
|
#elif defined(_WIN32)
|
122
161
|
# define V8_OS_WIN 1
|
162
|
+
# define V8_OS_STRING "windows"
|
123
163
|
#endif
|
124
164
|
|
125
165
|
// -----------------------------------------------------------------------------
|
@@ -184,6 +224,22 @@
|
|
184
224
|
|
185
225
|
#endif // V8_HAVE_TARGET_OS
|
186
226
|
|
227
|
+
#if defined(V8_TARGET_OS_ANDROID)
|
228
|
+
# define V8_TARGET_OS_STRING "android"
|
229
|
+
#elif defined(V8_TARGET_OS_FUCHSIA)
|
230
|
+
# define V8_TARGET_OS_STRING "fuchsia"
|
231
|
+
#elif defined(V8_TARGET_OS_IOS)
|
232
|
+
# define V8_TARGET_OS_STRING "ios"
|
233
|
+
#elif defined(V8_TARGET_OS_LINUX)
|
234
|
+
# define V8_TARGET_OS_STRING "linux"
|
235
|
+
#elif defined(V8_TARGET_OS_MACOSX)
|
236
|
+
# define V8_TARGET_OS_STRING "macos"
|
237
|
+
#elif defined(V8_TARGET_OS_WINDOWS)
|
238
|
+
# define V8_TARGET_OS_STRING "windows"
|
239
|
+
#else
|
240
|
+
# define V8_TARGET_OS_STRING "unknown"
|
241
|
+
#endif
|
242
|
+
|
187
243
|
// -----------------------------------------------------------------------------
|
188
244
|
// C library detection
|
189
245
|
//
|
@@ -236,6 +292,7 @@
|
|
236
292
|
// V8_HAS_ATTRIBUTE_VISIBILITY - __attribute__((visibility)) supported
|
237
293
|
// V8_HAS_ATTRIBUTE_WARN_UNUSED_RESULT - __attribute__((warn_unused_result))
|
238
294
|
// supported
|
295
|
+
// V8_HAS_CPP_ATTRIBUTE_NODISCARD - [[nodiscard]] supported
|
239
296
|
// V8_HAS_BUILTIN_BSWAP16 - __builtin_bswap16() supported
|
240
297
|
// V8_HAS_BUILTIN_BSWAP32 - __builtin_bswap32() supported
|
241
298
|
// V8_HAS_BUILTIN_BSWAP64 - __builtin_bswap64() supported
|
@@ -259,6 +316,12 @@
|
|
259
316
|
// ...
|
260
317
|
// #endif
|
261
318
|
|
319
|
+
#if defined(__has_cpp_attribute)
|
320
|
+
#define V8_HAS_CPP_ATTRIBUTE(FEATURE) __has_cpp_attribute(FEATURE)
|
321
|
+
#else
|
322
|
+
#define V8_HAS_CPP_ATTRIBUTE(FEATURE) 0
|
323
|
+
#endif
|
324
|
+
|
262
325
|
#if defined(__clang__)
|
263
326
|
|
264
327
|
#if defined(__GNUC__) // Clang in gcc mode.
|
@@ -273,6 +336,8 @@
|
|
273
336
|
# define V8_HAS_ATTRIBUTE_WARN_UNUSED_RESULT \
|
274
337
|
(__has_attribute(warn_unused_result))
|
275
338
|
|
339
|
+
# define V8_HAS_CPP_ATTRIBUTE_NODISCARD (V8_HAS_CPP_ATTRIBUTE(nodiscard))
|
340
|
+
|
276
341
|
# define V8_HAS_BUILTIN_ASSUME_ALIGNED (__has_builtin(__builtin_assume_aligned))
|
277
342
|
# define V8_HAS_BUILTIN_BSWAP16 (__has_builtin(__builtin_bswap16))
|
278
343
|
# define V8_HAS_BUILTIN_BSWAP32 (__has_builtin(__builtin_bswap32))
|
@@ -290,10 +355,6 @@
|
|
290
355
|
// GCC doc: https://gcc.gnu.org/onlinedocs/gcc/Labels-as-Values.html
|
291
356
|
# define V8_HAS_COMPUTED_GOTO 1
|
292
357
|
|
293
|
-
// Whether constexpr has full C++14 semantics, in particular that non-constexpr
|
294
|
-
// code is allowed as long as it's not executed for any constexpr instantiation.
|
295
|
-
# define V8_HAS_CXX14_CONSTEXPR 1
|
296
|
-
|
297
358
|
#elif defined(__GNUC__)
|
298
359
|
|
299
360
|
# define V8_CC_GNU 1
|
@@ -317,6 +378,10 @@
|
|
317
378
|
# define V8_HAS_ATTRIBUTE_VISIBILITY 1
|
318
379
|
# define V8_HAS_ATTRIBUTE_WARN_UNUSED_RESULT (!V8_CC_INTEL)
|
319
380
|
|
381
|
+
// [[nodiscard]] does not work together with with
|
382
|
+
// __attribute__((visibility(""))) on GCC 7.4 which is why there is no define
|
383
|
+
// for V8_HAS_CPP_ATTRIBUTE_NODISCARD. See https://crbug.com/v8/11707.
|
384
|
+
|
320
385
|
# define V8_HAS_BUILTIN_ASSUME_ALIGNED 1
|
321
386
|
# define V8_HAS_BUILTIN_CLZ 1
|
322
387
|
# define V8_HAS_BUILTIN_CTZ 1
|
@@ -327,11 +392,6 @@
|
|
327
392
|
// GCC doc: https://gcc.gnu.org/onlinedocs/gcc/Labels-as-Values.html
|
328
393
|
#define V8_HAS_COMPUTED_GOTO 1
|
329
394
|
|
330
|
-
// Whether constexpr has full C++14 semantics, in particular that non-constexpr
|
331
|
-
// code is allowed as long as it's not executed for any constexpr instantiation.
|
332
|
-
// GCC only supports this since version 6.
|
333
|
-
# define V8_HAS_CXX14_CONSTEXPR (V8_GNUC_PREREQ(6, 0, 0))
|
334
|
-
|
335
395
|
#endif
|
336
396
|
|
337
397
|
#if defined(_MSC_VER)
|
@@ -433,6 +493,20 @@
|
|
433
493
|
#define V8_WARN_UNUSED_RESULT /* NOT SUPPORTED */
|
434
494
|
#endif
|
435
495
|
|
496
|
+
|
497
|
+
// Annotate a class or constructor indicating the caller must assign the
|
498
|
+
// constructed instances.
|
499
|
+
// Apply to the whole class like:
|
500
|
+
// class V8_NODISCARD Foo() { ... };
|
501
|
+
// or apply to just one constructor like:
|
502
|
+
// V8_NODISCARD Foo() { ... };
|
503
|
+
// [[nodiscard]] comes in C++17 but supported in clang with -std >= c++11.
|
504
|
+
#if V8_HAS_CPP_ATTRIBUTE_NODISCARD
|
505
|
+
#define V8_NODISCARD [[nodiscard]]
|
506
|
+
#else
|
507
|
+
#define V8_NODISCARD /* NOT SUPPORTED */
|
508
|
+
#endif
|
509
|
+
|
436
510
|
// Helper macro to define no_sanitize attributes only with clang.
|
437
511
|
#if defined(__clang__) && defined(__has_attribute)
|
438
512
|
#if __has_attribute(no_sanitize)
|
@@ -481,4 +555,6 @@ V8 shared library set USING_V8_SHARED.
|
|
481
555
|
|
482
556
|
// clang-format on
|
483
557
|
|
558
|
+
#undef V8_HAS_CPP_ATTRIBUTE
|
559
|
+
|
484
560
|
#endif // V8CONFIG_H_
|
Binary file
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: libv8-node
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 16.17.0.0
|
5
5
|
platform: x86_64-linux
|
6
6
|
authors:
|
7
7
|
- ''
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-08-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -53,9 +53,15 @@ files:
|
|
53
53
|
- lib/libv8/node/version.rb
|
54
54
|
- vendor/v8/include/cppgc/allocation.h
|
55
55
|
- vendor/v8/include/cppgc/common.h
|
56
|
+
- vendor/v8/include/cppgc/cross-thread-persistent.h
|
56
57
|
- vendor/v8/include/cppgc/custom-space.h
|
57
58
|
- vendor/v8/include/cppgc/default-platform.h
|
59
|
+
- vendor/v8/include/cppgc/ephemeron-pair.h
|
60
|
+
- vendor/v8/include/cppgc/explicit-management.h
|
58
61
|
- vendor/v8/include/cppgc/garbage-collected.h
|
62
|
+
- vendor/v8/include/cppgc/heap-consistency.h
|
63
|
+
- vendor/v8/include/cppgc/heap-state.h
|
64
|
+
- vendor/v8/include/cppgc/heap-statistics.h
|
59
65
|
- vendor/v8/include/cppgc/heap.h
|
60
66
|
- vendor/v8/include/cppgc/internal/api-constants.h
|
61
67
|
- vendor/v8/include/cppgc/internal/atomic-entry-flag.h
|
@@ -64,18 +70,23 @@ files:
|
|
64
70
|
- vendor/v8/include/cppgc/internal/finalizer-trait.h
|
65
71
|
- vendor/v8/include/cppgc/internal/gc-info.h
|
66
72
|
- vendor/v8/include/cppgc/internal/logging.h
|
73
|
+
- vendor/v8/include/cppgc/internal/name-trait.h
|
67
74
|
- vendor/v8/include/cppgc/internal/persistent-node.h
|
68
75
|
- vendor/v8/include/cppgc/internal/pointer-policies.h
|
69
76
|
- vendor/v8/include/cppgc/internal/prefinalizer-handler.h
|
70
|
-
- vendor/v8/include/cppgc/internal/process-heap.h
|
71
77
|
- vendor/v8/include/cppgc/internal/write-barrier.h
|
72
78
|
- vendor/v8/include/cppgc/liveness-broker.h
|
73
79
|
- vendor/v8/include/cppgc/macros.h
|
74
80
|
- vendor/v8/include/cppgc/member.h
|
81
|
+
- vendor/v8/include/cppgc/name-provider.h
|
82
|
+
- vendor/v8/include/cppgc/object-size-trait.h
|
75
83
|
- vendor/v8/include/cppgc/persistent.h
|
76
84
|
- vendor/v8/include/cppgc/platform.h
|
77
85
|
- vendor/v8/include/cppgc/prefinalizer.h
|
86
|
+
- vendor/v8/include/cppgc/process-heap-statistics.h
|
87
|
+
- vendor/v8/include/cppgc/sentinel-pointer.h
|
78
88
|
- vendor/v8/include/cppgc/source-location.h
|
89
|
+
- vendor/v8/include/cppgc/testing.h
|
79
90
|
- vendor/v8/include/cppgc/trace-trait.h
|
80
91
|
- vendor/v8/include/cppgc/type-traits.h
|
81
92
|
- vendor/v8/include/cppgc/visitor.h
|
@@ -90,6 +101,7 @@ files:
|
|
90
101
|
- vendor/v8/include/v8-metrics.h
|
91
102
|
- vendor/v8/include/v8-platform.h
|
92
103
|
- vendor/v8/include/v8-profiler.h
|
104
|
+
- vendor/v8/include/v8-unwinder-state.h
|
93
105
|
- vendor/v8/include/v8-util.h
|
94
106
|
- vendor/v8/include/v8-value-serializer-version.h
|
95
107
|
- vendor/v8/include/v8-version-string.h
|
@@ -98,8 +110,8 @@ files:
|
|
98
110
|
- vendor/v8/include/v8-wasm-trap-handler-win.h
|
99
111
|
- vendor/v8/include/v8.h
|
100
112
|
- vendor/v8/include/v8config.h
|
101
|
-
- vendor/v8/
|
102
|
-
homepage: https://github.com/
|
113
|
+
- vendor/v8/x86_64-linux/libv8/obj/libv8_monolith.a
|
114
|
+
homepage: https://github.com/rubyjs/libv8-node
|
103
115
|
licenses:
|
104
116
|
- MIT
|
105
117
|
metadata: {}
|
@@ -1,34 +0,0 @@
|
|
1
|
-
// Copyright 2020 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
|
-
#ifndef INCLUDE_CPPGC_INTERNAL_PROCESS_HEAP_H_
|
6
|
-
#define INCLUDE_CPPGC_INTERNAL_PROCESS_HEAP_H_
|
7
|
-
|
8
|
-
#include "cppgc/internal/atomic-entry-flag.h"
|
9
|
-
#include "v8config.h" // NOLINT(build/include_directory)
|
10
|
-
|
11
|
-
namespace cppgc {
|
12
|
-
namespace internal {
|
13
|
-
|
14
|
-
class V8_EXPORT ProcessHeap final {
|
15
|
-
public:
|
16
|
-
static void EnterIncrementalOrConcurrentMarking() {
|
17
|
-
concurrent_marking_flag_.Enter();
|
18
|
-
}
|
19
|
-
static void ExitIncrementalOrConcurrentMarking() {
|
20
|
-
concurrent_marking_flag_.Exit();
|
21
|
-
}
|
22
|
-
|
23
|
-
static bool IsAnyIncrementalOrConcurrentMarking() {
|
24
|
-
return concurrent_marking_flag_.MightBeEntered();
|
25
|
-
}
|
26
|
-
|
27
|
-
private:
|
28
|
-
static AtomicEntryFlag concurrent_marking_flag_;
|
29
|
-
};
|
30
|
-
|
31
|
-
} // namespace internal
|
32
|
-
} // namespace cppgc
|
33
|
-
|
34
|
-
#endif // INCLUDE_CPPGC_INTERNAL_PROCESS_HEAP_H_
|