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