@zigc/lib 0.16.0-dev.3013 → 0.16.0-test.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 (121) hide show
  1. package/README.md +1 -5
  2. package/compiler/build_runner.zig +10 -5
  3. package/libc/darwin/SDKSettings.json +1 -1
  4. package/libc/darwin/libSystem.tbd +357 -427
  5. package/libc/freebsd/lib/csu/aarch64/crt.h +1 -0
  6. package/libc/freebsd/lib/csu/aarch64/crt1_c.c +33 -0
  7. package/libc/freebsd/lib/csu/aarch64/crt1_s.S +68 -0
  8. package/libc/freebsd/lib/csu/amd64/crt.h +30 -0
  9. package/libc/freebsd/lib/csu/amd64/crt1_c.c +30 -0
  10. package/libc/freebsd/lib/csu/amd64/crt1_s.S +86 -0
  11. package/libc/freebsd/lib/csu/arm/crt.h +1 -0
  12. package/libc/freebsd/lib/csu/arm/crt1_c.c +79 -0
  13. package/libc/freebsd/lib/csu/arm/crt1_s.S +77 -0
  14. package/libc/freebsd/lib/csu/common/crtbegin.c +54 -0
  15. package/libc/freebsd/lib/csu/common/crtbrand.S +55 -0
  16. package/libc/freebsd/lib/csu/common/csu_common.h +50 -0
  17. package/libc/freebsd/lib/csu/common/feature_note.S +47 -0
  18. package/libc/freebsd/lib/csu/common/ignore_init_note.S +48 -0
  19. package/libc/freebsd/lib/csu/common/notes.h +32 -0
  20. package/libc/freebsd/lib/csu/i386/crt.h +30 -0
  21. package/libc/freebsd/lib/csu/i386/crt1_c.c +30 -0
  22. package/libc/freebsd/lib/csu/i386/crt1_s.S +91 -0
  23. package/libc/freebsd/lib/csu/powerpc/crt.h +30 -0
  24. package/libc/freebsd/lib/csu/powerpc/crt1_c.c +89 -0
  25. package/libc/freebsd/lib/csu/powerpc/crtsavres.S +189 -0
  26. package/libc/freebsd/lib/csu/powerpc64/crt.h +30 -0
  27. package/libc/freebsd/lib/csu/powerpc64/crt1_c.c +83 -0
  28. package/libc/freebsd/lib/csu/riscv/crt.h +8 -0
  29. package/libc/freebsd/lib/csu/riscv/crt1_c.c +51 -0
  30. package/libc/freebsd/lib/csu/riscv/crt1_s.S +51 -0
  31. package/libc/freebsd/lib/libc/include/libc_private.h +386 -0
  32. package/libc/include/any-darwin-any/AssertMacros.h +1 -1
  33. package/libc/include/any-darwin-any/AvailabilityInternal.h +10 -10
  34. package/libc/include/any-darwin-any/AvailabilityInternalLegacy.h +1 -1
  35. package/libc/include/any-darwin-any/AvailabilityVersions.h +16 -0
  36. package/libc/include/any-darwin-any/TargetConditionals.h +5 -21
  37. package/libc/include/any-darwin-any/_regex.h +11 -3
  38. package/libc/include/any-darwin-any/copyfile.h +1 -0
  39. package/libc/include/any-darwin-any/dirent.h +32 -2
  40. package/libc/include/any-darwin-any/dispatch/base.h +8 -0
  41. package/libc/include/any-darwin-any/dispatch/dispatch_swift_shims.h +4 -2
  42. package/libc/include/any-darwin-any/dispatch/once.h +2 -1
  43. package/libc/include/any-darwin-any/dispatch/workloop.h +2 -0
  44. package/libc/include/any-darwin-any/glob.h +7 -5
  45. package/libc/include/any-darwin-any/mach/arm/_structs.h +1 -0
  46. package/libc/include/any-darwin-any/mach/arm/exception.h +1 -0
  47. package/libc/include/any-darwin-any/mach/arm/thread_status.h +1 -1
  48. package/libc/include/any-darwin-any/mach/kern_return.h +4 -0
  49. package/libc/include/any-darwin-any/mach/mach_host.h +52 -2
  50. package/libc/include/any-darwin-any/mach/mach_traps.h +5 -1
  51. package/libc/include/any-darwin-any/mach/mach_types.h +4 -0
  52. package/libc/include/any-darwin-any/mach/mach_voucher_types.h +9 -0
  53. package/libc/include/any-darwin-any/mach/machine.h +1 -0
  54. package/libc/include/any-darwin-any/mach/message.h +21 -0
  55. package/libc/include/any-darwin-any/mach/port.h +48 -11
  56. package/libc/include/any-darwin-any/mach/thread_act.h +79 -2
  57. package/libc/include/any-darwin-any/mach/vm_map.h +54 -2
  58. package/libc/include/any-darwin-any/mach/vm_prot.h +0 -1
  59. package/libc/include/any-darwin-any/mach/vm_region.h +8 -0
  60. package/libc/include/any-darwin-any/mach/vm_statistics.h +39 -12
  61. package/libc/include/any-darwin-any/mach/vm_types.h +6 -0
  62. package/libc/include/any-darwin-any/mach-o/loader.h +3 -3
  63. package/libc/include/any-darwin-any/mach_debug/ipc_info.h +1 -0
  64. package/libc/include/any-darwin-any/malloc/malloc.h +0 -2
  65. package/libc/include/any-darwin-any/net/if_var.h +2 -2
  66. package/libc/include/any-darwin-any/signal.h +5 -2
  67. package/libc/include/any-darwin-any/simd/math.h +2 -2
  68. package/libc/include/any-darwin-any/sys/_symbol_aliasing.h +24 -0
  69. package/libc/include/any-darwin-any/sys/attr.h +5 -1
  70. package/libc/include/any-darwin-any/sys/fcntl.h +2 -0
  71. package/libc/include/any-darwin-any/sys/mman.h +3 -4
  72. package/libc/include/any-darwin-any/sys/paths.h +12 -9
  73. package/libc/include/any-darwin-any/sys/proc.h +2 -2
  74. package/libc/include/any-darwin-any/sys/sysctl.h +24 -20
  75. package/libc/include/any-darwin-any/unistd.h +2 -2
  76. package/libc/include/any-darwin-any/xpc/activity.h +7 -7
  77. package/libc/include/any-darwin-any/xpc/connection.h +15 -15
  78. package/libc/include/any-darwin-any/xpc/listener.h +2 -2
  79. package/libc/include/any-darwin-any/xpc/peer_requirement.h +13 -13
  80. package/libc/include/any-darwin-any/xpc/session.h +6 -6
  81. package/libc/include/any-darwin-any/xpc/xpc.h +14 -14
  82. package/libc/netbsd/lib/csu/arch/aarch64/crt0.S +45 -0
  83. package/libc/netbsd/lib/csu/arch/earm/crt0.S +61 -0
  84. package/libc/netbsd/lib/csu/arch/i386/crt0.S +48 -0
  85. package/libc/netbsd/lib/csu/arch/m68k/crt0.S +47 -0
  86. package/libc/netbsd/lib/csu/arch/mips/crt0.S +59 -0
  87. package/libc/netbsd/lib/csu/arch/powerpc/crt0.S +56 -0
  88. package/libc/netbsd/lib/csu/arch/sparc/crt0.S +55 -0
  89. package/libc/netbsd/lib/csu/arch/sparc64/crt0.S +59 -0
  90. package/libc/netbsd/lib/csu/arch/x86_64/crt0.S +48 -0
  91. package/libc/netbsd/lib/csu/common/crt0-common.c +351 -0
  92. package/libc/netbsd/lib/csu/common/crtbegin.c +135 -0
  93. package/libc/netbsd/lib/csu/common/csu-common.h +38 -0
  94. package/libc/netbsd/lib/csu/common/sysident.S +89 -0
  95. package/libc/netbsd/lib/csu/common/sysident_assym.h +17 -0
  96. package/libc/openbsd/lib/csu/aarch64/md_init.h +83 -0
  97. package/libc/openbsd/lib/csu/amd64/md_init.h +80 -0
  98. package/libc/openbsd/lib/csu/arm/md_init.h +112 -0
  99. package/libc/openbsd/lib/csu/crt0.c +76 -0
  100. package/libc/openbsd/lib/csu/crtbegin.c +61 -0
  101. package/libc/openbsd/lib/csu/extern.h +54 -0
  102. package/libc/openbsd/lib/csu/i386/md_init.h +83 -0
  103. package/libc/openbsd/lib/csu/mips64/md_init.h +127 -0
  104. package/libc/openbsd/lib/csu/os-note-elf.h +19 -0
  105. package/libc/openbsd/lib/csu/powerpc/md_init.h +80 -0
  106. package/libc/openbsd/lib/csu/powerpc64/md_init.h +75 -0
  107. package/libc/openbsd/lib/csu/riscv64/md_init.h +74 -0
  108. package/libc/openbsd/lib/csu/sparc64/md_init.h +85 -0
  109. package/package.json +2 -2
  110. package/std/Build/Step/Run.zig +4 -4
  111. package/std/Io/Dir.zig +122 -7
  112. package/std/Io/File.zig +6 -118
  113. package/std/Io/Kqueue.zig +1 -0
  114. package/std/Io/Threaded.zig +50 -46
  115. package/std/Io/Uring.zig +1 -0
  116. package/std/Io/net.zig +4 -0
  117. package/std/Io.zig +3 -3
  118. package/std/Target.zig +1 -1
  119. package/std/c.zig +2 -1
  120. package/std/http/Client.zig +3 -2
  121. package/std/tar.zig +76 -36
