12023 zfs test zfs_written_property_001_pos can fail
[illumos-gate.git] / usr / src / lib / libc / port / mapfile-vers
blob83fcd00ed025824f047a40777dcc9a48971c2350
2 # CDDL HEADER START
4 # The contents of this file are subject to the terms of the
5 # Common Development and Distribution License (the "License").
6 # You may not use this file except in compliance with the License.
8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 # or http://www.opensolaris.org/os/licensing.
10 # See the License for the specific language governing permissions
11 # and limitations under the License.
13 # When distributing Covered Code, include this CDDL HEADER in each
14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 # If applicable, add the following below this CDDL HEADER, with the
16 # fields enclosed by brackets "[]" replaced with your own identifying
17 # information: Portions Copyright [yyyy] [name of copyright owner]
19 # CDDL HEADER END
23 # Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
24 # Copyright 2018 Nexenta Systems, Inc.
25 # Copyright (c) 2012 by Delphix. All rights reserved.
26 # Copyright 2020 Joyent, Inc.
27 # Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved.
28 # Copyright (c) 2013 Gary Mills
29 # Copyright 2015 Garrett D'Amore <garrett@damore.org>
30 # Copyright 2022 OmniOS Community Edition (OmniOSce) Association.
31 # Copyright 2024 Oxide Computer Company
35 # MAPFILE HEADER START
37 # WARNING:  STOP NOW.  DO NOT MODIFY THIS FILE.
38 # Object versioning must comply with the rules detailed in
40 #       usr/src/lib/README.mapfiles
42 # You should not be making modifications here until you've read the most current
43 # copy of that file. If you need help, contact a gatekeeper for guidance.
45 # MAPFILE HEADER END
48 $mapfile_version 2
51 # All function names added to this or any other libc mapfile
52 # must be placed under the 'protected:' designation.
53 # The 'global:' designation is used *only* for data
54 # items and for the members of the malloc() family.
57 # Mnemonic conditional input identifiers:
59 # - amd64, i386, sparc32, sparcv9: Correspond to ISA subdirectories used to
60 #       hold per-platform code. Note however that we use 'sparc32' instead of
61 #       'sparc'. Since '_sparc' is predefined to apply to, all sparc platforms,
62 #       naming the 32-bit version 'sparc' would be too likely to cause errors.
64 # -     lf64: Defined on platforms that offer the 32-bit largefile APIs
66 $if _ELF32
67 $add lf64
68 $endif
69 $if _sparc && _ELF32
70 $add sparc32
71 $endif
72 $if _sparc && _ELF64
73 $add sparcv9
74 $endif
75 $if _x86 && _ELF32
76 $add i386
77 $endif
78 $if _x86 && _ELF64
79 $add amd64
80 $endif
82 SYMBOL_VERSION ILLUMOS_0.45 {
83     protected:
84         strerrordesc_np;
85         strerrorname_np;
86 } ILLUMOS_0.44;
88 SYMBOL_VERSION ILLUMOS_0.44 {
89     protected:
90         execvpe;
91 } ILLUMOS_0.43;
93 SYMBOL_VERSION ILLUMOS_0.43 {
94     protected:
95         execvex;
96         fexecve;
97 } ILLUMOS_0.42;
99 SYMBOL_VERSION ILLUMOS_0.42 {
100     protected:
101         strtonumx;
102 } ILLUMOS_0.41;
104 SYMBOL_VERSION ILLUMOS_0.41 {
105     protected:
106         getcontext_extd;
107         swapcontext_extd;
108         ucontext_alloc;
109         ucontext_free;
110 } ILLUMOS_0.40;
112 SYMBOL_VERSION ILLUMOS_0.40 {
113     protected:
114         errc;
115         verrc;
116         vwarnc;
117         warnc;
118 } ILLUMOS_0.39;
120 SYMBOL_VERSION ILLUMOS_0.39 {
121     protected:
122         memrchr;
123 } ILLUMOS_0.38;
125 SYMBOL_VERSION ILLUMOS_0.38 {
126     protected:
127         getgrouplist;
128 } ILLUMOS_0.37;
130 SYMBOL_VERSION ILLUMOS_0.37 {
131     global:
132         __stack_chk_guard       {
133                                   ASSERT = {
134                                           TYPE = OBJECT;
135                                           SIZE = addrsize;
136                                         };
137                                 };
138     protected:
139         __stack_chk_fail;
140 } ILLUMOS_0.36;
142 SYMBOL_VERSION ILLUMOS_0.36 {
143     protected:
144         upanic;
145 } ILLUMOS_0.35;
147 SYMBOL_VERSION ILLUMOS_0.35 {
148     protected:
149         qsort_r;
150 } ILLUMOS_0.34;
152 SYMBOL_VERSION ILLUMOS_0.34 {
153     protected:
154         futimes;
155         lutimes;
156 } ILLUMOS_0.33;
158 SYMBOL_VERSION ILLUMOS_0.33 {
159     protected:
160         c16rtomb;
161         c32rtomb;
162         mbrtoc16;
163         mbrtoc32;
164 } ILLUMOS_0.32;
166 SYMBOL_VERSION ILLUMOS_0.32 {
167     protected:
168         fmemopen;
169         open_memstream;
170         open_wmemstream;
171 } ILLUMOS_0.31;
173 SYMBOL_VERSION ILLUMOS_0.31 {
174     protected:
175         __unlockpt_xpg4;
176 } ILLUMOS_0.30;
178 SYMBOL_VERSION ILLUMOS_0.30 {
179     protected:
180         reallocf;
181 } ILLUMOS_0.29;
183 SYMBOL_VERSION ILLUMOS_0.29 {
184     protected:
185         getrandom;
186 } ILLUMOS_0.28;
188 SYMBOL_VERSION ILLUMOS_0.28 {
189     protected:
190         pthread_attr_getname_np;
191         pthread_attr_setname_np;
192         pthread_getname_np;
193         pthread_setname_np;
194         thr_getname;
195         thr_setname;
196 } ILLUMOS_0.27;
198 SYMBOL_VERSION ILLUMOS_0.27 {   # memset_s(3C) and set_constraint_handler_s(3C)
199     protected:
200         abort_handler_s;
201         ignore_handler_s;
202         memset_s;
203         set_constraint_handler_s;
204 } ILLUMOS_0.26;
206 SYMBOL_VERSION ILLUMOS_0.26 {   # fts(3) LFS
207 $if lf64
208     protected:
209         fts_children64;
210         fts_close64;
211         fts_open64;
212         fts_read64;
213         fts_set64;
214 $endif
215 } ILLUMOS_0.25;
217 SYMBOL_VERSION ILLUMOS_0.25 {   # inet_* moved from libnsl/libsocket
218     protected:
219         inet_addr;
220         inet_aton;
221         inet_lnaof;
222         inet_makeaddr;
223         inet_netof;
224         inet_network;
225         inet_ntoa;
226         inet_ntoa_r;
227         inet_ntop;
228         inet_pton;
229 } ILLUMOS_0.24;
231 SYMBOL_VERSION ILLUMOS_0.24 {   # openbsd compat
232     protected:
233         freezero;
234         recallocarray;
235 } ILLUMOS_0.23;
237 SYMBOL_VERSION ILLUMOS_0.23 {   # openbsd compat
238     protected:
239         fts_children;
240         fts_close;
241         fts_open;
242         fts_read;
243         fts_set;
244         reallocarray;
245         strtonum;
246 } ILLUMOS_0.22;
248 SYMBOL_VERSION ILLUMOS_0.22 {   # endian(3C)
249     protected:
250         htobe16;
251         htobe32;
252         htobe64;
253         htole16;
254         htole32;
255         htole64;
256         betoh16;
257         letoh16;
258         be16toh;
259         le16toh;
260         betoh32;
261         letoh32;
262         be32toh;
263         le32toh;
264         betoh64;
265         letoh64;
266         be64toh;
267         le64toh;
268 } ILLUMOS_0.21;
270 SYMBOL_VERSION ILLUMOS_0.21 {
271     protected:
272         pthread_attr_get_np;
273 } ILLUMOS_0.20;
275 SYMBOL_VERSION ILLUMOS_0.20 {   # C11
276     protected:
277         aligned_alloc;
278         at_quick_exit;
279         call_once;
280         cnd_broadcast;
281         cnd_destroy;
282         cnd_init;
283         cnd_signal;
284         cnd_timedwait;
285         cnd_wait;
286         mtx_destroy;
287         mtx_init;
288         mtx_lock;
289         mtx_timedlock;
290         mtx_trylock;
291         mtx_unlock;
292         quick_exit;
293         thrd_create;
294         thrd_current;
295         thrd_detach;
296         thrd_equal;
297         thrd_exit;
298         thrd_join;
299         thrd_sleep;
300         thrd_yield;
301         timespec_get;
302         tss_create;
303         tss_delete;
304         tss_get;
305         tss_set;
306 } ILLUMOS_0.19;
308 SYMBOL_VERSION ILLUMOS_0.19 {   # flock
309     protected:
310         flock;
311 } ILLUMOS_0.18;
313 SYMBOL_VERSION ILLUMOS_0.18 {   # signalfd
314     protected:
315         signalfd;
316 } ILLUMOS_0.17;
318 SYMBOL_VERSION ILLUMOS_0.17 {   # glob(3C) LFS
319 $if lf64
320     protected:
321         _glob_ext64;
322         _globfree_ext64;
323 $endif
324 } ILLUMOS_0.16;
326 SYMBOL_VERSION ILLUMOS_0.16 {   # timerfd
327     protected:
328         timerfd_create;
329         timerfd_gettime;
330         timerfd_settime;
331 } ILLUMOS_0.15;
333 SYMBOL_VERSION ILLUMOS_0.15 {   # epoll(3C)
334     protected:
335         epoll_create;
336         epoll_create1;
337         epoll_ctl;
338         epoll_wait;
339         epoll_pwait;
340 } ILLUMOS_0.14;
342 SYMBOL_VERSION ILLUMOS_0.14 {   # strerror_l
343     protected:
344         strerror_l;
345 } ILLUMOS_0.13;
347 SYMBOL_VERSION ILLUMOS_0.13 {   # eventfd
348     protected:
349         eventfd;
350         eventfd_read;
351         eventfd_write;
352 } ILLUMOS_0.12;
354 SYMBOL_VERSION ILLUMOS_0.12 {   # arc4random and friends
355     protected:
356         arc4random;
357         arc4random_buf;
358         arc4random_uniform;
359         explicit_bzero;
360         getentropy;
361 } ILLUMOS_0.11;
363 SYMBOL_VERSION ILLUMOS_0.11 {   # illumos additions
364     protected:
365         iswxdigit_l;
366         isxdigit_l;
367 } ILLUMOS_0.10;
369 SYMBOL_VERSION ILLUMOS_0.10 {   # illumos additions
370     protected:
371         preadv;
372         pwritev;
374 $if lf64
375         preadv64;
376         pwritev64;
377 $endif
378 } ILLUMOS_0.9;
380 SYMBOL_VERSION ILLUMOS_0.9 {
381     protected:
382         wcsnrtombs;
383         wcsnrtombs_l;
384 } ILLUMOS_0.8;
386 SYMBOL_VERSION ILLUMOS_0.8 {    # POSIX 2008 newlocale and friends
387     protected:
388         __global_locale;
389         __mb_cur_max;
390         __mb_cur_max_l;
391         btowc_l;
392         duplocale;
393         fgetwc_l;
394         freelocale;
395         getwc_l;
396         isalnum_l;
397         isalpha_l;
398         isblank_l;
399         iscntrl_l;
400         isdigit_l;
401         isgraph_l;
402         islower_l;
403         isprint_l;
404         ispunct_l;
405         isspace_l;
406         isupper_l;
407         iswideogram;
408         iswideogram_l;
409         iswnumber;
410         iswnumber_l;
411         iswhexnumber;
412         iswhexnumber_l;
413         iswphonogram;
414         iswphonogram_l;
415         iswspecial;
416         iswspecial_l;
417         iswalnum_l;
418         iswalpha_l;
419         iswblank_l;
420         iswcntrl_l;
421         iswctype_l;
422         iswdigit_l;
423         iswgraph_l;
424         iswlower_l;
425         iswprint_l;
426         iswpunct_l;
427         iswspace_l;
428         iswupper_l;
429         mblen_l;
430         mbrlen_l;
431         mbsinit_l;
432         mbsnrtowcs;
433         mbsnrtowcs_l;
434         mbsrtowcs_l;
435         mbstowcs_l;
436         mbtowc_l;
437         newlocale;
438         nl_langinfo_l;
439         strcasecmp_l;
440         strcasestr_l;
441         strcoll_l;
442         strfmon_l;
443         strftime_l;
444         strncasecmp_l;
445         strptime_l;
446         strxfrm_l;
447         tolower_l;
448         toupper_l;
449         towlower_l;
450         towupper_l;
451         towctrans_l;
452         uselocale;
453         wcrtomb_l;
454         wcscasecmp_l;
455         wcscoll_l;
456         wcsncasecmp_l;
457         wcsrtombs_l;
458         wcstombs_l;
459         wcswidth_l;
460         wcsxfrm_l;
461         wctob_l;
462         wctomb_l;
463         wctrans_l;
464         wctype_l;
465         wcwidth_l;
466 } ILLUMOS_0.7;
468 SYMBOL_VERSION ILLUMOS_0.7 {    # illumos additions
469     protected:
470         _glob_ext;
471         _globfree_ext;
472 } ILLUMOS_0.6;
474 SYMBOL_VERSION ILLUMOS_0.6 {    # illumos additions
475     protected:
476         getloginx;
477         getloginx_r;
478         __posix_getloginx_r;
479 } ILLUMOS_0.5;
481 SYMBOL_VERSION ILLUMOS_0.5 {    # common C++ ABI exit handlers
482     protected:
483         __cxa_atexit;
484         __cxa_finalize;
485 } ILLUMOS_0.4;
487 SYMBOL_VERSION ILLUMOS_0.4 {    # illumos additions
488     protected:
489         pipe2;
490         dup3;
491         mkostemp;
492         mkostemps;
494 $if lf64
495         mkostemp64;
496         mkostemps64;
497 $endif
498 } ILLUMOS_0.3;
500 SYMBOL_VERSION ILLUMOS_0.3 {    # illumos additions
501     protected:
502         assfail3;
503 } ILLUMOS_0.2;
505 SYMBOL_VERSION ILLUMOS_0.2 {    # illumos additions
506     protected:
507         posix_spawn_pipe_np;
508 } ILLUMOS_0.1;
510 SYMBOL_VERSION ILLUMOS_0.1 {    # illumos additions
511     protected:
512         timegm;
513 } SUNW_1.23;
515 SYMBOL_VERSION SUNW_1.23 {      # SunOS 5.11 (Solaris 11)
516     global:
517         _nl_domain_bindings     {
518                                   ASSERT = {
519                                           TYPE = OBJECT;
520                                           SIZE = addrsize;
521                                         };
522                                 };
523         _nl_msg_cat_cntr        {
524                                   ASSERT = {
525                                           TYPE = OBJECT;
526                                           SIZE = 4;
527                                         };
528                                 };
530 $if _ELF32
531         dl_iterate_phdr         {
532                                   TYPE = FUNCTION;
533                                   FILTER = /usr/lib/ld.so.1;
534                                 };
535 $elif sparcv9
536         dl_iterate_phdr         {
537                                   TYPE = FUNCTION;
538                                   FILTER = /usr/lib/sparcv9/ld.so.1;
539                                 };
540 $elif amd64
541         dl_iterate_phdr {
542                                   TYPE = FUNCTION;
543                                   FILTER = /usr/lib/amd64/ld.so.1;
544                                 };
545 $else
546 $error unknown platform
547 $endif
549     protected:
551 $if sparc32
552         __align_cpy_1;
553 $endif
555         addrtosymstr;
556         aio_cancel;
557         aiocancel;
558         aio_error;
559         aio_fsync;
560         aio_read;
561         aioread;
562         aio_return;
563         aio_suspend;
564         aiowait;
565         aio_waitn;
566         aio_write;
567         aiowrite;
568         asprintf;
569         assfail;
570         backtrace;
571         backtrace_symbols;
572         backtrace_symbols_fd;
573         canonicalize_file_name;
574         clearenv;
575         clock_getres;
576         clock_gettime;
577         clock_nanosleep;
578         clock_settime;
579         daemon;
580         dirfd;
581         door_bind;
582         door_call;
583         door_create;
584         door_cred;
585         door_getparam;
586         door_info;
587         door_return;
588         door_revoke;
589         door_server_create;
590         door_setparam;
591         door_ucred;
592         door_unbind;
593         door_xcreate;
594         err;
595         errx;
596         faccessat;
597         fchmodat;
598         fcloseall;
599         fdatasync;
600         ffsl;
601         ffsll;
602         fgetattr;
603         fls;
604         flsl;
605         flsll;
606         forkallx;
607         forkx;
608         fsetattr;
609         getattrat;
610         getdelim;
611         getline;
612         get_nprocs;
613         get_nprocs_conf;
614         getprogname;
615         htonl;
616         htonll;
617         htons;
618         linkat;
619         lio_listio;
620         memmem;
621         mkdirat;
622         mkdtemp;
623         mkfifoat;
624         mknodat;
625         mkstemps;
626         mmapobj;
627         mq_close;
628         mq_getattr;
629         mq_notify;
630         mq_open;
631         mq_receive;
632         mq_reltimedreceive_np;
633         mq_reltimedsend_np;
634         mq_send;
635         mq_setattr;
636         mq_timedreceive;
637         mq_timedsend;
638         mq_unlink;
639         nanosleep;
640         ntohl;
641         ntohll;
642         ntohs;
643         posix_fadvise;
644         posix_fallocate;
645         posix_madvise;
646         posix_memalign;
647         posix_spawn_file_actions_addclosefrom_np;
648         posix_spawnattr_getsigignore_np;
649         posix_spawnattr_setsigignore_np;
650         ppoll;
651         priv_basicset;
652         pthread_key_create_once_np;
653         pthread_mutexattr_getrobust;
654         pthread_mutexattr_setrobust;
655         pthread_mutex_consistent;
656         readlinkat;
657         sched_getparam;
658         sched_get_priority_max;
659         sched_get_priority_min;
660         sched_getscheduler;
661         sched_rr_get_interval;
662         sched_setparam;
663         sched_setscheduler;
664         sched_yield;
665         sem_close;
666         sem_destroy;
667         sem_getvalue;
668         sem_init;
669         sem_open;
670         sem_post;
671         sem_reltimedwait_np;
672         sem_timedwait;
673         sem_trywait;
674         sem_unlink;
675         sem_wait;
676         setattrat;
677         setprogname;
678         _sharefs;
679         shm_open;
680         shm_unlink;
681         sigqueue;
682         sigtimedwait;
683         sigwaitinfo;
684         smt_pause;
685         stpcpy;
686         stpncpy;
687         strcasestr;
688         strchrnul;
689         strndup;
690         strnlen;
691         strnstr;
692         strsep;
693         symlinkat;
694         thr_keycreate_once;
695         timer_create;
696         timer_delete;
697         timer_getoverrun;
698         timer_gettime;
699         timer_settime;
700         u8_strcmp;
701         u8_validate;
702         uconv_u16tou32;
703         uconv_u16tou8;
704         uconv_u32tou16;
705         uconv_u32tou8;
706         uconv_u8tou16;
707         uconv_u8tou32;
708         vasprintf;
709         verr;
710         verrx;
711         vforkx;
712         vwarn;
713         vwarnx;
714         warn;
715         warnx;
716         wcpcpy;
717         wcpncpy;
718         wcscasecmp;
719         wcsdup;
720         wcsncasecmp;
721         wcsnlen;
723 $if lf64
724         aio_cancel64;
725         aio_error64;
726         aio_fsync64;
727         aio_read64;
728         aioread64;
729         aio_return64;
730         aio_suspend64;
731         aio_waitn64;
732         aio_write64;
733         aiowrite64;
734         lio_listio64;
735         mkstemps64;
736         posix_fadvise64;
737         posix_fallocate64;
738 $endif
739 } SUNW_1.22.7;
741 SYMBOL_VERSION SUNW_1.22.7 {    # s10u10 - SunOS 5.10 (Solaris 10) patch additions
742     protected:
743         SUNW_1.22.7;
744 } SUNW_1.22.6;
746 SYMBOL_VERSION SUNW_1.22.6 {    # s10u9 - SunOS 5.10 (Solaris 10) patch additions
747     protected:
748         futimens;
749         utimensat;
750 } SUNW_1.22.5;
752 SYMBOL_VERSION SUNW_1.22.5 {    # s10u8 - SunOS 5.10 (Solaris 10) patch additions
753     protected:
754         getpagesizes2;
755 } SUNW_1.22.4;
757 SYMBOL_VERSION SUNW_1.22.4 {    # s10u7 - SunOS 5.10 (Solaris 10) patch additions
758     protected:
759         SUNW_1.22.4;
760 } SUNW_1.22.3;
762 SYMBOL_VERSION SUNW_1.22.3 {    # SunOS 5.10 (Solaris 10) patch additions
763     protected:
764         mutex_consistent;
765         u8_textprep_str;
766         uucopy;
767         uucopystr;
768 } SUNW_1.22.2;
770 SYMBOL_VERSION SUNW_1.22.2 {    # SunOS 5.10 (Solaris 10) patch additions
771     protected:
772         is_system_labeled;
773         ucred_getlabel;
774         _ucred_getlabel;
775 } SUNW_1.22.1;
777 SYMBOL_VERSION SUNW_1.22.1 {    # SunOS 5.10 (Solaris 10) patch additions
778     protected:
779         atomic_add_8;
780         atomic_add_8_nv;
781         atomic_add_char         { FLAGS = NODYNSORT; };
782         atomic_add_char_nv      { FLAGS = NODYNSORT; };
783         atomic_add_int          { FLAGS = NODYNSORT; };
784         atomic_add_int_nv       { FLAGS = NODYNSORT; };
785         atomic_add_ptr          { FLAGS = NODYNSORT; };
786         atomic_add_ptr_nv       { FLAGS = NODYNSORT; };
787         atomic_add_short        { FLAGS = NODYNSORT; };
788         atomic_add_short_nv     { FLAGS = NODYNSORT; };
789         atomic_and_16;
790         atomic_and_16_nv;
791         atomic_and_32_nv;
792         atomic_and_64;
793         atomic_and_64_nv;
794         atomic_and_8;
795         atomic_and_8_nv;
796         atomic_and_uchar        { FLAGS = NODYNSORT; };
797         atomic_and_uchar_nv     { FLAGS = NODYNSORT; };
798         atomic_and_uint_nv      { FLAGS = NODYNSORT; };
799         atomic_and_ulong        { FLAGS = NODYNSORT; };
800         atomic_and_ulong_nv     { FLAGS = NODYNSORT; };
801         atomic_and_ushort       { FLAGS = NODYNSORT; };
802         atomic_and_ushort_nv    { FLAGS = NODYNSORT; };
803         atomic_cas_16;
804         atomic_cas_32;
805         atomic_cas_64;
806         atomic_cas_8;
807         atomic_cas_ptr          { FLAGS = NODYNSORT; };
808         atomic_cas_uchar        { FLAGS = NODYNSORT; };
809         atomic_cas_uint         { FLAGS = NODYNSORT; };
810         atomic_cas_ulong        { FLAGS = NODYNSORT; };
811         atomic_cas_ushort       { FLAGS = NODYNSORT; };
812         atomic_clear_long_excl  { FLAGS = NODYNSORT; };
813         atomic_dec_16;
814         atomic_dec_16_nv;
815         atomic_dec_32;
816         atomic_dec_32_nv;
817         atomic_dec_64;
818         atomic_dec_64_nv;
819         atomic_dec_8;
820         atomic_dec_8_nv;
821         atomic_dec_uchar        { FLAGS = NODYNSORT; };
822         atomic_dec_uchar_nv     { FLAGS = NODYNSORT; };
823         atomic_dec_uint         { FLAGS = NODYNSORT; };
824         atomic_dec_uint_nv      { FLAGS = NODYNSORT; };
825         atomic_dec_ulong        { FLAGS = NODYNSORT; };
826         atomic_dec_ulong_nv     { FLAGS = NODYNSORT; };
827         atomic_dec_ushort       { FLAGS = NODYNSORT; };
828         atomic_dec_ushort_nv    { FLAGS = NODYNSORT; };
829         atomic_inc_16;
830         atomic_inc_16_nv;
831         atomic_inc_32;
832         atomic_inc_32_nv;
833         atomic_inc_64;
834         atomic_inc_64_nv;
835         atomic_inc_8;
836         atomic_inc_8_nv;
837         atomic_inc_uchar        { FLAGS = NODYNSORT; };
838         atomic_inc_uchar_nv     { FLAGS = NODYNSORT; };
839         atomic_inc_uint         { FLAGS = NODYNSORT; };
840         atomic_inc_uint_nv      { FLAGS = NODYNSORT; };
841         atomic_inc_ulong        { FLAGS = NODYNSORT; };
842         atomic_inc_ulong_nv     { FLAGS = NODYNSORT; };
843         atomic_inc_ushort       { FLAGS = NODYNSORT; };
844         atomic_inc_ushort_nv    { FLAGS = NODYNSORT; };
845         atomic_or_16;
846         atomic_or_16_nv;
847         atomic_or_32_nv;
848         atomic_or_64;
849         atomic_or_64_nv;
850         atomic_or_8;
851         atomic_or_8_nv;
852         atomic_or_uchar         { FLAGS = NODYNSORT; };
853         atomic_or_uchar_nv      { FLAGS = NODYNSORT; };
854         atomic_or_uint_nv       { FLAGS = NODYNSORT; };
855         atomic_or_ulong         { FLAGS = NODYNSORT; };
856         atomic_or_ulong_nv      { FLAGS = NODYNSORT; };
857         atomic_or_ushort        { FLAGS = NODYNSORT; };
858         atomic_or_ushort_nv     { FLAGS = NODYNSORT; };
859         atomic_set_long_excl    { FLAGS = NODYNSORT; };
860         atomic_swap_16;
861         atomic_swap_32;
862         atomic_swap_64;
863         atomic_swap_8;
864         atomic_swap_ptr         { FLAGS = NODYNSORT; };
865         atomic_swap_uchar       { FLAGS = NODYNSORT; };
866         atomic_swap_uint        { FLAGS = NODYNSORT; };
867         atomic_swap_ulong       { FLAGS = NODYNSORT; };
868         atomic_swap_ushort      { FLAGS = NODYNSORT; };
869         membar_consumer;
870         membar_enter;
871         membar_exit;
872         membar_producer;
874 $if _ELF32
875         enable_extended_FILE_stdio;
876 $endif
878 $if i386
879         # Note: atomic_[and,dec,inc,or]_64_nv are also defined above. Here,
880         # we add the NODYNSORT attribute to them. On this platform, they are
881         # aliases for the non-_nv versions. If that is changed, these lines
882         # should be removed.
883         atomic_and_64_nv        { FLAGS = NODYNSORT; };
884         atomic_dec_64_nv        { FLAGS = NODYNSORT; };
885         atomic_inc_64_nv        { FLAGS = NODYNSORT; };
886         atomic_or_64_nv         { FLAGS = NODYNSORT; };
887 $endif
888 $if _sparc
889         # Note: atomic_OP_WIDTH_nv symbols are also defined above. Here,
890         # we add the NODYNSORT attribute to them. On this platform, they are
891         # aliases for the non-_nv versions. If that is changed, these lines
892         # should be removed.
893         atomic_add_8_nv         { FLAGS = NODYNSORT; };
894         atomic_and_8_nv         { FLAGS = NODYNSORT; };
895         atomic_and_16_nv        { FLAGS = NODYNSORT; };
896         atomic_and_32_nv        { FLAGS = NODYNSORT; };
897         atomic_and_64_nv        { FLAGS = NODYNSORT; };
898         atomic_dec_8_nv         { FLAGS = NODYNSORT; };
899         atomic_dec_16_nv        { FLAGS = NODYNSORT; };
900         atomic_dec_32_nv        { FLAGS = NODYNSORT; };
901         atomic_dec_64_nv        { FLAGS = NODYNSORT; };
902         atomic_inc_8_nv         { FLAGS = NODYNSORT; };
903         atomic_inc_16_nv        { FLAGS = NODYNSORT; };
904         atomic_inc_32_nv        { FLAGS = NODYNSORT; };
905         atomic_inc_64_nv        { FLAGS = NODYNSORT; };
906         atomic_or_8_nv          { FLAGS = NODYNSORT; };
907         atomic_or_16_nv         { FLAGS = NODYNSORT; };
908         atomic_or_32_nv         { FLAGS = NODYNSORT; };
909         atomic_or_64_nv         { FLAGS = NODYNSORT; };
910 $endif
911 } SUNW_1.22;
913 SYMBOL_VERSION SUNW_1.22 {      # SunOS 5.10 (Solaris 10)
914     global:
915 $if _ELF32
916         dladdr          { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; };
917         dladdr1         { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; };
918         dlclose         { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; };
919         dldump          { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; };
920         dlerror         { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; };
921         dlinfo          { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; };
922         dlmopen         { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; };
923         dlopen          { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; };
924         dlsym           { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; };
925 $elif sparcv9
926         dladdr          { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; };
927         dladdr1         { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; };
928         dlclose         { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; };
929         dldump          { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; };
930         dlerror         { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; };
931         dlinfo          { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; };
932         dlmopen         { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; };
933         dlopen          { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; };
934         dlsym           { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; };
935 $elif amd64
936         dladdr          { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; };
937         dladdr1         { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; };
938         dlamd64getunwind        {
939                                   TYPE = FUNCTION;
940                                   FILTER = /usr/lib/amd64/ld.so.1;
941                                 };
942         dlclose         { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; };
943         dldump          { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; };
944         dlerror         { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; };
945         dlinfo          { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; };
946         dlmopen         { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; };
947         dlopen          { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; };
948         dlsym           { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; };
949 $else
950 $error unknown platform
951 $endif
953     protected:
954         alphasort;
955         _alphasort;
956         atomic_add_16;
957         atomic_add_16_nv;
958         atomic_add_32;
959         atomic_add_32_nv;
960         atomic_add_64;
961         atomic_add_64_nv;
962         atomic_add_long                 { FLAGS = NODYNSORT; };
963         atomic_add_long_nv              { FLAGS = NODYNSORT; };
964         atomic_and_32;
965         atomic_and_uint                 { FLAGS = NODYNSORT; };
966         atomic_or_32;
967         atomic_or_uint                  { FLAGS = NODYNSORT; };
968         _Exit;
969         getisax;
970         _getisax;
971         getopt_clip;
972         _getopt_clip;
973         getopt_long;
974         _getopt_long;
975         getopt_long_only;
976         _getopt_long_only;
977         getpeerucred;
978         _getpeerucred;
979         getpflags;
980         _getpflags;
981         getppriv;
982         _getppriv;
983         getprivimplinfo;
984         _getprivimplinfo;
985         getzoneid;
986         getzoneidbyname;
987         getzonenamebyid;
988         imaxabs;
989         imaxdiv;
990         isblank;
991         iswblank;
992         port_alert;
993         port_associate;
994         port_create;
995         port_dissociate;
996         port_get;
997         port_getn;
998         port_send;
999         port_sendn;
1000         posix_openpt;
1001         posix_spawn;
1002         posix_spawnattr_destroy;
1003         posix_spawnattr_getflags;
1004         posix_spawnattr_getpgroup;
1005         posix_spawnattr_getschedparam;
1006         posix_spawnattr_getschedpolicy;
1007         posix_spawnattr_getsigdefault;
1008         posix_spawnattr_getsigmask;
1009         posix_spawnattr_init;
1010         posix_spawnattr_setflags;
1011         posix_spawnattr_setpgroup;
1012         posix_spawnattr_setschedparam;
1013         posix_spawnattr_setschedpolicy;
1014         posix_spawnattr_setsigdefault;
1015         posix_spawnattr_setsigmask;
1016         posix_spawn_file_actions_addclose;
1017         posix_spawn_file_actions_adddup2;
1018         posix_spawn_file_actions_addopen;
1019         posix_spawn_file_actions_destroy;
1020         posix_spawn_file_actions_init;
1021         posix_spawnp;
1022         priv_addset;
1023         _priv_addset;
1024         priv_allocset;
1025         _priv_allocset;
1026         priv_copyset;
1027         _priv_copyset;
1028         priv_delset;
1029         _priv_delset;
1030         priv_emptyset;
1031         _priv_emptyset;
1032         priv_fillset;
1033         _priv_fillset;
1034         __priv_free_info;
1035         priv_freeset;
1036         _priv_freeset;
1037         priv_getbyname;
1038         _priv_getbyname;
1039         __priv_getbyname;
1040         priv_getbynum;
1041         _priv_getbynum;
1042         __priv_getbynum;
1043         __priv_getdata;
1044         priv_getsetbyname;
1045         _priv_getsetbyname;
1046         __priv_getsetbyname;
1047         priv_getsetbynum;
1048         _priv_getsetbynum;
1049         __priv_getsetbynum;
1050         priv_gettext;
1051         _priv_gettext;
1052         priv_ineffect;
1053         _priv_ineffect;
1054         priv_intersect;
1055         _priv_intersect;
1056         priv_inverse;
1057         _priv_inverse;
1058         priv_isemptyset;
1059         _priv_isemptyset;
1060         priv_isequalset;
1061         _priv_isequalset;
1062         priv_isfullset;
1063         _priv_isfullset;
1064         priv_ismember;
1065         _priv_ismember;
1066         priv_issubset;
1067         _priv_issubset;
1068         __priv_parse_info;
1069         priv_set;
1070         _priv_set;
1071         priv_set_to_str;
1072         _priv_set_to_str;
1073         __priv_set_to_str;
1074         priv_str_to_set;
1075         _priv_str_to_set;
1076         priv_union;
1077         _priv_union;
1078         pselect;
1079         pthread_attr_getstack;
1080         pthread_attr_setstack;
1081         pthread_barrierattr_destroy;
1082         pthread_barrierattr_getpshared;
1083         pthread_barrierattr_init;
1084         pthread_barrierattr_setpshared;
1085         pthread_barrier_destroy;
1086         pthread_barrier_init;
1087         pthread_barrier_wait;
1088         pthread_condattr_getclock;
1089         pthread_condattr_setclock;
1090         pthread_mutexattr_getrobust_np  { FLAGS = NODYNSORT; };
1091         pthread_mutexattr_setrobust_np  { FLAGS = NODYNSORT; };
1092         pthread_mutex_consistent_np     { FLAGS = NODYNSORT; };
1093         pthread_mutex_reltimedlock_np;
1094         pthread_mutex_timedlock;
1095         pthread_rwlock_reltimedrdlock_np;
1096         pthread_rwlock_reltimedwrlock_np;
1097         pthread_rwlock_timedrdlock;
1098         pthread_rwlock_timedwrlock;
1099         pthread_setschedprio;
1100         pthread_spin_destroy;
1101         pthread_spin_init;
1102         pthread_spin_lock;
1103         pthread_spin_trylock;
1104         pthread_spin_unlock;
1105         rctlblk_set_recipient_pid;
1106         scandir;
1107         _scandir;
1108         schedctl_exit;
1109         schedctl_init;
1110         schedctl_lookup;
1111         sema_reltimedwait;
1112         sema_timedwait;
1113         setenv;
1114         setpflags;
1115         _setpflags;
1116         setppriv;
1117         _setppriv;
1118         strerror_r;
1119         strtof;
1120         strtoimax;
1121         strtold;
1122         strtoumax;
1123         ucred_free;
1124         _ucred_free;
1125         ucred_get;
1126         _ucred_get;
1127         ucred_getegid;
1128         _ucred_getegid;
1129         ucred_geteuid;
1130         _ucred_geteuid;
1131         ucred_getgroups;
1132         _ucred_getgroups;
1133         ucred_getpflags;
1134         _ucred_getpflags;
1135         ucred_getpid;
1136         _ucred_getpid;
1137         ucred_getprivset;
1138         _ucred_getprivset;
1139         ucred_getprojid;
1140         _ucred_getprojid;
1141         ucred_getrgid;
1142         _ucred_getrgid;
1143         ucred_getruid;
1144         _ucred_getruid;
1145         ucred_getsgid;
1146         _ucred_getsgid;
1147         ucred_getsuid;
1148         _ucred_getsuid;
1149         ucred_getzoneid;
1150         _ucred_getzoneid;
1151         ucred_size;
1152         _ucred_size;
1153         unsetenv;
1154         wcstof;
1155         wcstoimax;
1156         wcstold;
1157         wcstoll;
1158         wcstoull;
1159         wcstoumax;
1161 $if lf64
1162         alphasort64;
1163         _alphasort64;
1164         pselect_large_fdset;
1165         scandir64;
1166         _scandir64;
1167 $endif
1169 $if _ELF64
1170         walkcontext;
1171 $endif
1173 $if _sparc
1174         # Note: atomic_add_[16,32,64]_nv are also defined above. Here, we add
1175         # the NODYNSORT attribute to them. On this platform, they are aliases
1176         # for the non-_nv versions. If that is changed, these lines should be
1177         # removed.
1178         atomic_add_16_nv                { FLAGS = NODYNSORT; };
1179         atomic_add_32_nv                { FLAGS = NODYNSORT; };
1180         atomic_add_64_nv                { FLAGS = NODYNSORT; };
1181 $endif
1183 $if i386
1184         # Note: atomic_add_64_nv is also defined above. Here, we add the
1185         # NODYNSORT attribute to it. On this platform, it is an aliases for
1186         # atomic_add_64. If that is changed, this line should be removed.
1187         atomic_add_64_nv                { FLAGS = NODYNSORT; };
1188 $endif
1190 $if amd64
1191         # Exception unwind APIs required by the amd64 ABI
1192         _SUNW_Unwind_DeleteException;
1193         _SUNW_Unwind_ForcedUnwind;
1194         _SUNW_Unwind_GetCFA;
1195         _SUNW_Unwind_GetGR;
1196         _SUNW_Unwind_GetIP;
1197         _SUNW_Unwind_GetLanguageSpecificData;
1198         _SUNW_Unwind_GetRegionStart;
1199         _SUNW_Unwind_RaiseException;
1200         _SUNW_Unwind_Resume;
1201         _SUNW_Unwind_SetGR;
1202         _SUNW_Unwind_SetIP;
1203         _UA_CLEANUP_PHASE               {
1204                                           ASSERT = {
1205                                                   TYPE = OBJECT;
1206                                                   SIZE = 4;
1207                                                 };
1208                                         };
1209         _UA_FORCE_UNWIND                {
1210                                           ASSERT = {
1211                                                   TYPE = OBJECT;
1212                                                   SIZE = 4;
1213                                                 };
1214                                         };
1215         _UA_HANDLER_FRAME               {
1216                                           ASSERT = {
1217                                                   TYPE = OBJECT;
1218                                                   SIZE = 4;
1219                                                 };
1220                                         };
1221         _UA_SEARCH_PHASE                {
1222                                           ASSERT = {
1223                                                   TYPE = OBJECT;
1224                                                   SIZE = 4;
1225                                                 };
1226                                         };
1227         _Unwind_DeleteException;
1228         _Unwind_ForcedUnwind;
1229         _Unwind_GetCFA;
1230         _Unwind_GetGR;
1231         _Unwind_GetIP;
1232         _Unwind_GetLanguageSpecificData;
1233         _Unwind_GetRegionStart;
1234         _Unwind_RaiseException;
1235         _Unwind_Resume;
1236         _Unwind_SetGR;
1237         _Unwind_SetIP;
1238 $endif
1239 } SUNW_1.21.3;
1241 SYMBOL_VERSION SUNW_1.21.3 {    # SunOS 5.9 (Solaris 9) patch additions
1242     protected:
1243         forkall;
1244 } SUNW_1.21.2;
1246 SYMBOL_VERSION SUNW_1.21.2 {    # SunOS 5.9 (Solaris 9) patch additions
1247     protected:
1248         getustack;
1249         _getustack;
1250         setustack;
1251         _setustack;
1252         stack_getbounds;
1253         _stack_getbounds;
1254         _stack_grow;
1255         stack_inbounds;
1256         _stack_inbounds;
1257         stack_setbounds;
1258         _stack_setbounds;
1259         stack_violation;
1260         _stack_violation;
1262 $if _sparc
1263         __makecontext_v2;
1264         ___makecontext_v2;
1265 $endif
1266 } SUNW_1.21.1;
1268 SYMBOL_VERSION SUNW_1.21.1 {    # SunOS 5.9 (Solaris 9) patch additions
1269     protected:
1270         crypt_gensalt;
1271 } SUNW_1.21;
1273 SYMBOL_VERSION SUNW_1.21 {      # SunOS 5.9 (Solaris 9)
1274     protected:
1275         attropen;
1276         _attropen;
1277         bind_textdomain_codeset;
1278         closefrom;
1279         _closefrom;
1280         cond_reltimedwait;
1281         dcngettext;
1282         dngettext;
1283         fchownat;
1284         _fchownat;
1285         fdopendir;
1286         _fdopendir;
1287         fdwalk;
1288         _fdwalk;
1289         fstatat;
1290         _fstatat;
1291         futimesat;
1292         _futimesat;
1293         getcpuid;
1294         _getcpuid;
1295         gethomelgroup;
1296         _gethomelgroup  { FLAGS = NODYNSORT; };
1297         getpagesizes;
1298         getrctl;
1299         _getrctl;
1300         issetugid;
1301         _issetugid;
1302         _lwp_cond_reltimedwait;
1303         meminfo;
1304         _meminfo;
1305         ngettext;
1306         openat;
1307         _openat;
1308         printstack;
1309         priocntl;
1310         priocntlset;
1311         pset_getattr;
1312         pset_getloadavg;
1313         pset_list;
1314         pset_setattr;
1315         pthread_cond_reltimedwait_np;
1316         rctlblk_get_enforced_value;
1317         rctlblk_get_firing_time;
1318         rctlblk_get_global_action;
1319         rctlblk_get_global_flags;
1320         rctlblk_get_local_action;
1321         rctlblk_get_local_flags;
1322         rctlblk_get_privilege;
1323         rctlblk_get_recipient_pid;
1324         rctlblk_get_value;
1325         rctlblk_set_local_action;
1326         rctlblk_set_local_flags;
1327         rctlblk_set_privilege;
1328         rctlblk_set_value;
1329         rctlblk_size;
1330         rctl_walk;
1331         renameat;
1332         setrctl;
1333         _setrctl;
1334         unlinkat;
1335         _unlinkat;
1336         vfscanf;
1337         _vfscanf;
1338         vfwscanf;
1339         vscanf;
1340         _vscanf;
1341         vsscanf;
1342         _vsscanf;
1343         vswscanf;
1344         vwscanf;
1346 $if _ELF32
1347         walkcontext;
1348 $endif
1350 $if lf64
1351         attropen64;
1352         _attropen64;
1353         fstatat64;
1354         _fstatat64;
1355         openat64;
1356         _openat64;
1357 $endif
1358 } SUNW_1.20.4;
1360 SYMBOL_VERSION SUNW_1.20.4 {    # SunOS 5.8 (Solaris 8) patch additions
1361     protected:
1362         semtimedop;
1363         _semtimedop;
1364 } SUNW_1.20.1;
1366 SYMBOL_VERSION SUNW_1.20.1 {    # SunOS 5.8 (Solaris 8) patch additions
1367     protected:
1368         getacct;
1369         _getacct;
1370         getprojid;
1371         _getprojid;
1372         gettaskid;
1373         _gettaskid;
1374         msgids;
1375         _msgids;
1376         msgsnap;
1377         _msgsnap;
1378         putacct;
1379         _putacct;
1380         semids;
1381         _semids;
1382         settaskid;
1383         _settaskid;
1384         shmids;
1385         _shmids;
1386         wracct;
1387         _wracct;
1388 } SUNW_1.20;
1390 SYMBOL_VERSION SUNW_1.20 {      # SunOS 5.8 (Solaris 8)
1391     protected:
1392         getextmntent;
1393         resetmnttab;
1394 } SUNW_1.19;
1396 SYMBOL_VERSION SUNW_1.19 {
1397     protected:
1398         strlcat;
1399         strlcpy;
1400         umount2;
1401         _umount2;
1402 } SUNW_1.18.1;
1404 SYMBOL_VERSION SUNW_1.18.1 {
1405     protected:
1406         __fsetlocking;
1407 } SUNW_1.18;
1409 SYMBOL_VERSION SUNW_1.18 {      # SunOS 5.7 (Solaris 7)
1410     protected:
1411         btowc;
1412         __fbufsize;
1413         __flbf;
1414         _flushlbf;
1415         __fpending;
1416         __fpurge;
1417         __freadable;
1418         __freading;
1419         fwide;
1420         fwprintf;
1421         __fwritable;
1422         __fwriting;
1423         fwscanf;
1424         getloadavg;
1425         isaexec;
1426         mbrlen;
1427         mbrtowc;
1428         mbsinit;
1429         mbsrtowcs;
1430         pcsample;
1431         pthread_attr_getguardsize;
1432         pthread_attr_setguardsize;
1433         pthread_getconcurrency;
1434         pthread_mutexattr_gettype;
1435         pthread_mutexattr_settype;
1436         pthread_rwlockattr_destroy;
1437         pthread_rwlockattr_getpshared;
1438         pthread_rwlockattr_init;
1439         pthread_rwlockattr_setpshared;
1440         pthread_rwlock_destroy;
1441         pthread_rwlock_init;
1442         pthread_rwlock_rdlock;
1443         pthread_rwlock_tryrdlock;
1444         pthread_rwlock_trywrlock;
1445         pthread_rwlock_unlock;
1446         pthread_rwlock_wrlock;
1447         pthread_setconcurrency;
1448         swprintf;
1449         swscanf;
1450         __sysconf_xpg5;
1451         vfwprintf;
1452         vswprintf;
1453         vwprintf;
1454         wcrtomb;
1455         wcsrtombs;
1456         wcsstr;
1457         wctob;
1458         wmemchr;
1459         wmemcmp;
1460         wmemcpy;
1461         wmemmove;
1462         wmemset;
1463         wprintf;
1464         wscanf;
1466 $if _ELF32
1467         select_large_fdset;
1468 $endif
1469 } SUNW_1.17;
1471 # The empty versions SUNW_1.2 through SUNW_1.17 must be preserved because
1472 # applications built on Solaris 2.6 Beta (when they did contain symbols)
1473 # may depend on them.  All symbol content for SunOS 5.6 is now in SUNW_1.1
1475 SYMBOL_VERSION SUNW_1.17 {
1476     protected:
1477         SUNW_1.17;
1478 } SUNW_1.16;
1480 SYMBOL_VERSION SUNW_1.16 {
1481     protected:
1482         SUNW_1.16;
1483 } SUNW_1.15;
1485 SYMBOL_VERSION SUNW_1.15 {
1486     protected:
1487         SUNW_1.15;
1488 } SUNW_1.14;
1490 SYMBOL_VERSION SUNW_1.14 {
1491     protected:
1492         SUNW_1.14;
1493 } SUNW_1.13;
1495 SYMBOL_VERSION SUNW_1.13 {
1496     protected:
1497         SUNW_1.13;
1498 } SUNW_1.12;
1500 SYMBOL_VERSION SUNW_1.12 {
1501     protected:
1502         SUNW_1.12;
1503 } SUNW_1.11;
1505 SYMBOL_VERSION SUNW_1.11 {
1506     protected:
1507         SUNW_1.11;
1508 } SUNW_1.10;
1510 SYMBOL_VERSION SUNW_1.10 {
1511     protected:
1512         SUNW_1.10;
1513 } SUNW_1.9;
1515 SYMBOL_VERSION SUNW_1.9 {
1516     protected:
1517         SUNW_1.9;
1518 } SUNW_1.8;
1520 SYMBOL_VERSION SUNW_1.8 {
1521     protected:
1522         SUNW_1.8;
1523 } SUNW_1.7;
1525 SYMBOL_VERSION SUNW_1.7 {
1526     protected:
1527         SUNW_1.7;
1528 } SUNW_1.6;
1530 SYMBOL_VERSION SUNW_1.6 {
1531     protected:
1532         SUNW_1.6;
1533 } SUNW_1.5;
1535 SYMBOL_VERSION SUNW_1.5 {
1536     protected:
1537         SUNW_1.5;
1538 } SUNW_1.4;
1540 SYMBOL_VERSION SUNW_1.4 {
1541     protected:
1542         SUNW_1.4;
1543 } SUNW_1.3;
1545 SYMBOL_VERSION SUNW_1.3 {
1546     protected:
1547         SUNW_1.3;
1548 } SUNW_1.2;
1550 SYMBOL_VERSION SUNW_1.2 {
1551     protected:
1552         SUNW_1.2;
1553 } SUNW_1.1;
1555 SYMBOL_VERSION SUNW_1.1 {       # SunOS 5.6 (Solaris 2.6)
1556     global:
1557         __loc1          {
1558                           ASSERT = {
1559                                   TYPE = OBJECT;
1560                                   SIZE = addrsize;
1561                                 };
1562                         };
1563     protected:
1564         basename;
1565         bindtextdomain;
1566         bsd_signal;
1567         dbm_clearerr;
1568         dbm_error;
1569         dcgettext;
1570         dgettext;
1571         directio;
1572         dirname;
1573         endusershell;
1574         _exithandle;
1575         fgetwc;
1576         fgetws;
1577         fpgetround;
1578         fpsetround;
1579         fputwc;
1580         fputws;
1581         fseeko;
1582         ftello;
1583         ftrylockfile;
1584         getexecname;
1585         _getexecname;
1586         getpassphrase;
1587         gettext;
1588         getusershell;
1589         getwc;
1590         getwchar;
1591         getws;
1592         isenglish;
1593         isideogram;
1594         isnumber;
1595         isphonogram;
1596         isspecial;
1597         iswalnum;
1598         iswalpha;
1599         iswcntrl;
1600         iswctype;
1601         iswdigit;
1602         iswgraph;
1603         iswlower;
1604         iswprint;
1605         iswpunct;
1606         iswspace;
1607         iswupper;
1608         iswxdigit;
1609         ____loc1;
1610         _longjmp;
1611         _lwp_sema_trywait;
1612         ntp_adjtime;
1613         _ntp_adjtime;
1614         ntp_gettime;
1615         _ntp_gettime;
1616         __posix_asctime_r;
1617         __posix_ctime_r;
1618         __posix_getgrgid_r;
1619         __posix_getgrnam_r;
1620         __posix_getlogin_r;
1621         __posix_getpwnam_r;
1622         __posix_getpwuid_r;
1623         __posix_sigwait;
1624         __posix_ttyname_r;
1625         pset_assign;
1626         pset_bind;
1627         pset_create;
1628         pset_destroy;
1629         pset_info;
1630         pthread_atfork;
1631         pthread_attr_destroy;
1632         pthread_attr_getdetachstate;
1633         pthread_attr_getinheritsched;
1634         pthread_attr_getschedparam;
1635         pthread_attr_getschedpolicy;
1636         pthread_attr_getscope;
1637         pthread_attr_getstackaddr;
1638         pthread_attr_getstacksize;
1639         pthread_attr_init;
1640         pthread_attr_setdetachstate;
1641         pthread_attr_setinheritsched;
1642         pthread_attr_setschedparam;
1643         pthread_attr_setschedpolicy;
1644         pthread_attr_setscope;
1645         pthread_attr_setstackaddr;
1646         pthread_attr_setstacksize;
1647         pthread_cancel;
1648         __pthread_cleanup_pop;
1649         __pthread_cleanup_push;
1650         pthread_create;
1651         pthread_detach;
1652         pthread_equal;
1653         pthread_exit;
1654         pthread_getschedparam;
1655         pthread_getspecific;
1656         pthread_join;
1657         pthread_key_create;
1658         pthread_key_delete;
1659         pthread_kill;
1660         pthread_once;
1661         pthread_self;
1662         pthread_setcancelstate;
1663         pthread_setcanceltype;
1664         pthread_setschedparam;
1665         pthread_setspecific;
1666         pthread_sigmask;
1667         pthread_testcancel;
1668         putwc;
1669         putwchar;
1670         putws;
1671         regcmp;
1672         regex;
1673         resolvepath;
1674         _resolvepath;
1675         rwlock_destroy          { FLAGS = NODYNSORT; };
1676         _rwlock_destroy         { FLAGS = NODYNSORT; };
1677         sema_destroy;
1678         _sema_destroy;
1679         _setjmp;
1680         setusershell;
1681         siginterrupt;
1682         sigstack;
1683         snprintf;
1684         strtows;
1685         sync_instruction_memory;
1686         textdomain;
1687         thr_main;
1688         towctrans;
1689         towlower;
1690         towupper;
1691         ungetwc;
1692         vsnprintf;
1693         watoll;
1694         wcscat;
1695         wcschr;
1696         wcscmp;
1697         wcscoll;
1698         wcscpy;
1699         wcscspn;
1700         wcsftime;
1701         wcslen;
1702         wcsncat;
1703         wcsncmp;
1704         wcsncpy;
1705         wcspbrk;
1706         wcsrchr;
1707         wcsspn;
1708         wcstod;
1709         wcstok;
1710         wcstol;
1711         wcstoul;
1712         wcswcs;
1713         wcswidth;
1714         wcsxfrm;
1715         wctrans;
1716         wctype;
1717         wcwidth;
1718         wscasecmp;
1719         wscat;
1720         wschr;
1721         wscmp;
1722         wscol;
1723         wscoll;
1724         wscpy;
1725         wscspn;
1726         wsdup;
1727         wslen;
1728         wsncasecmp;
1729         wsncat;
1730         wsncmp;
1731         wsncpy;
1732         wspbrk;
1733         wsprintf;
1734         wsrchr;
1735         wsscanf;
1736         wsspn;
1737         wstod;
1738         wstok;
1739         wstol;
1740         wstoll;
1741         wstostr;
1742         wsxfrm;
1743         __xpg4_putmsg;
1744         __xpg4_putpmsg;
1746 $if lf64
1747         creat64;
1748         _creat64;
1749         fgetpos64;
1750         fopen64;
1751         freopen64;
1752         fseeko64;
1753         fsetpos64;
1754         fstat64;
1755         _fstat64;
1756         fstatvfs64;
1757         _fstatvfs64;
1758         ftello64;
1759         ftruncate64;
1760         _ftruncate64;
1761         ftw64;
1762         _ftw64;
1763         getdents64;
1764         _getdents64;
1765         getrlimit64;
1766         _getrlimit64;
1767         lockf64;
1768         _lockf64;
1769         lseek64;
1770         _lseek64;
1771         lstat64;
1772         _lstat64;
1773         mkstemp64;
1774         _mkstemp64;
1775         mmap64;
1776         _mmap64;
1777         nftw64;
1778         _nftw64;
1779         open64;
1780         _open64;
1781         __posix_readdir_r;
1782         pread64;
1783         _pread64;
1784         pwrite64;
1785         _pwrite64;
1786         readdir64;
1787         _readdir64;
1788         readdir64_r;
1789         _readdir64_r;
1790         setrlimit64;
1791         _setrlimit64;
1792         s_fcntl;
1793         _s_fcntl        { FLAGS = NODYNSORT; };
1794         s_ioctl;
1795         stat64;
1796         _stat64;
1797         statvfs64;
1798         _statvfs64;
1799         tell64;
1800         _tell64;
1801         tmpfile64;
1802         truncate64;
1803         _truncate64;
1804         _xftw64;
1805 $endif
1807 $if _sparc
1808         __flt_rounds;
1809 $endif
1810 } SUNW_0.9;
1812 SYMBOL_VERSION SUNW_0.9 {       # SunOS 5.5 (Solaris 2.5)
1813     protected:
1814         acl;
1815         bcmp;
1816         bcopy;
1817         bzero;
1818         facl;
1819         ftime;
1820         getdtablesize;
1821         gethostid;
1822         gethostname;
1823         getpagesize;
1824         getpriority;
1825         getrusage;
1826         getwd;
1827         index;
1828         initstate;
1829         killpg;
1830         _nsc_trydoorcall;
1831         pthread_condattr_destroy;
1832         pthread_condattr_getpshared;
1833         pthread_condattr_init;
1834         pthread_condattr_setpshared;
1835         pthread_cond_broadcast;
1836         pthread_cond_destroy;
1837         pthread_cond_init;
1838         pthread_cond_signal;
1839         pthread_cond_timedwait;
1840         pthread_cond_wait;
1841         pthread_mutexattr_destroy;
1842         pthread_mutexattr_getprioceiling;
1843         pthread_mutexattr_getprotocol;
1844         pthread_mutexattr_getpshared;
1845         pthread_mutexattr_init;
1846         pthread_mutexattr_setprioceiling;
1847         pthread_mutexattr_setprotocol;
1848         pthread_mutexattr_setpshared;
1849         pthread_mutex_destroy;
1850         pthread_mutex_getprioceiling;
1851         pthread_mutex_init;
1852         pthread_mutex_lock;
1853         pthread_mutex_setprioceiling;
1854         pthread_mutex_trylock;
1855         pthread_mutex_unlock;
1856         random;
1857         reboot;
1858         re_comp;
1859         re_exec;
1860         rindex;
1861         setbuffer;
1862         sethostname;
1863         setlinebuf;
1864         setpriority;
1865         setregid;
1866         setreuid;
1867         setstate;
1868         srandom;
1869         thr_min_stack;
1870         thr_stksegment;
1871         ualarm;
1872         usleep;
1873         wait3;
1874         wait4;
1875 } SUNW_0.8;
1877 SYMBOL_VERSION SUNW_0.8 {       # SunOS 5.4 (Solaris 2.4)
1878     global:
1879         __xpg4          {
1880                           ASSERT = {
1881                                   TYPE = OBJECT;
1882                                   SIZE = 4;
1883                                 };
1884                           FLAGS = NODIRECT;
1885                         };
1886     protected:
1887         addsev;
1888         cond_broadcast  { FLAGS = NODYNSORT; };
1889         cond_destroy    { FLAGS = NODYNSORT; };
1890         cond_init;
1891         cond_signal     { FLAGS = NODYNSORT; };
1892         cond_timedwait;
1893         cond_wait;
1894         confstr;
1895         fnmatch;
1896         _getdate_err_addr;
1897         glob;
1898         globfree;
1899         iconv;
1900         iconv_close;
1901         iconv_open;
1902         lfmt;
1903         mutex_destroy   { FLAGS = NODYNSORT; };
1904         mutex_init;
1905         mutex_lock      { FLAGS = NODYNSORT; };
1906         mutex_trylock   { FLAGS = NODYNSORT; };
1907         mutex_unlock    { FLAGS = NODYNSORT; };
1908         pfmt;
1909         regcomp;
1910         regerror;
1911         regexec;
1912         regfree;
1913         rwlock_init;
1914         rw_rdlock       { FLAGS = NODYNSORT; };
1915         rw_read_held;
1916         rw_tryrdlock    { FLAGS = NODYNSORT; };
1917         rw_trywrlock    { FLAGS = NODYNSORT; };
1918         rw_unlock       { FLAGS = NODYNSORT; };
1919         rw_write_held;
1920         rw_wrlock       { FLAGS = NODYNSORT; };
1921         sema_held;
1922         sema_init;
1923         sema_post;
1924         sema_trywait;
1925         sema_wait;
1926         setcat;
1927         sigfpe;
1928         strfmon;
1929         strptime;
1930         thr_continue;
1931         thr_create;
1932         thr_exit;
1933         thr_getconcurrency;
1934         thr_getprio;
1935         thr_getspecific;
1936         thr_join;
1937         thr_keycreate;
1938         thr_kill;
1939         thr_self        { FLAGS = NODYNSORT; };
1940         thr_setconcurrency;
1941         thr_setprio;
1942         thr_setspecific;
1943         thr_sigsetmask;
1944         thr_suspend;
1945         thr_yield;
1946         vlfmt;
1947         vpfmt;
1948         wordexp;
1949         wordfree;
1950 } SUNW_0.7;
1952 SYMBOL_VERSION SUNW_0.7 {       # SunOS 5.3 (Solaris 2.3)
1953     global:
1954         altzone                 {
1955                                   ASSERT = {
1956                                           TYPE = OBJECT;
1957                                           SIZE = addrsize;
1958                                         };
1959                                 };
1960         _ctype                  {
1961                                   ASSERT = {
1962                                           BINDING = WEAK;
1963                                           ALIAS = __ctype;
1964                                         };
1965                                 };
1966         isnanf                  { TYPE = FUNCTION; FILTER = libm.so.2; };
1967         lone                    { ASSERT = { TYPE = OBJECT; SIZE = 8; }; };
1968         lten                    { ASSERT = { TYPE = OBJECT; SIZE = 8; }; };
1969         lzero                   { ASSERT = { TYPE = OBJECT; SIZE = 8; }; };
1970         memalign                { FLAGS = NODIRECT; };
1971         modff                   { TYPE = FUNCTION; FILTER = libm.so.2; };
1972         nss_default_finders     {
1973                                   ASSERT = {
1974                                           TYPE = OBJECT;
1975                                           SIZE = addrsize;
1976                                         };
1977                                 };
1978         _sibuf                  {
1979                                   ASSERT = {
1980                                           TYPE = OBJECT;
1981                                           SIZE = 1032;
1982                                         };
1983                                 };
1984         _sobuf                  {
1985                                   ASSERT = {
1986                                           TYPE = OBJECT;
1987                                           SIZE = 1032;
1988                                         };
1989                                 };
1990         _sys_buslist            {
1991                                   ASSERT = {
1992                                           TYPE = OBJECT;
1993                                           SIZE = addrsize[3];
1994                                         };
1995                                 };
1996         _sys_cldlist            {
1997                                   ASSERT = {
1998                                           TYPE = OBJECT;
1999                                           SIZE = addrsize[6];
2000                                         };
2001                                 };
2002 $if _x86
2003         _sys_fpelist            {
2004                                   ASSERT = {
2005                                           TYPE = OBJECT;
2006                                           SIZE = addrsize[9];
2007                                         };
2008                                 };
2009 $else
2010         _sys_fpelist            {
2011                                   ASSERT = {
2012                                           TYPE = OBJECT;
2013                                           SIZE = addrsize[8];
2014                                         };
2015                                 };
2016 $endif
2017         _sys_illlist            {
2018                                   ASSERT = {
2019                                           TYPE = OBJECT;
2020                                           SIZE = addrsize[8];
2021                                         };
2022                                 };
2023         _sys_segvlist           {
2024                                   ASSERT = {
2025                                           TYPE = OBJECT;
2026                                           SIZE = addrsize[2];
2027                                         };
2028                                 };
2029         _sys_siginfolistp       {
2030                                   ASSERT = {
2031                                           TYPE = OBJECT;
2032                                           SIZE = addrsize;
2033                                         };
2034                                 };
2035         _sys_siglist            {
2036                                   ASSERT = {
2037                                           TYPE = OBJECT;
2038                                           SIZE = addrsize[34];
2039                                         };
2040                                 };
2041         _sys_siglistn           {
2042                                   ASSERT = {
2043                                           TYPE = OBJECT;
2044                                           SIZE = 4;
2045                                         };
2046                                 };
2047         _sys_siglistp           {
2048                                   ASSERT = {
2049                                           TYPE = OBJECT;
2050                                           SIZE = addrsize;
2051                                         };
2052                                 };
2053         _sys_traplist           {
2054                                   ASSERT = {
2055                                           TYPE = OBJECT;
2056                                           SIZE = addrsize[6];
2057                                         };
2058                                 };
2059         valloc                  { FLAGS = NODIRECT; };
2061 $if _ELF32
2062 $if _x86
2063         _bufendtab              {
2064                                   ASSERT = {
2065                                           TYPE = OBJECT;
2066                                           SIZE = 244;
2067                                         };
2068                                 };
2069 $else
2070         _bufendtab              {
2071                                   ASSERT = {
2072                                           TYPE = OBJECT;
2073                                           SIZE = 84;
2074                                         };
2075                                 };
2076 $endif
2077         _lastbuf                {
2078                                   ASSERT = {
2079                                           TYPE = OBJECT;
2080                                           SIZE = 4;
2081                                         };
2082                                 };
2083         sys_errlist             {
2084                                   ASSERT = {
2085                                           TYPE = OBJECT;
2086                                           SIZE = 608;
2087                                         };
2088                                 };
2089         sys_nerr                {
2090                                   ASSERT = {
2091                                           BINDING = WEAK;
2092                                           ALIAS = _sys_num_err;
2093                                         };
2094                                 };
2095         _sys_nsig               {
2096                                   ASSERT = {
2097                                           TYPE = OBJECT;
2098                                           SIZE = 4;
2099                                         };
2100                                 };
2101 $endif
2103     protected:
2104         a64l;
2105         adjtime;
2106         ascftime;
2107         _assert;
2108         atoll;
2109         brk;
2110         __builtin_alloca;
2111         cftime;
2112         closelog;
2113         csetcol;
2114         csetlen;
2115         ctermid_r;
2116         dbm_close;
2117         dbm_delete;
2118         dbm_fetch;
2119         dbm_firstkey;
2120         dbm_nextkey;
2121         dbm_open;
2122         dbm_store;
2123         decimal_to_double;
2124         decimal_to_extended;
2125         decimal_to_quadruple;
2126         decimal_to_single;
2127         double_to_decimal;
2128         drand48;
2129         econvert;
2130         ecvt;
2131         endnetgrent;
2132         endspent;
2133         endutent;
2134         endutxent;
2135         erand48;
2136         euccol;
2137         euclen;
2138         eucscol;
2139         extended_to_decimal;
2140         fchroot;
2141         fconvert;
2142         fcvt;
2143         ffs;
2144         fgetspent;
2145         fgetspent_r;
2146         _filbuf;
2147         file_to_decimal;
2148         finite;
2149         _flsbuf;
2150         fork1                   { FLAGS = NODYNSORT; };
2151         fpclass;
2152         fpgetmask;
2153         fpgetsticky;
2154         fpsetmask;
2155         fpsetsticky;
2156         fstatfs;
2157         ftruncate;
2158         ftw;
2159         func_to_decimal;
2160         gconvert;
2161         gcvt;
2162         getdents;
2163         gethrtime;
2164         gethrvtime;
2165         getmntany;
2166         getmntent;
2167         getnetgrent;
2168         getnetgrent_r;
2169         getpw;
2170         getspent;
2171         getspent_r;
2172         getspnam;
2173         getspnam_r;
2174         getutent;
2175         getutid;
2176         getutline;
2177         getutmp;
2178         getutmpx;
2179         getutxent;
2180         getutxid;
2181         getutxline;
2182         getvfsany;
2183         getvfsent;
2184         getvfsfile;
2185         getvfsspec;
2186         getwidth;
2187         gsignal;
2188         hasmntopt;
2189         innetgr;
2190         insque;
2191         _insque;
2192         jrand48;
2193         l64a;
2194         ladd;
2195         lckpwdf;
2196         lcong48;
2197         ldivide;
2198         lexp10;
2199         llabs;
2200         lldiv;
2201         llog10;
2202         llseek;
2203         lltostr;
2204         lmul;
2205         lrand48;
2206         lshiftl;
2207         lsub;
2208         _lwp_cond_broadcast;
2209         _lwp_cond_signal;
2210         _lwp_cond_timedwait;
2211         _lwp_cond_wait;
2212         _lwp_continue;
2213         _lwp_info;
2214         _lwp_kill;
2215         _lwp_mutex_lock;
2216         _lwp_mutex_trylock;
2217         _lwp_mutex_unlock;
2218         _lwp_self;
2219         _lwp_sema_init;
2220         _lwp_sema_post;
2221         _lwp_sema_wait;
2222         _lwp_suspend;
2223         madvise;
2224         __major;
2225         __makedev;
2226         mincore;
2227         __minor;
2228         mkstemp;
2229         _mkstemp;
2230         mlockall;
2231         mrand48;
2232         munlockall;
2233         _mutex_held             { FLAGS = NODYNSORT; };
2234         _mutex_lock             { FLAGS = NODYNSORT; };
2235         nrand48;
2236         _nss_netdb_aliases;
2237         _nss_XbyY_buf_alloc;
2238         _nss_XbyY_buf_free;
2239         __nsw_extended_action;
2240         __nsw_freeconfig;
2241         __nsw_getconfig;
2242         openlog;
2243         plock;
2244         p_online;
2245         pread;
2246         __priocntl;
2247         __priocntlset;
2248         processor_bind;
2249         processor_info;
2250         psiginfo;
2251         psignal;
2252         putpwent;
2253         putspent;
2254         pututline;
2255         pututxline;
2256         pwrite;
2257         qeconvert;
2258         qecvt;
2259         qfconvert;
2260         qfcvt;
2261         qgconvert;
2262         qgcvt;
2263         quadruple_to_decimal;
2264         realpath;
2265         remque;
2266         _remque;
2267         _rw_read_held;
2268         _rw_write_held;
2269         seconvert;
2270         seed48;
2271         select;
2272         _sema_held;
2273         setegid;
2274         seteuid;
2275         setlogmask;
2276         setnetgrent;
2277         setspent;
2278         settimeofday;
2279         setutent;
2280         setutxent;
2281         sfconvert;
2282         sgconvert;
2283         sig2str;
2284         sigwait;
2285         single_to_decimal;
2286         srand48;
2287         ssignal;
2288         statfs;
2289         str2sig;
2290         strcasecmp;
2291         string_to_decimal;
2292         strncasecmp;
2293         strsignal;
2294         strtoll;
2295         strtoull;
2296         swapctl;
2297         _syscall;
2298         sysfs;
2299         syslog;
2300         _syslog;
2301         tmpnam_r;
2302         truncate;
2303         ttyslot;
2304         uadmin;
2305         ulckpwdf;
2306         ulltostr;
2307         unordered;
2308         updwtmp;
2309         updwtmpx;
2310         ustat;
2311         utimes;
2312         utmpname;
2313         utmpxname;
2314         vfork;
2315         vhangup;
2316         vsyslog;
2317         yield;
2318 $if i386
2319         # Note: _syscall is also defined above.  Here, we add the NODYNSORT
2320         # attribute to it.  On this platform, _syscall is an alias to syscall
2321         # If that is changed, this lines should be removed.
2322         _syscall        { FLAGS = NODYNSORT; };
2323 $endif
2325         # The 32-bit sparc ABI requires SISCD_2.3. On other platforms, those symbols
2326         # go directly into SUNW_0.7.
2327 $if sparc32
2328 } SISCD_2.3;
2330 SYMBOL_VERSION SISCD_2.3 {
2331 $endif
2333     global:
2334         errno           {
2335                           ASSERT = {
2336                                   TYPE = OBJECT;
2337                                   SIZE = 4;
2338                                 };
2339                           FLAGS = NODIRECT;
2340                         };
2342 $if _ELF64
2343         _iob            { ASSERT = { TYPE = OBJECT; SIZE = 2560; }; };
2344 $elif _ELF32
2345 $if _x86
2346         _iob            { ASSERT = { TYPE = OBJECT; SIZE = 960; }; };
2347 $else
2348         _iob            { ASSERT = { TYPE = OBJECT; SIZE = 320; }; };
2349 $endif
2350 $else
2351 $error unknown ELFCLASS
2352 $endif
2354     protected:
2355         addseverity;
2356         _addseverity;
2357         asctime_r;
2358         crypt;
2359         _crypt;
2360         ctime_r;
2361         encrypt;
2362         _encrypt;
2363         endgrent;
2364         endpwent;
2365         ___errno;
2366         fgetgrent;
2367         fgetgrent_r;
2368         fgetpwent;
2369         fgetpwent_r;
2370         flockfile;
2371         funlockfile;
2372         getchar_unlocked;
2373         getc_unlocked;
2374         getgrent;
2375         getgrent_r;
2376         getgrgid_r;
2377         getgrnam_r;
2378         getitimer;
2379         _getitimer;
2380         getlogin_r;
2381         getpwent;
2382         getpwent_r;
2383         getpwnam_r;
2384         getpwuid_r;
2385         gettimeofday;
2386         _gettimeofday;
2387         gmtime_r;
2388         localtime_r;
2389         putchar_unlocked;
2390         putc_unlocked;
2391         rand_r;
2392         readdir_r;
2393         setgrent;
2394         setitimer;
2395         _setitimer;
2396         setkey;
2397         _setkey;
2398         setpwent;
2399         strtok_r;
2400         sysinfo;
2401         _sysinfo;
2402         ttyname_r;
2404 $if _ELF32
2405         __div64;
2406         __mul64;
2407         __rem64;
2408         __udiv64;
2409         __urem64;
2410 $endif
2412 $if sparc32
2413         __dtoll;
2414         __dtoull;
2415         __ftoll;
2416         __ftoull;
2417         _Q_lltoq;
2418         _Q_qtoll;
2419         _Q_qtoull;
2420         _Q_ulltoq;
2421         sbrk;
2422         _sbrk;
2423         __umul64        { FLAGS = NODYNSORT; }; # Same address as __mul64
2424 $endif
2426         # On 32-bit platforms, the following symbols go into SYSVABI_1.3, but
2427         # on other platforms they go directly into the current version (which
2428         # will be either SUNW_0.7, or SISCD_2.3, depending on the similar
2429         # issue described above.
2430 $if _ELF32
2431 } SYSVABI_1.3;
2433 SYMBOL_VERSION SYSVABI_1.3 {
2434 $endif
2436     global:
2437         _altzone        { ASSERT = { BINDING = WEAK; ALIAS = altzone; }; };
2438         calloc          { FLAGS = NODIRECT; };
2439         __ctype         {
2440                           ASSERT = {
2441                                   TYPE = OBJECT;
2442                                   SIZE = 521;
2443                                 };
2444                         };
2445         daylight        { ASSERT = { TYPE = OBJECT; SIZE = 4; }; };
2446         _daylight       { ASSERT = { BINDING = WEAK; ALIAS = daylight; }; };
2447         environ         {
2448                           ASSERT = {
2449                                   BINDING = WEAK;
2450                                   ALIAS = _environ;
2451                                 };
2452                           FLAGS = NODIRECT;
2453                         };
2454         _environ        {
2455                           ASSERT = {
2456                                   TYPE = OBJECT;
2457                                   SIZE = addrsize;
2458                                 };
2459                           FLAGS = NODIRECT;
2460                         };
2461         free            { FLAGS = NODIRECT; };
2462         frexp           { TYPE = FUNCTION; FILTER = libm.so.2; };
2463         getdate_err     { ASSERT = { TYPE = OBJECT; SIZE = 4; }; };
2464         _getdate_err    {
2465                           ASSERT = {
2466                                   BINDING = WEAK;
2467                                   ALIAS = getdate_err;
2468                                 };
2469                         };
2470         getenv;
2471         __huge_val      { ASSERT = { TYPE = OBJECT; SIZE = 8; }; };
2472         __iob           { ASSERT = { BINDING = WEAK; ALIAS = _iob; }; };
2473         isnan           { TYPE = FUNCTION; FILTER = libm.so.2; };
2474         _isnan          { TYPE = FUNCTION; FILTER = libm.so.2; };
2475         isnand          { TYPE = FUNCTION; FILTER = libm.so.2; };
2476         _isnand         { TYPE = FUNCTION; FILTER = libm.so.2; };
2477         ldexp           { TYPE = FUNCTION; FILTER = libm.so.2; };
2478         logb            { TYPE = FUNCTION; FILTER = libm.so.2; };
2479         malloc          { FLAGS = NODIRECT; };
2480         memcmp;
2481         memcpy;
2482         memmove;
2483         memset;
2484         modf            { TYPE = FUNCTION; FILTER = libm.so.2; };
2485         _modf           { TYPE = FUNCTION; FILTER = libm.so.2; };
2486         nextafter       { TYPE = FUNCTION; FILTER = libm.so.2; };
2487         _nextafter      { TYPE = FUNCTION; FILTER = libm.so.2; };
2488         _numeric        { ASSERT = { TYPE = OBJECT; SIZE = 2; }; };
2489         optarg          {
2490                           ASSERT = {
2491                                   TYPE = OBJECT;
2492                                   SIZE = addrsize;
2493                                 };
2494                         };
2495         opterr          { ASSERT = { TYPE = OBJECT; SIZE = 4; }; };
2496         optind          { ASSERT = { TYPE = OBJECT; SIZE = 4; }; };
2497         optopt          { ASSERT = { TYPE = OBJECT; SIZE = 4; }; };
2498         realloc         { FLAGS = NODIRECT; };
2499         scalb           { TYPE = FUNCTION; FILTER = libm.so.2; };
2500         _scalb          { TYPE = FUNCTION; FILTER = libm.so.2; };
2501         timezone        {
2502                           ASSERT = {
2503                                   TYPE = OBJECT;
2504                                   SIZE = addrsize;
2505                                 };
2506                         };
2507         _timezone       { ASSERT = { BINDING = WEAK; ALIAS = timezone; }; };
2508         tzname          {
2509                           ASSERT = {
2510                                   TYPE = OBJECT;
2511                                   SIZE = addrsize[2];
2512                                 };
2513                         };
2514         _tzname         {
2515                           ASSERT = {
2516                                   BINDING = WEAK;
2517                                   ALIAS = tzname;
2518                                 };
2519                         };
2520 $if i386
2521         _fp_hw          { ASSERT = { TYPE = OBJECT; SIZE = 4; }; };
2522 $endif
2524     protected:
2525         abort;
2526         abs;
2527         access;
2528         _access;
2529         acct;
2530         _acct;
2531         alarm;
2532         _alarm;
2533         asctime;
2534         __assert;
2535         atexit;
2536         atof;
2537         atoi;
2538         atol;
2539         bsearch;
2540         catclose;
2541         _catclose;
2542         catgets;
2543         _catgets;
2544         catopen;
2545         _catopen;
2546         cfgetispeed;
2547         _cfgetispeed;
2548         cfgetospeed;
2549         _cfgetospeed;
2550         cfsetispeed;
2551         _cfsetispeed;
2552         cfsetospeed;
2553         _cfsetospeed;
2554         chdir;
2555         _chdir;
2556         chmod;
2557         _chmod;
2558         chown;
2559         _chown;
2560         chroot;
2561         _chroot;
2562         _cleanup;
2563         clearerr;
2564         clock;
2565         close;
2566         _close;
2567         closedir;
2568         _closedir;
2569         creat;
2570         _creat;
2571         ctermid;
2572         ctime;
2573         cuserid;
2574         _cuserid;
2575         difftime;
2576         div;
2577         dup;
2578         _dup;
2579         dup2;
2580         _dup2;
2581         execl;
2582         _execl;
2583         execle;
2584         _execle;
2585         execlp;
2586         _execlp;
2587         execv;
2588         _execv;
2589         execve;
2590         _execve;
2591         execvp;
2592         _execvp;
2593         exit;
2594         _exit;
2595         fattach;
2596         _fattach;
2597         fchdir;
2598         _fchdir;
2599         fchmod;
2600         _fchmod;
2601         fchown;
2602         _fchown;
2603         fclose;
2604         fcntl;
2605         _fcntl;
2606         fdetach;
2607         _fdetach;
2608         fdopen;
2609         _fdopen;
2610         feof;
2611         ferror;
2612         fflush;
2613         fgetc;
2614         fgetpos;
2615         fgets;
2616         __filbuf;
2617         fileno;
2618         _fileno;
2619         __flsbuf;
2620         fmtmsg;
2621         _fmtmsg;
2622         fopen;
2623         _fork;
2624         fork;
2625         fpathconf;
2626         _fpathconf;
2627         fprintf;
2628         fputc;
2629         fputs;
2630         fread;
2631         freopen;
2632         fscanf;
2633         fseek;
2634         fsetpos;
2635         fstat;
2636         _fstat;
2637         fstatvfs;
2638         _fstatvfs;
2639         fsync;
2640         _fsync;
2641         ftell;
2642         ftok;
2643         _ftok;
2644         fwrite;
2645         getc;
2646         getchar;
2647         getcontext;
2648         _getcontext;
2649         getcwd;
2650         _getcwd;
2651         getdate;
2652         _getdate;
2653         getegid;
2654         _getegid;
2655         geteuid;
2656         _geteuid;
2657         getgid;
2658         _getgid;
2659         getgrgid;
2660         getgrnam;
2661         getgroups;
2662         _getgroups;
2663         getlogin;
2664         getmsg;
2665         _getmsg;
2666         getopt;
2667         _getopt;
2668         getpass;
2669         _getpass;
2670         getpgid;
2671         _getpgid;
2672         getpgrp;
2673         _getpgrp;
2674         getpid;
2675         _getpid;
2676         getpmsg;
2677         _getpmsg;
2678         getppid;
2679         _getppid;
2680         getpwnam;
2681         getpwuid;
2682         getrlimit;
2683         _getrlimit;
2684         gets;
2685         getsid;
2686         _getsid;
2687         getsubopt;
2688         _getsubopt;
2689         gettxt;
2690         _gettxt;
2691         getuid;
2692         _getuid;
2693         getw;
2694         _getw;
2695         gmtime;
2696         grantpt;
2697         _grantpt;
2698         hcreate;
2699         _hcreate;
2700         hdestroy;
2701         _hdestroy;
2702         hsearch;
2703         _hsearch;
2704         initgroups;
2705         _initgroups;
2706         ioctl;
2707         _ioctl;
2708         isalnum;
2709         isalpha;
2710         isascii;
2711         _isascii;
2712         isastream;
2713         _isastream;
2714         isatty;
2715         _isatty;
2716         iscntrl;
2717         isdigit;
2718         isgraph;
2719         islower;
2720         isprint;
2721         ispunct;
2722         isspace;
2723         isupper;
2724         isxdigit;
2725         kill;
2726         _kill;
2727         labs;
2728         lchown;
2729         _lchown;
2730         ldiv;
2731         lfind;
2732         _lfind;
2733         link;
2734         _link;
2735         localeconv;
2736         localtime;
2737         lockf;
2738         _lockf;
2739         longjmp;
2740         lsearch;
2741         _lsearch;
2742         lseek;
2743         _lseek;
2744         lstat;
2745         _lstat;
2746         makecontext;
2747         _makecontext;
2748         mblen;
2749         mbstowcs;
2750         mbtowc;
2751         memccpy;
2752         _memccpy;
2753         memchr;
2754         memcntl;
2755         _memcntl;
2756         mkdir;
2757         _mkdir;
2758         mkfifo;
2759         _mkfifo;
2760         mknod;
2761         _mknod;
2762         mktemp;
2763         _mktemp;
2764         mktime;
2765         mlock;
2766         _mlock;
2767         mmap;
2768         _mmap;
2769         monitor;
2770         _monitor;
2771         mount;
2772         _mount;
2773         mprotect;
2774         _mprotect;
2775         msgctl;
2776         _msgctl;
2777         msgget;
2778         _msgget;
2779         msgrcv;
2780         _msgrcv;
2781         msgsnd;
2782         _msgsnd;
2783         msync;
2784         _msync;
2785         munlock;
2786         _munlock;
2787         munmap;
2788         _munmap;
2789         nftw;
2790         _nftw;
2791         nice;
2792         _nice;
2793         nl_langinfo;
2794         _nl_langinfo;
2795         open;
2796         _open;
2797         opendir;
2798         _opendir;
2799         pathconf;
2800         _pathconf;
2801         pause;
2802         _pause;
2803         pclose;
2804         _pclose;
2805         perror;
2806         pipe;
2807         _pipe;
2808         poll;
2809         _poll;
2810         popen;
2811         _popen;
2812         printf;
2813         profil;
2814         _profil;
2815         ptsname;
2816         _ptsname;
2817         putc;
2818         putchar;
2819         putenv;
2820         _putenv;
2821         putmsg;
2822         _putmsg;
2823         putpmsg;
2824         _putpmsg;
2825         puts;
2826         putw;
2827         _putw;
2828         qsort;
2829         raise;
2830         rand;
2831         read;
2832         _read;
2833         readdir;
2834         _readdir;
2835         readlink;
2836         _readlink;
2837         readv;
2838         _readv;
2839         remove;
2840         rename;
2841         _rename;
2842         rewind;
2843         rewinddir;
2844         _rewinddir;
2845         rmdir;
2846         _rmdir;
2847         scanf;
2848         seekdir;
2849         _seekdir;
2850         semctl;
2851         _semctl;
2852         semget;
2853         _semget;
2854         semop;
2855         _semop;
2856         setbuf;
2857         setcontext;
2858         _setcontext     { FLAGS = NODYNSORT; };
2859         setgid;
2860         _setgid;
2861         setgroups;
2862         _setgroups;
2863         setjmp;
2864         setlabel;
2865         setlocale;
2866         setpgid;
2867         _setpgid;
2868         setpgrp;
2869         _setpgrp;
2870         setrlimit;
2871         _setrlimit;
2872         setsid;
2873         _setsid;
2874         setuid;
2875         _setuid;
2876         setvbuf;
2877         shmat;
2878         _shmat;
2879         shmctl;
2880         _shmctl;
2881         shmdt;
2882         _shmdt;
2883         shmget;
2884         _shmget;
2885         sigaction;
2886         _sigaction      { FLAGS = NODYNSORT; };
2887         sigaddset;
2888         _sigaddset;
2889         sigaltstack;
2890         _sigaltstack;
2891         sigdelset;
2892         _sigdelset;
2893         sigemptyset;
2894         _sigemptyset;
2895         sigfillset;
2896         _sigfillset;
2897         sighold;
2898         _sighold;
2899         sigignore;
2900         _sigignore;
2901         sigismember;
2902         _sigismember;
2903         siglongjmp;
2904         _siglongjmp;
2905         signal;
2906         sigpause;
2907         _sigpause;
2908         sigpending;
2909         _sigpending;
2910         sigprocmask;
2911         _sigprocmask;
2912         sigrelse;
2913         _sigrelse;
2914         sigsend;
2915         _sigsend;
2916         sigsendset;
2917         _sigsendset;
2918         sigset;
2919         _sigset;
2920         sigsetjmp;
2921         _sigsetjmp      { FLAGS = NODYNSORT; };
2922         sigsuspend;
2923         _sigsuspend;
2924         sleep;
2925         _sleep;
2926         sprintf;
2927         srand;
2928         sscanf;
2929         stat;
2930         _stat;
2931         statvfs;
2932         _statvfs;
2933         stime;
2934         _stime;
2935         strcat;
2936         strchr;
2937         strcmp;
2938         strcoll;
2939         strcpy;
2940         strcspn;
2941         strdup;
2942         _strdup;
2943         strerror;
2944         strftime;
2945         strlen;
2946         strncat;
2947         strncmp;
2948         strncpy;
2949         strpbrk;
2950         strrchr;
2951         strspn;
2952         strstr;
2953         strtod;
2954         strtok;
2955         strtol;
2956         strtoul;
2957         strxfrm;
2958         swab;
2959         _swab;
2960         swapcontext;
2961         _swapcontext;
2962         symlink;
2963         _symlink;
2964         sync;
2965         _sync;
2966         sysconf;
2967         _sysconf;
2968         system;
2969         tcdrain;
2970         _tcdrain;
2971         tcflow;
2972         _tcflow;
2973         tcflush;
2974         _tcflush;
2975         tcgetattr;
2976         _tcgetattr;
2977         tcgetpgrp;
2978         _tcgetpgrp;
2979         tcgetsid;
2980         _tcgetsid;
2981         tcsendbreak;
2982         _tcsendbreak;
2983         tcsetattr;
2984         _tcsetattr;
2985         tcsetpgrp;
2986         _tcsetpgrp;
2987         tdelete;
2988         _tdelete;
2989         tell;
2990         _tell;
2991         telldir;
2992         _telldir;
2993         tempnam;
2994         _tempnam;
2995         tfind;
2996         _tfind;
2997         time;
2998         _time;
2999         times;
3000         _times;
3001         tmpfile;
3002         tmpnam;
3003         toascii;
3004         _toascii;
3005         tolower;
3006         _tolower;
3007         toupper;
3008         _toupper;
3009         tsearch;
3010         _tsearch;
3011         ttyname;
3012         twalk;
3013         _twalk;
3014         tzset;
3015         _tzset;
3016         ulimit;
3017         _ulimit;
3018         umask;
3019         _umask;
3020         umount;
3021         _umount;
3022         uname;
3023         _uname;
3024         ungetc;
3025         unlink;
3026         _unlink;
3027         unlockpt;
3028         _unlockpt;
3029         utime;
3030         _utime;
3031         vfprintf;
3032         vprintf;
3033         vsprintf;
3034         wait;
3035         _wait;
3036         waitid;
3037         _waitid;
3038         waitpid;
3039         _waitpid;
3040         wcstombs;
3041         wctomb;
3042         write;
3043         _write;
3044         writev;
3045         _writev;
3046         _xftw;
3048 $if _ELF32
3049         ptrace;
3050         _ptrace;
3051 $endif
3053 $if i386
3054         _fxstat;
3055         _lxstat;
3056         nuname;
3057         _nuname;
3058         _xmknod;
3059         _xstat;
3060 $endif
3062 $if !sparc32
3063         sbrk;
3064 $endif
3066 $if _sparc
3067         __dtou;
3068         __ftou;
3069 $endif
3071 $if sparc32
3072         .div;
3073         .mul;
3074         .rem;
3075         .stret1;
3076         .stret2;
3077         .stret4;
3078         # .stret4 and .stret8 are the same thing
3079         .stret8         { FLAGS = NODYNSORT; };
3080         .udiv;
3081         .umul;
3082         .urem;
3083         _Q_add;
3084         _Q_cmp;
3085         _Q_cmpe;
3086         _Q_div;
3087         _Q_dtoq;
3088         _Q_feq;
3089         _Q_fge;
3090         _Q_fgt;
3091         _Q_fle;
3092         _Q_flt;
3093         _Q_fne;
3094         _Q_itoq;
3095         _Q_mul;
3096         _Q_neg;
3097         _Q_qtod;
3098         _Q_qtoi;
3099         _Q_qtos;
3100         _Q_qtou;
3101         _Q_sqrt;
3102         _Q_stoq;
3103         _Q_sub;
3104         _Q_utoq;
3105 $endif
3107 $if sparcv9
3108         # __align_cpy_1 is an alias for memcpy. Filter it out of
3109         # the .SUNW_dynsymsort section
3110         __align_cpy_1   { FLAGS = NODYNSORT; };
3111         __align_cpy_16;
3112         __align_cpy_2;
3113         __align_cpy_4;
3114         # __align_cpy_8 is same as __align_cpy_16
3115         __align_cpy_8   { FLAGS = NODYNSORT; };
3116         __dtoul;
3117         __ftoul;
3118         _Qp_add;
3119         _Qp_cmp;
3120         _Qp_cmpe;
3121         _Qp_div;
3122         _Qp_dtoq;
3123         _Qp_feq;
3124         _Qp_fge;
3125         _Qp_fgt;
3126         _Qp_fle;
3127         _Qp_flt;
3128         _Qp_fne;
3129         _Qp_itoq;
3130         _Qp_mul;
3131         _Qp_neg;
3132         _Qp_qtod;
3133         _Qp_qtoi;
3134         _Qp_qtos;
3135         _Qp_qtoui;
3136         _Qp_qtoux;
3137         _Qp_qtox;
3138         _Qp_sqrt;
3139         _Qp_stoq;
3140         _Qp_sub;
3141         _Qp_uitoq;
3142         _Qp_uxtoq;
3143         _Qp_xtoq;
3144         __sparc_utrap_install;
3145 $endif
3147         # On amd64, we also have SYSVABI_1.3, but it contains a small subset of
3148         # the symbols put in that version on other platforms.
3149 $if amd64
3150 } SYSVABI_1.3;
3152 SYMBOL_VERSION SYSVABI_1.3 {
3153 $endif
3154     global:
3155 $if !_sparc
3156         __flt_rounds    { ASSERT = { TYPE = OBJECT; SIZE = 4; }; };
3157 $endif
3159     protected:
3160         _ctermid;
3161         _getgrgid;
3162         _getgrnam;
3163         _getlogin;
3164         _getpwnam;
3165         _getpwuid;
3166         _ttyname;
3168 $if !sparc32
3169         _sbrk;
3170 $endif
3172 $if _x86
3173         _fpstart;
3174         __fpstart;
3175 $endif
3180 # There should never be more than one SUNWprivate version.
3181 # Don't add any more.  Add new private symbols to SUNWprivate_1.1
3183 SYMBOL_VERSION SUNWprivate_1.1 {
3184     global:
3185         ___Argv                 {
3186                                   FLAGS = NODIRECT;
3187                                   ASSERT = {
3188                                           TYPE = OBJECT;
3189                                           SIZE = addrsize;
3190                                         };
3191                                 };
3192         cfree                   { FLAGS = NODIRECT; };
3193         _cswidth                {
3194                                   ASSERT = {
3195                                           TYPE = OBJECT;
3196                                           SIZE = 16;
3197                                         };
3198                                 };
3199         __ctype_mask            {
3200                                   ASSERT = {
3201                                           TYPE = OBJECT;
3202                                           SIZE = addrsize;
3203                                         };
3204                                 };
3205         __environ_lock          {
3206                                   FLAGS = NODIRECT;
3207                                   ASSERT = {
3208                                           TYPE = OBJECT;
3209                                           SIZE = 24;
3210                                         };
3211                                 };
3212         __inf_read              {
3213                                   ASSERT = {
3214                                           TYPE = OBJECT;
3215                                           SIZE = 4;
3216                                         };
3217                                 };
3218         __inf_written           {
3219                                   ASSERT = {
3220                                           TYPE = OBJECT;
3221                                           SIZE = 4;
3222                                         };
3223                                 };
3224         __i_size                {
3225                                   ASSERT = {
3226                                           TYPE = OBJECT;
3227                                           SIZE = 4;
3228                                         };
3229                                 };
3230         _isnanf                 {
3231                                   TYPE = FUNCTION;
3232                                   FILTER = libm.so.2;
3233                                 };
3234         __iswrune;
3235         __libc_threaded         {
3236                                   ASSERT = {
3237                                           TYPE = OBJECT;
3238                                           SIZE = 4;
3239                                         };
3240                                 };
3241         _lib_version            {
3242                                   ASSERT = {
3243                                           TYPE = OBJECT;
3244                                           SIZE = 4;
3245                                         };
3246                                   FLAGS = NODIRECT;
3247                                 };
3248         _logb                   {
3249                                   TYPE = FUNCTION;
3250                                   FILTER = libm.so.2;
3251                                 };
3252         _lone                   {
3253                                   FLAGS = NODYNSORT;
3254                                   ASSERT = {
3255                                           BINDING = WEAK;
3256                                           ALIAS = lone;
3257                                         };
3258                                 };
3259         _lten                   {
3260                                   FLAGS = NODYNSORT;
3261                                   ASSERT = {
3262                                           BINDING = WEAK;
3263                                           ALIAS = lten;
3264                                         };
3265                                 };
3266         _lzero                  {
3267                                   FLAGS = NODYNSORT;
3268                                   ASSERT = {
3269                                           BINDING = WEAK;
3270                                           ALIAS = lzero;
3271                                         };
3272                                 };
3273         __malloc_lock           {
3274                                   ASSERT = {
3275                                           TYPE = OBJECT;
3276                                           SIZE = 24;
3277                                         };
3278                                 };
3279         _memcmp;
3280         _memcpy                 { FLAGS = NODYNSORT; };
3281         _memmove;
3282         _memset;
3283         _modff                  {
3284                                   TYPE = FUNCTION;
3285                                   FILTER = libm.so.2;
3286                                 };
3287         __nan_read              {
3288                                   ASSERT = {
3289                                           TYPE = OBJECT;
3290                                           SIZE = 4;
3291                                         };
3292                                 };
3293         __nan_written           {
3294                                   ASSERT = {
3295                                           TYPE = OBJECT;
3296                                           SIZE = 4;
3297                                         };
3298                                 };
3299         __nextwctype;
3300         __nis_debug_bind        {
3301                                   ASSERT = {
3302                                           TYPE = OBJECT;
3303                                           SIZE = 4;
3304                                         };
3305                                 };
3306         __nis_debug_calls       {
3307                                   ASSERT = {
3308                                           TYPE = OBJECT;
3309                                           SIZE = 4;
3310                                         };
3311                                 };
3312         __nis_debug_file        {
3313                                   ASSERT = {
3314                                           TYPE = OBJECT;
3315                                           SIZE = addrsize;
3316                                         };
3317                                 };
3318         __nis_debug_rpc         {
3319                                   ASSERT = {
3320                                           TYPE = OBJECT;
3321                                           SIZE = 4;
3322                                         };
3323                                 };
3324         __nis_prefsrv           {
3325                                   ASSERT = {
3326                                           TYPE = OBJECT;
3327                                           SIZE = addrsize;
3328                                         };
3329                                 };
3330         __nis_preftype          {
3331                                   ASSERT = {
3332                                           TYPE = OBJECT;
3333                                           SIZE = addrsize;
3334                                         };
3335                                 };
3336         __nis_server            {
3337                                   ASSERT = {
3338                                           TYPE = OBJECT;
3339                                           SIZE = addrsize;
3340                                         };
3341                                 };
3342         _nss_default_finders    {
3343                                   ASSERT = {
3344                                           BINDING = WEAK;
3345                                           ALIAS = nss_default_finders;
3346                                         };
3347                                 };
3348         __progname              {
3349                                   ASSERT = {
3350                                           TYPE = OBJECT;
3351                                           SIZE = addrsize;
3352                                         };
3353                                   FLAGS = NODIRECT;
3354                                 };
3356 $if _ELF64
3357         _smbuf                  {
3358                                   ASSERT = {
3359                                           TYPE = OBJECT;
3360                                           SIZE = 168;
3361                                         };
3362                                 };
3363 $elif _ELF32
3364 $if _x86
3365         _smbuf                  {
3366                                   ASSERT = {
3367                                           TYPE = OBJECT;
3368                                           SIZE = 488;
3369                                         };
3370                                 };
3371 $else
3372         _smbuf                  {
3373                                   ASSERT = {
3374                                           TYPE = OBJECT;
3375                                           SIZE = 168;
3376                                         };
3377                                 };
3378 $endif
3379 $else
3380 $error unknown ELFCLASS
3381 $endif
3382         _sp                     {
3383                                   ASSERT = {
3384                                           TYPE = OBJECT;
3385                                           SIZE = 4;
3386                                         };
3387                                 };
3388         __strdupa_str           {
3389                                   ASSERT = {
3390                                           TYPE = TLS;
3391                                           SIZE = addrsize;
3392                                         };
3393                                   FLAGS = NODIRECT;
3394                                 };
3395         __strdupa_len           {
3396                                   ASSERT = {
3397                                           TYPE = TLS;
3398                                           SIZE = addrsize;
3399                                         };
3400                                   FLAGS = NODIRECT;
3401                                 };
3402         _tdb_bootstrap          {
3403                                   ASSERT = {
3404                                           BINDING = WEAK;
3405                                           ALIAS = __tdb_bootstrap;
3406                                         };
3407                                 };
3408         __threaded              {
3409                                   ASSERT = {
3410                                           TYPE = OBJECT;
3411                                           SIZE = 4;
3412                                         };
3413                                 };
3414         thr_probe_getfunc_addr  {
3415                                   ASSERT = {
3416                                           TYPE = OBJECT;
3417                                           SIZE = addrsize;
3418                                         };
3419                                 };
3420         __trans_lower           {
3421                                   ASSERT = {
3422                                           TYPE = OBJECT;
3423                                           SIZE = addrsize;
3424                                         };
3425                                 };
3426         __trans_upper           {
3427                                   ASSERT = {
3428                                           TYPE = OBJECT;
3429                                           SIZE = addrsize;
3430                                         };
3431                                 };
3432         _uberdata               {
3433                                   ASSERT = {
3434                                           BINDING = WEAK;
3435                                           ALIAS = __uberdata;
3436                                         };
3437                                 };
3438         __xpg6                  {
3439                                   ASSERT = {
3440                                           TYPE = OBJECT;
3441                                           SIZE = 4;
3442                                         };
3443                                   FLAGS = NODIRECT;
3444                                 };
3446 $if _ELF32
3447         _dladdr                 {
3448                                   TYPE = FUNCTION;
3449                                   FILTER = /usr/lib/ld.so.1;
3450                                 };
3451         _dladdr1                {
3452                                   TYPE = FUNCTION;
3453                                   FILTER = /usr/lib/ld.so.1;
3454                                 };
3455         _dlclose                {
3456                                   TYPE = FUNCTION;
3457                                   FILTER = /usr/lib/ld.so.1;
3458                                 };
3459         _dldump                 {
3460                                   TYPE = FUNCTION;
3461                                   FILTER = /usr/lib/ld.so.1;
3462                                 };
3463         _dlerror                {
3464                                   TYPE = FUNCTION;
3465                                   FILTER = /usr/lib/ld.so.1;
3466                                 };
3467         _dlinfo                 {
3468                                   TYPE = FUNCTION;
3469                                   FILTER = /usr/lib/ld.so.1;
3470                                 };
3471         _dlmopen                {
3472                                   TYPE = FUNCTION;
3473                                   FILTER = /usr/lib/ld.so.1;
3474                                 };
3475         _dlopen                 {
3476                                   TYPE = FUNCTION;
3477                                   FILTER = /usr/lib/ld.so.1;
3478                                 };
3479         _dlsym                  {
3480                                   TYPE = FUNCTION;
3481                                   FILTER = /usr/lib/ld.so.1;
3482                                 };
3483         _ld_libc                {
3484                                   TYPE = FUNCTION;
3485                                   FILTER = /usr/lib/ld.so.1;
3486                                 };
3487         _sys_errlist            {
3488                                   ASSERT = {
3489                                           BINDING = WEAK;
3490                                           ALIAS = sys_errlist;
3491                                         };
3492                                 };
3493         _sys_errs               {
3494                                   ASSERT = {
3495                                           TYPE = OBJECT;
3496                                           SIZE = 3216;
3497                                         };
3498                                 };
3499         _sys_index              {
3500                                   ASSERT = {
3501                                           TYPE = OBJECT;
3502                                           SIZE = 608;
3503                                         };
3504                                 };
3505         _sys_nerr               {
3506                                   FLAGS = NODYNSORT;
3507                                   ASSERT = {
3508                                           BINDING = WEAK;
3509                                           ALIAS = _sys_num_err;
3510                                         };
3511                                 };
3512         _sys_num_err            {
3513                                   ASSERT = {
3514                                           TYPE = OBJECT;
3515                                           SIZE = 4;
3516                                         };
3517                                 };
3518 $elif sparcv9
3519         _dladdr                 {
3520                                   TYPE = FUNCTION;
3521                                   FILTER = /usr/lib/sparcv9/ld.so.1;
3522                                 };
3523         _dladdr1                {
3524                                   TYPE = FUNCTION;
3525                                   FILTER = /usr/lib/sparcv9/ld.so.1;
3526                                 };
3527         _dlclose                {
3528                                   TYPE = FUNCTION;
3529                                   FILTER = /usr/lib/sparcv9/ld.so.1;
3530                                 };
3531         _dldump                 {
3532                                   TYPE = FUNCTION;
3533                                   FILTER = /usr/lib/sparcv9/ld.so.1;
3534                                 };
3535         _dlerror                {
3536                                   TYPE = FUNCTION;
3537                                   FILTER = /usr/lib/sparcv9/ld.so.1;
3538                                 };
3539         _dlinfo                 {
3540                                   TYPE = FUNCTION;
3541                                   FILTER = /usr/lib/sparcv9/ld.so.1;
3542                                 };
3543         _dlmopen                {
3544                                   TYPE = FUNCTION;
3545                                   FILTER = /usr/lib/sparcv9/ld.so.1;
3546                                 };
3547         _dlopen                 {
3548                                   TYPE = FUNCTION;
3549                                   FILTER = /usr/lib/sparcv9/ld.so.1;
3550                                 };
3551         _dlsym                  {
3552                                   TYPE = FUNCTION;
3553                                   FILTER = /usr/lib/sparcv9/ld.so.1;
3554                                 };
3555         _ld_libc                {
3556                                   TYPE = FUNCTION;
3557                                   FILTER = /usr/lib/sparcv9/ld.so.1;
3558                                 };
3559 $elif amd64
3560         _dladdr                 {
3561                                   TYPE = FUNCTION;
3562                                   FILTER = /usr/lib/amd64/ld.so.1;
3563                                 };
3564         _dladdr1                {
3565                                   TYPE = FUNCTION;
3566                                   FILTER = /usr/lib/amd64/ld.so.1;
3567                                 };
3568         _dlamd64getunwind       {
3569                                   TYPE = FUNCTION;
3570                                   FILTER = /usr/lib/amd64/ld.so.1;
3571                                 };
3572         _dlclose                {
3573                                   TYPE = FUNCTION;
3574                                   FILTER = /usr/lib/amd64/ld.so.1;
3575                                 };
3576         _dldump                 {
3577                                   TYPE = FUNCTION;
3578                                   FILTER = /usr/lib/amd64/ld.so.1;
3579                                 };
3580         _dlerror                {
3581                                   TYPE = FUNCTION;
3582                                   FILTER = /usr/lib/amd64/ld.so.1;
3583                                 };
3584         _dlinfo                 {
3585                                   TYPE = FUNCTION;
3586                                   FILTER = /usr/lib/amd64/ld.so.1;
3587                                 };
3588         _dlmopen                {
3589                                   TYPE = FUNCTION;
3590                                   FILTER = /usr/lib/amd64/ld.so.1;
3591                                 };
3592         _dlopen                 {
3593                                   TYPE = FUNCTION;
3594                                   FILTER = /usr/lib/amd64/ld.so.1;
3595                                 };
3596         _dlsym                  {
3597                                   TYPE = FUNCTION;
3598                                   FILTER = /usr/lib/amd64/ld.so.1;
3599                                 };
3600         _ld_libc                {
3601                                   TYPE = FUNCTION;
3602                                   FILTER = /usr/lib/amd64/ld.so.1;
3603                                 };
3604 $else
3605 $error unknown platform
3606 $endif
3608 $if _sparc
3609         __lyday_to_month        {
3610                                   ASSERT = {
3611                                           TYPE = OBJECT;
3612                                           SIZE = 48;
3613                                         };
3614                                 };
3615         __mon_lengths           {
3616                                   ASSERT = {
3617                                           TYPE = OBJECT;
3618                                           SIZE = 96;
3619                                         };
3620                                 };
3621         __yday_to_month         {
3622                                   ASSERT = {
3623                                           TYPE = OBJECT;
3624                                           SIZE = 48;
3625                                         };
3626                                 };
3627 $endif
3628 $if i386
3629         _sse_hw                 {
3630                                   ASSERT = {
3631                                           TYPE = OBJECT;
3632                                           SIZE = 4;
3633                                         };
3634                                 };
3635 $endif
3637     protected:
3638         acctctl;
3639         allocids;
3640         _assert_c99;
3641         __assert_c99;
3642         _assfail;
3643         attr_count;
3644         attr_to_data_type;
3645         attr_to_name;
3646         attr_to_option;
3647         attr_to_xattr_view;
3648         _autofssys;
3649         _bufsync;
3650         _cladm;
3651         __class_quadruple;
3652         core_get_default_content;
3653         core_get_default_path;
3654         core_get_global_content;
3655         core_get_global_path;
3656         core_get_options;
3657         core_get_process_content;
3658         core_get_process_path;
3659         core_set_default_content;
3660         core_set_default_path;
3661         core_set_global_content;
3662         core_set_global_path;
3663         core_set_options;
3664         core_set_process_content;
3665         core_set_process_path;
3666         dbm_close_status;
3667         dbm_do_nextkey;
3668         dbm_setdefwrite;
3669         _D_cplx_div;
3670         _D_cplx_div_ix;
3671         _D_cplx_div_rx;
3672         _D_cplx_mul;
3673         defclose_r;
3674         defcntl;
3675         defcntl_r;
3676         defopen;
3677         defopen_r;
3678         defread;
3679         defread_r;
3680         _delete;
3681         _dgettext;
3682         _doprnt;
3683         _doscan;
3684         _errfp;
3685         _errxfp;
3686         exportfs;
3687         _F_cplx_div;
3688         _F_cplx_div_ix;
3689         _F_cplx_div_rx;
3690         _F_cplx_mul;
3691         __fgetwc_xpg5;
3692         __fgetws_xpg5;
3693         _findbuf;
3694         _findiop;
3695         __fini_daemon_priv;
3696         _finite;
3697         _fork1                  { FLAGS = NODYNSORT; };
3698         _forkall                { FLAGS = NODYNSORT; };
3699         _fpclass;
3700         _fpgetmask;
3701         _fpgetround;
3702         _fpgetsticky;
3703         _fprintf;
3704         _fpsetmask;
3705         _fpsetround;
3706         _fpsetsticky;
3707         __fputwc_xpg5;
3708         __fputws_xpg5;
3709         _ftw;
3710         _gcvt;
3711         _getarg;
3712         __getcontext;
3713         _getdents;
3714         _get_exit_frame_monitor;
3715         _getfp;
3716         _getgroupsbymember;
3717         _getlogin_r;
3718         _getsp;
3719         __gettsp;
3720         getvmusage;
3721         __getwchar_xpg5;
3722         __getwc_xpg5;
3723         gtty;
3724         __idmap_flush_kcache;
3725         __idmap_reg;
3726         __idmap_unreg;
3727         __init_daemon_priv;
3728         __init_suid_priv;
3729         _insert;
3730         inst_sync;
3731         _iswctype;
3732         klpd_create;
3733         klpd_getpath;
3734         klpd_getport;
3735         klpd_getucred;
3736         klpd_register;
3737         klpd_register_id;
3738         klpd_unregister;
3739         klpd_unregister_id;
3740         _lgrp_home_fast         { FLAGS = NODYNSORT; };
3741         _lgrpsys;
3742         _lltostr;
3743         _lock_clear;
3744         _lock_try;
3745         _ltzset;
3746         lwp_self;
3747         makeut;
3748         makeutx;
3749         _mbftowc;
3750         mcfiller;
3751         mntopt;
3752         modctl;
3753         modutx;
3754         msgctl64;
3755         __multi_innetgr;
3756         _mutex_destroy          { FLAGS = NODYNSORT; };
3757         mutex_enter;
3758         mutex_exit;
3759         mutex_held;
3760         _mutex_init             { FLAGS = NODYNSORT; };
3761         _mutex_unlock           { FLAGS = NODYNSORT; };
3762         name_to_attr;
3763         nfs_getfh;
3764         nfssvc;
3765         _nfssys;
3766         __nis_get_environment;
3767         _nss_db_state_destr;
3768         nss_default_key2str;
3769         nss_delete;
3770         nss_endent;
3771         nss_getent;
3772         _nss_initf_group;
3773         _nss_initf_netgroup;
3774         _nss_initf_passwd;
3775         _nss_initf_shadow;
3776         nss_packed_arg_init;
3777         nss_packed_context_init;
3778         nss_packed_getkey;
3779         nss_packed_set_status;
3780         nss_search;
3781         nss_setent;
3782         _nss_XbyY_fgets;
3783         _nss_XbyY_fini;
3784         __nsw_extended_action_v1;
3785         __nsw_freeconfig_v1;
3786         __nsw_getconfig_v1;
3787         __nthreads;
3788         __openattrdirat;
3789         option_to_attr;
3790         __priv_bracket;
3791         __priv_relinquish;
3792         psecflags;
3793         pset_assign_forced;
3794         pset_bind_lwp;
3795         _psignal;
3796         pthread_attr_getdaemonstate_np;
3797         pthread_attr_setdaemonstate_np;
3798         pthread_mutex_enter_np;
3799         pthread_mutex_exit_np;
3800         _pthread_setcleanupinit;
3801         __putwchar_xpg5;
3802         __putwc_xpg5;
3803         rctlctl;
3804         rctllist;
3805         _realbufend;
3806         _resume;
3807         _resume_ret;
3808         _rpcsys;
3809         _sbrk_grow_aligned;
3810         scrwidth;
3811         secflag_by_name;
3812         secflag_clear;
3813         secflags_copy;
3814         secflags_difference;
3815         secflags_fullset;
3816         secflags_intersection;
3817         secflags_isempty;
3818         secflag_isset;
3819         secflags_issubset;
3820         secflags_issuperset;
3821         secflag_set;
3822         secflag_to_bit;
3823         secflag_to_str;
3824         secflags_union;
3825         psecflags_validate_delta;
3826         secflags_zero;
3827         psecflags_default;
3828         secflags_parse;
3829         secflags_to_str;
3830         psecflags_validate;
3831         semctl64;
3832         _semctl64;
3833         set_setcontext_enforcement;
3834         _setbufend;
3835         __set_errno;
3836         setprojrctl;
3837         _setregid;
3838         _setreuid;
3839         setsigacthandler;
3840         shmctl64;
3841         _shmctl64;
3842         sigflag;
3843         _signal;
3844         _sigoff;
3845         _sigon;
3846         _so_accept;
3847         _so_bind;
3848         _sockconfig;
3849         _so_connect;
3850         _so_getpeername;
3851         _so_getsockname;
3852         _so_getsockopt;
3853         _so_listen;
3854         _so_recv;
3855         _so_recvfrom;
3856         _so_recvmsg;
3857         _so_send;
3858         _so_sendmsg;
3859         _so_sendto;
3860         _so_setsockopt;
3861         _so_shutdown;
3862         _so_socket;
3863         _so_socketpair;
3864         str2group;
3865         str2passwd;
3866         str2spwd;
3867         __strptime_dontzero;
3868         stty;
3869         syscall;
3870         _sysconfig;
3871         __systemcall;
3872         thr_continue_allmutators;
3873         _thr_continue_allmutators;
3874         thr_continue_mutator;
3875         _thr_continue_mutator;
3876         thr_getstate;
3877         _thr_getstate;
3878         thr_mutators_barrier;
3879         _thr_mutators_barrier;
3880         thr_probe_setup;
3881         _thr_schedctl;
3882         thr_setmutator;
3883         _thr_setmutator;
3884         thr_setstate;
3885         _thr_setstate;
3886         thr_sighndlrinfo;
3887         _thr_sighndlrinfo;
3888         _thr_slot_offset;
3889         thr_suspend_allmutators;
3890         _thr_suspend_allmutators;
3891         thr_suspend_mutator;
3892         _thr_suspend_mutator;
3893         thr_wait_mutator;
3894         _thr_wait_mutator;
3895         __tls_get_addr;
3896         _tmem_get_base;
3897         _tmem_get_nentries;
3898         _tmem_set_cleanup;
3899         tpool_create;
3900         tpool_dispatch;
3901         tpool_destroy;
3902         tpool_wait;
3903         tpool_suspend;
3904         tpool_suspended;
3905         tpool_resume;
3906         tpool_member;
3907         _ttyname_dev;
3908         _ucred_alloc;
3909         ucred_getamask;
3910         _ucred_getamask;
3911         ucred_getasid;
3912         _ucred_getasid;
3913         ucred_getatid;
3914         _ucred_getatid;
3915         ucred_getauid;
3916         _ucred_getauid;
3917         _ulltostr;
3918         _uncached_getgrgid_r;
3919         _uncached_getgrnam_r;
3920         _uncached_getpwnam_r;
3921         _uncached_getpwuid_r;
3922         __ungetwc_xpg5;
3923         _unordered;
3924         utssys;
3925         _verrfp;
3926         _verrxfp;
3927         _vwarnfp;
3928         _vwarnxfp;
3929         _warnfp;
3930         _warnxfp;
3931         __wcsftime_xpg5;
3932         __wcstok_xpg5;
3933         wdbindf;
3934         wdchkind;
3935         wddelim;
3936         _wrtchk;
3937         _xflsbuf;
3938         _xgetwidth;
3939         zone_add_datalink;
3940         zone_boot;
3941         zone_check_datalink;
3942         zone_create;
3943         zone_destroy;
3944         zone_enter;
3945         zone_getattr;
3946         zone_get_id;
3947         zone_list;
3948         zone_list_datalink;
3949         zonept;
3950         zone_remove_datalink;
3951         zone_setattr;
3952         zone_shutdown;
3953         zone_version;
3955 $if _ELF32
3956         __divdi3;
3957         _file_set;
3958         _fprintf_c89;
3959         _fscanf_c89;
3960         _fwprintf_c89;
3961         _fwscanf_c89;
3962         _imaxabs_c89;
3963         _imaxdiv_c89;
3964         __moddi3;
3965         _printf_c89;
3966         _scanf_c89;
3967         _snprintf_c89;
3968         _sprintf_c89;
3969         _sscanf_c89;
3970         _strtoimax_c89;
3971         _strtoumax_c89;
3972         _swprintf_c89;
3973         _swscanf_c89;
3974         __udivdi3;
3975         __umoddi3;
3976         _vfprintf_c89;
3977         _vfscanf_c89;
3978         _vfwprintf_c89;
3979         _vfwscanf_c89;
3980         _vprintf_c89;
3981         _vscanf_c89;
3982         _vsnprintf_c89;
3983         _vsprintf_c89;
3984         _vsscanf_c89;
3985         _vswprintf_c89;
3986         _vswscanf_c89;
3987         _vwprintf_c89;
3988         _vwscanf_c89;
3989         _wcstoimax_c89;
3990         _wcstoumax_c89;
3991         _wprintf_c89;
3992         _wscanf_c89;
3993 $endif
3995 $if _sparc
3996         _cerror;
3997         install_utrap;
3998         _install_utrap;
3999         nop;
4000         _Q_cplx_div;
4001         _Q_cplx_div_ix;
4002         _Q_cplx_div_rx;
4003         _Q_cplx_lr_div;
4004         _Q_cplx_lr_div_ix;
4005         _Q_cplx_lr_div_rx;
4006         _Q_cplx_lr_mul;
4007         _Q_cplx_mul;
4008         _QgetRD;
4009         _xregs_clrptr;
4010 $endif
4012 $if sparc32
4013         __ashldi3;
4014         __ashrdi3;
4015         _cerror64;
4016         __cmpdi2;
4017         __floatdidf;
4018         __floatdisf;
4019         __floatundidf;
4020         __floatundisf;
4021         __lshrdi3;
4022         __muldi3;
4023         __ucmpdi2;
4024 $endif
4026 $if sparcv9
4027         __multi3;
4028 $endif
4030 $if _x86
4031         _D_cplx_lr_div;
4032         _D_cplx_lr_div_ix;
4033         _D_cplx_lr_div_rx;
4034         _F_cplx_lr_div;
4035         _F_cplx_lr_div_ix;
4036         _F_cplx_lr_div_rx;
4037         __fltrounds;
4038         sysi86;
4039         _sysi86;
4040         _X_cplx_div;
4041         _X_cplx_div_ix;
4042         _X_cplx_div_rx;
4043         _X_cplx_lr_div;
4044         _X_cplx_lr_div_ix;
4045         _X_cplx_lr_div_rx;
4046         _X_cplx_mul;
4047         __xgetRD;
4048         __xtol;
4049         __xtoll;
4050         __xtoul;
4051         __xtoull;
4052 $endif
4054 $if i386
4055         __divrem64;
4056         ___tls_get_addr;
4057         __udivrem64;
4058 $endif
4060         # The following functions should not be exported from libc,
4061         # but /lib/libm.so.2, some older versions of the Studio
4062         # compiler/debugger components, and some ancient programs
4063         # found in /usr/dist reference them.  When we no longer
4064         # care about these old and broken binary objects, these
4065         # symbols should be deleted.
4066         _brk                                    { FLAGS = NODYNSORT; };
4067         _cond_broadcast                         { FLAGS = NODYNSORT; };
4068         _cond_init                              { FLAGS = NODYNSORT; };
4069         _cond_signal                            { FLAGS = NODYNSORT; };
4070         _cond_wait                              { FLAGS = NODYNSORT; };
4071         _ecvt                                   { FLAGS = NODYNSORT; };
4072         _fcvt                                   { FLAGS = NODYNSORT; };
4073         _getc_unlocked                          { FLAGS = NODYNSORT; };
4074         _llseek                                 { FLAGS = NODYNSORT; };
4075         _pthread_attr_getdetachstate            { FLAGS = NODYNSORT; };
4076         _pthread_attr_getinheritsched           { FLAGS = NODYNSORT; };
4077         _pthread_attr_getschedparam             { FLAGS = NODYNSORT; };
4078         _pthread_attr_getschedpolicy            { FLAGS = NODYNSORT; };
4079         _pthread_attr_getscope                  { FLAGS = NODYNSORT; };
4080         _pthread_attr_getstackaddr              { FLAGS = NODYNSORT; };
4081         _pthread_attr_getstacksize              { FLAGS = NODYNSORT; };
4082         _pthread_attr_init                      { FLAGS = NODYNSORT; };
4083         _pthread_condattr_getpshared            { FLAGS = NODYNSORT; };
4084         _pthread_condattr_init                  { FLAGS = NODYNSORT; };
4085         _pthread_cond_init                      { FLAGS = NODYNSORT; };
4086         _pthread_create                         { FLAGS = NODYNSORT; };
4087         _pthread_getschedparam                  { FLAGS = NODYNSORT; };
4088         _pthread_join                           { FLAGS = NODYNSORT; };
4089         _pthread_key_create                     { FLAGS = NODYNSORT; };
4090         _pthread_mutexattr_getprioceiling       { FLAGS = NODYNSORT; };
4091         _pthread_mutexattr_getprotocol          { FLAGS = NODYNSORT; };
4092         _pthread_mutexattr_getpshared           { FLAGS = NODYNSORT; };
4093         _pthread_mutexattr_init                 { FLAGS = NODYNSORT; };
4094         _pthread_mutex_getprioceiling           { FLAGS = NODYNSORT; };
4095         _pthread_mutex_init                     { FLAGS = NODYNSORT; };
4096         _pthread_sigmask                        { FLAGS = NODYNSORT; };
4097         _rwlock_init                            { FLAGS = NODYNSORT; };
4098         _rw_rdlock                              { FLAGS = NODYNSORT; };
4099         _rw_unlock                              { FLAGS = NODYNSORT; };
4100         _rw_wrlock                              { FLAGS = NODYNSORT; };
4101         _sbrk_unlocked                          { FLAGS = NODYNSORT; };
4102         _select                                 { FLAGS = NODYNSORT; };
4103         _sema_init                              { FLAGS = NODYNSORT; };
4104         _sema_post                              { FLAGS = NODYNSORT; };
4105         _sema_trywait                           { FLAGS = NODYNSORT; };
4106         _sema_wait                              { FLAGS = NODYNSORT; };
4107         _sysfs                                  { FLAGS = NODYNSORT; };
4108         _thr_create                             { FLAGS = NODYNSORT; };
4109         _thr_exit                               { FLAGS = NODYNSORT; };
4110         _thr_getprio                            { FLAGS = NODYNSORT; };
4111         _thr_getspecific                        { FLAGS = NODYNSORT; };
4112         _thr_join                               { FLAGS = NODYNSORT; };
4113         _thr_keycreate                          { FLAGS = NODYNSORT; };
4114         _thr_kill                               { FLAGS = NODYNSORT; };
4115         _thr_main                               { FLAGS = NODYNSORT; };
4116         _thr_self                               { FLAGS = NODYNSORT; };
4117         _thr_setspecific                        { FLAGS = NODYNSORT; };
4118         _thr_sigsetmask                         { FLAGS = NODYNSORT; };
4119         _thr_stksegment                         { FLAGS = NODYNSORT; };
4120         _ungetc_unlocked                        { FLAGS = NODYNSORT; };
4122     local:
4123         _ti_thr_self                            { FLAGS = NODYNSORT; };
4124         __imax_lldiv                            { FLAGS = NODYNSORT; };
4126         *;
4127 $if lf64
4128         _seekdir64              { FLAGS = NODYNSORT; };
4129         _telldir64              { FLAGS = NODYNSORT; };
4130 $endif
4132 $if _sparc
4133         __cerror                { FLAGS = NODYNSORT; };
4134 $endif
4136 $if sparc32
4137         __cerror64              { FLAGS = NODYNSORT; };
4138 $endif
4140 $if sparcv9
4141         __cleanup               { FLAGS = NODYNSORT; };
4142 $endif
4144 $if i386
4145         _syscall6               { FLAGS = NODYNSORT; };
4146         __systemcall6           { FLAGS = NODYNSORT; };
4147 $endif
4149 $if amd64
4150         ___tls_get_addr         { FLAGS = NODYNSORT; };
4151 $endif