node-linux-arm64 18.10.0 → 19.0.0

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 (39) hide show
  1. package/CHANGELOG.md +132 -1597
  2. package/README.md +11 -16
  3. package/bin/node +0 -0
  4. package/include/node/common.gypi +1 -1
  5. package/include/node/config.gypi +251 -248
  6. package/include/node/cppgc/common.h +0 -1
  7. package/include/node/node.h +96 -10
  8. package/include/node/node_version.h +3 -3
  9. package/include/node/v8-callbacks.h +19 -5
  10. package/include/node/v8-context.h +12 -8
  11. package/include/node/v8-date.h +5 -0
  12. package/include/node/v8-embedder-heap.h +8 -3
  13. package/include/node/v8-exception.h +1 -1
  14. package/include/node/v8-function.h +8 -0
  15. package/include/node/v8-initialization.h +23 -49
  16. package/include/node/v8-internal.h +312 -123
  17. package/include/node/v8-isolate.h +26 -42
  18. package/include/node/v8-local-handle.h +5 -5
  19. package/include/node/v8-locker.h +0 -11
  20. package/include/node/v8-maybe.h +24 -1
  21. package/include/node/v8-message.h +2 -4
  22. package/include/node/v8-microtask-queue.h +1 -1
  23. package/include/node/v8-object.h +8 -15
  24. package/include/node/v8-persistent-handle.h +0 -2
  25. package/include/node/v8-platform.h +54 -25
  26. package/include/node/v8-primitive.h +8 -8
  27. package/include/node/v8-profiler.h +84 -22
  28. package/include/node/v8-regexp.h +2 -1
  29. package/include/node/v8-script.h +62 -6
  30. package/include/node/v8-template.h +13 -76
  31. package/include/node/v8-value-serializer.h +46 -23
  32. package/include/node/v8-version.h +3 -3
  33. package/include/node/v8-wasm.h +5 -62
  34. package/include/node/v8-weak-callback-info.h +0 -7
  35. package/include/node/v8config.h +247 -13
  36. package/package.json +1 -1
  37. package/share/doc/node/gdbinit +9 -1
  38. package/share/man/man1/node.1 +13 -6
  39. package/share/systemtap/tapset/node.stp +0 -146
@@ -63,13 +63,6 @@ enum class WeakCallbackType {
63
63
  * Passes the first two internal fields of the object back to the callback.
64
64
  */
65
65
  kInternalFields,
66
- /**
67
- * Passes a user-defined void* parameter back to the callback. Will do so
68
- * before the object is actually reclaimed, allowing it to be resurrected. In
69
- * this case it is not possible to set a second-pass callback.
70
- */
71
- kFinalizer V8_ENUM_DEPRECATED("Resurrecting finalizers are deprecated "
72
- "and will not be supported going forward.")
73
66
  };
74
67
 
75
68
  template <class T>
@@ -308,6 +308,7 @@ path. Add it with -I<path> to the command line
308
308
  // V8_HAS_BUILTIN_SADD_OVERFLOW - __builtin_sadd_overflow() supported
309
309
  // V8_HAS_BUILTIN_SSUB_OVERFLOW - __builtin_ssub_overflow() supported
310
310
  // V8_HAS_BUILTIN_UADD_OVERFLOW - __builtin_uadd_overflow() supported
311
+ // V8_HAS_BUILTIN_SMUL_OVERFLOW - __builtin_smul_overflow() supported
311
312
  // V8_HAS_COMPUTED_GOTO - computed goto/labels as values
312
313
  // supported
313
314
  // V8_HAS_DECLSPEC_NOINLINE - __declspec(noinline) supported
@@ -344,6 +345,7 @@ path. Add it with -I<path> to the command line
344
345
  # define V8_HAS_CPP_ATTRIBUTE_NO_UNIQUE_ADDRESS \
345
346
  (V8_HAS_CPP_ATTRIBUTE(no_unique_address))
346
347
 
348
+ # define V8_HAS_BUILTIN_ASSUME (__has_builtin(__builtin_assume))
347
349
  # define V8_HAS_BUILTIN_ASSUME_ALIGNED (__has_builtin(__builtin_assume_aligned))
348
350
  # define V8_HAS_BUILTIN_BSWAP16 (__has_builtin(__builtin_bswap16))
349
351
  # define V8_HAS_BUILTIN_BSWAP32 (__has_builtin(__builtin_bswap32))
