* abilist: New directory of libfoo.abilist files maintained using

scripts/merge-abilist.awk and "make update-abi" rules.
	* Makefile (distribute): Add abilist/*.abilist.
	* Makerules [$(build-shared) = yes] [$(subdir)] (tests):
	Depend on check-abi.
This commit is contained in:
Roland McGrath 2003-03-19 08:27:55 +00:00
parent 043ad426e7
commit 9465949559
25 changed files with 3164 additions and 21 deletions

View File

@ -1,5 +1,11 @@
2003-03-18 Roland McGrath <roland@redhat.com>
* abilist: New directory of libfoo.abilist files maintained using
scripts/merge-abilist.awk and "make update-abi" rules.
* Makefile (distribute): Add abilist/*.abilist.
* Makerules [$(build-shared) = yes] [$(subdir)] (tests):
Depend on check-abi.
* configure.in: Move $critic_missing check after all AC_CHECK_PROG_VER.
* configure: Regenerated.

View File

@ -282,7 +282,8 @@ distribute := README README.libm INSTALL FAQ FAQ.in NOTES NEWS BUGS \
gen-sorted.awk abi-versions.awk abilist.awk \
firstversions.awk documented.sh cpp \
output-format.sed gen-as-const.awk \
merge-abilist.awk extract-abilist.awk)
merge-abilist.awk extract-abilist.awk) \
$(wildcard abilist/*.abilist)
distribute := $(strip $(distribute))
generated := $(generated) stubs.h

View File

@ -1235,15 +1235,18 @@ check-abi: subdir_check-abi
update-abi: subdir_update-abi
endif
# Enable this when all the .abilist files are in place.
#tests: check-abi
ifeq ($(subdir),elf)
check-abi: check-abi-libc
update-abi: update-abi-libc
common-generated += libc.symlist
endif
ifeq ($(build-shared),yes)
ifdef subdir
tests: check-abi
endif
endif
endif
# There's no good place to put this - here will do.

View File

@ -0,0 +1,10 @@
GLIBC_2.0 i.86-.*-linux.* powerpc-.*-linux.*
GLIBC_2.0 A
GLIBC_2.0 i.86-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
| GLIBC_2.2 ia64-.*-linux.*
__ctype_get_mb_cur_max F
GLIBC_2.2.5 x86_64-.*-linux.*
GLIBC_2.2.5 A
GLIBC_2.2 ia64-.*-linux.*
GLIBC_2.2 A

10
abilist/libanl.abilist Normal file
View File

@ -0,0 +1,10 @@
GLIBC_2.2.3 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
GLIBC_2.2.3 A
GLIBC_2.2.3 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
gai_cancel F
gai_error F
gai_suspend F
getaddrinfo_a F
GLIBC_2.2.5 x86_64-.*-linux.*
GLIBC_2.2.5 A

2161
abilist/libc.abilist Normal file

File diff suppressed because it is too large Load Diff

13
abilist/libcrypt.abilist Normal file
View File

@ -0,0 +1,13 @@
GLIBC_2.0 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
GLIBC_2.0 A
GLIBC_2.0 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
crypt F
crypt_r F
encrypt F
encrypt_r F
fcrypt F
setkey F
setkey_r F
GLIBC_2.2.5 x86_64-.*-linux.*
GLIBC_2.2.5 A

23
abilist/libdl.abilist Normal file
View File

@ -0,0 +1,23 @@
GLIBC_2.0 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
GLIBC_2.0 A
GLIBC_2.0 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.1 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
dlopen F
GLIBC_2.0 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
dladdr F
dlclose F
dlerror F
dlsym F
GLIBC_2.1 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
GLIBC_2.1 A
GLIBC_2.1 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
dlvsym F
GLIBC_2.2.5 x86_64-.*-linux.*
GLIBC_2.2.5 A
GLIBC_2.3.3 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.* x86_64-.*-linux.*
GLIBC_2.3.3 A
dladdr1 F
dlinfo F

348
abilist/libm.abilist Normal file
View File

@ -0,0 +1,348 @@
GLIBC_2.0 i.86-.*-linux.* powerpc-.*-linux.*
GLIBC_2.0 A
GLIBC_2.0 i.86-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
| GLIBC_2.2 ia64-.*-linux.*
_LIB_VERSION D 0x4
acos F
acosf F
acosh F
acoshf F
acoshl F
acosl F
asin F
asinf F
asinh F
asinhf F
asinhl F
asinl F
atan F
atan2 F
atan2f F
atan2l F
atanf F
atanh F
atanhf F
atanhl F
atanl F
cbrt F
cbrtf F
cbrtl F
ceil F
ceilf F
ceill F
copysign F
copysignf F
copysignl F
cos F
cosf F
cosh F
coshf F
coshl F
cosl F
drem F
dremf F
dreml F
erf F
erfc F
erfcf F
erfcl F
erff F
erfl F
exp F
expf F
expl F
expm1 F
expm1f F
expm1l F
fabs F
fabsf F
fabsl F
finite F
finitef F
finitel F
floor F
floorf F
floorl F
fmod F
fmodf F
fmodl F
frexp F
frexpf F
frexpl F
gamma F
gammaf F
gammal F
hypot F
hypotf F
hypotl F
ilogb F
ilogbf F
ilogbl F
j0 F
j0f F
j0l F
j1 F
j1f F
j1l F
jn F
jnf F
jnl F
ldexp F
ldexpf F
ldexpl F
lgamma F
lgamma_r F
lgammaf F
lgammaf_r F
lgammal F
lgammal_r F
log F
log10 F
log10f F
log10l F
log1p F
log1pf F
log1pl F
logb F
logbf F
logbl F
logf F
logl F
matherr F
modf F
modff F
modfl F
nextafter F
nextafterf F
nextafterl F
pow F
powf F
powl F
remainder F
remainderf F
remainderl F
rint F
rintf F
rintl F
scalb F
scalbf F
scalbl F
scalbn F
scalbnf F
scalbnl F
signgam D 0x4
significand F
significandf F
significandl F
sin F
sinf F
sinh F
sinhf F
sinhl F
sinl F
sqrt F
sqrtf F
sqrtl F
tan F
tanf F
tanh F
tanhf F
tanhl F
tanl F
y0 F
y0f F
y0l F
y1 F
y1f F
y1l F
yn F
ynf F
ynl F
GLIBC_2.1 i.86-.*-linux.* powerpc-.*-linux.*
GLIBC_2.1 A
GLIBC_2.1 i.86-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
| GLIBC_2.2 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
feclearexcept F
fegetenv F
fegetexceptflag F
feraiseexcept F
fesetenv F
fesetexceptflag F
feupdateenv F
GLIBC_2.1 i.86-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
| GLIBC_2.2 ia64-.*-linux.*
__clog10 F
__clog10f F
__clog10l F
__finite F
__finitef F
__finitel F
__fpclassify F
__fpclassifyf F
__signbit F
__signbitf F
cabs F
cabsf F
cabsl F
cacos F
cacosf F
cacosh F
cacoshf F
cacoshl F
cacosl F
carg F
cargf F
cargl F
casin F
casinf F
casinh F
casinhf F
casinhl F
casinl F
catan F
catanf F
catanh F
catanhf F
catanhl F
catanl F
ccos F
ccosf F
ccosh F
ccoshf F
ccoshl F
ccosl F
cexp F
cexpf F
cexpl F
cimag F
cimagf F
cimagl F
clog F
clog10 F
clog10f F
clog10l F
clogf F
clogl F
conj F
conjf F
conjl F
cpow F
cpowf F
cpowl F
cproj F
cprojf F
cprojl F
creal F
crealf F
creall F
csin F
csinf F
csinh F
csinhf F
csinhl F
csinl F
csqrt F
csqrtf F
csqrtl F
ctan F
ctanf F
ctanh F
ctanhf F
ctanhl F
ctanl F
exp10 F
exp10f F
exp10l F
exp2 F
exp2f F
fdim F
fdimf F
fdiml F
fegetround F
feholdexcept F
fesetround F
fetestexcept F
fma F
fmaf F
fmal F
fmax F
fmaxf F
fmaxl F
fmin F
fminf F
fminl F
llrint F
llrintf F
llrintl F
llround F
llroundf F
llroundl F
log2 F
log2f F
log2l F
lrint F
lrintf F
lrintl F
lround F
lroundf F
lroundl F
nan F
nanf F
nanl F
nearbyint F
nearbyintf F
nearbyintl F
nexttoward F
nexttowardf F
nexttowardl F
pow10 F
pow10f F
pow10l F
remquo F
remquof F
remquol F
round F
roundf F
roundl F
scalbln F
scalblnf F
scalblnl F
sincos F
sincosf F
sincosl F
tgamma F
tgammaf F
tgammal F
trunc F
truncf F
truncl F
GLIBC_2.1 i.86-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
| GLIBC_2.2 ia64-.*-linux.*
__fpclassifyl F
__signbitl F
exp2l F
GLIBC_2.1 powerpc-.*-linux.*
__fe_dfl_env D 0x8
__fe_enabled_env D 0x8
__fe_nomask_env F
__fe_nonieee_env D 0x8
GLIBC_2.2.3 ia64-.*-linux.*
GLIBC_2.2.3 A
matherrf F
matherrl F
GLIBC_2.2.5 x86_64-.*-linux.*
GLIBC_2.2.5 A
GLIBC_2.2.5 x86_64-.*-linux.*
| GLIBC_2.2 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
fedisableexcept F
feenableexcept F
fegetexcept F
GLIBC_2.2 i.86-.*-linux.*
__expl F
__expm1l F
GLIBC_2.2 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
GLIBC_2.2 A

135
abilist/libnsl.abilist Normal file
View File

@ -0,0 +1,135 @@
GLIBC_2.0 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
GLIBC_2.0 A
GLIBC_2.0 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
__yp_check F
xdr_domainname F
xdr_keydat F
xdr_mapname F
xdr_peername F
xdr_valdat F
xdr_yp_buf F
xdr_ypbind_binding F
xdr_ypbind_resp F
xdr_ypbind_resptype F
xdr_ypbind_setdom F
xdr_ypdelete_args F
xdr_ypmap_parms F
xdr_ypmaplist F
xdr_yppush_status F
xdr_yppushresp_xfr F
xdr_ypreq_key F
xdr_ypreq_nokey F
xdr_ypreq_xfr F
xdr_ypresp_all F
xdr_ypresp_key_val F
xdr_ypresp_maplist F
xdr_ypresp_master F
xdr_ypresp_order F
xdr_ypresp_val F
xdr_ypresp_xfr F
xdr_ypstat F
xdr_ypupdate_args F
xdr_ypxfrstat F
yp_all F
yp_bind F
yp_first F
yp_get_default_domain F
yp_maplist F
yp_master F
yp_match F
yp_next F
yp_order F
yp_unbind F
yp_update F
ypbinderr_string F
yperr_string F
ypprot_err F
GLIBC_2.1 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
GLIBC_2.1 A
GLIBC_2.1 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
__free_fdresult F
__nis_default_access F
__nis_default_group F
__nis_default_owner F
__nis_default_ttl F
__nis_finddirectory F
__nis_hash F
__nisbind_connect F
__nisbind_create F
__nisbind_destroy F
__nisbind_next F
nis_add F
nis_add_entry F
nis_addmember F
nis_checkpoint F
nis_clone_directory F
nis_clone_object F
nis_clone_result F
nis_creategroup F
nis_destroy_object F
nis_destroygroup F
nis_dir_cmp F
nis_domain_of F
nis_domain_of_r F
nis_first_entry F
nis_free_directory F
nis_free_object F
nis_free_request F
nis_freenames F
nis_freeresult F
nis_freeservlist F
nis_freetags F
nis_getnames F
nis_getservlist F
nis_ismember F
nis_leaf_of F
nis_leaf_of_r F
nis_lerror F
nis_list F
nis_local_directory F
nis_local_group F
nis_local_host F
nis_local_principal F
nis_lookup F
nis_mkdir F
nis_modify F
nis_modify_entry F
nis_name_of F
nis_name_of_r F
nis_next_entry F
nis_perror F
nis_ping F
nis_print_directory F
nis_print_entry F
nis_print_group F
nis_print_group_entry F
nis_print_link F
nis_print_object F
nis_print_result F
nis_print_rights F
nis_print_table F
nis_read_obj F
nis_remove F
nis_remove_entry F
nis_removemember F
nis_rmdir F
nis_servstate F
nis_sperrno F
nis_sperror F
nis_sperror_r F
nis_stats F
nis_verifygroup F
nis_write_obj F
readColdStartFile F
writeColdStartFile F
xdr_cback_data F
xdr_obj_p F
GLIBC_2.2.5 x86_64-.*-linux.*
GLIBC_2.2.5 A
GLIBC_2.2.5 x86_64-.*-linux.*
| GLIBC_2.2 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
xdr_ypall F
GLIBC_2.2 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
GLIBC_2.2 A

View File

View File

View File

View File

View File

View File

234
abilist/libpthread.abilist Normal file
View File

@ -0,0 +1,234 @@
GLIBC_2.0 i.86-.*-linux.* powerpc-.*-linux.*
GLIBC_2.0 A
GLIBC_2.0 i.86-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.1 i.86-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
| GLIBC_2.2 ia64-.*-linux.*
pthread_attr_init F
pthread_create F
sem_destroy F
sem_getvalue F
sem_init F
sem_post F
sem_trywait F
sem_wait F
GLIBC_2.0 i.86-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
| GLIBC_2.2 ia64-.*-linux.*
_IO_flockfile F
_IO_ftrylockfile F
_IO_funlockfile F
__close F
__connect F
__errno_location F
__fcntl F
__fork F
__h_errno_location F
__lseek F
__open F
__pthread_getspecific F
__pthread_key_create F
__pthread_mutex_destroy F
__pthread_mutex_init F
__pthread_mutex_lock F
__pthread_mutex_trylock F
__pthread_mutex_unlock F
__pthread_mutexattr_destroy F
__pthread_mutexattr_init F
__pthread_mutexattr_settype F
__pthread_once F
__pthread_setspecific F
__read F
__send F
__sigaction F
__wait F
__write F
_pthread_cleanup_pop F
_pthread_cleanup_pop_restore F
_pthread_cleanup_push F
_pthread_cleanup_push_defer F
accept F
close F
connect F
fcntl F
flockfile F
fork F
fsync F
ftrylockfile F
funlockfile F
longjmp F
lseek F
msync F
nanosleep F
open F
pause F
pthread_atfork F
pthread_attr_destroy F
pthread_attr_getdetachstate F
pthread_attr_getinheritsched F
pthread_attr_getschedparam F
pthread_attr_getschedpolicy F
pthread_attr_getscope F
pthread_attr_setdetachstate F
pthread_attr_setinheritsched F
pthread_attr_setschedparam F
pthread_attr_setschedpolicy F
pthread_attr_setscope F
pthread_cancel F
pthread_condattr_destroy F
pthread_condattr_init F
pthread_detach F
pthread_equal F
pthread_exit F
pthread_getschedparam F
pthread_getspecific F
pthread_join F
pthread_key_create F
pthread_key_delete F
pthread_kill F
pthread_kill_other_threads_np F
pthread_mutex_destroy F
pthread_mutex_init F
pthread_mutex_lock F
pthread_mutex_trylock F
pthread_mutex_unlock F
pthread_mutexattr_destroy F
pthread_mutexattr_getkind_np F
pthread_mutexattr_init F
pthread_mutexattr_setkind_np F
pthread_once F
pthread_self F
pthread_setcancelstate F
pthread_setcanceltype F
pthread_setschedparam F
pthread_setspecific F
pthread_sigmask F
pthread_testcancel F
raise F
read F
recv F
recvfrom F
recvmsg F
send F
sendmsg F
sendto F
sigaction F
siglongjmp F
sigwait F
system F
tcdrain F
vfork F
wait F
waitpid F
write F
GLIBC_2.0 i.86-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
| GLIBC_2.2 ia64-.*-linux.*
| GLIBC_2.3.2 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.* x86_64-.*-linux.*
pthread_cond_broadcast F
pthread_cond_destroy F
pthread_cond_init F
pthread_cond_signal F
pthread_cond_timedwait F
pthread_cond_wait F
GLIBC_2.1.1 i.86-.*-linux.* powerpc-.*-linux.*
GLIBC_2.1.1 A
GLIBC_2.1.1 i.86-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
| GLIBC_2.2 ia64-.*-linux.*
sem_close F
sem_open F
sem_unlink F
GLIBC_2.1.2 i.86-.*-linux.* powerpc-.*-linux.*
GLIBC_2.1.2 A
GLIBC_2.1.2 i.86-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
| GLIBC_2.2 ia64-.*-linux.*
__vfork F
GLIBC_2.1 i.86-.*-linux.* powerpc-.*-linux.*
GLIBC_2.1 A
GLIBC_2.1 i.86-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
| GLIBC_2.2 ia64-.*-linux.*
__libc_allocate_rtsig F
__libc_current_sigrtmax F
__libc_current_sigrtmin F
pthread_attr_getguardsize F
pthread_attr_getstackaddr F
pthread_attr_getstacksize F
pthread_attr_setguardsize F
pthread_attr_setstackaddr F
pthread_attr_setstacksize F
pthread_getconcurrency F
pthread_mutexattr_gettype F
pthread_mutexattr_settype F
pthread_rwlock_destroy F
pthread_rwlock_init F
pthread_rwlock_rdlock F
pthread_rwlock_tryrdlock F
pthread_rwlock_trywrlock F
pthread_rwlock_unlock F
pthread_rwlock_wrlock F
pthread_rwlockattr_destroy F
pthread_rwlockattr_getkind_np F
pthread_rwlockattr_getpshared F
pthread_rwlockattr_init F
pthread_rwlockattr_setkind_np F
pthread_rwlockattr_setpshared F
pthread_setconcurrency F
GLIBC_2.2.3 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
GLIBC_2.2.3 A
GLIBC_2.2.3 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
pthread_getattr_np F
GLIBC_2.2.5 x86_64-.*-linux.*
GLIBC_2.2.5 A
GLIBC_2.2.5 x86_64-.*-linux.*
| GLIBC_2.2 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
__open64 F
__pread64 F
__pthread_rwlock_destroy F
__pthread_rwlock_init F
__pthread_rwlock_rdlock F
__pthread_rwlock_tryrdlock F
__pthread_rwlock_trywrlock F
__pthread_rwlock_unlock F
__pthread_rwlock_wrlock F
__pwrite64 F
__res_state F
lseek64 F
open64 F
pread F
pread64 F
pthread_attr_getstack F
pthread_attr_setstack F
pthread_barrier_destroy F
pthread_barrier_init F
pthread_barrier_wait F
pthread_barrierattr_destroy F
pthread_barrierattr_init F
pthread_barrierattr_setpshared F
pthread_condattr_getpshared F
pthread_condattr_setpshared F
pthread_getcpuclockid F
pthread_mutex_timedlock F
pthread_mutexattr_getpshared F
pthread_mutexattr_setpshared F
pthread_rwlock_timedrdlock F
pthread_rwlock_timedwrlock F
pthread_spin_destroy F
pthread_spin_init F
pthread_spin_lock F
pthread_spin_trylock F
pthread_spin_unlock F
pthread_yield F
pwrite F
pwrite64 F
sem_timedwait F
GLIBC_2.2.6 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.* x86_64-.*-linux.*
GLIBC_2.2.6 A
__nanosleep F
GLIBC_2.2 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
GLIBC_2.2 A
GLIBC_2.3.2 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.* x86_64-.*-linux.*
GLIBC_2.3.2 A

88
abilist/libresolv.abilist Normal file
View File

@ -0,0 +1,88 @@
GLIBC_2.0 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
GLIBC_2.0 A
dn_expand F
res_mkquery F
res_query F
res_querydomain F
res_search F
GLIBC_2.0 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
__b64_ntop F
__b64_pton F
__dn_comp F
__dn_count_labels F
__dn_skipname F
__fp_nquery F
__fp_query F
__fp_resstat F
__hostalias F
__loc_aton F
__loc_ntoa F
__p_cdname F
__p_cdnname F
__p_class F
__p_fqname F
__p_fqnname F
__p_option F
__p_query F
__p_secstodate F
__p_time F
__p_type F
__putlong F
__putshort F
__res_close F
__res_dnok F
__res_hnok F
__res_isourserver F
__res_mailok F
__res_nameinquery F
__res_ownok F
__res_queriesmatch F
__res_send F
__sym_ntop F
__sym_ntos F
__sym_ston F
_gethtbyaddr F
_gethtbyname F
_gethtbyname2 F
_gethtent F
_getlong F
_getshort F
_sethtent F
inet_net_ntop F
inet_net_pton F
inet_neta F
res_gethostbyaddr F
res_gethostbyname F
res_gethostbyname2 F
res_send_setqhook F
res_send_setrhook F
GLIBC_2.0 i.86-.*-linux.* powerpc-.*-linux.*
__p_class_syms D 0x54
__p_type_syms D 0x21c
_res_opcodes D 0x40
GLIBC_2.0 ia64-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
__p_class_syms D 0xa8
__p_type_syms D 0x438
_res_opcodes D 0x80
GLIBC_2.2.5 x86_64-.*-linux.*
GLIBC_2.2.5 A
GLIBC_2.2.5 x86_64-.*-linux.*
| GLIBC_2.2 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
__dn_expand F
__res_hostalias F
__res_mkquery F
__res_nmkquery F
__res_nquery F
__res_nquerydomain F
__res_nsearch F
__res_nsend F
__res_query F
__res_querydomain F
__res_search F
GLIBC_2.2 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
GLIBC_2.2 A
GLIBC_2.3.2 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.* x86_64-.*-linux.*
GLIBC_2.3.2 A
__p_rcode F

39
abilist/librt.abilist Normal file
View File

@ -0,0 +1,39 @@
GLIBC_2.1 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
GLIBC_2.1 A
GLIBC_2.1 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
aio_cancel F
aio_cancel64 F
aio_error F
aio_error64 F
aio_fsync F
aio_fsync64 F
aio_init F
aio_read F
aio_read64 F
aio_return F
aio_return64 F
aio_suspend F
aio_suspend64 F
aio_write F
aio_write64 F
lio_listio F
lio_listio64 F
GLIBC_2.2.5 x86_64-.*-linux.*
GLIBC_2.2.5 A
GLIBC_2.2.5 x86_64-.*-linux.*
| GLIBC_2.2 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
clock_getcpuclockid F
clock_getres F
clock_gettime F
clock_nanosleep F
clock_settime F
shm_open F
shm_unlink F
timer_create F
timer_delete F
timer_getoverrun F
timer_gettime F
timer_settime F
GLIBC_2.2 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
GLIBC_2.2 A

View File

@ -0,0 +1,54 @@
GLIBC_2.1.3 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
GLIBC_2.1.3 A
GLIBC_2.1.3 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
td_init F
td_log F
td_ta_clear_event F
td_ta_delete F
td_ta_enable_stats F
td_ta_event_addr F
td_ta_event_getmsg F
td_ta_get_nthreads F
td_ta_get_ph F
td_ta_get_stats F
td_ta_map_id2thr F
td_ta_map_lwp2thr F
td_ta_new F
td_ta_reset_stats F
td_ta_set_event F
td_ta_setconcurrency F
td_ta_thr_iter F
td_ta_tsd_iter F
td_thr_clear_event F
td_thr_dbresume F
td_thr_dbsuspend F
td_thr_event_enable F
td_thr_event_getmsg F
td_thr_get_info F
td_thr_getfpregs F
td_thr_getgregs F
td_thr_getxregs F
td_thr_getxregsize F
td_thr_set_event F
td_thr_setfpregs F
td_thr_setgregs F
td_thr_setprio F
td_thr_setsigpending F
td_thr_setxregs F
td_thr_sigsetmask F
td_thr_tsd F
td_thr_validate F
GLIBC_2.2.3 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
GLIBC_2.2.3 A
GLIBC_2.2.3 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
td_symbol_list F
GLIBC_2.2.5 x86_64-.*-linux.*
GLIBC_2.2.5 A
GLIBC_2.3.3 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.* x86_64-.*-linux.*
GLIBC_2.3.3 A
td_thr_tlsbase F
GLIBC_2.3 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.* x86_64-.*-linux.*
GLIBC_2.3 A
td_thr_tls_get_addr F

12
abilist/libutil.abilist Normal file
View File

@ -0,0 +1,12 @@
GLIBC_2.0 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
GLIBC_2.0 A
GLIBC_2.0 i.86-.*-linux.* ia64-.*-linux.* powerpc-.*-linux.*
| GLIBC_2.2.5 x86_64-.*-linux.*
forkpty F
login F
login_tty F
logout F
logwtmp F
openpty F
GLIBC_2.2.5 x86_64-.*-linux.*
GLIBC_2.2.5 A

View File

@ -1,5 +1,16 @@
2003-03-18 Roland McGrath <roland@redhat.com>
* sysdeps/unix/sysv/linux/powerpc/lowlevellock.h (__lll_test_and_set):
Add __lll_rel_instr first. Add memory clobber.
(lll_mutex_unlock): Use __lll_test_and_set.
From Paul Mackerras <paulus@samba.org>.
* sysdeps/powerpc/tls.h (TLS_MULTIPLE_THREADS_IN_TCB): Define
unconditionally.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h
(SINGLE_THREAD_P): Add `header.' prefix.
From Paul Mackerras <paulus@samba.org>.
* Versions (libpthread: GLIBC_2.3.2): Move pthread_tryjoin_np and
pthread_timedjoin_np to ...
(libpthread: GLIBC_2.3.3): ... here.

View File

@ -54,10 +54,8 @@ typedef union dtv
/* The TP points to the start of the thread blocks. */
# define TLS_DTV_AT_TP 1
/* For 32-bit, we use the multiple_threads field in the pthread struct */
#ifndef __powerpc64__
# define TLS_MULTIPLE_THREADS_IN_TCB 1
#endif
/* We use the multiple_threads field in the pthread struct */
#define TLS_MULTIPLE_THREADS_IN_TCB 1
/* Get the thread descriptor definition. */
# include <nptl/descr.h>

