blob: 0ae5def464b9c8a77bb79895f37c43e3e3226f29 [file] [log] [blame]
xf.libdd93d52023-05-12 07:10:14 -07001libc {
2 GLIBC_2.0 {
3 pthread_attr_destroy; pthread_attr_init;
4 pthread_attr_getdetachstate; pthread_attr_setdetachstate;
5 pthread_attr_getinheritsched; pthread_attr_setinheritsched;
6 pthread_attr_getschedparam; pthread_attr_setschedparam;
7 pthread_attr_getschedpolicy; pthread_attr_setschedpolicy;
8 pthread_attr_getscope; pthread_attr_setscope;
9 pthread_condattr_destroy; pthread_condattr_init;
10 pthread_cond_broadcast; pthread_cond_destroy;
11 pthread_cond_init; pthread_cond_signal; pthread_cond_wait;
12 pthread_cond_timedwait;
13 pthread_equal; pthread_exit;
14 pthread_getschedparam; pthread_setschedparam;
15 pthread_mutex_destroy; pthread_mutex_init;
16 pthread_mutex_lock; pthread_mutex_unlock;
17 pthread_self;
18 pthread_setcancelstate; pthread_setcanceltype;
19 }
20 GLIBC_2.1 {
21 pthread_attr_init;
22 }
23 GLIBC_2.3.2 {
24 __register_atfork;
25
26 # Changed pthread_cond_t.
27 pthread_cond_init; pthread_cond_destroy;
28 pthread_cond_wait; pthread_cond_signal;
29 pthread_cond_broadcast; pthread_cond_timedwait;
30 }
31 GLIBC_PRIVATE {
32 __libc_alloca_cutoff;
33 # Internal libc interface to libpthread
34 __libc_dl_error_tsd;
35 __libc_vfork;
36 __libc_pthread_init;
37 __libc_current_sigrtmin_private; __libc_current_sigrtmax_private;
38 __libc_allocate_rtsig_private;
39 }
40}
41
42libpthread {
43 GLIBC_2.0 {
44 pthread_create; pthread_join; pthread_self; pthread_equal;
45 pthread_exit; pthread_detach;
46
47 pthread_getschedparam; pthread_setschedparam;
48
49 pthread_attr_init; pthread_attr_destroy;
50 pthread_attr_getdetachstate; pthread_attr_setdetachstate;
51 pthread_attr_getschedparam; pthread_attr_setschedparam;
52 pthread_attr_getschedpolicy; pthread_attr_setschedpolicy;
53 pthread_attr_getinheritsched; pthread_attr_setinheritsched;
54 pthread_attr_getscope; pthread_attr_setscope;
55
56 pthread_mutex_init; pthread_mutex_destroy;
57 pthread_mutex_lock; pthread_mutex_trylock; pthread_mutex_unlock;
58
59 pthread_mutexattr_init; pthread_mutexattr_destroy;
60
61 pthread_cond_init; pthread_cond_destroy;
62 pthread_cond_wait; pthread_cond_timedwait;
63 pthread_cond_signal; pthread_cond_broadcast;
64
65 pthread_condattr_destroy; pthread_condattr_init;
66
67 pthread_cancel; pthread_testcancel;
68 pthread_setcancelstate; pthread_setcanceltype;
69
70 pthread_sigmask; pthread_kill;
71
72 pthread_key_create; pthread_key_delete;
73 pthread_getspecific; pthread_setspecific;
74
75 pthread_once;
76
77 pthread_atfork;
78
79 flockfile; funlockfile; ftrylockfile;
80
81 # Non-standard POSIX1.x functions.
82 pthread_mutexattr_getkind_np; pthread_mutexattr_setkind_np;
83
84 # Protected names for functions used in other shared objects.
85 __pthread_mutex_init; __pthread_mutex_destroy;
86 __pthread_mutex_lock; __pthread_mutex_trylock; __pthread_mutex_unlock;
87 __pthread_mutexattr_init; __pthread_mutexattr_destroy;
88 __pthread_mutexattr_settype;
89 __pthread_key_create; __pthread_getspecific; __pthread_setspecific;
90 __pthread_once; __pthread_atfork;
91 _IO_flockfile; _IO_ftrylockfile; _IO_funlockfile;
92
93 # Semaphores.
94 sem_destroy; sem_getvalue; sem_init; sem_post; sem_trywait; sem_wait;
95
96 # Special fork handling.
97 fork; __fork; vfork;
98
99 # Cancellation points.
100 close; __close; fcntl; __fcntl; read; __read; write; __write; accept;
101 connect; __connect; recv; recvfrom; recvmsg; send; __send; sendmsg; sendto;
102 fsync; lseek; __lseek; msync; nanosleep; open; __open; pause; tcdrain;
103 system; wait; __wait; waitpid;
104
105 # Hidden entry point (through macros).
106 _pthread_cleanup_push; _pthread_cleanup_pop;
107 _pthread_cleanup_push_defer; _pthread_cleanup_pop_restore;
108
109 pthread_kill_other_threads_np;
110
111 # The error functions.
112 __errno_location; __h_errno_location;
113
114 # Functions which previously have been overwritten.
115 sigwait; sigaction; __sigaction; _exit; _Exit; longjmp; siglongjmp;
116 raise;
117 }
118
119 GLIBC_2.1 {
120 pthread_create;
121 pthread_attr_init;
122
123 pthread_attr_getguardsize; pthread_attr_setguardsize;
124 pthread_attr_getstackaddr; pthread_attr_setstackaddr;
125 pthread_attr_getstacksize; pthread_attr_setstacksize;
126
127 pthread_mutexattr_gettype; pthread_mutexattr_settype;
128
129 pthread_rwlock_init; pthread_rwlock_destroy;
130 pthread_rwlock_rdlock; pthread_rwlock_wrlock; pthread_rwlock_unlock;
131 pthread_rwlock_tryrdlock; pthread_rwlock_trywrlock;
132
133 pthread_rwlockattr_init; pthread_rwlockattr_destroy;
134 pthread_rwlockattr_getpshared; pthread_rwlockattr_setpshared;
135 pthread_rwlockattr_getkind_np; pthread_rwlockattr_setkind_np;
136
137 pthread_getconcurrency; pthread_setconcurrency;
138
139 # Semaphores.
140 sem_destroy; sem_getvalue; sem_init; sem_post; sem_trywait; sem_wait;
141
142 __libc_current_sigrtmin; __libc_current_sigrtmax;
143 __libc_allocate_rtsig;
144 }
145
146 GLIBC_2.1.1 {
147 sem_close; sem_open; sem_unlink;
148 }
149
150 GLIBC_2.1.2 {
151 __vfork;
152 }
153
154 GLIBC_2.2 {
155 pthread_mutexattr_getpshared; pthread_mutexattr_setpshared;
156
157 pthread_condattr_getpshared; pthread_condattr_setpshared;
158
159 # New functions from IEEE Std. 1003.1-2001.
160 pthread_mutex_timedlock;
161
162 pthread_rwlock_timedrdlock; pthread_rwlock_timedwrlock;
163
164 pthread_attr_getstack; pthread_attr_setstack;
165
166 pthread_spin_destroy; pthread_spin_init; pthread_spin_lock;
167 pthread_spin_trylock; pthread_spin_unlock;
168
169 pthread_barrier_init; pthread_barrier_destroy; pthread_barrier_wait;
170 pthread_barrierattr_destroy; pthread_barrierattr_init;
171 pthread_barrierattr_setpshared;
172
173 sem_timedwait;
174
175 pthread_yield;
176
177 pthread_getcpuclockid;
178
179 # Cancellation points.
180 lseek64; open64; __open64; pread; pread64; __pread64; pwrite; pwrite64;
181 __pwrite64;
182
183 # Names used internally.
184 __pthread_rwlock_init; __pthread_rwlock_destroy;
185 __pthread_rwlock_rdlock; __pthread_rwlock_tryrdlock;
186 __pthread_rwlock_wrlock; __pthread_rwlock_trywrlock;
187 __pthread_rwlock_unlock;
188
189 __res_state;
190 }
191
192 GLIBC_2.2.3 {
193 # Extensions.
194 pthread_getattr_np;
195 }
196
197 GLIBC_2.2.6 {
198 # Cancellation wrapper
199 __nanosleep;
200 }
201
202 GLIBC_2.3.2 {
203 # Changed pthread_cond_t.
204 pthread_cond_init; pthread_cond_destroy;
205 pthread_cond_wait; pthread_cond_timedwait;
206 pthread_cond_signal; pthread_cond_broadcast;
207 }
208
209 GLIBC_2.3.3 {
210 # 1003.1-2001 function accidentally left out in 2.2.
211 pthread_barrierattr_getpshared;
212
213 # Unix CS option.
214 pthread_condattr_getclock; pthread_condattr_setclock;
215
216 # Proposed API extensions.
217 pthread_tryjoin_np; pthread_timedjoin_np;
218
219 # New cancellation cleanup handling.
220 __pthread_register_cancel; __pthread_unregister_cancel;
221 __pthread_register_cancel_defer; __pthread_unregister_cancel_restore;
222 __pthread_unwind_next;
223 __pthread_cleanup_routine;
224
225 # affinity interfaces without size parameter
226 pthread_getaffinity_np; pthread_setaffinity_np;
227 pthread_attr_getaffinity_np; pthread_attr_setaffinity_np;
228 }
229
230 GLIBC_2.3.4 {
231 # New affinity interfaces.
232 pthread_getaffinity_np; pthread_setaffinity_np;
233 pthread_attr_getaffinity_np; pthread_attr_setaffinity_np;
234
235 pthread_setschedprio;
236 }
237
238 GLIBC_2.4 {
239 pthread_mutexattr_getrobust_np; pthread_mutexattr_setrobust_np;
240 pthread_mutex_consistent_np;
241 pthread_mutexattr_getprotocol; pthread_mutexattr_setprotocol;
242 pthread_mutexattr_getprioceiling; pthread_mutexattr_setprioceiling;
243 pthread_mutex_getprioceiling; pthread_mutex_setprioceiling;
244 };
245
246 GLIBC_2.11 {
247 pthread_sigqueue;
248 };
249
250 GLIBC_2.12 {
251 pthread_mutex_consistent; pthread_mutexattr_getrobust;
252 pthread_mutexattr_setrobust;
253
254 pthread_setname_np; pthread_getname_np;
255 };
256
257 GLIBC_2.18 {
258 pthread_getattr_default_np;
259 pthread_setattr_default_np;
260 }
261
262 GLIBC_2.20 {
263 }
264
265 GLIBC_2.22 {
266 }
267
268 GLIBC_PRIVATE {
269 __pthread_initialize_minimal;
270 __pthread_clock_gettime; __pthread_clock_settime;
271 __pthread_unwind; __pthread_get_minstack;
272 __pthread_barrier_init; __pthread_barrier_wait;
273 __shm_directory;
274 }
275}