libv8 6.7.288.46.1-universal-darwin-15 → 8.4.255.0-universal-darwin-15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. checksums.yaml +4 -4
  2. data/lib/libv8/version.rb +1 -1
  3. data/vendor/v8/include/cppgc/allocation.h +124 -0
  4. data/vendor/v8/include/cppgc/garbage-collected.h +192 -0
  5. data/vendor/v8/include/cppgc/heap.h +50 -0
  6. data/vendor/v8/include/cppgc/internal/accessors.h +26 -0
  7. data/vendor/v8/include/cppgc/internal/api-constants.h +44 -0
  8. data/vendor/v8/include/cppgc/internal/compiler-specific.h +26 -0
  9. data/vendor/v8/include/cppgc/internal/finalizer-trait.h +90 -0
  10. data/vendor/v8/include/cppgc/internal/gc-info.h +43 -0
  11. data/vendor/v8/include/cppgc/internal/logging.h +50 -0
  12. data/vendor/v8/include/cppgc/internal/persistent-node.h +109 -0
  13. data/vendor/v8/include/cppgc/internal/pointer-policies.h +133 -0
  14. data/vendor/v8/include/cppgc/internal/prefinalizer-handler.h +31 -0
  15. data/vendor/v8/include/cppgc/liveness-broker.h +50 -0
  16. data/vendor/v8/include/cppgc/macros.h +26 -0
  17. data/vendor/v8/include/cppgc/member.h +206 -0
  18. data/vendor/v8/include/cppgc/persistent.h +304 -0
  19. data/vendor/v8/include/cppgc/platform.h +31 -0
  20. data/vendor/v8/include/cppgc/prefinalizer.h +54 -0
  21. data/vendor/v8/include/cppgc/source-location.h +59 -0
  22. data/vendor/v8/include/cppgc/trace-trait.h +67 -0
  23. data/vendor/v8/include/cppgc/type-traits.h +109 -0
  24. data/vendor/v8/include/cppgc/visitor.h +137 -0
  25. data/vendor/v8/include/libplatform/libplatform.h +13 -24
  26. data/vendor/v8/include/libplatform/v8-tracing.h +57 -20
  27. data/vendor/v8/include/v8-fast-api-calls.h +412 -0
  28. data/vendor/v8/include/v8-inspector-protocol.h +4 -4
  29. data/vendor/v8/include/v8-inspector.h +74 -36
  30. data/vendor/v8/include/v8-internal.h +389 -0
  31. data/vendor/v8/include/v8-platform.h +228 -124
  32. data/vendor/v8/include/v8-profiler.h +292 -228
  33. data/vendor/v8/include/v8-util.h +27 -25
  34. data/vendor/v8/include/v8-version-string.h +1 -1
  35. data/vendor/v8/include/v8-version.h +4 -4
  36. data/vendor/v8/include/v8-wasm-trap-handler-posix.h +31 -0
  37. data/vendor/v8/include/v8-wasm-trap-handler-win.h +28 -0
  38. data/vendor/v8/include/v8.h +2966 -1362
  39. data/vendor/v8/include/v8config.h +156 -114
  40. data/vendor/v8/out.gn/libv8/obj/libv8_libbase.a +0 -0
  41. data/vendor/v8/out.gn/libv8/obj/libv8_libplatform.a +0 -0
  42. data/vendor/v8/out.gn/libv8/obj/libv8_monolith.a +0 -0
  43. data/vendor/v8/out.gn/libv8/obj/third_party/icu/libicui18n.a +0 -0
  44. data/vendor/v8/out.gn/libv8/obj/third_party/icu/libicuuc.a +0 -0
  45. data/vendor/v8/out.gn/libv8/obj/third_party/zlib/google/libcompression_utils_portable.a +0 -0
  46. data/vendor/v8/out.gn/libv8/obj/third_party/zlib/libchrome_zlib.a +0 -0
  47. metadata +37 -9
  48. data/vendor/v8/include/v8-testing.h +0 -48