@@ -356,6 +358,8 @@ path. Add it with -I<path> to the command line
356
358
  # define V8_HAS_BUILTIN_SADD_OVERFLOW (__has_builtin(__builtin_sadd_overflow))
357
359
  # define V8_HAS_BUILTIN_SSUB_OVERFLOW (__has_builtin(__builtin_ssub_overflow))
358
360
  # define V8_HAS_BUILTIN_UADD_OVERFLOW (__has_builtin(__builtin_uadd_overflow))
361
+ # define V8_HAS_BUILTIN_SMUL_OVERFLOW (__has_builtin(__builtin_smul_overflow))
362
+ # define V8_HAS_BUILTIN_UNREACHABLE (__has_builtin(__builtin_unreachable))
359
363
 
360
364
  // Clang has no __has_feature for computed gotos.
361
365
  // GCC doc: https://gcc.gnu.org/onlinedocs/gcc/Labels-as-Values.html
@@ -394,6 +398,7 @@ path. Add it with -I<path> to the command line
394
398
  # define V8_HAS_BUILTIN_EXPECT 1
395
399
  # define V8_HAS_BUILTIN_FRAME_ADDRESS 1
396
400
  # define V8_HAS_BUILTIN_POPCOUNT 1
401
+ # define V8_HAS_BUILTIN_UNREACHABLE 1
397
402
 
398
403
  // GCC doc: https://gcc.gnu.org/onlinedocs/gcc/Labels-as-Values.html
399
404
  #define V8_HAS_COMPUTED_GOTO 1
@@ -425,6 +430,18 @@ path. Add it with -I<path> to the command line
425
430
  # define V8_INLINE inline
426
431
  #endif
427
432
 
433
+ #ifdef DEBUG
434
+ // In debug mode, check assumptions instead of actually adding annotations.
435
+ # define V8_ASSUME(condition) DCHECK(condition)
436
+ #elif V8_HAS_BUILTIN_ASSUME
437
+ # define V8_ASSUME(condition) __builtin_assume(condition)
438
+ #elif V8_HAS_BUILTIN_UNREACHABLE
439
+ # define V8_ASSUME(condition) \
440
+ do { if (!(condition)) __builtin_unreachable(); } while (false)
441
+ #else
442
+ # define V8_ASSUME(condition)
443
+ #endif
444
+
428
445
  #if V8_HAS_BUILTIN_ASSUME_ALIGNED
429
446
  # define V8_ASSUME_ALIGNED(ptr, alignment) \
430
447
  __builtin_assume_aligned((ptr), (alignment))
@@ -471,6 +488,34 @@ path. Add it with -I<path> to the command line
471
488
  #endif
472
489
 
473
490
 
491
+ #if defined(V8_IMMINENT_DEPRECATION_WARNINGS) || \
492
+ defined(V8_DEPRECATION_WARNINGS)
493
+ #if defined(V8_CC_MSVC)
494
+ # define START_ALLOW_USE_DEPRECATED() \
495
+ __pragma(warning(push)) \
496
+ __pragma(warning(disable : 4996))
497
+ # define END_ALLOW_USE_DEPRECATED() __pragma(warning(pop))
498
+ #else // !defined(V8_CC_MSVC)
499
+ # define START_ALLOW_USE_DEPRECATED() \
500
+ _Pragma("GCC diagnostic push") \
501
+ _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")
502
+ #define END_ALLOW_USE_DEPRECATED() _Pragma("GCC diagnostic pop")
503
+ #endif // !defined(V8_CC_MSVC)
504
+ #else // !(defined(V8_IMMINENT_DEPRECATION_WARNINGS) ||
505
+ // defined(V8_DEPRECATION_WARNINGS))
506
+ #define START_ALLOW_USE_DEPRECATED()
507
+ #define END_ALLOW_USE_DEPRECATED()
508
+ #endif // !(defined(V8_IMMINENT_DEPRECATION_WARNINGS) ||
509
+ // defined(V8_DEPRECATION_WARNINGS))
510
+ #define ALLOW_COPY_AND_MOVE_WITH_DEPRECATED_FIELDS(ClassName) \
511
+ START_ALLOW_USE_DEPRECATED() \
512
+ ClassName(const ClassName&) = default; \
513
+ ClassName(ClassName&&) = default; \
514
+ ClassName& operator=(const ClassName&) = default; \
515
+ ClassName& operator=(ClassName&&) = default; \
516
+ END_ALLOW_USE_DEPRECATED()
517
+
518
+
474
519
  #if defined(__GNUC__) && !defined(__clang__) && (__GNUC__ < 6)
