libv8 7.8.279.23.0beta1-x86_64-linux → 8.4.255.0.1-x86_64-linux

Sign up to get free protection for your applications and to get access to all the features.
Files changed (51) hide show
  1. checksums.yaml +4 -4
  2. data/ext/libv8/location.rb +1 -1
  3. data/lib/libv8/version.rb +1 -1
  4. data/vendor/v8/include/cppgc/allocation.h +124 -0
  5. data/vendor/v8/include/cppgc/garbage-collected.h +192 -0
  6. data/vendor/v8/include/cppgc/heap.h +50 -0
  7. data/vendor/v8/include/cppgc/internal/accessors.h +26 -0
  8. data/vendor/v8/include/cppgc/internal/api-constants.h +44 -0
  9. data/vendor/v8/include/cppgc/internal/compiler-specific.h +26 -0
  10. data/vendor/v8/include/cppgc/internal/finalizer-trait.h +90 -0
  11. data/vendor/v8/include/cppgc/internal/gc-info.h +43 -0
  12. data/vendor/v8/include/cppgc/internal/logging.h +50 -0
  13. data/vendor/v8/include/cppgc/internal/persistent-node.h +109 -0
  14. data/vendor/v8/include/cppgc/internal/pointer-policies.h +133 -0
  15. data/vendor/v8/include/cppgc/internal/prefinalizer-handler.h +31 -0
  16. data/vendor/v8/include/cppgc/liveness-broker.h +50 -0
  17. data/vendor/v8/include/cppgc/macros.h +26 -0
  18. data/vendor/v8/include/cppgc/member.h +206 -0
  19. data/vendor/v8/include/cppgc/persistent.h +304 -0
  20. data/vendor/v8/include/cppgc/platform.h +31 -0
  21. data/vendor/v8/include/cppgc/prefinalizer.h +54 -0
  22. data/vendor/v8/include/cppgc/source-location.h +59 -0
  23. data/vendor/v8/include/cppgc/trace-trait.h +67 -0
  24. data/vendor/v8/include/cppgc/type-traits.h +109 -0
  25. data/vendor/v8/include/cppgc/visitor.h +137 -0
  26. data/vendor/v8/include/libplatform/libplatform.h +13 -10
  27. data/vendor/v8/include/libplatform/v8-tracing.h +36 -22
  28. data/vendor/v8/include/v8-fast-api-calls.h +412 -0
  29. data/vendor/v8/include/v8-inspector-protocol.h +4 -4
  30. data/vendor/v8/include/v8-inspector.h +57 -27
  31. data/vendor/v8/include/v8-internal.h +23 -21
  32. data/vendor/v8/include/v8-platform.h +164 -40
  33. data/vendor/v8/include/v8-profiler.h +27 -23
  34. data/vendor/v8/include/v8-util.h +1 -1
  35. data/vendor/v8/include/v8-version-string.h +1 -1
  36. data/vendor/v8/include/v8-version.h +4 -4
  37. data/vendor/v8/include/v8-wasm-trap-handler-posix.h +1 -1
  38. data/vendor/v8/include/v8-wasm-trap-handler-win.h +1 -1
  39. data/vendor/v8/include/v8.h +1219 -484
  40. data/vendor/v8/include/v8config.h +105 -51
  41. data/vendor/v8/out.gn/libv8/obj/libv8_libbase.a +0 -0
  42. data/vendor/v8/out.gn/libv8/obj/libv8_libplatform.a +0 -0
  43. data/vendor/v8/out.gn/libv8/obj/libv8_monolith.a +0 -0
  44. data/vendor/v8/out.gn/libv8/obj/third_party/icu/libicui18n.a +0 -0
  45. data/vendor/v8/out.gn/libv8/obj/third_party/icu/libicuuc.a +0 -0
  46. data/vendor/v8/out.gn/libv8/obj/third_party/zlib/google/libcompression_utils_portable.a +0 -0
  47. data/vendor/v8/out.gn/libv8/obj/third_party/zlib/libchrome_zlib.a +0 -0
  48. metadata +31 -9
  49. data/vendor/v8/include/v8-testing.h +0 -48
  50. data/vendor/v8/out.gn/libv8/obj/third_party/inspector_protocol/libbindings.a +0 -0
  51. data/vendor/v8/out.gn/libv8/obj/third_party/inspector_protocol/libencoding.a +0 -0