@@ -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)
@@ -64,6 +64,7 @@
64
64
  // V8_OS_FUCHSIA - Fuchsia
65
65
  // V8_OS_LINUX - Linux
66
66
  // V8_OS_MACOSX - Mac OS X
67
+ // V8_OS_IOS - iOS
67
68
  // V8_OS_NETBSD - NetBSD
68
69
  // V8_OS_OPENBSD - OpenBSD
69
70
  // V8_OS_POSIX - POSIX compatible (mostly everything except Windows)
@@ -80,6 +81,9 @@
80
81
  # define V8_OS_BSD 1
81
82
  # define V8_OS_MACOSX 1
82
83
  # define V8_OS_POSIX 1
84
+ # if defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE
85
+ # define V8_OS_IOS 1
86
+ # endif // defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE
83
87
  #elif defined(__CYGWIN__)
84
88
  # define V8_OS_CYGWIN 1
85
89
  # define V8_OS_POSIX 1
@@ -118,6 +122,67 @@
118
122
  # define V8_OS_WIN 1
119
123
  #endif
120
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
121
186
 
122
187
  // -----------------------------------------------------------------------------
123
188
  // C library detection
@@ -161,17 +226,11 @@
161
226
  //
162
227
  // C++11 feature detection
163
228
  //
164
- // V8_HAS_CXX11_ALIGNAS - alignas specifier supported
165
- // V8_HAS_CXX11_ALIGNOF - alignof(type) operator supported
166
- //
167
229
  // Compiler-specific feature detection
168
230
  //
169
- // V8_HAS___ALIGNOF - __alignof(type) operator supported
170
- // V8_HAS___ALIGNOF__ - __alignof__(type) operator supported
171
- // V8_HAS_ATTRIBUTE_ALIGNED - __attribute__((aligned(n))) supported
172
231
  // V8_HAS_ATTRIBUTE_ALWAYS_INLINE - __attribute__((always_inline))
173
232
  // supported
174
- // V8_HAS_ATTRIBUTE_DEPRECATED - __attribute__((deprecated)) supported
233
+ // V8_HAS_ATTRIBUTE_NONNULL - __attribute__((nonnull)) supported
175
234
  // V8_HAS_ATTRIBUTE_NOINLINE - __attribute__((noinline)) supported
176
235
  // V8_HAS_ATTRIBUTE_UNUSED - __attribute__((unused)) supported
177
236
  // V8_HAS_ATTRIBUTE_VISIBILITY - __attribute__((visibility)) supported
@@ -188,11 +247,10 @@
188
247
  // V8_HAS_BUILTIN_SADD_OVERFLOW - __builtin_sadd_overflow() supported
189
248
  // V8_HAS_BUILTIN_SSUB_OVERFLOW - __builtin_ssub_overflow() supported
190
249
  // V8_HAS_BUILTIN_UADD_OVERFLOW - __builtin_uadd_overflow() supported
191
- // V8_HAS_DECLSPEC_ALIGN - __declspec(align(n)) supported
192
- // V8_HAS_DECLSPEC_DEPRECATED - __declspec(deprecated) supported
250
+ // V8_HAS_COMPUTED_GOTO - computed goto/labels as values
251
+ // supported
193
252
  // V8_HAS_DECLSPEC_NOINLINE - __declspec(noinline) supported
194
253
  // V8_HAS_DECLSPEC_SELECTANY - __declspec(selectany) supported
195
- // V8_HAS_DECLSPEC_NORETURN - __declspec(noreturn) supported
196
254
  // V8_HAS___FORCEINLINE - __forceinline supported
197
255
  //
198
256
  // Note that testing for compilers and/or features must be done using #if
@@ -207,19 +265,15 @@
207
265
  # define V8_CC_GNU 1
208
266
  #endif
209
267
 