@@ -135,27 +135,31 @@ struct ctlname {
135
135
  int ctl_type; /* type of name */
136
136
  };
137
137
 
138
- #define CTLTYPE 0xf /* Mask for the type */
139
- #define CTLTYPE_NODE 1 /* name is a node */
140
- #define CTLTYPE_INT 2 /* name describes an integer */
141
- #define CTLTYPE_STRING 3 /* name describes a string */
142
- #define CTLTYPE_QUAD 4 /* name describes a 64-bit number */
143
- #define CTLTYPE_OPAQUE 5 /* name describes a structure */
144
- #define CTLTYPE_STRUCT CTLTYPE_OPAQUE /* name describes a structure */
145
-
146
- #define CTLFLAG_RD 0x80000000 /* Allow reads of variable */
147
- #define CTLFLAG_WR 0x40000000 /* Allow writes to the variable */
148
- #define CTLFLAG_RW (CTLFLAG_RD|CTLFLAG_WR)
149
- #define CTLFLAG_NOLOCK 0x20000000 /* XXX Don't Lock */
150
- #define CTLFLAG_ANYBODY 0x10000000 /* All users can set this var */
151
- #define CTLFLAG_SECURE 0x08000000 /* Permit set only if securelevel<=0 */
152
- #define CTLFLAG_MASKED 0x04000000 /* deprecated variable, do not display */
153
- #define CTLFLAG_NOAUTO 0x02000000 /* do not auto-register */
154
- #define CTLFLAG_KERN 0x01000000 /* valid inside the kernel */
155
- #define CTLFLAG_LOCKED 0x00800000 /* node will handle locking itself */
156
- #define CTLFLAG_OID2 0x00400000 /* struct sysctl_oid has version info */
157
- #define CTLFLAG_EXPERIMENT 0x00100000 /* Allows read/write w/ the trial experiment entitlement. */
138
+ #define CTLTYPE 0xf /* Mask for the type */
139
+ #define CTLTYPE_NODE 1 /* name is a node */
140
+ #define CTLTYPE_INT 2 /* name describes an integer */
141
+ #define CTLTYPE_STRING 3 /* name describes a string */
142
+ #define CTLTYPE_QUAD 4 /* name describes a 64-bit number */
143
+ #define CTLTYPE_OPAQUE 5 /* name describes a structure */
144
+ #define CTLTYPE_STRUCT CTLTYPE_OPAQUE /* name describes a structure */
145
+
146
+ #define CTLFLAG_RD 0x80000000 /* Allow reads of variable */
147
+ #define CTLFLAG_WR 0x40000000 /* Allow writes to the variable */
148
+ #define CTLFLAG_RW (CTLFLAG_RD|CTLFLAG_WR)
149
+ #define CTLFLAG_NOLOCK 0x20000000 /* XXX Don't Lock */
150
+ #define CTLFLAG_ANYBODY 0x10000000 /* All users can set this var */
151
+ #define CTLFLAG_SECURE 0x08000000 /* Permit set only if securelevel<=0 */
152
+ #define CTLFLAG_MASKED 0x04000000 /* deprecated variable, do not display */
153
+ #define CTLFLAG_NOAUTO 0x02000000 /* do not auto-register */
154
+ #define CTLFLAG_KERN 0x01000000 /* valid inside the kernel */
155
+ #define CTLFLAG_LOCKED 0x00800000 /* node will handle locking itself */
156
+ #define CTLFLAG_OID2 0x00400000 /* struct sysctl_oid has version info */
157
+ #define CTLFLAG_EXPERIMENT 0x00100000 /* Allows read/write w/ the trial experiment entitlement. */
158
158
  #define CTLFLAG_LEGACY_EXPERIMENT 0x00080000 /* Allows writing w/ the legacy trial experiment entitlement. */