@@ -54,7 +54,7 @@
54
54
 
55
55
 
56
56
  // -----------------------------------------------------------------------------
57
- // Operating system detection
57
+ // Operating system detection (host)
58
58
  //
59
59
  // V8_OS_ANDROID - Android
60
60
  // V8_OS_BSD - BSDish (Mac OS X, Net/Free/Open/DragonFlyBSD)
@@ -122,6 +122,67 @@
122
122
  # define V8_OS_WIN 1
123
123
  #endif
124
124
 
125
+ // -----------------------------------------------------------------------------
126
+ // Operating system detection (target)
127
+ //
128
+ // V8_TARGET_OS_ANDROID
129
+ // V8_TARGET_OS_FUCHSIA
130
+ // V8_TARGET_OS_IOS
131
+ // V8_TARGET_OS_LINUX
132
+ // V8_TARGET_OS_MACOSX
133
+ // V8_TARGET_OS_WIN
134
+ //
135
+ // If not set explicitly, these fall back to corresponding V8_OS_ values.
136
+
137
+ #ifdef V8_HAVE_TARGET_OS
138
+
139
+ // The target OS is provided, just check that at least one known value is set.
140
+ # if !defined(V8_TARGET_OS_ANDROID) \
141
+ && !defined(V8_TARGET_OS_FUCHSIA) \
142
+ && !defined(V8_TARGET_OS_IOS) \
143
+ && !defined(V8_TARGET_OS_LINUX) \
144
+ && !defined(V8_TARGET_OS_MACOSX) \
145
+ && !defined(V8_TARGET_OS_WIN)
146
+ # error No known target OS defined.
147
+ # endif
148
+
149
+ #else // V8_HAVE_TARGET_OS
150
+
151
+ # if defined(V8_TARGET_OS_ANDROID) \
152
+ || defined(V8_TARGET_OS_FUCHSIA) \
153
+ || defined(V8_TARGET_OS_IOS) \
154
+ || defined(V8_TARGET_OS_LINUX) \
155
+ || defined(V8_TARGET_OS_MACOSX) \
156
+ || defined(V8_TARGET_OS_WIN)
157
+ # error A target OS is defined but V8_HAVE_TARGET_OS is unset.
158
+ # endif
159
+
160
+ // Fall back to the detected host OS.
161
+ #ifdef V8_OS_ANDROID
162
+ # define V8_TARGET_OS_ANDROID
163
+ #endif
164
+
165
+ #ifdef V8_OS_FUCHSIA
166
+ # define V8_TARGET_OS_FUCHSIA
167
+ #endif
168
+
169
+ #ifdef V8_OS_IOS
170
+ # define V8_TARGET_OS_IOS
171
+ #endif
172
+
173
+ #ifdef V8_OS_LINUX
174
+ # define V8_TARGET_OS_LINUX
175
+ #endif
176
+
177
+ #ifdef V8_OS_MACOSX
178
+ # define V8_TARGET_OS_MACOSX
179
+ #endif
180
+
181
+ #ifdef V8_OS_WIN
182
+ # define V8_TARGET_OS_WIN
183
+ #endif
184
+
185
+ #endif // V8_HAVE_TARGET_OS
125
186
 
126
187
  // -----------------------------------------------------------------------------
127
188
  // C library detection
@@ -169,7 +230,7 @@
169
230
  //
170
231
  // V8_HAS_ATTRIBUTE_ALWAYS_INLINE - __attribute__((always_inline))
171
232
  // supported
172
- // V8_HAS_ATTRIBUTE_DEPRECATED - __attribute__((deprecated)) supported
233
+ // V8_HAS_ATTRIBUTE_NONNULL - __attribute__((nonnull)) supported
173
234
  // V8_HAS_ATTRIBUTE_NOINLINE - __attribute__((noinline)) supported