210
- // Clang defines __alignof__ as alias for __alignof
211
- # define V8_HAS___ALIGNOF 1
212
- # define V8_HAS___ALIGNOF__ V8_HAS___ALIGNOF
213
-
214
- # define V8_HAS_ATTRIBUTE_ALIGNED (__has_attribute(aligned))
215
268
  # define V8_HAS_ATTRIBUTE_ALWAYS_INLINE (__has_attribute(always_inline))
216
- # define V8_HAS_ATTRIBUTE_DEPRECATED (__has_attribute(deprecated))
269
+ # define V8_HAS_ATTRIBUTE_NONNULL (__has_attribute(nonnull))
217
270
  # define V8_HAS_ATTRIBUTE_NOINLINE (__has_attribute(noinline))
218
271
  # define V8_HAS_ATTRIBUTE_UNUSED (__has_attribute(unused))
219
272
  # define V8_HAS_ATTRIBUTE_VISIBILITY (__has_attribute(visibility))
220
273
  # define V8_HAS_ATTRIBUTE_WARN_UNUSED_RESULT \
221
274
  (__has_attribute(warn_unused_result))
222
275
 
276
+ # define V8_HAS_BUILTIN_ASSUME_ALIGNED (__has_builtin(__builtin_assume_aligned))
223
277
  # define V8_HAS_BUILTIN_BSWAP16 (__has_builtin(__builtin_bswap16))
224
278
  # define V8_HAS_BUILTIN_BSWAP32 (__has_builtin(__builtin_bswap32))
225
279
  # define V8_HAS_BUILTIN_BSWAP64 (__has_builtin(__builtin_bswap64))
@@ -232,7 +286,13 @@
232
286
  # define V8_HAS_BUILTIN_SSUB_OVERFLOW (__has_builtin(__builtin_ssub_overflow))
233
287
  # define V8_HAS_BUILTIN_UADD_OVERFLOW (__has_builtin(__builtin_uadd_overflow))
234
288
 
235
- # define V8_HAS_CXX11_ALIGNAS (__has_feature(cxx_alignas))
289
+ // Clang has no __has_feature for computed gotos.
290
+ // GCC doc: https://gcc.gnu.org/onlinedocs/gcc/Labels-as-Values.html
291
+ # define V8_HAS_COMPUTED_GOTO 1
292
+
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
236
296
 
237
297
  #elif defined(__GNUC__)
238
298
 
@@ -248,42 +308,37 @@
248
308
  # endif
249
309
  # define V8_CC_MINGW (V8_CC_MINGW32 || V8_CC_MINGW64)
250
310
 
251
- # define V8_HAS___ALIGNOF__ (V8_GNUC_PREREQ(4, 3, 0))
252
-
253
- # define V8_HAS_ATTRIBUTE_ALIGNED (V8_GNUC_PREREQ(2, 95, 0))
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_CLZ (V8_GNUC_PREREQ(3, 4, 0))
267
- # define V8_HAS_BUILTIN_CTZ (V8_GNUC_PREREQ(3, 4, 0))
268
- # define V8_HAS_BUILTIN_EXPECT (V8_GNUC_PREREQ(2, 96, 0))
269
- # define V8_HAS_BUILTIN_FRAME_ADDRESS (V8_GNUC_PREREQ(2, 96, 0))
270
- # 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
326
+
327
+ // GCC doc: https://gcc.gnu.org/onlinedocs/gcc/Labels-as-Values.html
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))
271
334
 
272
- # if __cplusplus >= 201103L
273
- # define V8_HAS_CXX11_ALIGNAS (V8_GNUC_PREREQ(4, 8, 0))
274
- # define V8_HAS_CXX11_ALIGNOF (V8_GNUC_PREREQ(4, 8, 0))
275
- # endif
276
335
  #endif
277
336
 
278
337
  #if defined(_MSC_VER)
279
338
  # define V8_CC_MSVC 1
280
- # define V8_HAS___ALIGNOF 1
281
339
 