475
520
  # define V8_ENUM_DEPRECATED(message)
476
521
  # define V8_ENUM_DEPRECATE_SOON(message)
@@ -580,25 +625,214 @@ V8 shared library set USING_V8_SHARED.
580
625
 
581
626
  #endif // V8_OS_WIN
582
627
 
583
- // The sandbox is available (i.e. defined) when pointer compression
584
- // is enabled, but it is only used when V8_SANDBOX is enabled as
585
- // well. This allows better test coverage of the sandbox.
586
- #if defined(V8_COMPRESS_POINTERS)
587
- #define V8_SANDBOX_IS_AVAILABLE
628
+ // clang-format on
629
+
630
+ // Processor architecture detection. For more info on what's defined, see:
631
+ // http://msdn.microsoft.com/en-us/library/b0084kay.aspx
632
+ // http://www.agner.org/optimize/calling_conventions.pdf
633
+ // or with gcc, run: "echo | gcc -E -dM -"
634
+ // The V8_HOST_ARCH_* macros correspond to the architecture on which V8, as a
635
+ // virtual machine and compiler, runs. Don't confuse this with the architecture
636
+ // on which V8 is built.
637
+ #if defined(_M_X64) || defined(__x86_64__)
638
+ #define V8_HOST_ARCH_X64 1
639
+ #if defined(__x86_64__) && __SIZEOF_POINTER__ == 4 // Check for x32.
640
+ #define V8_HOST_ARCH_32_BIT 1
641
+ #else
642
+ #define V8_HOST_ARCH_64_BIT 1
643
+ #endif
644
+ #elif defined(_M_IX86) || defined(__i386__)
645
+ #define V8_HOST_ARCH_IA32 1
646
+ #define V8_HOST_ARCH_32_BIT 1
647
+ #elif defined(__AARCH64EL__) || defined(_M_ARM64)
648
+ #define V8_HOST_ARCH_ARM64 1
649
+ #define V8_HOST_ARCH_64_BIT 1
650
+ #elif defined(__ARMEL__)
651
+ #define V8_HOST_ARCH_ARM 1
652
+ #define V8_HOST_ARCH_32_BIT 1
653
+ #elif defined(__mips64)
654
+ #define V8_HOST_ARCH_MIPS64 1
655
+ #define V8_HOST_ARCH_64_BIT 1
656
+ #elif defined(__loongarch64)
657
+ #define V8_HOST_ARCH_LOONG64 1
658
+ #define V8_HOST_ARCH_64_BIT 1
659
+ #elif defined(__PPC64__) || defined(_ARCH_PPC64)
660
+ #define V8_HOST_ARCH_PPC64 1
661
+ #define V8_HOST_ARCH_64_BIT 1
662
+ #elif defined(__PPC__) || defined(_ARCH_PPC)
663
+ #define V8_HOST_ARCH_PPC 1
664
+ #define V8_HOST_ARCH_32_BIT 1
665
+ #elif defined(__s390__) || defined(__s390x__)
666
+ #define V8_HOST_ARCH_S390 1
667
+ #if defined(__s390x__)
668
+ #define V8_HOST_ARCH_64_BIT 1
669
+ #else
670
+ #define V8_HOST_ARCH_32_BIT 1
671
+ #endif
672
+ #elif defined(__riscv) || defined(__riscv__)
673
+ #if __riscv_xlen == 64
674
+ #define V8_HOST_ARCH_RISCV64 1
675
+ #define V8_HOST_ARCH_64_BIT 1
676
+ #elif __riscv_xlen == 32
677
+ #define V8_HOST_ARCH_RISCV32 1
678
+ #define V8_HOST_ARCH_32_BIT 1
679
+ #else
680
+ #error "Cannot detect Riscv's bitwidth"
681
+ #endif
682
+ #else
683
+ #error "Host architecture was not detected as supported by v8"
684
+ #endif
685
+
686
+ // Target architecture detection. This corresponds to the architecture for which
687
+ // V8's JIT will generate code (the last stage of the canadian cross-compiler).
688
+ // The macros may be set externally. If not, detect in the same way as the host
689
+ // architecture, that is, target the native environment as presented by the
690
+ // compiler.
691
+ #if !V8_TARGET_ARCH_X64 && !V8_TARGET_ARCH_IA32 && !V8_TARGET_ARCH_ARM && \
692
+ !V8_TARGET_ARCH_ARM64 && !V8_TARGET_ARCH_MIPS64 && !V8_TARGET_ARCH_PPC && \
693
+ !V8_TARGET_ARCH_PPC64 && !V8_TARGET_ARCH_S390 && \
694
+ !V8_TARGET_ARCH_RISCV64 && !V8_TARGET_ARCH_LOONG64 && \
695
+ !V8_TARGET_ARCH_RISCV32
696
+ #if defined(_M_X64) || defined(__x86_64__)
697
+ #define V8_TARGET_ARCH_X64 1
698
+ #elif defined(_M_IX86) || defined(__i386__)
699
+ #define V8_TARGET_ARCH_IA32 1
700
+ #elif defined(__AARCH64EL__) || defined(_M_ARM64)
701
+ #define V8_TARGET_ARCH_ARM64 1
702
+ #elif defined(__ARMEL__)
703
+ #define V8_TARGET_ARCH_ARM 1
704
+ #elif defined(__mips64)
705
+ #define V8_TARGET_ARCH_MIPS64 1
706
+ #elif defined(_ARCH_PPC64)
707
+ #define V8_TARGET_ARCH_PPC64 1
708
+ #elif defined(_ARCH_PPC)
709
+ #define V8_TARGET_ARCH_PPC 1
710
+ #elif defined(__s390__)
711
+ #define V8_TARGET_ARCH_S390 1
712
+ #if defined(__s390x__)
713
+ #define V8_TARGET_ARCH_S390X 1
714
+ #endif
715
+ #elif defined(__riscv) || defined(__riscv__)
716
+ #if __riscv_xlen == 64
717
+ #define V8_TARGET_ARCH_RISCV64 1
718
+ #elif __riscv_xlen == 32
719
+ #define V8_TARGET_ARCH_RISCV32 1
720
+ #endif
721
+ #else
722
+ #error Target architecture was not detected as supported by v8
723
+ #endif
588
724
  #endif