174
235
  // V8_HAS_ATTRIBUTE_UNUSED - __attribute__((unused)) supported
175
236
  // V8_HAS_ATTRIBUTE_VISIBILITY - __attribute__((visibility)) supported
@@ -188,10 +249,8 @@
188
249
  // V8_HAS_BUILTIN_UADD_OVERFLOW - __builtin_uadd_overflow() supported
189
250
  // V8_HAS_COMPUTED_GOTO - computed goto/labels as values
190
251
  // supported
191
- // V8_HAS_DECLSPEC_DEPRECATED - __declspec(deprecated) supported
192
252
  // V8_HAS_DECLSPEC_NOINLINE - __declspec(noinline) supported
193
253
  // V8_HAS_DECLSPEC_SELECTANY - __declspec(selectany) supported
194
- // V8_HAS_DECLSPEC_NORETURN - __declspec(noreturn) supported
195
254
  // V8_HAS___FORCEINLINE - __forceinline supported
196
255
  //
197
256
  // Note that testing for compilers and/or features must be done using #if
@@ -207,9 +266,7 @@
207
266
  #endif
208
267
 
209
268
  # define V8_HAS_ATTRIBUTE_ALWAYS_INLINE (__has_attribute(always_inline))
210
- # define V8_HAS_ATTRIBUTE_DEPRECATED (__has_attribute(deprecated))
211
- # define V8_HAS_ATTRIBUTE_DEPRECATED_MESSAGE \
212
- (__has_extension(attribute_deprecated_with_message))
269
+ # define V8_HAS_ATTRIBUTE_NONNULL (__has_attribute(nonnull))
213
270
  # define V8_HAS_ATTRIBUTE_NOINLINE (__has_attribute(noinline))
214
271
  # define V8_HAS_ATTRIBUTE_UNUSED (__has_attribute(unused))
215
272
  # define V8_HAS_ATTRIBUTE_VISIBILITY (__has_attribute(visibility))
@@ -233,9 +290,9 @@
233
290
  // GCC doc: https://gcc.gnu.org/onlinedocs/gcc/Labels-as-Values.html
234
291
  # define V8_HAS_COMPUTED_GOTO 1
235
292
 
236
- # if __cplusplus >= 201402L
237
- # define V8_CAN_HAVE_DCHECK_IN_CONSTEXPR 1
238
- # endif
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
239
296
 
240
297
  #elif defined(__GNUC__)
241
298
 
@@ -254,34 +311,34 @@
254
311
  // always_inline is available in gcc 4.0 but not very reliable until 4.4.
255
312
  // Works around "sorry, unimplemented: inlining failed" build errors with
256
313
  // older compilers.