282
- # define V8_HAS_DECLSPEC_ALIGN 1
283
- # define V8_HAS_DECLSPEC_DEPRECATED 1
284
340
  # define V8_HAS_DECLSPEC_NOINLINE 1
285
341
  # define V8_HAS_DECLSPEC_SELECTANY 1
286
- # define V8_HAS_DECLSPEC_NORETURN 1
287
342
 
288
343
  # define V8_HAS___FORCEINLINE 1
289
344
 
@@ -304,14 +359,30 @@
304
359
  # define V8_INLINE inline
305
360
  #endif
306
361
 
362
+ #if V8_HAS_BUILTIN_ASSUME_ALIGNED
363
+ # define V8_ASSUME_ALIGNED(ptr, alignment) \
364
+ __builtin_assume_aligned((ptr), (alignment))
365
+ #else
366
+ # define V8_ASSUME_ALIGNED(ptr, alignment) (ptr)
367
+ #endif
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
+
307
379
 
308
380
  // A macro used to tell the compiler to never inline a particular function.
309
- // Don't bother for debug builds.
310
381
  // Use like:
311
382
  // V8_NOINLINE int GetMinusOne() { return -1; }
312
- #if !defined(DEBUG) && V8_HAS_ATTRIBUTE_NOINLINE
383
+ #if V8_HAS_ATTRIBUTE_NOINLINE
313
384
  # define V8_NOINLINE __attribute__((noinline))
314
- #elif !defined(DEBUG) && V8_HAS_DECLSPEC_NOINLINE
385
+ #elif V8_HAS_DECLSPEC_NOINLINE
315
386
  # define V8_NOINLINE __declspec(noinline)
316
387
  #else
317
388
  # define V8_NOINLINE /* NOT SUPPORTED */
@@ -319,31 +390,18 @@
319
390
 
320
391
 
321
392
  // A macro (V8_DEPRECATED) to mark classes or functions as deprecated.
322
- #if defined(V8_DEPRECATION_WARNINGS) && V8_HAS_ATTRIBUTE_DEPRECATED_MESSAGE
323
- #define V8_DEPRECATED(message, declarator) \
324
- declarator __attribute__((deprecated(message)))
325
- #elif defined(V8_DEPRECATION_WARNINGS) && V8_HAS_ATTRIBUTE_DEPRECATED
326
- #define V8_DEPRECATED(message, declarator) \
327
- declarator __attribute__((deprecated))
328
- #elif defined(V8_DEPRECATION_WARNINGS) && V8_HAS_DECLSPEC_DEPRECATED
329
- #define V8_DEPRECATED(message, declarator) __declspec(deprecated) declarator
393
+ #if defined(V8_DEPRECATION_WARNINGS)
394
+ # define V8_DEPRECATED(message) [[deprecated(message)]]
330
395
  #else
331
- #define V8_DEPRECATED(message, declarator) declarator
396
+ # define V8_DEPRECATED(message)
332
397
  #endif
333
398
 
334
399
 
335
400
  // A macro (V8_DEPRECATE_SOON) to make it easier to see what will be deprecated.
336
- #if defined(V8_IMMINENT_DEPRECATION_WARNINGS) && \
337
- V8_HAS_ATTRIBUTE_DEPRECATED_MESSAGE
338
- #define V8_DEPRECATE_SOON(message, declarator) \
339
- declarator __attribute__((deprecated(message)))
340
- #elif defined(V8_IMMINENT_DEPRECATION_WARNINGS) && V8_HAS_ATTRIBUTE_DEPRECATED
341
- #define V8_DEPRECATE_SOON(message, declarator) \
342
- declarator __attribute__((deprecated))
343
- #elif defined(V8_IMMINENT_DEPRECATION_WARNINGS) && V8_HAS_DECLSPEC_DEPRECATED
344
- #define V8_DEPRECATE_SOON(message, declarator) __declspec(deprecated) declarator
401
+ #if defined(V8_IMMINENT_DEPRECATION_WARNINGS)
402
+ # define V8_DEPRECATE_SOON(message) [[deprecated(message)]]
345
403
  #else