159
+ #define CTLFLAG_OID_AUTO 0x00040000 /* Remembers OID_AUTO to restore oid_number on unregister */
160
+
161
+ /* mask of flags which are kernel private and will be masked for user space */
162
+ #define CTLFLAG_KERNEL_PRIVATE_MASK (CTLFLAG_OID_AUTO)
159
163
 
160
164
  /*
161
165
  * USE THIS instead of a hardwired number from the categories below
@@ -538,14 +538,14 @@ __END_DECLS
538
538
  #define F_TLOCK 2 /* test and lock a section for exclusive use */
539
539
  #define F_TEST 3 /* test a section for locks by other procs */
540
540
 
541
- __BEGIN_DECLS
542
-
543
541
  /* Begin XSI */
544
542
  /* Removed in Issue 7 */
545
543
  #if !defined(_POSIX_C_SOURCE) || _POSIX_C_SOURCE < 200809L
546
544
  #include <_ctermid.h>
547
545
  #endif
548
546
 
547
+ __BEGIN_DECLS
548
+
549
549
  /* Removed in Issue 6 */
550
550
  #if !defined(_POSIX_C_SOURCE) || _POSIX_C_SOURCE < 200112L
551
551
  #if !defined(_POSIX_C_SOURCE)
@@ -302,7 +302,7 @@ const xpc_object_t XPC_ACTIVITY_CHECK_IN;
302
302
  * dispatch queue with an appropriate priority to perform the activity.
303
303
  */
304
304
  API_AVAILABLE(macos(10.9))
305
- API_UNAVAILABLE(ios)
305
+ API_UNAVAILABLE(ios, tvos, watchos)
306
306
  XPC_EXPORT XPC_NONNULL1 XPC_NONNULL2 XPC_NONNULL3
307
307
  void