589
725
 
590
- #if defined(V8_SANDBOX) && !defined(V8_SANDBOX_IS_AVAILABLE)
591
- #error Inconsistent configuration: sandbox is enabled but not available
726
+ // Determine architecture pointer size.
727
+ #if V8_TARGET_ARCH_IA32
728
+ #define V8_TARGET_ARCH_32_BIT 1
729
+ #elif V8_TARGET_ARCH_X64
730
+ #if !V8_TARGET_ARCH_32_BIT && !V8_TARGET_ARCH_64_BIT
731
+ #if defined(__x86_64__) && __SIZEOF_POINTER__ == 4 // Check for x32.
732
+ #define V8_TARGET_ARCH_32_BIT 1
733
+ #else
734
+ #define V8_TARGET_ARCH_64_BIT 1
735
+ #endif
736
+ #endif
737
+ #elif V8_TARGET_ARCH_ARM
738
+ #define V8_TARGET_ARCH_32_BIT 1
739
+ #elif V8_TARGET_ARCH_ARM64
740
+ #define V8_TARGET_ARCH_64_BIT 1
741
+ #elif V8_TARGET_ARCH_MIPS
742
+ #define V8_TARGET_ARCH_32_BIT 1
743
+ #elif V8_TARGET_ARCH_MIPS64
744
+ #define V8_TARGET_ARCH_64_BIT 1
745
+ #elif V8_TARGET_ARCH_LOONG64
746
+ #define V8_TARGET_ARCH_64_BIT 1
747
+ #elif V8_TARGET_ARCH_PPC
748
+ #define V8_TARGET_ARCH_32_BIT 1
749
+ #elif V8_TARGET_ARCH_PPC64
750
+ #define V8_TARGET_ARCH_64_BIT 1
751
+ #elif V8_TARGET_ARCH_S390
752
+ #if V8_TARGET_ARCH_S390X
753
+ #define V8_TARGET_ARCH_64_BIT 1
754
+ #else
755
+ #define V8_TARGET_ARCH_32_BIT 1
756
+ #endif
757
+ #elif V8_TARGET_ARCH_RISCV64
758
+ #define V8_TARGET_ARCH_64_BIT 1
759
+ #elif V8_TARGET_ARCH_RISCV32
760
+ #define V8_TARGET_ARCH_32_BIT 1
761
+ #else
762
+ #error Unknown target architecture pointer size
592
763
  #endif