257
- # define V8_HAS_ATTRIBUTE_ALWAYS_INLINE (V8_GNUC_PREREQ(4, 4, 0))
258
- # define V8_HAS_ATTRIBUTE_DEPRECATED (V8_GNUC_PREREQ(3, 4, 0))
259
- # define V8_HAS_ATTRIBUTE_DEPRECATED_MESSAGE (V8_GNUC_PREREQ(4, 5, 0))
260
- # define V8_HAS_ATTRIBUTE_NOINLINE (V8_GNUC_PREREQ(3, 4, 0))
261
- # define V8_HAS_ATTRIBUTE_UNUSED (V8_GNUC_PREREQ(2, 95, 0))
262
- # define V8_HAS_ATTRIBUTE_VISIBILITY (V8_GNUC_PREREQ(4, 3, 0))
263
- # define V8_HAS_ATTRIBUTE_WARN_UNUSED_RESULT \
264
- (!V8_CC_INTEL && V8_GNUC_PREREQ(4, 1, 0))
265
-
266
- # define V8_HAS_BUILTIN_ASSUME_ALIGNED (V8_GNUC_PREREQ(4, 7, 0))
267
- # define V8_HAS_BUILTIN_CLZ (V8_GNUC_PREREQ(3, 4, 0))
268
- # define V8_HAS_BUILTIN_CTZ (V8_GNUC_PREREQ(3, 4, 0))
269
- # define V8_HAS_BUILTIN_EXPECT (V8_GNUC_PREREQ(2, 96, 0))
270
- # define V8_HAS_BUILTIN_FRAME_ADDRESS (V8_GNUC_PREREQ(2, 96, 0))
271
- # define V8_HAS_BUILTIN_POPCOUNT (V8_GNUC_PREREQ(3, 4, 0))
314
+ # define V8_HAS_ATTRIBUTE_ALWAYS_INLINE 1
315
+ # define V8_HAS_ATTRIBUTE_NOINLINE 1
316
+ # define V8_HAS_ATTRIBUTE_UNUSED 1
317
+ # define V8_HAS_ATTRIBUTE_VISIBILITY 1
318
+ # define V8_HAS_ATTRIBUTE_WARN_UNUSED_RESULT (!V8_CC_INTEL)
319
+
320
+ # define V8_HAS_BUILTIN_ASSUME_ALIGNED 1
321
+ # define V8_HAS_BUILTIN_CLZ 1
322
+ # define V8_HAS_BUILTIN_CTZ 1
323
+ # define V8_HAS_BUILTIN_EXPECT 1
324
+ # define V8_HAS_BUILTIN_FRAME_ADDRESS 1
325
+ # define V8_HAS_BUILTIN_POPCOUNT 1
272
326
 
273
327
  // GCC doc: https://gcc.gnu.org/onlinedocs/gcc/Labels-as-Values.html
274
- #define V8_HAS_COMPUTED_GOTO (V8_GNUC_PREREQ(2, 0, 0))
328
+ #define V8_HAS_COMPUTED_GOTO 1
329
+
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))
275
334
 
276
335
  #endif
277
336
 
278
337
  #if defined(_MSC_VER)
279
338
  # define V8_CC_MSVC 1
280
339
 
281
- # define V8_HAS_DECLSPEC_DEPRECATED 1
282
340
  # define V8_HAS_DECLSPEC_NOINLINE 1
283
341
  # define V8_HAS_DECLSPEC_SELECTANY 1
284
- # define V8_HAS_DECLSPEC_NORETURN 1
285
342
 
286
343
  # define V8_HAS___FORCEINLINE 1
287
344
 
@@ -306,16 +363,26 @@
306
363
  # define V8_ASSUME_ALIGNED(ptr, alignment) \
307
364
  __builtin_assume_aligned((ptr), (alignment))
308
365
  #else
309
- # define V8_ASSUME_ALIGNED(ptr) (ptr)
366
+ # define V8_ASSUME_ALIGNED(ptr, alignment) (ptr)
310
367
  #endif
311
368
 
369
+
370
+ // A macro to mark specific arguments as non-null.
371
+ // Use like:
372
+ // int add(int* x, int y, int* z) V8_NONNULL(1, 3) { return *x + y + *z; }
373
+ #if V8_HAS_ATTRIBUTE_NONNULL
374
+ # define V8_NONNULL(...) __attribute__((nonnull(__VA_ARGS__)))
375
+ #else
376
+ # define V8_NONNULL(...) /* NOT SUPPORTED */
377
+ #endif
378
+
379
+
312
380
  // A macro used to tell the compiler to never inline a particular function.
313
- // Don't bother for debug builds.
314
381
  // Use like:
315
382
  // V8_NOINLINE int GetMinusOne() { return -1; }
316
- #if !defined(DEBUG) && V8_HAS_ATTRIBUTE_NOINLINE
383
+ #if V8_HAS_ATTRIBUTE_NOINLINE
317
384
  # define V8_NOINLINE __attribute__((noinline))
318
- #elif !defined(DEBUG) && V8_HAS_DECLSPEC_NOINLINE
385
+ #elif V8_HAS_DECLSPEC_NOINLINE
319
386
  # define V8_NOINLINE __declspec(noinline)
320
387
  #else
321
388
  # define V8_NOINLINE /* NOT SUPPORTED */
@@ -323,31 +390,18 @@
323
390
 