308
308
  xpc_activity_register(const char *identifier, xpc_object_t criteria,
@@ -317,7 +317,7 @@ xpc_activity_register(const char *identifier, xpc_object_t criteria,
317
317
  * when checking in to an event that finished and was not rescheduled.
318
318
  */
319
319
  API_AVAILABLE(macos(10.9))
320
- API_UNAVAILABLE(ios)
320
+ API_UNAVAILABLE(ios, tvos, watchos)
321
321
  XPC_EXPORT XPC_WARN_RESULT XPC_RETURNS_RETAINED XPC_NONNULL1
322
322
  xpc_object_t _Nullable
323
323
  xpc_activity_copy_criteria(xpc_activity_t activity);
@@ -329,7 +329,7 @@ xpc_activity_copy_criteria(xpc_activity_t activity);
329
329
  * Modifies the execution criteria of an activity.
330
330
  */
331
331
  API_AVAILABLE(macos(10.9))
332
- API_UNAVAILABLE(ios)
332
+ API_UNAVAILABLE(ios, tvos, watchos)
333
333
  XPC_EXPORT XPC_NONNULL1 XPC_NONNULL2
334
334
  void
335
335
  xpc_activity_set_criteria(xpc_activity_t activity, xpc_object_t criteria);
@@ -411,7 +411,7 @@ typedef long xpc_activity_state_t;
411
411
  * Returns the current state of an activity.
412
412
  */
413
413
  API_AVAILABLE(macos(10.9))
414
- API_UNAVAILABLE(ios)
414
+ API_UNAVAILABLE(ios, tvos, watchos)
415
415
  XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL1
416
416
  xpc_activity_state_t
417
417
  xpc_activity_get_state(xpc_activity_t activity);
@@ -427,7 +427,7 @@ xpc_activity_get_state(xpc_activity_t activity);
427
427
  * false if the requested state transition is not valid.
428
428
  */
429
429
  API_AVAILABLE(macos(10.9))
430
- API_UNAVAILABLE(ios)
430
+ API_UNAVAILABLE(ios, tvos, watchos)
431
431
  XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL1
432
432
  bool
433
433
  xpc_activity_set_state(xpc_activity_t activity, xpc_activity_state_t state);
@@ -451,7 +451,7 @@ xpc_activity_set_state(xpc_activity_t activity, xpc_activity_state_t state);
451
451
  * Returns true if the activity should be deferred.
452
452
  */
453
453
  API_AVAILABLE(macos(10.9))
454
- API_UNAVAILABLE(ios)
454
+ API_UNAVAILABLE(ios, tvos, watchos)
455
455
  XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL1
456
456
  bool
457
457
  xpc_activity_should_defer(xpc_activity_t activity);
@@ -475,7 +475,7 @@ xpc_activity_should_defer(xpc_activity_t activity);
475
475
  * The identifier of the activity to unregister.
476
476
  */
477
477
  API_AVAILABLE(macos(10.9))
478
- API_UNAVAILABLE(ios)
478
+ API_UNAVAILABLE(ios, tvos, watchos)
479
479
  XPC_EXPORT XPC_NONNULL1
480
480
  void
481
481
  xpc_activity_unregister(const char *identifier);
@@ -199,7 +199,7 @@ xpc_connection_create(const char * _Nullable name,
199
199
  * connection has been activated. See {@link xpc_connection_activate()}.
200
200
  */
201
201
  API_AVAILABLE(macos(10.7), macCatalyst(5.0))
202
- API_UNAVAILABLE(ios)
202
+ API_UNAVAILABLE(ios, tvos, watchos)
203
203
  XPC_EXPORT XPC_MALLOC XPC_RETURNS_RETAINED XPC_WARN_RESULT XPC_NONNULL1
204
204
  xpc_connection_t
205
205
  xpc_connection_create_mach_service(const char *name,
@@ -679,7 +679,7 @@ xpc_connection_get_egid(xpc_connection_t connection);
679
679
  * delivery either at the kernel layer or at the XPC layer.
680
680
  */
681
681
  API_AVAILABLE(macos(10.7))
682
- API_UNAVAILABLE(ios)
682
+ API_UNAVAILABLE(ios, tvos, watchos)
683
683
  XPC_EXPORT XPC_NONNULL_ALL XPC_WARN_RESULT
684
684
  pid_t
685
685
  xpc_connection_get_pid(xpc_connection_t connection);
@@ -695,7 +695,7 @@ xpc_connection_get_pid(xpc_connection_t connection);
695
695
  * The audit session ID of the remote peer at the time the connection was made.
696
696
  */
697
697
  API_AVAILABLE(macos(10.7))
698
- API_UNAVAILABLE(ios)
698
+ API_UNAVAILABLE(ios, tvos, watchos)
699
699
  XPC_EXPORT XPC_NONNULL_ALL XPC_WARN_RESULT
700
700
  au_asid_t
701
701
  xpc_connection_get_asid(xpc_connection_t connection);
@@ -828,8 +828,8 @@ xpc_connection_set_peer_code_signing_requirement(xpc_connection_t connection, co
828
828
  * is expected on the connection and the peer does not satisfy the requirement `XPC_ERROR_PEER_CODE_SIGNING_REQUIREMENT`
829
829
  * will be delivered instead of the reply.
830
830
  */
831
- API_AVAILABLE(macos(14.4), ios(17.4))
832
- API_UNAVAILABLE(tvos, watchos)
831
+ API_AVAILABLE(macos(14.4), ios(17.4), tvos(17.4), watchos(10.4))
832
+
833
833
  XPC_EXPORT XPC_NONNULL_ALL XPC_WARN_RESULT
834
834
  int
835
835
  xpc_connection_set_peer_entitlement_exists_requirement(xpc_connection_t connection, const char *entitlement);
@@ -866,8 +866,8 @@ xpc_connection_set_peer_entitlement_exists_requirement(xpc_connection_t connecti
866
866
  * is expected on the connection and the peer does not satisfy the requirement `XPC_ERROR_PEER_CODE_SIGNING_REQUIREMENT`
867
867
  * will be delivered instead of the reply.
868
868
  */
869
- API_AVAILABLE(macos(14.4), ios(17.4))
870
- API_UNAVAILABLE(tvos, watchos)
869
+ API_AVAILABLE(macos(14.4), ios(17.4), tvos(17.4), watchos(10.4))
870
+
871
871
  XPC_EXPORT XPC_NONNULL_ALL XPC_WARN_RESULT
872
872
  int
873
873
  xpc_connection_set_peer_entitlement_matches_value_requirement(xpc_connection_t connection, const char *entitlement, xpc_object_t value);
@@ -903,8 +903,8 @@ xpc_connection_set_peer_entitlement_matches_value_requirement(xpc_connection_t c
903
903
  * is expected on the connection and the peer does not satisfy the requirement `XPC_ERROR_PEER_CODE_SIGNING_REQUIREMENT`
904
904
  * will be delivered instead of the reply.
905
905
  */
906
- API_AVAILABLE(macos(14.4), ios(17.4))
907
- API_UNAVAILABLE(tvos, watchos)
906
+ API_AVAILABLE(macos(14.4), ios(17.4), tvos(17.4), watchos(10.4))
907
+
908
908
  XPC_EXPORT XPC_NONNULL1 XPC_WARN_RESULT
909
909
  int
910
910
  xpc_connection_set_peer_team_identity_requirement(xpc_connection_t connection, const char * _Nullable signing_identifier);
@@ -938,8 +938,8 @@ xpc_connection_set_peer_team_identity_requirement(xpc_connection_t connection, c
938
938
  * is expected on the connection and the peer does not satisfy the requirement `XPC_ERROR_PEER_CODE_SIGNING_REQUIREMENT`
939
939
  * will be delivered instead of the reply.
940
940
  */
941
- API_AVAILABLE(macos(14.4), ios(17.4))
942
- API_UNAVAILABLE(tvos, watchos)
941
+ API_AVAILABLE(macos(14.4), ios(17.4), tvos(17.4), watchos(10.4))
942
+
943
943
  XPC_EXPORT XPC_NONNULL1 XPC_WARN_RESULT
944
944
  int
945
945
  xpc_connection_set_peer_platform_identity_requirement(xpc_connection_t connection, const char * _Nullable signing_identifier);
@@ -986,8 +986,8 @@ xpc_connection_set_peer_platform_identity_requirement(xpc_connection_t connectio
986
986
  * is expected on the connection and the peer does not satisfy the requirement `XPC_ERROR_PEER_CODE_SIGNING_REQUIREMENT`
987
987
  * will be delivered instead of the reply.
988
988
  */
989
- API_AVAILABLE(macos(14.4), ios(17.4))
990
- API_UNAVAILABLE(tvos, watchos)
989
+ API_AVAILABLE(macos(14.4), ios(17.4), tvos(17.4), watchos(10.4))
990
+
991
991
  XPC_EXPORT XPC_NONNULL_ALL XPC_WARN_RESULT
992
992
  int
993
993
  xpc_connection_set_peer_lightweight_code_requirement(xpc_connection_t connection, xpc_object_t lwcr);
@@ -1012,8 +1012,8 @@ xpc_connection_set_peer_lightweight_code_requirement(xpc_connection_t connection
1012
1012
  * is expected on the connection and the peer does not satisfy the requirement `XPC_ERROR_PEER_CODE_SIGNING_REQUIREMENT`
1013
1013
  * will be delivered instead of the reply.
1014
1014
  */
1015
- API_AVAILABLE(macos(26.0), ios(26.0))
1016
- API_UNAVAILABLE(tvos, watchos)
1015
+ API_AVAILABLE(macos(26.0), ios(26.0), tvos(26.0), watchos(26.0))
1016
+
1017
1017
  XPC_EXPORT XPC_SWIFT_NOEXPORT XPC_NONNULL_ALL
1018
1018
  void
1019
1019
  xpc_connection_set_peer_requirement(xpc_connection_t connection,
@@ -129,7 +129,7 @@ xpc_listener_create(const char * service,
129
129
  dispatch_queue_t _Nullable target_queue,
130
130
  xpc_listener_create_flags_t flags,
131
131
  xpc_listener_incoming_session_handler_t incoming_session_handler,
132
- xpc_rich_error_t _Nullable * _Nullable error_out);
132
+ xpc_rich_error_t _Nullable XPC_GIVES_REFERENCE * _Nullable error_out);
133
133
 
134
134
  #pragma mark Lifecycle
135
135
  /*!
@@ -156,7 +156,7 @@ API_UNAVAILABLE(ios, tvos, watchos)
156
156
  XPC_EXPORT XPC_SWIFT_NOEXPORT
157
157
  bool
158
158
  xpc_listener_activate(xpc_listener_t listener,
159
- xpc_rich_error_t _Nullable * _Nullable error_out);
159
+ xpc_rich_error_t _Nullable XPC_GIVES_REFERENCE * _Nullable error_out);
160
160
 
161
161
  /*!
162
162
  * @function xpc_listener_cancel
@@ -28,7 +28,7 @@ XPC_SWIFT_NOEXPORT
28
28
  * xpc_peer_requirement_t can be shared among multiple connections, sessions
29
29
  * or listeners.
30
30
  */
31
- OS_OBJECT_DECL_CLASS(xpc_peer_requirement);
31
+ OS_OBJECT_DECL_SENDABLE_CLASS(xpc_peer_requirement);
32
32
 
33
33
  #pragma mark Constructors
34
34
 
@@ -53,8 +53,8 @@ OS_OBJECT_DECL_CLASS(xpc_peer_requirement);
53
53
  * This function will return NULL promptly if the entitlement requirement is
54
54
  * invalid.
55
55
  */
56
- API_AVAILABLE(macos(26.0), ios(26.0))
57
- API_UNAVAILABLE(tvos, watchos)
56
+ API_AVAILABLE(macos(26.0), ios(26.0), tvos(26.0), watchos(26.0))
57
+
58
58
  XPC_EXPORT XPC_SWIFT_NOEXPORT XPC_RETURNS_RETAINED
59
59
  xpc_peer_requirement_t _Nullable
60
60
  xpc_peer_requirement_create_entitlement_exists(const char *entitlement,
@@ -86,8 +86,8 @@ xpc_peer_requirement_create_entitlement_exists(const char *entitlement,
86
86
  * This function will return NULL promptly if the entitlement requirement is
87
87
  * invalid.
88
88
  */
89
- API_AVAILABLE(macos(26.0), ios(26.0))
90
- API_UNAVAILABLE(tvos, watchos)
89
+ API_AVAILABLE(macos(26.0), ios(26.0), tvos(26.0), watchos(26.0))
90
+
91
91
  XPC_EXPORT XPC_SWIFT_NOEXPORT XPC_RETURNS_RETAINED
92
92
  xpc_peer_requirement_t _Nullable
93
93
  xpc_peer_requirement_create_entitlement_matches_value(const char *entitlement,
@@ -121,8 +121,8 @@ xpc_peer_requirement_create_entitlement_matches_value(const char *entitlement,
121
121
  * distributed certificate (embedded only), or a Developer ID certificate (macOS
122
122
  * only)
123
123
  */
124
- API_AVAILABLE(macos(26.0), ios(26.0))
125
- API_UNAVAILABLE(tvos, watchos)
124
+ API_AVAILABLE(macos(26.0), ios(26.0), tvos(26.0), watchos(26.0))
125
+
126
126
  XPC_EXPORT XPC_SWIFT_NOEXPORT XPC_RETURNS_RETAINED
127
127
  xpc_peer_requirement_t _Nullable
128
128
  xpc_peer_requirement_create_team_identity(
@@ -153,8 +153,8 @@ xpc_peer_requirement_create_team_identity(
153
153
  * This function will return NULL promptly if the identity requirement is
154
154
  * invalid.
155
155
  */
156
- API_AVAILABLE(macos(26.0), ios(26.0))
157
- API_UNAVAILABLE(tvos, watchos)
156
+ API_AVAILABLE(macos(26.0), ios(26.0), tvos(26.0), watchos(26.0))
157
+
158
158
  XPC_EXPORT XPC_SWIFT_NOEXPORT XPC_RETURNS_RETAINED
159
159
  xpc_peer_requirement_t _Nullable
160
160
  xpc_peer_requirement_create_platform_identity(
@@ -201,8 +201,8 @@ xpc_peer_requirement_create_platform_identity(
201
201
  * xpc_peer_requirement_t req = xpc_peer_requirement_create_lwcr(lwcr, NULL);
202
202
  * ```
203
203
  */
204
- API_AVAILABLE(macos(26.0), ios(26.0))
205
- API_UNAVAILABLE(tvos, watchos)
204
+ API_AVAILABLE(macos(26.0), ios(26.0), tvos(26.0), watchos(26.0))
205
+
206
206
  XPC_EXPORT XPC_SWIFT_NOEXPORT XPC_RETURNS_RETAINED
207
207
  xpc_peer_requirement_t _Nullable
208
208
  xpc_peer_requirement_create_lwcr(xpc_object_t lwcr,
@@ -228,8 +228,8 @@ xpc_peer_requirement_create_lwcr(xpc_object_t lwcr,
228
228
  * On match this returns true. On mismatch or failure this will return false and
229
229
  * if set, error_out will be set to an error describing the failure.
230
230
  */
231
- API_AVAILABLE(macos(26.0), ios(26.0))
232
- API_UNAVAILABLE(tvos, watchos)
231
+ API_AVAILABLE(macos(26.0), ios(26.0), tvos(26.0), watchos(26.0))
232
+
233
233
  XPC_EXPORT XPC_SWIFT_NOEXPORT
234
234
  bool
235
235
  xpc_peer_requirement_match_received_message(xpc_peer_requirement_t peer_requirement,
@@ -118,7 +118,7 @@ xpc_session_t _Nullable
118
118
  xpc_session_create_xpc_service(const char *name,
119
119
  dispatch_queue_t _Nullable target_queue,
120
120
  xpc_session_create_flags_t flags,
121
- xpc_rich_error_t _Nullable * _Nullable error_out);
121
+ xpc_rich_error_t _Nullable XPC_GIVES_REFERENCE * _Nullable error_out);
122
122
 
123
123
  /*!
124
124
  * @function xpc_session_create_mach_service
@@ -161,7 +161,7 @@ xpc_session_t _Nullable
161
161
  xpc_session_create_mach_service(const char *mach_service,
162
162
  dispatch_queue_t _Nullable target_queue,
163
163
  xpc_session_create_flags_t flags,
164
- xpc_rich_error_t _Nullable * _Nullable error_out);
164
+ xpc_rich_error_t _Nullable XPC_GIVES_REFERENCE * _Nullable error_out);
165
165
 
166
166
  #pragma mark Session Configuration
167
167
  /*!
@@ -256,7 +256,7 @@ API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0), watchos(9.0))
256
256
  XPC_EXPORT XPC_SWIFT_NOEXPORT
257
257
  bool
258
258
  xpc_session_activate(xpc_session_t session,
259
- xpc_rich_error_t _Nullable * _Nullable error_out);
259
+ xpc_rich_error_t _Nullable XPC_GIVES_REFERENCE * _Nullable error_out);
260
260
 
261
261
  /*!
262
262
  * @function xpc_session_cancel
@@ -350,7 +350,7 @@ API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0), watchos(9.0))
350
350
  XPC_EXPORT XPC_SWIFT_NOEXPORT XPC_RETURNS_RETAINED XPC_WARN_RESULT
351
351
  xpc_object_t _Nullable
352
352
  xpc_session_send_message_with_reply_sync(xpc_session_t session,
353
- xpc_object_t message, xpc_rich_error_t _Nullable * _Nullable error_out);
353
+ xpc_object_t message, xpc_rich_error_t _Nullable XPC_GIVES_REFERENCE * _Nullable error_out);
354
354
 
355
355
  /*!
356
356
  * @function xpc_session_send_message_with_reply_async
@@ -443,8 +443,8 @@ xpc_session_set_peer_code_signing_requirement(xpc_session_t session, const char
443
443
  * will be returned instead of reply, with `error_out` (if set) pointing to the
444
444
  * rich error describing the peer code signing error.
445
445
  */
446
- API_AVAILABLE(macos(26.0), ios(26.0))
447
- API_UNAVAILABLE(tvos, watchos)
446
+ API_AVAILABLE(macos(26.0), ios(26.0), tvos(26.0), watchos(26.0))
447
+
448
448
  XPC_EXPORT XPC_SWIFT_NOEXPORT XPC_NONNULL_ALL
449
449
  void
450
450
  xpc_session_set_peer_requirement(xpc_session_t session, xpc_peer_requirement_t requirement);
@@ -1473,18 +1473,18 @@ xpc_array_set_date(xpc_object_t xarray, size_t index, int64_t value);
1473
1473
  * undefined.
1474
1474
  *
1475
1475
  * @param bytes
1476
- * The raw data to insert. After calling this method, the XPC object
1477
- * corresponding to the primitive value inserted may be safely retrieved with
1478
- * {@link xpc_array_get_value()}.
1476
+ * The raw data to insert. May be NULL if length is zero. After calling this
1477
+ * method, the XPC object corresponding to the primitive value inserted may be
1478
+ * safely retrieved with {@link xpc_array_get_value()}.
1479
1479
  *
1480
1480
  * @param length
1481
1481
  * The length of the data.
1482
1482
  */
1483
1483
  __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
1484
- XPC_EXPORT XPC_NONNULL1 XPC_NONNULL3
1484
+ XPC_EXPORT XPC_NONNULL1
1485
1485
  void
1486
1486
  xpc_array_set_data(xpc_object_t xarray, size_t index,
1487
- const void *XPC_SIZEDBY(length) bytes, size_t length);
1487
+ const void *XPC_SIZEDBY(length) _Nullable bytes, size_t length);
1488
1488
 
1489
1489
  /*!
1490
1490
  * @function xpc_array_set_string
@@ -2231,18 +2231,18 @@ xpc_dictionary_set_date(xpc_object_t xdict, const char *key, int64_t value);
2231
2231
  * The key for which the primitive value shall be set.
2232
2232
  *
2233
2233
  * @param bytes
2234
- * The bytes to insert. After calling this method, the XPC object corresponding
2235
- * to the primitive value inserted may be safely retrieved with
2236
- * {@link xpc_dictionary_get_value()}.
2234
+ * The bytes to insert. May be NULL if length is zero. After calling this method,
2235
+ * the XPC object corresponding to the primitive value inserted may be safely
2236
+ * retrieved with {@link xpc_dictionary_get_value()}.
2237
2237
  *
2238
2238
  * @param length
2239
2239
  * The length of the data.
2240
2240
  */
2241
2241
  __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_5_0)
2242
- XPC_EXPORT XPC_NONNULL1 XPC_NONNULL2 XPC_NONNULL3
2242
+ XPC_EXPORT XPC_NONNULL1 XPC_NONNULL2
2243
2243
  void
2244
2244
  xpc_dictionary_set_data(xpc_object_t xdict, const char *key,
2245
- const void *XPC_SIZEDBY(length) bytes, size_t length);
2245
+ const void *XPC_SIZEDBY(length) _Nullable bytes, size_t length);
2246
2246
 
2247
2247
  /*!
2248
2248
  * @function xpc_dictionary_set_string
@@ -2692,7 +2692,7 @@ xpc_dictionary_copy_mach_send(xpc_object_t xdict, const char *key);
2692
2692
  * state, potentially causing resource leaks or transaction issues.
2693
2693
  */
2694
2694
  API_AVAILABLE(macos(10.7), macCatalyst(5.0))
2695
- API_UNAVAILABLE(ios)
2695
+ API_UNAVAILABLE(ios, tvos, watchos)
2696
2696
  XPC_EXPORT XPC_NORETURN XPC_NONNULL1
2697
2697
  void
2698
2698
  xpc_main(xpc_connection_handler_t handler);
@@ -2729,7 +2729,7 @@ xpc_main(xpc_connection_handler_t handler);
2729
2729
  * connection.
2730
2730
  */
2731
2731
  API_AVAILABLE(macos(10.7))
2732
- API_UNAVAILABLE(ios)
2732
+ API_UNAVAILABLE(ios, tvos, watchos)
2733
2733
  XPC_TRANSACTION_DEPRECATED
2734
2734
  XPC_EXPORT
2735
2735
  void
@@ -2747,7 +2747,7 @@ xpc_transaction_begin(void);
2747
2747
  * the XPC runtime's idle-exit policy.
2748
2748
  */
2749
2749
  API_AVAILABLE(macos(10.7))
2750
- API_UNAVAILABLE(ios)
2750
+ API_UNAVAILABLE(ios, tvos, watchos)
2751
2751
  XPC_TRANSACTION_DEPRECATED
2752
2752
  XPC_EXPORT
2753
2753
  void
@@ -2783,7 +2783,7 @@ xpc_transaction_end(void);
2783
2783
  */
2784
2784
  #if __BLOCKS__
2785
2785
  API_AVAILABLE(macos(10.7))
2786
- API_UNAVAILABLE(ios)
2786
+ API_UNAVAILABLE(ios, tvos, watchos)
2787
2787
  XPC_EXPORT XPC_NONNULL1 XPC_NONNULL3
2788
2788
  void
2789
2789
  xpc_set_event_stream_handler(const char *stream,
@@ -0,0 +1,45 @@
1
+ /* $NetBSD: crt0.S,v 1.2 2018/11/26 17:37:44 joerg Exp $ */
2
+
3
+ /*-
4
+ * Copyright (c) 2014 The NetBSD Foundation, Inc.
5
+ * All rights reserved.
6
+ *
7
+ * This code is derived from software contributed to The NetBSD Foundation
8
+ * by Matt Thomas of 3am Software Foundry.
9
+ *
10
+ * Redistribution and use in source and binary forms, with or without
11
+ * modification, are permitted provided that the following conditions
12
+ * are met:
13
+ * 1. Redistributions of source code must retain the above copyright
14
+ * notice, this list of conditions and the following disclaimer.
15
+ * 2. Redistributions in binary form must reproduce the above copyright
16
+ * notice, this list of conditions and the following disclaimer in the
17
+ * documentation and/or other materials provided with the distribution.
18
+ *
19
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
20
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
21
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
22
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
23
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29
+ * POSSIBILITY OF SUCH DAMAGE.
30
+ */
31
+
32
+ #include <aarch64/asm.h>
33
+
34
+ RCSID("$NetBSD: crt0.S,v 1.2 2018/11/26 17:37:44 joerg Exp $")
35
+
36
+ STRONG_ALIAS(_start,__start)
37
+
38
+ _ENTRY(__start)
39
+ /*
40
+ * void ___start(void (*cleanup)(void),
41
+ * struct ps_strings *ps_strings);
42
+ */
43
+ mov x1, x2
44
+ b ___start
45
+ END(__start)
@@ -0,0 +1,61 @@
1
+ /* $NetBSD: crt0.S,v 1.4 2018/11/26 17:37:44 joerg Exp $ */
2
+
3
+ /*-
4
+ * Copyright (c) 2012 The NetBSD Foundation, Inc.
5
+ * All rights reserved.
6
+ *
7
+ * This code is derived from software contributed to The NetBSD Foundation
8
+ * by Matt Thomas of 3am Software Foundry.
9
+ *
10
+ * Redistribution and use in source and binary forms, with or without
11
+ * modification, are permitted provided that the following conditions
12
+ * are met:
13
+ * 1. Redistributions of source code must retain the above copyright
14
+ * notice, this list of conditions and the following disclaimer.
15
+ * 2. Redistributions in binary form must reproduce the above copyright
16
+ * notice, this list of conditions and the following disclaimer in the
17
+ * documentation and/or other materials provided with the distribution.
18
+ *
19
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
20
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
21
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
22
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
23
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29
+ * POSSIBILITY OF SUCH DAMAGE.
30
+ */
31
+
32
+ #include <arm/asm.h>
33
+
34
+ RCSID("$NetBSD: crt0.S,v 1.4 2018/11/26 17:37:44 joerg Exp $")
35
+
36
+ STRONG_ALIAS(_start,__start)
37
+
38
+ _ENTRY(__start)
39
+ /*
40
+ * ps_strings is passed in r0 and cleanup in r2.
41
+ * It should be ps_string in r1 and cleanup in r0.
42
+ */
43
+ mov r1, r0
44
+ mov r0, r2
45
+
46
+ /* Ensure the stack is properly aligned before calling C code. */
47
+ #if !defined(__thumb__)
48
+ bic sp, sp, #7
49
+ #else
50
+ movs r6, #7
51
+ mov r7, sp
52
+ bics r7, r7, r6
53
+ mov sp, r7
54
+ #endif
55
+
56
+ /*
57
+ * void ___start(void (*cleanup)(void),
58
+ * struct ps_strings *ps_strings);
59
+ */
60
+
61
+ b ___start
@@ -0,0 +1,48 @@
1
+ /* $NetBSD: crt0.S,v 1.4 2018/11/26 17:37:45 joerg Exp $ */
2
+
3
+ /*
4
+ * Copyright (c) 1998 Christos Zoulas
5
+ * Copyright (c) 1995 Christopher G. Demetriou
6
+ * All rights reserved.
7
+ *
8
+ * Redistribution and use in source and binary forms, with or without
9
+ * modification, are permitted provided that the following conditions
10
+ * are met:
11
+ * 1. Redistributions of source code must retain the above copyright
12
+ * notice, this list of conditions and the following disclaimer.
13
+ * 2. Redistributions in binary form must reproduce the above copyright
14
+ * notice, this list of conditions and the following disclaimer in the
15
+ * documentation and/or other materials provided with the distribution.
16
+ * 3. All advertising materials mentioning features or use of this software
17
+ * must display the following acknowledgement:
18
+ * This product includes software developed for the
19
+ * NetBSD Project. See http://www.NetBSD.org/ for
20
+ * information about NetBSD.
21
+ * 4. The name of the author may not be used to endorse or promote products
22
+ * derived from this software without specific prior written permission.
23
+ *
24
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
25
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
26
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
27
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
28
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
29
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
32
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
33
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34
+ *
35
+ * <<Id: LICENSE,v 1.2 2000/06/14 15:57:33 cgd Exp>>
36
+ */
37
+
38
+ #include <machine/asm.h>
39
+
40
+ RCSID("$NetBSD: crt0.S,v 1.4 2018/11/26 17:37:45 joerg Exp $")
41
+
42
+ .hidden ___start
43
+
44
+ STRONG_ALIAS(_start,__start)
45
+ _ENTRY(__start)
46
+ pushl %ebx
47
+ pushl %edx
48
+ call ___start
@@ -0,0 +1,47 @@
1
+ #include <machine/asm.h>
2
+
3
+ /*
4
+ * Copyright (c) 1999 Klaus Klein
5
+ * Copyright (c) 1995 Christopher G. Demetriou
6
+ * All rights reserved.
7
+ *
8
+ * Redistribution and use in source and binary forms, with or without
9
+ * modification, are permitted provided that the following conditions
10
+ * are met:
11
+ * 1. Redistributions of source code must retain the above copyright
12
+ * notice, this list of conditions and the following disclaimer.
13
+ * 2. Redistributions in binary form must reproduce the above copyright
14
+ * notice, this list of conditions and the following disclaimer in the
15
+ * documentation and/or other materials provided with the distribution.
16
+ * 3. All advertising materials mentioning features or use of this software
17
+ * must display the following acknowledgement:
18
+ * This product includes software developed for the
19
+ * NetBSD Project. See http://www.NetBSD.org/ for
20
+ * information about NetBSD.
21
+ * 4. The name of the author may not be used to endorse or promote products
22
+ * derived from this software without specific prior written permission.
23
+ *
24
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
25
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
26
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
27
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
28
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
29
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
32
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
33
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34
+ *
35
+ * <<Id: LICENSE,v 1.2 2000/06/14 15:57:33 cgd Exp>>
36
+ */
37
+
38
+ RCSID("$NetBSD: crt0.S,v 1.5 2018/11/26 17:37:45 joerg Exp $")
39
+
40
+ STRONG_ALIAS(_start,__start)
41
+
42
+ _ENTRY(__start)
43
+ movl %a2,-(%sp) | ps_strings
44
+ movl %a1,-(%sp) | cleanup
45
+ | call: ___start(cleanup, ps_strings)
46
+ jbsr ___start
47
+ END(__start)