346
- #define V8_DEPRECATE_SOON(message, declarator) declarator
404
+ # define V8_DEPRECATE_SOON(message)
347
405
  #endif
348
406
 
349
407
 
@@ -357,66 +415,50 @@
357
415
  #endif
358
416
 
359
417
 
360
- // This macro allows to specify memory alignment for structs, classes, etc.
418
+ // Annotate a function indicating the caller must examine the return value.
361
419
  // Use like:
362
- // class V8_ALIGNED(16) MyClass { ... };
363
- // V8_ALIGNED(32) int array[42];
364
- #if V8_HAS_CXX11_ALIGNAS
365
- # define V8_ALIGNED(n) alignas(n)
366
- #elif V8_HAS_ATTRIBUTE_ALIGNED
367
- # define V8_ALIGNED(n) __attribute__((aligned(n)))
368
- #elif V8_HAS_DECLSPEC_ALIGN
369
- # define V8_ALIGNED(n) __declspec(align(n))
420
+ // int foo() V8_WARN_UNUSED_RESULT;
421
+ #if V8_HAS_ATTRIBUTE_WARN_UNUSED_RESULT
422
+ #define V8_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
370
423
  #else
371
- # define V8_ALIGNED(n) /* NOT SUPPORTED */
424
+ #define V8_WARN_UNUSED_RESULT /* NOT SUPPORTED */
372
425
  #endif
373
426
 
427
+ #if defined(BUILDING_V8_SHARED) && defined(USING_V8_SHARED)
428
+ #error Inconsistent build configuration: To build the V8 shared library \
429
+ set BUILDING_V8_SHARED, to include its headers for linking against the \
430
+ V8 shared library set USING_V8_SHARED.
431
+ #endif
374
432
 
375
- // This macro is similar to V8_ALIGNED(), but takes a type instead of size
376
- // in bytes. If the compiler does not supports using the alignment of the
377
- // |type|, it will align according to the |alignment| instead. For example,
378
- // Visual Studio C++ cannot combine __declspec(align) and __alignof. The
379
- // |alignment| must be a literal that is used as a kind of worst-case fallback
380
- // alignment.
381
- // Use like:
382
- // struct V8_ALIGNAS(AnotherClass, 16) NewClass { ... };
383
- // V8_ALIGNAS(double, 8) int array[100];
384
- #if V8_HAS_CXX11_ALIGNAS
385
- # define V8_ALIGNAS(type, alignment) alignas(type)
386
- #elif V8_HAS___ALIGNOF__ && V8_HAS_ATTRIBUTE_ALIGNED
387
- # define V8_ALIGNAS(type, alignment) __attribute__((aligned(__alignof__(type))))
433
+ #ifdef V8_OS_WIN
434
+
435
+ // Setup for Windows DLL export/import. When building the V8 DLL the
436
+ // BUILDING_V8_SHARED needs to be defined. When building a program which uses
437
+ // the V8 DLL USING_V8_SHARED needs to be defined. When either building the V8
438
+ // static library or building a program which uses the V8 static library neither
439
+ // BUILDING_V8_SHARED nor USING_V8_SHARED should be defined.
440
+ #ifdef BUILDING_V8_SHARED
441
+ # define V8_EXPORT __declspec(dllexport)
442
+ #elif USING_V8_SHARED
443
+ # define V8_EXPORT __declspec(dllimport)
388
444
  #else
389
- # define V8_ALIGNAS(type, alignment) V8_ALIGNED(alignment)
390
- #endif
445
+ # define V8_EXPORT
446
+ #endif // BUILDING_V8_SHARED
391
447
 
448
+ #else // V8_OS_WIN
392
449
 
