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