324
391
 
325
392
  // A macro (V8_DEPRECATED) to mark classes or functions as deprecated.
326
- #if defined(V8_DEPRECATION_WARNINGS) && V8_HAS_ATTRIBUTE_DEPRECATED_MESSAGE
327
- #define V8_DEPRECATED(message, declarator) \
328
- declarator __attribute__((deprecated(message)))
329
- #elif defined(V8_DEPRECATION_WARNINGS) && V8_HAS_ATTRIBUTE_DEPRECATED
330
- #define V8_DEPRECATED(message, declarator) \
331
- declarator __attribute__((deprecated))
332
- #elif defined(V8_DEPRECATION_WARNINGS) && V8_HAS_DECLSPEC_DEPRECATED
333
- #define V8_DEPRECATED(message, declarator) __declspec(deprecated) declarator
393
+ #if defined(V8_DEPRECATION_WARNINGS)
394
+ # define V8_DEPRECATED(message) [[deprecated(message)]]
334
395
  #else
335
- #define V8_DEPRECATED(message, declarator) declarator
396
+ # define V8_DEPRECATED(message)
336
397
  #endif
337
398
 
338
399
 
339
400
  // A macro (V8_DEPRECATE_SOON) to make it easier to see what will be deprecated.
340
- #if defined(V8_IMMINENT_DEPRECATION_WARNINGS) && \
341
- V8_HAS_ATTRIBUTE_DEPRECATED_MESSAGE
342
- #define V8_DEPRECATE_SOON(message, declarator) \
343
- declarator __attribute__((deprecated(message)))
344
- #elif defined(V8_IMMINENT_DEPRECATION_WARNINGS) && V8_HAS_ATTRIBUTE_DEPRECATED
345
- #define V8_DEPRECATE_SOON(message, declarator) \
346
- declarator __attribute__((deprecated))
347
- #elif defined(V8_IMMINENT_DEPRECATION_WARNINGS) && V8_HAS_DECLSPEC_DEPRECATED
348
- #define V8_DEPRECATE_SOON(message, declarator) __declspec(deprecated) declarator
401
+ #if defined(V8_IMMINENT_DEPRECATION_WARNINGS)
402
+ # define V8_DEPRECATE_SOON(message) [[deprecated(message)]]
349
403
  #else
350
- #define V8_DEPRECATE_SOON(message, declarator) declarator
404
+ # define V8_DEPRECATE_SOON(message)
351
405
  #endif
352
406
 
353
407
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: libv8
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.8.279.23.0beta1
4
+ version: 8.4.255.0.1
5
5
  platform: x86_64-linux
6
6
  authors:
7
7
  - Charles Lowell
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-12-09 00:00:00.000000000 Z
11
+ date: 2020-07-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -65,15 +65,37 @@ files:
65
65
  - ext/libv8/paths.rb
66
66
  - lib/libv8.rb
67
67
  - lib/libv8/version.rb
68
+ - vendor/v8/include/cppgc/allocation.h
69
+ - vendor/v8/include/cppgc/garbage-collected.h
70
+ - vendor/v8/include/cppgc/heap.h
71
+ - vendor/v8/include/cppgc/internal/accessors.h
72
+ - vendor/v8/include/cppgc/internal/api-constants.h
73
+ - vendor/v8/include/cppgc/internal/compiler-specific.h
74
+ - vendor/v8/include/cppgc/internal/finalizer-trait.h
75
+ - vendor/v8/include/cppgc/internal/gc-info.h
76
+ - vendor/v8/include/cppgc/internal/logging.h
77
+ - vendor/v8/include/cppgc/internal/persistent-node.h
78
+ - vendor/v8/include/cppgc/internal/pointer-policies.h
79
+ - vendor/v8/include/cppgc/internal/prefinalizer-handler.h
80
+ - vendor/v8/include/cppgc/liveness-broker.h
81
+ - vendor/v8/include/cppgc/macros.h
82
+ - vendor/v8/include/cppgc/member.h
83
+ - vendor/v8/include/cppgc/persistent.h
84
+ - vendor/v8/include/cppgc/platform.h
85
+ - vendor/v8/include/cppgc/prefinalizer.h
86
+ - vendor/v8/include/cppgc/source-location.h
87
+ - vendor/v8/include/cppgc/trace-trait.h
88
+ - vendor/v8/include/cppgc/type-traits.h
89
+ - vendor/v8/include/cppgc/visitor.h
68
90
  - vendor/v8/include/libplatform/libplatform-export.h