593
764
 
594
- // From C++17 onwards, static constexpr member variables are defined to be
595
- // "inline", and adding a separate definition for them can trigger deprecation
596
- // warnings. For C++14 and below, however, these definitions are required.
597
- #if __cplusplus < 201703L && (!defined(_MSVC_LANG) || _MSVC_LANG < 201703L)
598
- #define V8_STATIC_CONSTEXPR_VARIABLES_NEED_DEFINITIONS
765
+ // Check for supported combinations of host and target architectures.
766
+ #if V8_TARGET_ARCH_IA32 && !V8_HOST_ARCH_IA32
767
+ #error Target architecture ia32 is only supported on ia32 host
768
+ #endif
769
+ #if (V8_TARGET_ARCH_X64 && V8_TARGET_ARCH_64_BIT && \
770
+ !((V8_HOST_ARCH_X64 || V8_HOST_ARCH_ARM64) && V8_HOST_ARCH_64_BIT))
771
+ #error Target architecture x64 is only supported on x64 and arm64 host
772
+ #endif
773
+ #if (V8_TARGET_ARCH_X64 && V8_TARGET_ARCH_32_BIT && \
774
+ !(V8_HOST_ARCH_X64 && V8_HOST_ARCH_32_BIT))
775
+ #error Target architecture x32 is only supported on x64 host with x32 support
776
+ #endif
777
+ #if (V8_TARGET_ARCH_ARM && !(V8_HOST_ARCH_IA32 || V8_HOST_ARCH_ARM))
778
+ #error Target architecture arm is only supported on arm and ia32 host
779
+ #endif
780
+ #if (V8_TARGET_ARCH_ARM64 && !(V8_HOST_ARCH_X64 || V8_HOST_ARCH_ARM64))
781
+ #error Target architecture arm64 is only supported on arm64 and x64 host
782
+ #endif
783
+ #if (V8_TARGET_ARCH_MIPS64 && !(V8_HOST_ARCH_X64 || V8_HOST_ARCH_MIPS64))
784
+ #error Target architecture mips64 is only supported on mips64 and x64 host
785
+ #endif
786
+ #if (V8_TARGET_ARCH_RISCV64 && !(V8_HOST_ARCH_X64 || V8_HOST_ARCH_RISCV64))
787
+ #error Target architecture riscv64 is only supported on riscv64 and x64 host
788
+ #endif
789
+ #if (V8_TARGET_ARCH_RISCV32 && !(V8_HOST_ARCH_IA32 || V8_HOST_ARCH_RISCV32))
790
+ #error Target architecture riscv32 is only supported on riscv32 and ia32 host
791
+ #endif
792
+ #if (V8_TARGET_ARCH_LOONG64 && !(V8_HOST_ARCH_X64 || V8_HOST_ARCH_LOONG64))
793
+ #error Target architecture loong64 is only supported on loong64 and x64 host
599
794
  #endif
600
795
 