View File

@ -102,12 +102,13 @@
/* Atomically store newval and return the old value. */
#define __lll_test_and_set(futex, newval) \
({ int __val; \
__asm __volatile ("1: lwarx %0,0,%3\n" \
__asm __volatile (__lll_rel_instr "\n" \
"1: lwarx %0,0,%3\n" \
" stwcx. %2,0,%3\n" \
" bne- 1b" \
: "=&r" (__val), "=m" (*futex) \
: "r" (futex), "r" (newval), "1" (*futex) \
: "cr0"); \
: "cr0", "memory"); \
__val; })
@ -135,16 +136,12 @@ extern int __lll_timedlock_wait
})
#define lll_mutex_unlock(lock) \
(void) ({ \
((void) ({ \
int *__futex = &(lock); \
__asm __volatile (__lll_rel_instr ::: "memory"); \
int __val = __lll_add (__futex, -1); \
if (__builtin_expect (__val != 1, 0)) \
{ \
*__futex = 0; \
lll_futex_wake (__futex, 1); \
} \
})
int __val = __lll_test_and_set (__futex, 0); \
if (__builtin_expect (__val > 1, 0)) \
lll_futex_wake (__futex, 1); \
}))
#define lll_mutex_islocked(futex) \
(futex != 0)

View File

@ -86,8 +86,8 @@
# ifndef __ASSEMBLER__
# define SINGLE_THREAD_P \
__builtin_expect (THREAD_GETMEM (THREAD_SELF, multiple_threads) \
== 0, 1)
__builtin_expect (THREAD_GETMEM (THREAD_SELF, \
header.multiple_threads) == 0, 1)
# else
# define SINGLE_THREAD_P \
lwz 10,MULTIPLE_THREADS_OFFSET(13); \