69
91
  - vendor/v8/include/libplatform/libplatform.h
70
92
  - vendor/v8/include/libplatform/v8-tracing.h
93
+ - vendor/v8/include/v8-fast-api-calls.h
71
94
  - vendor/v8/include/v8-inspector-protocol.h
72
95
  - vendor/v8/include/v8-inspector.h
73
96
  - vendor/v8/include/v8-internal.h
74
97
  - vendor/v8/include/v8-platform.h
75
98
  - vendor/v8/include/v8-profiler.h
76
- - vendor/v8/include/v8-testing.h
77
99
  - vendor/v8/include/v8-util.h
78
100
  - vendor/v8/include/v8-value-serializer-version.h
79
101
  - vendor/v8/include/v8-version-string.h
@@ -87,9 +109,9 @@ files:
87
109
  - vendor/v8/out.gn/libv8/obj/libv8_monolith.a
88
110
  - vendor/v8/out.gn/libv8/obj/third_party/icu/libicui18n.a
89
111
  - vendor/v8/out.gn/libv8/obj/third_party/icu/libicuuc.a
90
- - vendor/v8/out.gn/libv8/obj/third_party/inspector_protocol/libbindings.a
91
- - vendor/v8/out.gn/libv8/obj/third_party/inspector_protocol/libencoding.a
92
- homepage: http://github.com/cowboyd/libv8
112
+ - vendor/v8/out.gn/libv8/obj/third_party/zlib/google/libcompression_utils_portable.a
113
+ - vendor/v8/out.gn/libv8/obj/third_party/zlib/libchrome_zlib.a
114
+ homepage: http://github.com/rubyjs/libv8
93
115
  licenses:
94
116
  - MIT
95
117
  metadata: {}
@@ -105,11 +127,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
105
127
  version: '0'
106
128
  required_rubygems_version: !ruby/object:Gem::Requirement
107
129
  requirements:
108
- - - ">"
130
+ - - ">="
109
131
  - !ruby/object:Gem::Version
110
- version: 1.3.1
132
+ version: '0'
111
133
  requirements: []
112
- rubygems_version: 3.0.3
134
+ rubygems_version: 3.1.4
113
135
  signing_key:
114
136
  specification_version: 4
115
137
  summary: Distribution of the V8 JavaScript engine
@@ -1,48 +0,0 @@
1
- // Copyright 2010 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 V8_V8_TEST_H_
6
- #define V8_V8_TEST_H_
7
-
8
- #include "v8.h" // NOLINT(build/include)
9
-
10
- /**
11
- * Testing support for the V8 JavaScript engine.
12
- */
13
- namespace v8 {
14
-
15
- class V8_EXPORT Testing {
16
- public:
17
- enum StressType {
18
- kStressTypeOpt,
19
- kStressTypeDeopt
20
- };
21
-
22
- /**
23
- * Set the type of stressing to do. The default if not set is kStressTypeOpt.
24
- */
25
- static void SetStressRunType(StressType type);
26
-
27
- /**
28
- * Get the number of runs of a given test that is required to get the full
29
- * stress coverage.
30
- */
31
- static int GetStressRuns();
32
-
33
- /**
34
- * Indicate the number of the run which is about to start. The value of run
35
- * should be between 0 and one less than the result from GetStressRuns()
36
- */
37
- static void PrepareStressRun(int run);
38
-
39
- /**
40
- * Force deoptimization of all functions.
41
- */
42
- static void DeoptimizeAll(Isolate* isolate);
43
- };
44
-
45
-
46
- } // namespace v8
47
-
48
- #endif // V8_V8_TEST_H_