601
- // clang-format on
796
+ // Determine architecture endianness.
797
+ #if V8_TARGET_ARCH_IA32
798
+ #define V8_TARGET_LITTLE_ENDIAN 1
799
+ #elif V8_TARGET_ARCH_X64
800
+ #define V8_TARGET_LITTLE_ENDIAN 1
801
+ #elif V8_TARGET_ARCH_ARM
802
+ #define V8_TARGET_LITTLE_ENDIAN 1
803
+ #elif V8_TARGET_ARCH_ARM64
804
+ #define V8_TARGET_LITTLE_ENDIAN 1
805
+ #elif V8_TARGET_ARCH_LOONG64
806
+ #define V8_TARGET_LITTLE_ENDIAN 1
807
+ #elif V8_TARGET_ARCH_MIPS64
808
+ #if defined(__MIPSEB__) || defined(V8_TARGET_ARCH_MIPS64_BE)
809
+ #define V8_TARGET_BIG_ENDIAN 1
810
+ #else
811
+ #define V8_TARGET_LITTLE_ENDIAN 1
812
+ #endif
813
+ #elif defined(__BIG_ENDIAN__) // FOR PPCGR on AIX
814
+ #define V8_TARGET_BIG_ENDIAN 1
815
+ #elif V8_TARGET_ARCH_PPC_LE
816
+ #define V8_TARGET_LITTLE_ENDIAN 1
817
+ #elif V8_TARGET_ARCH_PPC_BE
818
+ #define V8_TARGET_BIG_ENDIAN 1
819
+ #elif V8_TARGET_ARCH_S390
820
+ #if V8_TARGET_ARCH_S390_LE_SIM
821
+ #define V8_TARGET_LITTLE_ENDIAN 1
822
+ #else
823
+ #define V8_TARGET_BIG_ENDIAN 1
824
+ #endif
825
+ #elif V8_TARGET_ARCH_RISCV32 || V8_TARGET_ARCH_RISCV64
826
+ #define V8_TARGET_LITTLE_ENDIAN 1
827
+ #elif defined(__BYTE_ORDER__)
828
+ #if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
829
+ #define V8_TARGET_BIG_ENDIAN 1
830
+ #else
831
+ #define V8_TARGET_LITTLE_ENDIAN 1
832
+ #endif
833
+ #else
834
+ #error Unknown target architecture endianness
835
+ #endif
602
836
 
603
837
  #undef V8_HAS_CPP_ATTRIBUTE
604
838
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-linux-arm64",
3
- "version": "v18.10.0",
3
+ "version": "v19.0.0",
4
4
  "description": "node",