393
- // This macro returns alignment in bytes (an integer power of two) required for
394
- // any instance of the given type, which is either complete type, an array type,
395
- // or a reference type.
396
- // Use like:
397
- // size_t alignment = V8_ALIGNOF(double);
398
- #if V8_HAS_CXX11_ALIGNOF
399
- # define V8_ALIGNOF(type) alignof(type)
400
- #elif V8_HAS___ALIGNOF
401
- # define V8_ALIGNOF(type) __alignof(type)
402
- #elif V8_HAS___ALIGNOF__
403
- # define V8_ALIGNOF(type) __alignof__(type)
450
+ // Setup for Linux shared library export.
451
+ #if V8_HAS_ATTRIBUTE_VISIBILITY
452
+ # ifdef BUILDING_V8_SHARED
453
+ # define V8_EXPORT __attribute__ ((visibility("default")))
454
+ # else
455
+ # define V8_EXPORT
456
+ # endif
404
457
  #else
405
- // Note that alignment of a type within a struct can be less than the
406
- // alignment of the type stand-alone (because of ancient ABIs), so this
407
- // should only be used as a last resort.
408
- namespace v8 { template <typename T> class AlignOfHelper { char c; T t; }; }
409
- # define V8_ALIGNOF(type) (sizeof(::v8::AlignOfHelper<type>) - sizeof(type))
458
+ # define V8_EXPORT
410
459
  #endif
411
460
 
412
- // Annotate a function indicating the caller must examine the return value.
413
- // Use like:
414
- // int foo() V8_WARN_UNUSED_RESULT;
415
- #if V8_HAS_ATTRIBUTE_WARN_UNUSED_RESULT
416
- #define V8_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
417
- #else
418
- #define V8_WARN_UNUSED_RESULT /* NOT SUPPORTED */
419
- #endif
461
+ #endif // V8_OS_WIN
420
462
 
421
463
  // clang-format on
422
464
 
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: 6.7.288.46.1
4
+ version: 8.4.255.0
5
5
  platform: universal-darwin-15
6
6
  authors:
7
7
  - Charles Lowell
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-07-06 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,28 +65,57 @@ 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
96
+ - vendor/v8/include/v8-internal.h
73
97
  - vendor/v8/include/v8-platform.h
74
98
  - vendor/v8/include/v8-profiler.h
75
- - vendor/v8/include/v8-testing.h
76
99
  - vendor/v8/include/v8-util.h
77
100
  - vendor/v8/include/v8-value-serializer-version.h
78
101
  - vendor/v8/include/v8-version-string.h
79
102
  - vendor/v8/include/v8-version.h
103
+ - vendor/v8/include/v8-wasm-trap-handler-posix.h
104
+ - vendor/v8/include/v8-wasm-trap-handler-win.h
80
105
  - vendor/v8/include/v8.h
81
106
  - vendor/v8/include/v8config.h
82
107
  - vendor/v8/out.gn/libv8/obj/libv8_libbase.a
83
108
  - vendor/v8/out.gn/libv8/obj/libv8_libplatform.a
84
109
  - vendor/v8/out.gn/libv8/obj/libv8_monolith.a
85
- homepage: http://github.com/cowboyd/libv8
110
+ - vendor/v8/out.gn/libv8/obj/third_party/icu/libicui18n.a
111
+ - vendor/v8/out.gn/libv8/obj/third_party/icu/libicuuc.a
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
86
115
  licenses:
87
116
  - MIT
88
117
  metadata: {}
89
- post_install_message:
118
+ post_install_message:
90
119
  rdoc_options: []
91
120
  require_paths:
92
121
  - lib
@@ -102,9 +131,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
102
131
  - !ruby/object:Gem::Version
103
132
  version: '0'
104
133
  requirements: []
105
- rubyforge_project: libv8
106
- rubygems_version: 2.7.7
107
- signing_key:
134
+ rubygems_version: 3.1.4
135
+ signing_key:
108
136
  specification_version: 4
109
137
  summary: Distribution of the V8 JavaScript engine
110
138
  test_files: []