5
5
  "bin": {
6
6
  "node": "bin/node"
@@ -158,7 +158,15 @@ try:
158
158
  except gdb.error:
159
159
  pass
160
160
  end
161
- set disable-randomization off
161
+
162
+ # Configuring ASLR may not be possible on some platforms, such running via the
163
+ # `rr` debuggger.
164
+ python
165
+ try:
166
+ gdb.execute("set disable-randomization off")
167
+ except gdb.error:
168
+ pass
169
+ end
162
170
 
163
171
  # Install a handler whenever the debugger stops due to a signal. It walks up the
164
172
  # stack looking for V8_Dcheck / V8_Fatal / OS::DebugBreak frame and moves the
@@ -139,9 +139,6 @@ Requires Node.js to be built with
139
139
  .It Fl -enable-source-maps
140
140
  Enable Source Map V3 support for stack traces.
141
141
  .
142
- .It Fl -experimental-global-customevent
143
- Expose the CustomEvent on the global scope.
144
- .
145
142
  .It Fl -experimental-global-webcrypto
146
143
  Expose the Web Crypto API on the global scope.
147
144
  .
@@ -159,15 +156,21 @@ Enable experimental support for loading modules using `import` over `https:`.
159
156
  .It Fl -experimental-policy
160
157
  Use the specified file as a security policy.
161
158
  .
159
+ .It Fl -experimental-shadow-realm
160
+ Use this flag to enable ShadowRealm support.
161
+ .
162
162
  .It Fl -no-experimental-fetch
163
163
  Disable experimental support for the Fetch API.
164
164
  .
165
+ .It Fl -no-experimental-global-customevent
166
+ Disable exposition of the CustomEvent on the global scope.
167
+ .
168
+ .It Fl -no-experimental-global-webcrypto
169
+ Disable exposition of the Web Crypto API on the global scope.
170
+ .
165
171
  .It Fl -no-experimental-repl-await
166
172
  Disable top-level await keyword support in REPL.
167
173
  .
168
- .It Fl -experimental-specifier-resolution
169
- Select extension resolution algorithm for ES Modules; either 'explicit' (default) or 'node'.
170
- .
171
174
  .It Fl -experimental-vm-modules
172
175
  Enable experimental ES module support in VM module.
173
176
  .
@@ -387,6 +390,10 @@ Specify the minimum allocation from the OpenSSL secure heap. The default is 2. T
387
390
  .It Fl -test
388
391
  Starts the Node.js command line test runner.
389
392
  .
393
+ .It Fl -test-name-pattern
394
+ A regular expression that configures the test runner to only execute tests
395
+ whose name matches the provided pattern.
396
+ .
390
397
  .It Fl -test-only
391
398
  Configures the test runner to only execute top level tests that have the `only`
392
399
  option set.
@@ -1,146 +0,0 @@
1
- // Copyright Joyent, Inc. and other Node contributors.
2
- //
3
- // Permission is hereby granted, free of charge, to any person obtaining a
4
- // copy of this software and associated documentation files (the
5
- // "Software"), to deal in the Software without restriction, including
6
- // without limitation the rights to use, copy, modify, merge, publish,
7
- // distribute, sublicense, and/or sell copies of the Software, and to permit
8
- // persons to whom the Software is furnished to do so, subject to the
9
- // following conditions:
10
- //
11
- // The above copyright notice and this permission notice shall be included
12
- // in all copies or substantial portions of the Software.
13
- //
14
- // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15
- // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
- // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
17
- // NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
18
- // DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
19
- // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
20
- // USE OR OTHER DEALINGS IN THE SOFTWARE.
21
-
22
- probe node_net_server_connection = process("node").mark("net__server__connection")
23
- {
24
- remote = user_string($arg2);
25
- port = $arg3;
26
- fd = $arg4;
27
-
28
- probestr = sprintf("%s(remote=%s, port=%d, fd=%d)",
29
- $$name,
30
- remote,
31
- port,
32
- fd);
33
- }
34
-
35
- probe node_net_stream_end = process("node").mark("net__stream__end")
36
- {
37
- remote = user_string($arg2);
38
- port = $arg3;
39
- fd = $arg4;
40
-
41
- probestr = sprintf("%s(remote=%s, port=%d, fd=%d)",
42
- $$name,
43
- remote,
44
- port,
45
- fd);
46
- }
47
-
48
- probe node_http_server_request = process("node").mark("http__server__request")
49
- {
50
- remote = user_string($arg3);
51
- port = $arg4;
52
- method = user_string($arg5);
53
- url = user_string($arg6);
54
- fd = $arg7;
55
-
56
- probestr = sprintf("%s(remote=%s, port=%d, method=%s, url=%s, fd=%d)",
57
- $$name,
58
- remote,
59
- port,
60
- method,
61
- url,
62
- fd);
63
- }
64
-
65
- probe node_http_server_response = process("node").mark("http__server__response")
66
- {
67
- remote = user_string($arg2);
68
- port = $arg3;
69
- fd = $arg4;
70
-
71
- probestr = sprintf("%s(remote=%s, port=%d, fd=%d)",
72
- $$name,
73
- remote,
74
- port,
75
- fd);
76
- }
77
-
78
- probe node_http_client_request = process("node").mark("http__client__request")
79
- {
80
- remote = user_string($arg3);
81
- port = $arg4;
82
- method = user_string($arg5);
83
- url = user_string($arg6);
84
- fd = $arg7;
85
-
86
- probestr = sprintf("%s(remote=%s, port=%d, method=%s, url=%s, fd=%d)",
87
- $$name,
88
- remote,
89
- port,
90
- method,
91
- url,
92
- fd);
93
- }
94
-
95
- probe node_http_client_response = process("node").mark("http__client__response")
96
- {
97
- remote = user_string($arg2);
98
- port = $arg3;
99
- fd = $arg4;
100
-
101
- probestr = sprintf("%s(remote=%s, port=%d, fd=%d)",
102
- $$name,
103
- remote,
104
- port,
105
- fd);
106
- }
107
-
108
- probe node_gc_start = process("node").mark("gc__start")
109
- {
110
- scavenge = 1 << 0;
111
- compact = 1 << 1;
112
-
113
- if ($arg1 == scavenge)
114
- type = "kGCTypeScavenge";
115
- else if ($arg1 == compact)
116
- type = "kGCTypeMarkSweepCompact";
117
- else
118
- type = "kGCTypeAll";
119
-
120
- flags = $arg2;
121
-
122
- probestr = sprintf("%s(type=%s,flags=%d)",
123
- $$name,
124
- type,
125
- flags);
126
- }
127
-
128
- probe node_gc_stop = process("node").mark("gc__done")
129
- {
130
- scavenge = 1 << 0;
131
- compact = 1 << 1;
132
-
133
- if ($arg1 == scavenge)
134
- type = "kGCTypeScavenge";
135
- else if ($arg1 == compact)
136
- type = "kGCTypeMarkSweepCompact";
137
- else
138
- type = "kGCTypeAll";
139
-
140
- flags = $arg2;
141
-
142
- probestr = sprintf("%s(type=%s,flags=%d)",
143
- $$name,
144
- type,
145
- flags);
146
- }