summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog262
-rw-r--r--Makefile3
-rw-r--r--Makerules2
-rwxr-xr-xconfigure43
-rw-r--r--configure.in29
-rw-r--r--debug/execinfo.h2
-rw-r--r--elf/dl-load.c2
-rw-r--r--elf/dl-open.c2
-rw-r--r--elf/elf.h29
-rw-r--r--fedora/branch.mk4
-rw-r--r--include/libc-symbols.h72
-rw-r--r--include/netdb.h7
-rw-r--r--include/netinet/ether.h2
-rw-r--r--include/pty.h6
-rw-r--r--include/rpc/netdb.h2
-rw-r--r--include/rpcsvc/nislib.h44
-rw-r--r--include/rpcsvc/yp.h18
-rw-r--r--include/rpcsvc/ypclnt.h10
-rw-r--r--include/rpcsvc/ypupd.h6
-rw-r--r--include/utmp.h3
-rw-r--r--localedata/ChangeLog170
-rw-r--r--localedata/SUPPORTED3
-rw-r--r--localedata/locales/af_ZA2
-rw-r--r--localedata/locales/an_ES2
-rw-r--r--localedata/locales/ar_AE2
-rw-r--r--localedata/locales/ar_BH2
-rw-r--r--localedata/locales/ar_DZ2
-rw-r--r--localedata/locales/ar_EG2
-rw-r--r--localedata/locales/ar_IN2
-rw-r--r--localedata/locales/ar_IQ2
-rw-r--r--localedata/locales/ar_JO2
-rw-r--r--localedata/locales/ar_KW2
-rw-r--r--localedata/locales/ar_LB2
-rw-r--r--localedata/locales/ar_LY2
-rw-r--r--localedata/locales/ar_MA2
-rw-r--r--localedata/locales/ar_OM2
-rw-r--r--localedata/locales/ar_QA2
-rw-r--r--localedata/locales/ar_SA2
-rw-r--r--localedata/locales/ar_SD2
-rw-r--r--localedata/locales/ar_SY2
-rw-r--r--localedata/locales/ar_TN2
-rw-r--r--localedata/locales/ar_YE2
-rw-r--r--localedata/locales/be_BY2
-rw-r--r--localedata/locales/bn_IN2
-rw-r--r--localedata/locales/br_FR@euro2
-rw-r--r--localedata/locales/ca_ES2
-rw-r--r--localedata/locales/ca_ES@euro2
-rw-r--r--localedata/locales/cs_CZ2
-rw-r--r--localedata/locales/da_DK2
-rw-r--r--localedata/locales/de_AT2
-rw-r--r--localedata/locales/de_AT@euro2
-rw-r--r--localedata/locales/de_BE2
-rw-r--r--localedata/locales/de_BE@euro2
-rw-r--r--localedata/locales/de_CH2
-rw-r--r--localedata/locales/de_DE2
-rw-r--r--localedata/locales/de_DE@euro2
-rw-r--r--localedata/locales/de_LU2
-rw-r--r--localedata/locales/de_LU@euro2
-rw-r--r--localedata/locales/el_GR2
-rw-r--r--localedata/locales/el_GR@euro2
-rw-r--r--localedata/locales/en_AU2
-rw-r--r--localedata/locales/en_BW2
-rw-r--r--localedata/locales/en_CA2
-rw-r--r--localedata/locales/en_DK2
-rw-r--r--localedata/locales/en_GB2
-rw-r--r--localedata/locales/en_HK2
-rw-r--r--localedata/locales/en_IE2
-rw-r--r--localedata/locales/en_IE@euro2
-rw-r--r--localedata/locales/en_IN2
-rw-r--r--localedata/locales/en_NZ2
-rw-r--r--localedata/locales/en_PH2
-rw-r--r--localedata/locales/en_SG2
-rw-r--r--localedata/locales/en_US2
-rw-r--r--localedata/locales/en_ZW2
-rw-r--r--localedata/locales/es_AR2
-rw-r--r--localedata/locales/es_BO2
-rw-r--r--localedata/locales/es_CL2
-rw-r--r--localedata/locales/es_CO2
-rw-r--r--localedata/locales/es_CR2
-rw-r--r--localedata/locales/es_DO2
-rw-r--r--localedata/locales/es_EC2
-rw-r--r--localedata/locales/es_ES2
-rw-r--r--localedata/locales/es_ES@euro2
-rw-r--r--localedata/locales/es_GT2
-rw-r--r--localedata/locales/es_HN2
-rw-r--r--localedata/locales/es_MX2
-rw-r--r--localedata/locales/es_NI2
-rw-r--r--localedata/locales/es_PA2
-rw-r--r--localedata/locales/es_PE2
-rw-r--r--localedata/locales/es_PR2
-rw-r--r--localedata/locales/es_PY2
-rw-r--r--localedata/locales/es_SV2
-rw-r--r--localedata/locales/es_US2
-rw-r--r--localedata/locales/es_UY2
-rw-r--r--localedata/locales/es_VE2
-rw-r--r--localedata/locales/et_EE2
-rw-r--r--localedata/locales/eu_ES2
-rw-r--r--localedata/locales/eu_ES@euro2
-rw-r--r--localedata/locales/fi_FI2
-rw-r--r--localedata/locales/fi_FI@euro2
-rw-r--r--localedata/locales/fo_FO2
-rw-r--r--localedata/locales/fr_BE2
-rw-r--r--localedata/locales/fr_BE@euro2
-rw-r--r--localedata/locales/fr_CA2
-rw-r--r--localedata/locales/fr_CH2
-rw-r--r--localedata/locales/fr_FR2
-rw-r--r--localedata/locales/fr_FR@euro2
-rw-r--r--localedata/locales/fr_LU2
-rw-r--r--localedata/locales/fr_LU@euro2
-rw-r--r--localedata/locales/ga_IE2
-rw-r--r--localedata/locales/ga_IE@euro2
-rw-r--r--localedata/locales/gl_ES2
-rw-r--r--localedata/locales/gl_ES@euro2
-rw-r--r--localedata/locales/gu_IN2
-rw-r--r--localedata/locales/gv_GB2
-rw-r--r--localedata/locales/he_IL2
-rw-r--r--localedata/locales/hi_IN2
-rw-r--r--localedata/locales/hr_HR2
-rw-r--r--localedata/locales/hu_HU2
-rw-r--r--localedata/locales/id_ID2
-rw-r--r--localedata/locales/is_IS2
-rw-r--r--localedata/locales/it_CH2
-rw-r--r--localedata/locales/it_IT2
-rw-r--r--localedata/locales/it_IT@euro2
-rw-r--r--localedata/locales/iw_IL2
-rw-r--r--localedata/locales/ja_JP2
-rw-r--r--localedata/locales/kk_KZ2
-rw-r--r--localedata/locales/kl_GL2
-rw-r--r--localedata/locales/kn_IN2
-rw-r--r--localedata/locales/ko_KR2
-rw-r--r--localedata/locales/kw_GB2
-rw-r--r--localedata/locales/lo_LA2
-rw-r--r--localedata/locales/lt_LT2
-rw-r--r--localedata/locales/lv_LV2
-rw-r--r--localedata/locales/ml_IN2
-rw-r--r--localedata/locales/mn_MN2
-rw-r--r--localedata/locales/mr_IN2
-rw-r--r--localedata/locales/ms_MY2
-rw-r--r--localedata/locales/mt_MT2
-rw-r--r--localedata/locales/nb_NO2
-rw-r--r--localedata/locales/nl_BE2
-rw-r--r--localedata/locales/nl_BE@euro2
-rw-r--r--localedata/locales/nl_NL2
-rw-r--r--localedata/locales/nl_NL@euro2
-rw-r--r--localedata/locales/nn_NO2
-rw-r--r--localedata/locales/pa_IN2
-rw-r--r--localedata/locales/pl_PL2
-rw-r--r--localedata/locales/pt_BR2
-rw-r--r--localedata/locales/pt_PT2
-rw-r--r--localedata/locales/pt_PT@euro2
-rw-r--r--localedata/locales/ro_RO2
-rw-r--r--localedata/locales/ru_RU2
-rw-r--r--localedata/locales/ru_UA2
-rw-r--r--localedata/locales/sk_SK2
-rw-r--r--localedata/locales/sl_SI2
-rw-r--r--localedata/locales/sq_AL2
-rw-r--r--localedata/locales/sv_FI2
-rw-r--r--localedata/locales/sv_FI@euro2
-rw-r--r--localedata/locales/sv_SE2
-rw-r--r--localedata/locales/ta_IN2
-rw-r--r--localedata/locales/te_IN2
-rw-r--r--localedata/locales/th_TH2
-rw-r--r--localedata/locales/tr_TR25
-rw-r--r--localedata/locales/uk_UA2
-rw-r--r--localedata/locales/ur_PK2
-rw-r--r--localedata/locales/vi_VN2
-rw-r--r--localedata/locales/wa_BE@euro2
-rw-r--r--localedata/locales/zh_CN2
-rw-r--r--localedata/locales/zh_HK2
-rw-r--r--localedata/locales/zh_SG2
-rw-r--r--localedata/locales/zh_TW2
-rw-r--r--login/login_tty.c1
-rw-r--r--login/openpty.c3
-rw-r--r--malloc/malloc.c26
-rw-r--r--nis/nis_add.c3
-rw-r--r--nis/nis_addmember.c5
-rw-r--r--nis/nis_call.c91
-rw-r--r--nis/nis_clone_obj.c36
-rw-r--r--nis/nis_defaults.c5
-rw-r--r--nis/nis_domain_of_r.c16
-rw-r--r--nis/nis_error.c4
-rw-r--r--nis/nis_file.c15
-rw-r--r--nis/nis_free.c7
-rw-r--r--nis/nis_local_names.c30
-rw-r--r--nis/nis_lookup.c3
-rw-r--r--nis/nis_modify.c5
-rw-r--r--nis/nis_print.c11
-rw-r--r--nis/nis_remove.c3
-rw-r--r--nis/nis_subr.c16
-rw-r--r--nis/nis_table.c1
-rw-r--r--nis/nis_util.c2
-rw-r--r--nis/nisplus-parser.h6
-rw-r--r--nis/nss_nisplus/nisplus-parser.c5
-rw-r--r--nis/yp_xdr.c129
-rw-r--r--nis/ypclnt.c50
-rw-r--r--nis/ypupdate_xdr.c15
-rw-r--r--nptl/ChangeLog31
-rw-r--r--nptl/pthread_create.c6
-rw-r--r--nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S16
-rw-r--r--nptl/sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S49
-rw-r--r--nptl/sysdeps/unix/sysv/linux/sh/sem_timedwait.S10
-rw-r--r--nptl/sysdeps/unix/sysv/linux/smp.h7
-rw-r--r--nss/nss_files/files-netgrp.c1
-rw-r--r--nss/nss_files/files-parse.c10
-rw-r--r--posix/execvp.c7
-rw-r--r--resolv/nss_dns/dns-host.c17
-rw-r--r--resolv/res_send.c466
-rw-r--r--sysdeps/am29k/ffs.c43
-rw-r--r--sysdeps/cris/Dist1
-rw-r--r--sysdeps/cris/Implies3
-rw-r--r--sysdeps/cris/Makefile44
-rw-r--r--sysdeps/cris/__longjmp.S38
-rw-r--r--sysdeps/cris/_mcount.S36
-rw-r--r--sysdeps/cris/bits/endian.h7
-rw-r--r--sysdeps/cris/bits/setjmp.h54
-rw-r--r--sysdeps/cris/bits/string.h26
-rw-r--r--sysdeps/cris/dl-machine.h391
-rw-r--r--sysdeps/cris/elf/start.S141
-rw-r--r--sysdeps/cris/machine-gmon.h28
-rw-r--r--sysdeps/cris/memcopy.h57
-rw-r--r--sysdeps/cris/memusage.h27
-rw-r--r--sysdeps/cris/setjmp.S66
-rw-r--r--sysdeps/cris/stackinfo.h28
-rw-r--r--sysdeps/cris/sysdep.h114
-rw-r--r--sysdeps/cris/wordcopy.c1
-rwxr-xr-xsysdeps/hppa/configure34
-rw-r--r--sysdeps/hppa/configure.in22
-rw-r--r--sysdeps/i386/Makefile4
-rw-r--r--sysdeps/i386/backtrace.c119
-rw-r--r--sysdeps/i860/memcopy.h33
-rw-r--r--sysdeps/i960/Implies3
-rw-r--r--sysdeps/i960/add_n.s21
-rw-r--r--sysdeps/i960/addmul_1.s26
-rw-r--r--sysdeps/i960/ffs.c46
-rw-r--r--sysdeps/i960/mul_1.s23
-rw-r--r--sysdeps/i960/sub_n.s21
-rw-r--r--sysdeps/m68k/dl-machine.h6
-rw-r--r--sysdeps/m88k/add_n.s104
-rw-r--r--sysdeps/m88k/ffs.c45
-rw-r--r--sysdeps/m88k/m88100/add_n.S133
-rw-r--r--sysdeps/m88k/m88100/add_n.s103
-rw-r--r--sysdeps/m88k/m88100/mul_1.S127
-rw-r--r--sysdeps/m88k/m88100/mul_1.s128
-rw-r--r--sysdeps/m88k/m88100/sub_n.S134
-rw-r--r--sysdeps/m88k/m88100/sub_n.s104
-rw-r--r--sysdeps/m88k/m88110/add_n.S200
-rw-r--r--sysdeps/m88k/m88110/addmul_1.s61
-rw-r--r--sysdeps/m88k/m88110/mul_1.S80
-rw-r--r--sysdeps/m88k/m88110/mul_1.s59
-rw-r--r--sysdeps/m88k/m88110/sub_n.S276
-rw-r--r--sysdeps/m88k/mul_1.s127
-rw-r--r--sysdeps/m88k/sub_n.s106
-rw-r--r--sysdeps/mach/hurd/fork.c10
-rw-r--r--sysdeps/mach/hurd/i386/tls.h67
-rw-r--r--sysdeps/sh/dl-machine.h95
-rw-r--r--sysdeps/standalone/Dist2
-rw-r--r--sysdeps/standalone/Subdirs4
-rw-r--r--sysdeps/standalone/arm/bits/errno.h65
-rw-r--r--sysdeps/standalone/arm/sysdep.c32
-rw-r--r--sysdeps/standalone/bits/errno.h59
-rw-r--r--sysdeps/standalone/brk.c66
-rw-r--r--sysdeps/standalone/close.c43
-rw-r--r--sysdeps/standalone/dirstream.h43
-rw-r--r--sysdeps/standalone/filedesc.h48
-rw-r--r--sysdeps/standalone/i386/Dist1
-rw-r--r--sysdeps/standalone/i386/force_cpu386/Dist1
-rw-r--r--sysdeps/standalone/i386/force_cpu386/Makefile26
-rw-r--r--sysdeps/standalone/i386/force_cpu386/_exit.c47
-rw-r--r--sysdeps/standalone/i386/force_cpu386/brdinit.c42
-rw-r--r--sysdeps/standalone/i386/force_cpu386/console.c163
-rw-r--r--sysdeps/standalone/i386/force_cpu386/strtsupp.S87
-rw-r--r--sysdeps/standalone/i386/force_cpu386/target.ld58
-rw-r--r--sysdeps/standalone/i386/i386.h326
-rw-r--r--sysdeps/standalone/i386/start.S338
-rw-r--r--sysdeps/standalone/i960/Dist1
-rw-r--r--sysdeps/standalone/i960/i960ca.h206
-rw-r--r--sysdeps/standalone/i960/nindy960/Makefile24
-rw-r--r--sysdeps/standalone/i960/nindy960/_exit.c55
-rw-r--r--sysdeps/standalone/i960/nindy960/brdinit.c64
-rw-r--r--sysdeps/standalone/i960/nindy960/console.c76
-rw-r--r--sysdeps/standalone/i960/start.S152
-rw-r--r--sysdeps/standalone/m68k/m68020/Dist1
-rw-r--r--sysdeps/standalone/m68k/m68020/m68020.h87
-rw-r--r--sysdeps/standalone/m68k/m68020/mvme135/Implies2
-rw-r--r--sysdeps/standalone/m68k/m68020/mvme136/Dist1
-rw-r--r--sysdeps/standalone/m68k/m68020/mvme136/Makefile23
-rw-r--r--sysdeps/standalone/m68k/m68020/mvme136/_exit.c50
-rw-r--r--sysdeps/standalone/m68k/m68020/mvme136/brdinit.c51
-rw-r--r--sysdeps/standalone/m68k/m68020/mvme136/console.c101
-rw-r--r--sysdeps/standalone/m68k/m68020/mvme136/mvme136.ld61
-rw-r--r--sysdeps/standalone/m68k/m68020/start.S172
-rw-r--r--sysdeps/standalone/open.c125
-rw-r--r--sysdeps/standalone/read.c86
-rw-r--r--sysdeps/standalone/standalone.h31
-rw-r--r--sysdeps/standalone/write.c73
-rw-r--r--sysdeps/tahoe/Implies2
-rw-r--r--sysdeps/unix/bsd/hp/Dist1
-rw-r--r--sysdeps/unix/bsd/hp/m68k/brk.S46
-rw-r--r--sysdeps/unix/bsd/hp/m68k/dl-brk.S1
-rw-r--r--sysdeps/unix/bsd/hp/m68k/start.c10
-rw-r--r--sysdeps/unix/bsd/hp/m68k/sysdep.h56
-rw-r--r--sysdeps/unix/bsd/hp/m68k/vfork.S56
-rw-r--r--sysdeps/unix/bsd/hp/m68k/wait3.S39
-rw-r--r--sysdeps/unix/bsd/osf/Dist1
-rw-r--r--sysdeps/unix/bsd/osf/Implies2
-rw-r--r--sysdeps/unix/bsd/osf/Makefile3
-rw-r--r--sysdeps/unix/bsd/osf/alpha/bits/stat.h79
-rw-r--r--sysdeps/unix/bsd/osf/alpha/brk.S54
-rw-r--r--sysdeps/unix/bsd/osf/alpha/dl-brk.S1
-rw-r--r--sysdeps/unix/bsd/osf/alpha/fork.S28
-rw-r--r--sysdeps/unix/bsd/osf/alpha/killpg.S27
-rw-r--r--sysdeps/unix/bsd/osf/alpha/recv.S26
-rw-r--r--sysdeps/unix/bsd/osf/alpha/send.S26
-rw-r--r--sysdeps/unix/bsd/osf/alpha/sigblock.S29
-rw-r--r--sysdeps/unix/bsd/osf/alpha/sigpause.S30
-rw-r--r--sysdeps/unix/bsd/osf/alpha/sigsetmask.S29
-rw-r--r--sysdeps/unix/bsd/osf/alpha/sigvec.S29
-rw-r--r--sysdeps/unix/bsd/osf/alpha/start.S83
-rw-r--r--sysdeps/unix/bsd/osf/alpha/syscalls.list3
-rw-r--r--sysdeps/unix/bsd/osf/alpha/sysdep.h30
-rw-r--r--sysdeps/unix/bsd/osf/alpha/vhangup.S26
-rw-r--r--sysdeps/unix/bsd/osf/alpha/waitpid.c1
-rw-r--r--sysdeps/unix/bsd/osf/bits/mman.h71
-rw-r--r--sysdeps/unix/bsd/osf/bits/sigaction.h50
-rw-r--r--sysdeps/unix/bsd/osf/syscalls.list3
-rw-r--r--sysdeps/unix/bsd/osf/system.c2
-rw-r--r--sysdeps/unix/bsd/sequent/i386/getgroups.S44
-rw-r--r--sysdeps/unix/bsd/sequent/i386/sigvec.S45
-rw-r--r--sysdeps/unix/bsd/sequent/i386/syscall.S31
-rw-r--r--sysdeps/unix/bsd/sequent/i386/sysdep.h82
-rw-r--r--sysdeps/unix/bsd/sony/newsos/m68k/Implies2
-rw-r--r--sysdeps/unix/bsd/sony/newsos/m68k/sysdep.h56
-rw-r--r--sysdeps/unix/bsd/sony/newsos4/Makefile3
-rw-r--r--sysdeps/unix/bsd/sony/newsos4/syscalls.list3
-rw-r--r--sysdeps/unix/bsd/sony/newsos4/wait.c1
-rw-r--r--sysdeps/unix/bsd/sony/newsos4/wait3.c1
-rw-r--r--sysdeps/unix/bsd/sony/newsos4/wait4.c1
-rw-r--r--sysdeps/unix/bsd/tahoe/Implies1
-rw-r--r--sysdeps/unix/bsd/tahoe/sysdep.h5
-rw-r--r--sysdeps/unix/bsd/ultrix4/Implies2
-rw-r--r--sysdeps/unix/bsd/ultrix4/Makefile3
-rw-r--r--sysdeps/unix/bsd/ultrix4/bits/fcntl.h122
-rw-r--r--sysdeps/unix/bsd/ultrix4/bits/mman.h51
-rw-r--r--sysdeps/unix/bsd/ultrix4/bits/posix_opt.h24
-rw-r--r--sysdeps/unix/bsd/ultrix4/bits/utsname.h23
-rw-r--r--sysdeps/unix/bsd/ultrix4/mips/Dist1
-rw-r--r--sysdeps/unix/bsd/ultrix4/mips/Makefile3
-rw-r--r--sysdeps/unix/bsd/ultrix4/mips/__handler.S115
-rw-r--r--sysdeps/unix/bsd/ultrix4/mips/bits/sigcontext.h63
-rw-r--r--sysdeps/unix/bsd/ultrix4/mips/sigvec.c55
-rw-r--r--sysdeps/unix/bsd/ultrix4/mips/start.S87
-rw-r--r--sysdeps/unix/bsd/ultrix4/mips/syscalls.list3
-rw-r--r--sysdeps/unix/bsd/ultrix4/mips/sysdep.h3
-rw-r--r--sysdeps/unix/bsd/ultrix4/mips/vfork.S36
-rw-r--r--sysdeps/unix/bsd/ultrix4/syscalls.list3
-rw-r--r--sysdeps/unix/bsd/ultrix4/sysconf.c61
-rw-r--r--sysdeps/unix/bsd/ultrix4/system.c2
-rw-r--r--sysdeps/unix/bsd/ultrix4/wait3.S26
-rw-r--r--sysdeps/unix/bsd/vax/brk.S47
-rw-r--r--sysdeps/unix/bsd/vax/dl-brk.S1
-rw-r--r--sysdeps/unix/bsd/vax/pipe.S29
-rw-r--r--sysdeps/unix/bsd/vax/sysdep.S35
-rw-r--r--sysdeps/unix/bsd/vax/sysdep.h55
-rw-r--r--sysdeps/unix/bsd/vax/vfork.S57
-rw-r--r--sysdeps/unix/bsd/vax/wait.S27
-rw-r--r--sysdeps/unix/bsd/vax/wait3.S37
-rw-r--r--sysdeps/unix/sysv/aix/Dist15
-rw-r--r--sysdeps/unix/sysv/aix/Implies8
-rw-r--r--sysdeps/unix/sysv/aix/Makefile41
-rw-r--r--sysdeps/unix/sysv/aix/Versions6
-rw-r--r--sysdeps/unix/sysv/aix/_exit.c29
-rw-r--r--sysdeps/unix/sysv/aix/accept.c30
-rw-r--r--sysdeps/unix/sysv/aix/access.c30
-rw-r--r--sysdeps/unix/sysv/aix/bind.c1
-rw-r--r--sysdeps/unix/sysv/aix/bits/dirent.h55
-rw-r--r--sysdeps/unix/sysv/aix/bits/dlfcn.h47
-rw-r--r--sysdeps/unix/sysv/aix/bits/endian.h23
-rw-r--r--sysdeps/unix/sysv/aix/bits/errno.h153
-rw-r--r--sysdeps/unix/sysv/aix/bits/fcntl.h137
-rw-r--r--sysdeps/unix/sysv/aix/bits/ioctl-types.h91
-rw-r--r--sysdeps/unix/sysv/aix/bits/ioctls.h248
-rw-r--r--sysdeps/unix/sysv/aix/bits/poll.h43
-rw-r--r--sysdeps/unix/sysv/aix/bits/resource.h191
-rw-r--r--sysdeps/unix/sysv/aix/bits/setjmp.h46
-rw-r--r--sysdeps/unix/sysv/aix/bits/sigaction.h72
-rw-r--r--sysdeps/unix/sysv/aix/bits/sigcontext.h32
-rw-r--r--sysdeps/unix/sysv/aix/bits/signum.h96
-rw-r--r--sysdeps/unix/sysv/aix/bits/sigset.h125
-rw-r--r--sysdeps/unix/sysv/aix/bits/sigstack.h46
-rw-r--r--sysdeps/unix/sysv/aix/bits/socket.h293
-rw-r--r--sysdeps/unix/sysv/aix/bits/stat.h119
-rw-r--r--sysdeps/unix/sysv/aix/bits/statfs.h77
-rw-r--r--sysdeps/unix/sysv/aix/bits/termios.h189
-rw-r--r--sysdeps/unix/sysv/aix/bits/types.h136
-rw-r--r--sysdeps/unix/sysv/aix/bits/uio.h42
-rw-r--r--sysdeps/unix/sysv/aix/bits/utmp.h73
-rw-r--r--sysdeps/unix/sysv/aix/bits/utmpx.h75
-rw-r--r--sysdeps/unix/sysv/aix/bits/utsname.h23
-rw-r--r--sysdeps/unix/sysv/aix/brk.c25
-rw-r--r--sysdeps/unix/sysv/aix/chdir.c25
-rw-r--r--sysdeps/unix/sysv/aix/chmod.c25
-rw-r--r--sysdeps/unix/sysv/aix/chown.c26
-rw-r--r--sysdeps/unix/sysv/aix/chroot.c1
-rw-r--r--sysdeps/unix/sysv/aix/close.c26
-rw-r--r--sysdeps/unix/sysv/aix/configure6
-rw-r--r--sysdeps/unix/sysv/aix/configure.in6
-rw-r--r--sysdeps/unix/sysv/aix/connect.c11
-rw-r--r--sysdeps/unix/sysv/aix/creat.c1
-rw-r--r--sysdeps/unix/sysv/aix/dl-addr.c30
-rw-r--r--sysdeps/unix/sysv/aix/dl-close.c46
-rw-r--r--sysdeps/unix/sysv/aix/dl-error.c20
-rw-r--r--sysdeps/unix/sysv/aix/dl-libc.c41
-rw-r--r--sysdeps/unix/sysv/aix/dl-open.c133
-rw-r--r--sysdeps/unix/sysv/aix/dl-support.c20
-rw-r--r--sysdeps/unix/sysv/aix/dl-sym.c58
-rw-r--r--sysdeps/unix/sysv/aix/dlldr.h111
-rw-r--r--sysdeps/unix/sysv/aix/environ.c1
-rw-r--r--sysdeps/unix/sysv/aix/euidaccess.c25
-rw-r--r--sysdeps/unix/sysv/aix/execve.c25
-rw-r--r--sysdeps/unix/sysv/aix/fchdir.c26
-rw-r--r--sysdeps/unix/sysv/aix/fchmod.c25
-rw-r--r--sysdeps/unix/sysv/aix/fchown.c25
-rw-r--r--sysdeps/unix/sysv/aix/fcntl.c43
-rw-r--r--sysdeps/unix/sysv/aix/fdatasync.c31
-rw-r--r--sysdeps/unix/sysv/aix/fork.c29
-rw-r--r--sysdeps/unix/sysv/aix/fstatfs.c27
-rw-r--r--sysdeps/unix/sysv/aix/fsync.c31
-rw-r--r--sysdeps/unix/sysv/aix/ftruncate.c28
-rw-r--r--sysdeps/unix/sysv/aix/ftruncate64.c28
-rw-r--r--sysdeps/unix/sysv/aix/fxstat.c32
-rw-r--r--sysdeps/unix/sysv/aix/fxstat64.c33
-rw-r--r--sysdeps/unix/sysv/aix/getdents.c28
-rw-r--r--sysdeps/unix/sysv/aix/getegid.c29
-rw-r--r--sysdeps/unix/sysv/aix/geteuid.c29
-rw-r--r--sysdeps/unix/sysv/aix/getgid.c30
-rw-r--r--sysdeps/unix/sysv/aix/getgroups.c25
-rw-r--r--sysdeps/unix/sysv/aix/gethostname.c27
-rw-r--r--sysdeps/unix/sysv/aix/getpeername.c28
-rw-r--r--sysdeps/unix/sysv/aix/getpgid.c29
-rw-r--r--sysdeps/unix/sysv/aix/getpgrp.c1
-rw-r--r--sysdeps/unix/sysv/aix/getpid.c9
-rw-r--r--sysdeps/unix/sysv/aix/getppid.c1
-rw-r--r--sysdeps/unix/sysv/aix/getpriority.c1
-rw-r--r--sysdeps/unix/sysv/aix/getrlimit.c25
-rw-r--r--sysdeps/unix/sysv/aix/getrlimit64.c25
-rw-r--r--sysdeps/unix/sysv/aix/getrusage.c27
-rw-r--r--sysdeps/unix/sysv/aix/getsid.c27
-rw-r--r--sysdeps/unix/sysv/aix/getsockname.c29
-rw-r--r--sysdeps/unix/sysv/aix/gettimeofday.c98
-rw-r--r--sysdeps/unix/sysv/aix/getuid.c30
-rw-r--r--sysdeps/unix/sysv/aix/gnu/lib-names.h31
-rw-r--r--sysdeps/unix/sysv/aix/init-first.c103
-rw-r--r--sysdeps/unix/sysv/aix/ioctl.c43
-rw-r--r--sysdeps/unix/sysv/aix/kernel_proto.h25
-rw-r--r--sysdeps/unix/sysv/aix/kill.c25
-rw-r--r--sysdeps/unix/sysv/aix/lchown.c25
-rw-r--r--sysdeps/unix/sysv/aix/libc-start.c290
-rw-r--r--sysdeps/unix/sysv/aix/link.c27
-rw-r--r--sysdeps/unix/sysv/aix/lockf.c27
-rw-r--r--sysdeps/unix/sysv/aix/lockf64.c27
-rw-r--r--sysdeps/unix/sysv/aix/lseek.c10
-rw-r--r--sysdeps/unix/sysv/aix/lseek64.c35
-rw-r--r--sysdeps/unix/sysv/aix/lxstat.c32
-rw-r--r--sysdeps/unix/sysv/aix/lxstat64.c33
-rw-r--r--sysdeps/unix/sysv/aix/madvise.c1
-rw-r--r--sysdeps/unix/sysv/aix/mkdir.c25
-rw-r--r--sysdeps/unix/sysv/aix/mknod.c28
-rw-r--r--sysdeps/unix/sysv/aix/mmap.c9
-rw-r--r--sysdeps/unix/sysv/aix/mmap64.c30
-rw-r--r--sysdeps/unix/sysv/aix/mprotect.c25
-rw-r--r--sysdeps/unix/sysv/aix/msgctl.c1
-rw-r--r--sysdeps/unix/sysv/aix/msgget.c1
-rw-r--r--sysdeps/unix/sysv/aix/msgrcv.c1
-rw-r--r--sysdeps/unix/sysv/aix/msgsnd.c1
-rw-r--r--sysdeps/unix/sysv/aix/msync.c1
-rw-r--r--sysdeps/unix/sysv/aix/munmap.c8
-rw-r--r--sysdeps/unix/sysv/aix/nanosleep.c40
-rw-r--r--sysdeps/unix/sysv/aix/net/if.h196
-rw-r--r--sysdeps/unix/sysv/aix/open.c40
-rw-r--r--sysdeps/unix/sysv/aix/pipe.c27
-rw-r--r--sysdeps/unix/sysv/aix/poll.c29
-rw-r--r--sysdeps/unix/sysv/aix/posix_madvise.c8
-rw-r--r--sysdeps/unix/sysv/aix/powerpc/memset.c21
-rw-r--r--sysdeps/unix/sysv/aix/powerpc/register-dump.h281
-rw-r--r--sysdeps/unix/sysv/aix/powerpc/s_lrint.c29
-rw-r--r--sysdeps/unix/sysv/aix/pread.c28
-rw-r--r--sysdeps/unix/sysv/aix/pread64.c28
-rw-r--r--sysdeps/unix/sysv/aix/profil-counter.h27
-rw-r--r--sysdeps/unix/sysv/aix/read.c31
-rw-r--r--sysdeps/unix/sysv/aix/readlink.c8
-rw-r--r--sysdeps/unix/sysv/aix/readv.c38
-rw-r--r--sysdeps/unix/sysv/aix/recv.c28
-rw-r--r--sysdeps/unix/sysv/aix/recvfrom.c31
-rw-r--r--sysdeps/unix/sysv/aix/recvmsg.c29
-rw-r--r--sysdeps/unix/sysv/aix/rename.c1
-rw-r--r--sysdeps/unix/sysv/aix/revoke.c41
-rw-r--r--sysdeps/unix/sysv/aix/rmdir.c25
-rw-r--r--sysdeps/unix/sysv/aix/sbrk.c26
-rw-r--r--sysdeps/unix/sysv/aix/sched_yield.c31
-rw-r--r--sysdeps/unix/sysv/aix/select.c31
-rw-r--r--sysdeps/unix/sysv/aix/semctl.c1
-rw-r--r--sysdeps/unix/sysv/aix/semget.c1
-rw-r--r--sysdeps/unix/sysv/aix/semop.c1
-rw-r--r--sysdeps/unix/sysv/aix/sendmsg.c30
-rw-r--r--sysdeps/unix/sysv/aix/sendto.c1
-rw-r--r--sysdeps/unix/sysv/aix/setegid.c32
-rw-r--r--sysdeps/unix/sysv/aix/seteuid.c32
-rw-r--r--sysdeps/unix/sysv/aix/setgid.c31
-rw-r--r--sysdeps/unix/sysv/aix/setgroups.c1
-rw-r--r--sysdeps/unix/sysv/aix/setitimer.c68
-rw-r--r--sysdeps/unix/sysv/aix/setpgid.c28
-rw-r--r--sysdeps/unix/sysv/aix/setpgrp.c1
-rw-r--r--sysdeps/unix/sysv/aix/setpriority.c1
-rw-r--r--sysdeps/unix/sysv/aix/setregid.c41
-rw-r--r--sysdeps/unix/sysv/aix/setreuid.c41
-rw-r--r--sysdeps/unix/sysv/aix/setrlimit.c25
-rw-r--r--sysdeps/unix/sysv/aix/setrlimit64.c25
-rw-r--r--sysdeps/unix/sysv/aix/setsid.c25
-rw-r--r--sysdeps/unix/sysv/aix/setsockopt.c1
-rw-r--r--sysdeps/unix/sysv/aix/setuid.c31
-rw-r--r--sysdeps/unix/sysv/aix/shmat.c1
-rw-r--r--sysdeps/unix/sysv/aix/shmctl.c1
-rw-r--r--sysdeps/unix/sysv/aix/shmdt.c1
-rw-r--r--sysdeps/unix/sysv/aix/shmget.c1
-rw-r--r--sysdeps/unix/sysv/aix/sigaction.c36
-rw-r--r--sysdeps/unix/sysv/aix/sigaltstack.c1
-rw-r--r--sysdeps/unix/sysv/aix/sigpending.c30
-rw-r--r--sysdeps/unix/sysv/aix/sigprocmask.c8
-rw-r--r--sysdeps/unix/sysv/aix/sigset-cvt-mask.h33
-rw-r--r--sysdeps/unix/sysv/aix/sigstack.c1
-rw-r--r--sysdeps/unix/sysv/aix/sigsuspend.c33
-rw-r--r--sysdeps/unix/sysv/aix/sleep.c34
-rw-r--r--sysdeps/unix/sysv/aix/socket.c25
-rw-r--r--sysdeps/unix/sysv/aix/socketpair.c25
-rw-r--r--sysdeps/unix/sysv/aix/speed.c75
-rw-r--r--sysdeps/unix/sysv/aix/start-libc.c265
-rw-r--r--sysdeps/unix/sysv/aix/start.s126
-rw-r--r--sysdeps/unix/sysv/aix/statfs.c28
-rw-r--r--sysdeps/unix/sysv/aix/symlink.c27
-rw-r--r--sysdeps/unix/sysv/aix/sync.c1
-rw-r--r--sysdeps/unix/sysv/aix/sys/param.h48
-rw-r--r--sysdeps/unix/sysv/aix/sys/ucontext.h113
-rw-r--r--sysdeps/unix/sysv/aix/syscall.c2
-rw-r--r--sysdeps/unix/sysv/aix/sysdep.h88
-rw-r--r--sysdeps/unix/sysv/aix/sysv_termio.h155
-rw-r--r--sysdeps/unix/sysv/aix/tcgetattr.c152
-rw-r--r--sysdeps/unix/sysv/aix/tcsetattr.c198
-rw-r--r--sysdeps/unix/sysv/aix/times.c30
-rw-r--r--sysdeps/unix/sysv/aix/truncate.c28
-rw-r--r--sysdeps/unix/sysv/aix/truncate64.c28
-rw-r--r--sysdeps/unix/sysv/aix/uitrunc.c42
-rw-r--r--sysdeps/unix/sysv/aix/ulimit.c37
-rw-r--r--sysdeps/unix/sysv/aix/umask.c26
-rw-r--r--sysdeps/unix/sysv/aix/uname.c1
-rw-r--r--sysdeps/unix/sysv/aix/unlink.c26
-rw-r--r--sysdeps/unix/sysv/aix/usleep.c34
-rw-r--r--sysdeps/unix/sysv/aix/ustat.c1
-rw-r--r--sysdeps/unix/sysv/aix/utimes.c27
-rw-r--r--sysdeps/unix/sysv/aix/utmpx.h89
-rw-r--r--sysdeps/unix/sysv/aix/wait3.c42
-rw-r--r--sysdeps/unix/sysv/aix/wait4.c33
-rw-r--r--sysdeps/unix/sysv/aix/waitid.c83
-rw-r--r--sysdeps/unix/sysv/aix/waitpid.c53
-rw-r--r--sysdeps/unix/sysv/aix/write.c36
-rw-r--r--sysdeps/unix/sysv/aix/writev.c38
-rw-r--r--sysdeps/unix/sysv/aix/xstat.c32
-rw-r--r--sysdeps/unix/sysv/aix/xstat64.c34
-rw-r--r--sysdeps/unix/sysv/hpux/bits/errno.h34
-rw-r--r--sysdeps/unix/sysv/hpux/bits/setjmp.h16
-rw-r--r--sysdeps/unix/sysv/hpux/bits/stat.h128
-rw-r--r--sysdeps/unix/sysv/hpux/bits/types.h128
-rw-r--r--sysdeps/unix/sysv/hpux/sysdep.h26
-rw-r--r--sysdeps/unix/sysv/irix4/Dist2
-rw-r--r--sysdeps/unix/sysv/irix4/Implies4
-rw-r--r--sysdeps/unix/sysv/irix4/Makefile25
-rw-r--r--sysdeps/unix/sysv/irix4/__handler.S117
-rw-r--r--sysdeps/unix/sysv/irix4/bits/confname.h84
-rw-r--r--sysdeps/unix/sysv/irix4/bits/fcntl.h109
-rw-r--r--sysdeps/unix/sysv/irix4/bits/mman.h64
-rw-r--r--sysdeps/unix/sysv/irix4/bits/signum.h69
-rw-r--r--sysdeps/unix/sysv/irix4/bits/stat.h65
-rw-r--r--sysdeps/unix/sysv/irix4/dup2.c3
-rw-r--r--sysdeps/unix/sysv/irix4/fpathconf.c35
-rw-r--r--sysdeps/unix/sysv/irix4/getgroups.c34
-rw-r--r--sysdeps/unix/sysv/irix4/getpriority.c47
-rw-r--r--sysdeps/unix/sysv/irix4/getrusage.c35
-rw-r--r--sysdeps/unix/sysv/irix4/gettimeofday.c1
-rw-r--r--sysdeps/unix/sysv/irix4/pathconf.c35
-rw-r--r--sysdeps/unix/sysv/irix4/readv.c1
-rw-r--r--sysdeps/unix/sysv/irix4/reboot.c1
-rw-r--r--sysdeps/unix/sysv/irix4/setgroups.c33
-rw-r--r--sysdeps/unix/sysv/irix4/setpriority.c42
-rw-r--r--sysdeps/unix/sysv/irix4/sigreturn.S26
-rw-r--r--sysdeps/unix/sysv/irix4/sigtramp.c53
-rw-r--r--sysdeps/unix/sysv/irix4/start.c75
-rw-r--r--sysdeps/unix/sysv/irix4/swapon.c1
-rw-r--r--sysdeps/unix/sysv/irix4/syscalls.list8
-rw-r--r--sysdeps/unix/sysv/irix4/sysconf.c36
-rw-r--r--sysdeps/unix/sysv/irix4/uname.S26
-rw-r--r--sysdeps/unix/sysv/irix4/wait.S43
-rw-r--r--sysdeps/unix/sysv/irix4/waitpid.c1
-rw-r--r--sysdeps/unix/sysv/irix4/writev.c1
-rw-r--r--sysdeps/unix/sysv/isc2.2/syscalls.list2
-rw-r--r--sysdeps/unix/sysv/linux/alpha/setregid.c (renamed from sysdeps/unix/sysv/linux/cris/brk.c)37
-rw-r--r--sysdeps/unix/sysv/linux/alpha/setresgid.c (renamed from sysdeps/unix/sysv/sco3.2.4/__setpgid.c)38
-rw-r--r--sysdeps/unix/sysv/linux/alpha/setresuid.c (renamed from sysdeps/unix/sysv/sysv4/__getpgid.c)38
-rw-r--r--sysdeps/unix/sysv/linux/alpha/setreuid.c (renamed from sysdeps/unix/sysv/sysv4/__setpgid.c)37
-rw-r--r--sysdeps/unix/sysv/linux/cris/Dist5
-rw-r--r--sysdeps/unix/sysv/linux/cris/_G_config.h106
-rw-r--r--sysdeps/unix/sysv/linux/cris/bits/fcntl.h189
-rw-r--r--sysdeps/unix/sysv/linux/cris/bits/mman.h97
-rw-r--r--sysdeps/unix/sysv/linux/cris/chown.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/clone.S88
-rw-r--r--sysdeps/unix/sysv/linux/cris/fchown.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/fcntl.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/fxstat.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/getegid.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/geteuid.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/getgid.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/getgroups.c2
-rw-r--r--sysdeps/unix/sysv/linux/cris/getresgid.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/getresuid.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/getrlimit.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/getrlimit64.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/getuid.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/lchown.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/lockf64.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/lxstat.c2
-rw-r--r--sysdeps/unix/sysv/linux/cris/mmap.S68
-rw-r--r--sysdeps/unix/sysv/linux/cris/mmap64.S91
-rw-r--r--sysdeps/unix/sysv/linux/cris/msgctl.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/profil-counter.h26
-rw-r--r--sysdeps/unix/sysv/linux/cris/register-dump.h117
-rw-r--r--sysdeps/unix/sysv/linux/cris/semctl.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/setegid.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/seteuid.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/setfsgid.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/setfsuid.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/setgid.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/setgroups.c2
-rw-r--r--sysdeps/unix/sysv/linux/cris/setregid.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/setresgid.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/setresuid.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/setreuid.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/setrlimit.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/setuid.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/shmctl.c1
-rw-r--r--sysdeps/unix/sysv/linux/cris/socket.S96
-rw-r--r--sysdeps/unix/sysv/linux/cris/sys/ucontext.h56
-rw-r--r--sysdeps/unix/sysv/linux/cris/syscall.S40
-rw-r--r--sysdeps/unix/sysv/linux/cris/sysdep.S66
-rw-r--r--sysdeps/unix/sysv/linux/cris/sysdep.h226
-rw-r--r--sysdeps/unix/sysv/linux/cris/vfork.S27
-rw-r--r--sysdeps/unix/sysv/linux/cris/xstat.c1
-rw-r--r--sysdeps/unix/sysv/linux/syscalls.list1
-rw-r--r--sysdeps/unix/sysv/linux/waitid.c1
-rw-r--r--sysdeps/unix/sysv/minix/bits/sigaction.h53
-rw-r--r--sysdeps/unix/sysv/sco3.2.4/Dist1
-rw-r--r--sysdeps/unix/sysv/sco3.2.4/Makefile17
-rw-r--r--sysdeps/unix/sysv/sco3.2.4/bits/confname.h54
-rw-r--r--sysdeps/unix/sysv/sco3.2.4/bits/sigaction.h43
-rw-r--r--sysdeps/unix/sysv/sco3.2.4/getgroups.c45
-rw-r--r--sysdeps/unix/sysv/sco3.2.4/getpgid.c1
-rw-r--r--sysdeps/unix/sysv/sco3.2.4/setpgid.c1
-rw-r--r--sysdeps/unix/sysv/sco3.2.4/setsid.c1
-rw-r--r--sysdeps/unix/sysv/sco3.2.4/sigaction.S30
-rw-r--r--sysdeps/unix/sysv/sco3.2.4/sys/syscall.h125
-rw-r--r--sysdeps/unix/sysv/sco3.2.4/syscalls.list8
-rw-r--r--sysdeps/unix/sysv/sco3.2.4/sysconf.S30
-rw-r--r--sysdeps/unix/sysv/sco3.2.4/system.c10
-rw-r--r--sysdeps/unix/sysv/sco3.2.4/uname.S41
-rw-r--r--sysdeps/unix/sysv/sco3.2.4/waitpid.S37
-rw-r--r--sysdeps/unix/sysv/sco3.2/Dist1
-rw-r--r--sysdeps/unix/sysv/sco3.2/Makefile23
-rw-r--r--sysdeps/unix/sysv/sco3.2/__fltused.c3
-rw-r--r--sysdeps/unix/sysv/sco3.2/bits/local_lim.h37
-rw-r--r--sysdeps/unix/sysv/sysv4/Dist4
-rw-r--r--sysdeps/unix/sysv/sysv4/Implies3
-rw-r--r--sysdeps/unix/sysv/sysv4/Makefile29
-rw-r--r--sysdeps/unix/sysv/sysv4/bits/sigaction.h55
-rw-r--r--sysdeps/unix/sysv/sysv4/bits/signum.h66
-rw-r--r--sysdeps/unix/sysv/sysv4/bits/sigset.h98
-rw-r--r--sysdeps/unix/sysv/sysv4/bits/utsname.h23
-rw-r--r--sysdeps/unix/sysv/sysv4/bits/waitflags.h34
-rw-r--r--sysdeps/unix/sysv/sysv4/dup2.c2
-rw-r--r--sysdeps/unix/sysv/sysv4/ftruncate.c37
-rw-r--r--sysdeps/unix/sysv/sysv4/gethostname.c35
-rw-r--r--sysdeps/unix/sysv/sysv4/getpagesize.c2
-rw-r--r--sysdeps/unix/sysv/sysv4/getpgid.c32
-rw-r--r--sysdeps/unix/sysv/sysv4/i386/Dist1
-rw-r--r--sysdeps/unix/sysv/sysv4/i386/Makefile3
-rw-r--r--sysdeps/unix/sysv/sysv4/i386/bits/stat.h93
-rw-r--r--sysdeps/unix/sysv/sysv4/i386/sys-sig.S30
-rw-r--r--sysdeps/unix/sysv/sysv4/i386/syscalls.list6
-rw-r--r--sysdeps/unix/sysv/sysv4/i386/sysdep.h38
-rw-r--r--sysdeps/unix/sysv/sysv4/i386/vfork.S1
-rw-r--r--sysdeps/unix/sysv/sysv4/sethostname.c33
-rw-r--r--sysdeps/unix/sysv/sysv4/setpgid.c34
-rw-r--r--sysdeps/unix/sysv/sysv4/setsid.c33
-rw-r--r--sysdeps/unix/sysv/sysv4/sigaction.c80
-rw-r--r--sysdeps/unix/sysv/sysv4/siginfo.h59
-rw-r--r--sysdeps/unix/sysv/sysv4/sigset-cvt-mask.h37
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/Makefile6
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/bits/dirent.h50
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/bits/errno.h168
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/bits/signum.h76
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/bits/sigstack.h55
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/bits/stat.h119
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/bits/types.h120
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/fsync.S30
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/getdents.c114
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/sigpending.c37
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/sigstack.c3
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/sigwaitinfo.c2
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/sparc/Dist1
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/sparc/Makefile11
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/sparc/bits/sigcontext.h34
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c185
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/sparc/sparc32/syscall.S2
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/sparc/start.c4
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/sparc/sys/trap.h36
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/sparc/sys/ucontext.h42
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/sparc/syscalls.list3
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.S47
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.h56
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/sys/param.h59
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/sys/syscall.h245
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/syscalls.list7
-rw-r--r--sysdeps/unix/sysv/sysv4/syscalls.list7
-rw-r--r--sysdeps/unix/sysv/sysv4/sysconf.c366
-rw-r--r--sysdeps/unix/sysv/sysv4/sysconfig.h28
-rw-r--r--sysdeps/unix/sysv/sysv4/system.c2
-rw-r--r--sysdeps/unix/sysv/sysv4/waitpid.c120
-rw-r--r--sysdeps/vax/DEFS.h57
-rw-r--r--sysdeps/vax/Dist2
-rw-r--r--sysdeps/vax/Makefile32
-rw-r--r--sysdeps/vax/__longjmp.c129
-rw-r--r--sysdeps/vax/add_n.s48
-rw-r--r--sysdeps/vax/addmul_1.s126
-rw-r--r--sysdeps/vax/bcopy.s74
-rw-r--r--sysdeps/vax/bits/huge_val.h26
-rw-r--r--sysdeps/vax/bits/setjmp.h11
-rw-r--r--sysdeps/vax/bsd-_setjmp.S33
-rw-r--r--sysdeps/vax/bsd-setjmp.S32
-rw-r--r--sysdeps/vax/bzero.s50
-rw-r--r--sysdeps/vax/ffs.s45
-rw-r--r--sysdeps/vax/fl.h68
-rw-r--r--sysdeps/vax/gccframe.h22
-rw-r--r--sysdeps/vax/gmp-mparam.h29
-rw-r--r--sysdeps/vax/htonl.s43
-rw-r--r--sysdeps/vax/htons.s43
-rw-r--r--sysdeps/vax/memccpy.c46
-rw-r--r--sysdeps/vax/memchr.s74
-rw-r--r--sysdeps/vax/memcmp.s59
-rw-r--r--sysdeps/vax/memmove.s89
-rw-r--r--sysdeps/vax/memset.s51
-rw-r--r--sysdeps/vax/mul_1.s123
-rw-r--r--sysdeps/vax/setjmp.c62
-rw-r--r--sysdeps/vax/strcat.s62
-rw-r--r--sysdeps/vax/strchr.s103
-rw-r--r--sysdeps/vax/strcmp.s81
-rw-r--r--sysdeps/vax/strcpy.s58
-rw-r--r--sysdeps/vax/strcspn.s62
-rw-r--r--sysdeps/vax/strlen.s48
-rw-r--r--sysdeps/vax/strncat.s79
-rw-r--r--sysdeps/vax/strncmp.s85
-rw-r--r--sysdeps/vax/strncpy.s80
-rw-r--r--sysdeps/vax/strpbrk.s64
-rw-r--r--sysdeps/vax/strrchr.s112
-rw-r--r--sysdeps/vax/strsep.s81
-rw-r--r--sysdeps/vax/strspn.s66
-rw-r--r--sysdeps/vax/strstr.s109
-rw-r--r--sysdeps/vax/sub_n.s48
-rw-r--r--sysdeps/vax/submul_1.s126
-rw-r--r--sysdeps/z8000/add_n.s53
-rw-r--r--sysdeps/z8000/gmp-mparam.h27
-rw-r--r--sysdeps/z8000/mul_1.s68
-rw-r--r--sysdeps/z8000/sub_n.s54
-rw-r--r--time/Makefile4
-rw-r--r--time/mktime.c363
-rw-r--r--time/tst-mktime.c6
-rw-r--r--time/tst-mktime2.c140
782 files changed, 2095 insertions, 26865 deletions
diff --git a/ChangeLog b/ChangeLog
index 084dc6c8b4..22eaa07c32 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,77 @@
+2004-10-31 Mariusz Mazur <mmazur@kernel.pl>
+
+ * sysdeps/unix/sysv/linux/alpha/setregid.c: New file.
+ * sysdeps/unix/sysv/linux/alpha/setresgid.c: New file.
+ * sysdeps/unix/sysv/linux/alpha/setresuid.c: New file.
+ * sysdeps/unix/sysv/linux/alpha/setreuid.c: New file.
+
+2004-10-27 Derek R. Price <derek@ximbiot.com>
+
+ [BZ #487] This change is imported from gnulib.
+ * time/mktime.c (not_equal_tm) [DEBUG]: Remove redundant check.
+
+2004-10-24 Paul Eggert <eggert@cs.ucla.edu>
+
+ [BZ #473]
+ * time/tst-mktime.c (main): Don't assume that mktime fails
+ when given time stamps before 1970. It returns negative
+ time_t values instead, for compatibility with BSD.
+
+ * time/tst-mktime2.c: New file.
+ * time/Makefile (tests): Add it.
+
+ [BZ #473] Import from gnulib. Revamp to avoid several problems near
+ time_t extrema, and on hosts with 64-bit time_t and 32-bit int.
+ This fixes Debian bug 177940.
+ * time/mktime.c (TIME_T_MIDPOINT): New macro.
+ (ydhms_diff): Renamed from ydhms_tm_diff, with a new signature,
+ which avoids overflow problems on hosts with 64-bit time_t and
+ 32-bit int. All callers changed. Now an inline function.
+ Verify at compile-time that long int is wide enough to avoid
+ these overflow problems.
+ (guess_time_tm): New function.
+ (__mktime_internal): Use it. Avoid overflow when computing yday on
+ hosts with 64-bit long and 32-bit int. Remove tests for 69;
+ no longer needed. Use if rather than #ifdef for LEAP_SECONDS_POSSIBLE
+ so that the code is checked by more compilers.
+ Do not rely on floating point to probe: stick to integer arithmetic,
+ to avoid potential porting problems.
+ Repair potential overflow correctly in the Southern Hemisphere.
+ (localtime_offset): Add a FIXME for the case where time_t is unsigned.
+
+2004-10-30 Andreas Schwab <schwab@suse.de>
+
+ * sysdeps/m68k/dl-machine.h (elf_machine_rela)
+ (elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
+ instead of static.
+
+2004-10-30 Andreas Schwab <schwab@suse.de>
+
+ * sysdeps/unix/sysv/linux/waitid.c: Include <stddef.h> for NULL.
+
+2004-10-30 Ulrich Drepper <drepper@redhat.com>
+
+ * malloc/malloc.c (_int_free): Use unique comments for the error
+ cases.
+
+2004-10-28 Roland McGrath <roland@frob.com>
+
+ * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_fork): Use i386_thread_state
+ instead of machine_thread_state.
+
+2004-10-28 Roland McGrath <roland@redhat.com>
+
+ * sysdeps/unix/sysv/linux/syscalls.list: Remove setaltroot.
+
+2004-10-28 Ulrich Drepper <drepper@redhat.com>
+
+ * elf/dl-open.c (dl_open_worker): Remove reference to glibcbug script.
+
+2004-10-27 Ulrich Drepper <drepper@redhat.com>
+
+ * elf/dl-load.c (_dl_map_object): Use cache_rpath to check for
+ existing rpath in main executable, not explicit test.
+
2004-10-27 Jakub Jelinek <jakub@redhat.com>
* include/resolv.h (_res_opcodes): New extern.
@@ -26,11 +100,199 @@
* posix/Makefile: Add rules to build and run bug-glob2 test.
* posix/bug-glob2.c: New test.
+2004-10-27 Roland McGrath <roland@frob.com>
+
+ * sysdeps/mach/hurd/i386/tls.h (HURD_TLS_DESC_DECL): New macro.
+ (_hurd_tls_init): Use it.
+ (_hurd_tls_fork): New function.
+ * sysdeps/mach/hurd/fork.c (__fork) [USE_TLS]: Call it.
+
+2004-10-26 Roland McGrath <roland@frob.com>
+
+ * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Initialize TCB->tcb.
+
2004-10-26 Jakub Jelinek <jakub@redhat.com>
* sysdeps/gnu/netinet/udp.h (struct udphdr): Use u_int16_t
type instead of uint16_t. Formatting.
+2004-10-25 Roland McGrath <roland@redhat.com>
+
+ * login/openpty.c (openpty): Add libutil_hidden_def.
+
+ * nss/nss_files/files-parse.c (nss_files_parse_hidden_def): Define to
+ either libc_hidden_def or libnss_files_hidden_def, not hidden_def.
+ This file is also compiled into libnss_hesiod by #include.
+
+2004-10-25 Roland McGrath <roland@frob.com>
+
+ * sysdeps/unix/bsd/hp: Directory and all files removed.
+ These are now in the ports repository.
+ * sysdeps/unix/bsd/osf: Likewise.
+ * sysdeps/unix/bsd/sequent: Likewise.
+ * sysdeps/unix/bsd/sony: Likewise.
+ * sysdeps/unix/bsd/ultrix4: Likewise.
+ * sysdeps/unix/sysv/aix: Likewise.
+ * sysdeps/unix/sysv/hpux: Likewise.
+ * sysdeps/unix/sysv/irix4: Likewise.
+ * sysdeps/unix/sysv/isc2.2: Likewise.
+ * sysdeps/unix/sysv/minix: Likewise.
+ * sysdeps/unix/sysv/sco3.2.4: Likewise.
+ * sysdeps/unix/sysv/sco3.2: Likewise.
+ * sysdeps/unix/sysv/sysv4: Likewise.
+
+ * configure.in (ASM_LINE_SEP): Move this setting to ...
+ * sysdeps/hppa/configure.in: ... here, new file.
+ * sysdeps/hppa/configure: New generated file.
+ * configure: Regenerated.
+
+2004-10-25 Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * sysdeps/sh/dl-machine.h: Include sysdep.h.
+ (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add CFI directives.
+ (elf_machine_runtime_setup): Add always_inline attribute.
+ (_dl_start_user): Pass the correct environ.
+ (elf_machine_rela): Replace static inline by auto inline, add
+ always_inline attribute.
+ (elf_machine_rela_relative): Likewise.
+ (elf_machine_lazy_rel): Likewise.
+
+2004-10-24 Ulrich Drepper <drepper@redhat.com>
+
+ * nis/nis_call.c: Pretty printing. Minor cleanups.
+ * nis/nis_addmember.c (nis_addmember): Add assert to check buffer
+ bounds.
+
+ * resolv/nss_dns/dns-host.c: Avoid using PLTs.
+ * include/libc-symbols.h: Define hidden attribute macros for
+ libnss_nisplus and libutil.
+ * include/utmp.h: Add libutil_hidden_proto for login_tty.
+ * login/login_tty.c: Add libutil_hidden_def.
+ * nis/nisplus-parser.h: Add libnss_nisplus_hidden_proto for parsers.
+ * nis/nss_nisplus/nisplus-parser.c: Add libnss_nisplus_hidden_def.
+ * include/pty.h: New file.
+ * include/rpcsvc/yp.h: New file.
+ * include/rpcsvc/ypclnt.h: New file.
+ * include/rpcsvc/ypupd.h: New file.
+ * include/libc-symbols.h: Define hidden attribute macros for libnsl.
+ * include/rpcsvc/nislib.h: Use libnsl_hidden_proto for various
+ functions.
+ * nis/nis_add.c: Add libnsl_hidden_def. Minor optimizations.
+ * nis/nis_call.c: Likewise.
+ * nis/nis_clone_obj.c: Likewise.
+ * nis/nis_defaults.c: Likewise.
+ * nis/nis_domain_of_r.c: Likewise.
+ * nis/nis_error.c: Likewise.
+ * nis/nis_file.c: Likewise.
+ * nis/nis_free.c: Likewise.
+ * nis/nis_local_names.c: Likewise.
+ * nis/nis_lookup.c: Likewise.
+ * nis/nis_modify.c: Likewise.
+ * nis/nis_print.c: Likewise.
+ * nis/nis_remove.c: Likewise.
+ * nis/nis_subr.c: Likewise.
+ * nis/nis_table.c: Likewise.
+ * nis/nis_util.c: Likewise.
+ * nis/yp_xdr.c: Likewise.
+ * nis/ypclnt.c: Likewise.
+ * nis/ypupdate_xdr.c: Likewise.
+
+ * resolv/res_send.c (send_dg): Cope with failures.
+
+ * include/libc-symbols.h: Define hidden attribute macros for
+ libnss_files.
+ * include/netdb.h: Use libnss_files_hidden_proto for the parsers
+ defined in libnss_files, not libc_hidden_proto.
+ * include/netinet/ether.h: Likewise.
+ * include/rpc/netdb.h: Likewise.
+ * nss/nss_files/files-parse.c: Use hidden_def in parser definitions
+ instead of libc_hidden_def.
+ * nss/nss_files/files-netgrp.c: Add libnss_files_hidden_def to
+ _nss_netgroup_parseline definition.
+
+2004-10-23 Roland McGrath <roland@frob.com>
+
+ * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Don't return early
+ after an RPC succeeds.
+
+ * sysdeps/vax, sysdeps/unix/bsd/vax: Directories and all files removed.
+ These are now in the ports repository.
+ * sysdeps/tahoe, sysdeps/unix/bsd/tahoe: Likewise.
+ * sysdeps/cris, sysdeps/unix/sysv/linux/cris: Likewise.
+ * sysdeps/am29k, sysdeps/i860, sysdeps/i960, sysdeps/m88k: Likewise.
+ * sysdeps/standalone, sysdeps/z8000: Likewise.
+
+2004-10-23 Ulrich Drepper <drepper@redhat.com>
+
+ * resolv/res_send.c (send_dg): Combine write and read to socket
+ into one loop.
+
+2004-10-22 Roland McGrath <roland@frob.com>
+
+ * Makefile (%.bz2, %.gz): Move these pattern rules ...
+ * Makerules: ... to here.
+
+2001-10-31 Alexandre Oliva <aoliva@redhat.com>
+
+ * elf/elf.h: Add R_MN10300_* relocation numbers.
+
+2004-10-22 Paul Eggert <eggert@cs.ucla.edu>
+
+ [BZ #471] Fix imported from gnulib.
+ * time/mktime.c (leapyear, ydms_tm_diff): Year is of type
+ long int, not int, to avoid problems when tm_year == INT_MAX
+ and tm_mon > 12.
+ (__mktime_intenral): Compute year using long int arithmetic,
+ not int arithmetic, to avoid problems on hosts where time_t
+ and long are 64 bits but int is 32.
+
+ [BZ #468] Import a fix from gnulib.
+ * time/mktime.c [! DEBUG]: Do not include <string.h>.
+ It's needed only if DEBUG is nonzero.
+
+ [BZ #470] Import fix from gnulib.
+ * time/mktime.c [!_LIBC] (__mktime_internal): Define to
+ mktime_internal, to avoid clashes with any __mktime_internal
+ function defined in the standard library.
+
+ [BZ #469] Imported from gnulib.
+ * time/mktime.c (__isleap): Remove; all uses replaced by:
+ (leapyear): New function, which avoids overflow by not adding
+ 1900 to year before testing whether it is a leap year.
+
+ [BZ #472] Imported from gnulib.
+ * time/mktime.c (Local Variables): Remove -DHAVE_TIME_R_POSIX;
+ no longer used.
+
+2004-10-22 Ulrich Drepper <drepper@redhat.com>
+
+ * resolv/res_send.c: Remove compatibility code which is unused in
+ glibc and probably bitrotten.
+
+ * debug/execinfo.h: Remove __THROW from backtrace prototype.
+
+2004-10-22 Jakub Jelinek <jakub@redhat.com>
+
+ * sysdeps/i386/Makefile (CFLAGS-backtrace.c): Add -fexceptions.
+ * sysdeps/i386/backtrace.c: Include <bits/libc-lock.h>, <dlfcn.h>,
+ <stdlib.h> and <unwind.h>. Remove <bp-checks.h> include.
+ (struct trace_arg): New type.
+ (unwind_backtrace, unwind_getip, unwind_getcfa, unwind_getgr): New
+ fn pointers resp. macros.
+ (init, backtrace_helper): New functions.
+ (__backtrace): Rewritten to use _Unwind_Backtrace first and fall
+ back to frame pointer walking.
+
+2004-10-22 Ulrich Drepper <drepper@redhat.com>
+
+ * sysdeps/unix/sysv/linux/Versions: Things are still in flux, it
+ seems. Undo last additions.
+
+2004-10-21 Ulrich Drepper <drepper@redhat.com>
+
+ * posix/execvp.c (execvp): Also ignore ENODEV and ETIMEDOUT errno
+ values.
+
2004-10-20 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/readonly-area.c (__readonly_area): If /proc
diff --git a/Makefile b/Makefile
index 4357ea9d8f..50ee40c26a 100644
--- a/Makefile
+++ b/Makefile
@@ -299,9 +299,6 @@ $(foreach dir,$(dist-separate),
)
endef
-%.bz2: %; bzip2 -9vk $<
-%.gz: %; gzip -9vnc $< > $@.new && mv -f $@.new $@
-
# Do `make dist dist-version=X.Y.Z' to make tar files of an older version.
dist-version = $(version)
diff --git a/Makerules b/Makerules
index 09a6b1fef7..7c6feb7c1f 100644
--- a/Makerules
+++ b/Makerules
@@ -1328,6 +1328,8 @@ FORCE:
echo-headers:
@echo $(headers)
+%.bz2: %; bzip2 -9vk $<
+%.gz: %; gzip -9vnc $< > $@.new && mv -f $@.new $@
# Common cleaning targets.
diff --git a/configure b/configure
index 6f9bde759d..2ce30a3265 100755
--- a/configure
+++ b/configure
@@ -6089,49 +6089,6 @@ _ACEOF
fi
-case "${host_cpu}-${host_os}" in
- cris*)
- libc_cv_asm_line_sep='@'
- cat >>confdefs.h <<_ACEOF
-#define ASM_LINE_SEP $libc_cv_asm_line_sep
-_ACEOF
-
- ;;
- hppa*linux*)
- echo "$as_me:$LINENO: checking for assembler line separator" >&5
-echo $ECHO_N "checking for assembler line separator... $ECHO_C" >&6
-if test "${libc_cv_asm_line_sep+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat > conftest.s <<EOF
- nop ; is_old_puffin
-EOF
- if { ac_try='${CC-cc} -c $ASFLAGS conftest.s 1>&5'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- libc_cv_asm_line_sep='!'
- else
- if test -z "$enable_hacker_mode"; then
- echo "*** You need a newer assembler to compile glibc"
- rm -f conftest*
- exit 1
- fi
- libc_cv_asm_line_sep=';'
- fi
- rm -f conftest*
-fi
-echo "$as_me:$LINENO: result: $libc_cv_asm_line_sep" >&5
-echo "${ECHO_T}$libc_cv_asm_line_sep" >&6
- cat >>confdefs.h <<_ACEOF
-#define ASM_LINE_SEP $libc_cv_asm_line_sep
-_ACEOF
-
- ;;
-esac
-
echo "$as_me:$LINENO: checking whether CFI directives are supported" >&5
echo $ECHO_N "checking whether CFI directives are supported... $ECHO_C" >&6
if test "${libc_cv_asm_cfi_directives+set}" = set; then
diff --git a/configure.in b/configure.in
index 829e93578b..9b8a1eb26d 100644
--- a/configure.in
+++ b/configure.in
@@ -1617,35 +1617,6 @@ elif test $libc_cv_asm_weakext_directive = yes; then
AC_DEFINE(HAVE_ASM_WEAKEXT_DIRECTIVE)
fi
-dnl The standard hppa assembler uses `;' to start comments and `!'
-dnl as a line separator. CRIS uses `;' to start comments and `@' for
-dnl line separator.
-case "${host_cpu}-${host_os}" in
- cris*)
- libc_cv_asm_line_sep='@'
- AC_DEFINE_UNQUOTED(ASM_LINE_SEP, $libc_cv_asm_line_sep)
- ;;
- hppa*linux*)
- AC_CACHE_CHECK(for assembler line separator,
- libc_cv_asm_line_sep, [dnl
- cat > conftest.s <<EOF
- nop ; is_old_puffin
-EOF
- if AC_TRY_COMMAND(${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
- libc_cv_asm_line_sep='!'
- else
- if test -z "$enable_hacker_mode"; then
- echo "*** You need a newer assembler to compile glibc"
- rm -f conftest*
- exit 1
- fi
- libc_cv_asm_line_sep=';'
- fi
- rm -f conftest*])
- AC_DEFINE_UNQUOTED(ASM_LINE_SEP, $libc_cv_asm_line_sep)
- ;;
-esac
-
AC_CACHE_CHECK(whether CFI directives are supported, libc_cv_asm_cfi_directives, [dnl
cat > conftest.s <<EOF
.text
diff --git a/debug/execinfo.h b/debug/execinfo.h
index ff11c0c314..fa9927c71a 100644
--- a/debug/execinfo.h
+++ b/debug/execinfo.h
@@ -25,7 +25,7 @@ __BEGIN_DECLS
/* Store up to SIZE return address of the current program state in
ARRAY and return the exact number of values stored. */
-extern int backtrace (void **__array, int __size) __THROW __nonnull ((1));
+extern int backtrace (void **__array, int __size) __nonnull ((1));
/* Return names of functions from the backtrace list in ARRAY in a newly
diff --git a/elf/dl-load.c b/elf/dl-load.c
index 27f6e3f641..ea287cddcc 100644
--- a/elf/dl-load.c
+++ b/elf/dl-load.c
@@ -1875,7 +1875,7 @@ _dl_map_object (struct link_map *loader, const char *name, int preloaded,
{
l = GL(dl_ns)[LM_ID_BASE]._ns_loaded;
if (l && l->l_type != lt_loaded && l != loader
- && l->l_rpath_dirs.dirs != (void *) -1)
+ && cache_rpath (l, &l->l_rpath_dirs, DT_RPATH, "RPATH"))
fd = open_path (name, namelen, preloaded, &l->l_rpath_dirs,
&realname, &fb);
}
diff --git a/elf/dl-open.c b/elf/dl-open.c
index 294a523aac..7e890ad7f7 100644
--- a/elf/dl-open.c
+++ b/elf/dl-open.c
@@ -506,7 +506,7 @@ cannot create TLS data structures"));
/* Bump the generation number if necessary. */
if (any_tls)
if (__builtin_expect (++GL(dl_tls_generation) == 0, 0))
- __libc_fatal (_("TLS generation counter wrapped! Please send report with the 'glibcbug' script."));
+ __libc_fatal (_("TLS generation counter wrapped! Please report this."));
#endif
/* Run the initializer functions of new objects. */
diff --git a/elf/elf.h b/elf/elf.h
index 2eb092ab6c..db95254f74 100644
--- a/elf/elf.h
+++ b/elf/elf.h
@@ -2464,6 +2464,35 @@ typedef Elf32_Addr Elf32_Conflict;
#define R_X86_64_NUM 24
+/* AM33 relocations. */
+#define R_MN10300_NONE 0 /* No reloc. */
+#define R_MN10300_32 1 /* Direct 32 bit. */
+#define R_MN10300_16 2 /* Direct 16 bit. */
+#define R_MN10300_8 3 /* Direct 8 bit. */
+#define R_MN10300_PCREL32 4 /* PC-relative 32-bit. */
+#define R_MN10300_PCREL16 5 /* PC-relative 16-bit signed. */
+#define R_MN10300_PCREL8 6 /* PC-relative 8-bit signed. */
+#define R_MN10300_GNU_VTINHERIT 7 /* Ancient C++ vtable garbage... */
+#define R_MN10300_GNU_VTENTRY 8 /* ... collection annotation. */
+#define R_MN10300_24 9 /* Direct 24 bit. */
+#define R_MN10300_GOTPC32 10 /* 32-bit PCrel offset to GOT. */
+#define R_MN10300_GOTPC16 11 /* 16-bit PCrel offset to GOT. */
+#define R_MN10300_GOTOFF32 12 /* 32-bit offset from GOT. */
+#define R_MN10300_GOTOFF24 13 /* 24-bit offset from GOT. */
+#define R_MN10300_GOTOFF16 14 /* 16-bit offset from GOT. */
+#define R_MN10300_PLT32 15 /* 32-bit PCrel to PLT entry. */
+#define R_MN10300_PLT16 16 /* 16-bit PCrel to PLT entry. */
+#define R_MN10300_GOT32 17 /* 32-bit offset to GOT entry. */
+#define R_MN10300_GOT24 18 /* 24-bit offset to GOT entry. */
+#define R_MN10300_GOT16 19 /* 16-bit offset to GOT entry. */
+#define R_MN10300_COPY 20 /* Copy symbol at runtime. */
+#define R_MN10300_GLOB_DAT 21 /* Create GOT entry. */
+#define R_MN10300_JMP_SLOT 22 /* Create PLT entry. */
+#define R_MN10300_RELATIVE 23 /* Adjust by program base. */
+
+#define R_MN10300_NUM 24
+
+
/* M32R relocs. */
#define R_M32R_NONE 0 /* No reloc. */
#define R_M32R_16 1 /* Direct 16 bit. */
diff --git a/fedora/branch.mk b/fedora/branch.mk
index 8f05e2326c..2483250036 100644
--- a/fedora/branch.mk
+++ b/fedora/branch.mk
@@ -1,5 +1,5 @@
# This file is updated automatically by Makefile.
glibc-branch := fedora
glibc-base := HEAD
-fedora-sync-date := 2004-10-20 10:16 UTC
-fedora-sync-tag := fedora-glibc-20041020T1016
+fedora-sync-date := 2004-11-02 11:53 UTC
+fedora-sync-tag := fedora-glibc-20041102T1153
diff --git a/include/libc-symbols.h b/include/libc-symbols.h
index 7dd0d2901b..dcc46cc80f 100644
--- a/include/libc-symbols.h
+++ b/include/libc-symbols.h
@@ -780,6 +780,60 @@ for linking")
# define libdl_hidden_data_ver(local, name)
#endif
+#if defined NOT_IN_libc && defined IS_IN_libnss_files
+# define libnss_files_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
+# define libnss_files_hidden_def(name) hidden_def (name)
+# define libnss_files_hidden_weak(name) hidden_weak (name)
+# define libnss_files_hidden_ver(local, name) hidden_ver (local, name)
+# define libnss_files_hidden_data_def(name) hidden_data_def (name)
+# define libnss_files_hidden_data_weak(name) hidden_data_weak (name)
+# define libnss_files_hidden_data_ver(local, name) hidden_data_ver(local, name)
+#else
+# define libnss_files_hidden_proto(name, attrs...)
+# define libnss_files_hidden_def(name)
+# define libnss_files_hidden_weak(name)
+# define libnss_files_hidden_ver(local, name)
+# define libnss_files_hidden_data_def(name)
+# define libnss_files_hidden_data_weak(name)
+# define libnss_files_hidden_data_ver(local, name)
+#endif
+
+#if defined NOT_IN_libc && defined IS_IN_libnsl
+# define libnsl_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
+# define libnsl_hidden_def(name) hidden_def (name)
+# define libnsl_hidden_weak(name) hidden_weak (name)
+# define libnsl_hidden_ver(local, name) hidden_ver (local, name)
+# define libnsl_hidden_data_def(name) hidden_data_def (name)
+# define libnsl_hidden_data_weak(name) hidden_data_weak (name)
+# define libnsl_hidden_data_ver(local, name) hidden_data_ver (local, name)
+#else
+# define libnsl_hidden_proto(name, attrs...)
+# define libnsl_hidden_def(name)
+# define libnsl_hidden_weak(name)
+# define libnsl_hidden_ver(local, name)
+# define libnsl_hidden_data_def(name)
+# define libnsl_hidden_data_weak(name)
+# define libnsl_hidden_data_ver(local, name)
+#endif
+
+#if defined NOT_IN_libc && defined IS_IN_libnss_nisplus
+# define libnss_nisplus_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
+# define libnss_nisplus_hidden_def(name) hidden_def (name)
+# define libnss_nisplus_hidden_weak(name) hidden_weak (name)
+# define libnss_nisplus_hidden_ver(local, name) hidden_ver (local, name)
+# define libnss_nisplus_hidden_data_def(name) hidden_data_def (name)
+# define libnss_nisplus_hidden_data_weak(name) hidden_data_weak (name)
+# define libnss_nisplus_hidden_data_ver(local, name) hidden_data_ver (local, name)
+#else
+# define libnss_nisplus_hidden_proto(name, attrs...)
+# define libnss_nisplus_hidden_def(name)
+# define libnss_nisplus_hidden_weak(name)
+# define libnss_nisplus_hidden_ver(local, name)
+# define libnss_nisplus_hidden_data_def(name)
+# define libnss_nisplus_hidden_data_weak(name)
+# define libnss_nisplus_hidden_data_ver(local, name)
+#endif
+
#ifdef HAVE_BUILTIN_REDIRECTION
# define libc_hidden_builtin_proto(name, attrs...) libc_hidden_proto (name, ##attrs)
# define libc_hidden_builtin_def(name) libc_hidden_def (name)
@@ -798,6 +852,24 @@ for linking")
# endif
#endif
+#if defined NOT_IN_libc && defined IS_IN_libutil
+# define libutil_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
+# define libutil_hidden_def(name) hidden_def (name)
+# define libutil_hidden_weak(name) hidden_weak (name)
+# define libutil_hidden_ver(local, name) hidden_ver (local, name)
+# define libutil_hidden_data_def(name) hidden_data_def (name)
+# define libutil_hidden_data_weak(name) hidden_data_weak (name)
+# define libutil_hidden_data_ver(local, name) hidden_data_ver (local, name)
+#else
+# define libutil_hidden_proto(name, attrs...)
+# define libutil_hidden_def(name)
+# define libutil_hidden_weak(name)
+# define libutil_hidden_ver(local, name)
+# define libutil_hidden_data_def(name)
+# define libutil_hidden_data_weak(name)
+# define libutil_hidden_data_ver(local, name)
+#endif
+
/* Get some dirty hacks. */
#include <symbol-hacks.h>
diff --git a/include/netdb.h b/include/netdb.h
index e8f28e8c67..0bf84c21c0 100644
--- a/include/netdb.h
+++ b/include/netdb.h
@@ -202,9 +202,10 @@ extern enum nss_status _nss_netgroup_parseline (char **cursor,
struct __netgrent *result,
char *buffer, size_t buflen,
int *errnop);
-libc_hidden_proto (_nss_files_parse_protoent)
-libc_hidden_proto (_nss_files_parse_servent)
-libc_hidden_proto (_nss_files_parse_netent)
+libnss_files_hidden_proto (_nss_files_parse_protoent)
+libnss_files_hidden_proto (_nss_files_parse_servent)
+libnss_files_hidden_proto (_nss_files_parse_netent)
+libnss_files_hidden_proto (_nss_netgroup_parseline)
#define DECLARE_NSS_PROTOTYPES(service) \
extern enum nss_status _nss_ ## service ## _setprotoent (int); \
diff --git a/include/netinet/ether.h b/include/netinet/ether.h
index 2a9efae0bf..2efe4c04e4 100644
--- a/include/netinet/ether.h
+++ b/include/netinet/ether.h
@@ -17,7 +17,7 @@ struct parser_data;
extern int _nss_files_parse_etherent (char *line, struct etherent *result,
struct parser_data *data,
size_t datalen, int *errnop);
-libc_hidden_proto (_nss_files_parse_etherent)
+libnss_files_hidden_proto (_nss_files_parse_etherent)
#define DECLARE_NSS_PROTOTYPES(service) \
extern enum nss_status _nss_ ## service ## _setetherent (int __stayopen); \
diff --git a/include/pty.h b/include/pty.h
new file mode 100644
index 0000000000..a91be80852
--- /dev/null
+++ b/include/pty.h
@@ -0,0 +1,6 @@
+#ifndef _PTY_H
+#include <login/pty.h>
+
+libutil_hidden_proto (openpty)
+
+#endif
diff --git a/include/rpc/netdb.h b/include/rpc/netdb.h
index ad7cff1a6e..f7021e7aba 100644
--- a/include/rpc/netdb.h
+++ b/include/rpc/netdb.h
@@ -26,7 +26,7 @@ struct parser_data;
extern int _nss_files_parse_rpcent (char *line, struct rpcent *result,
struct parser_data *data,
size_t datalen, int *errnop);
-libc_hidden_proto (_nss_files_parse_rpcent)
+libnss_files_hidden_proto (_nss_files_parse_rpcent)
#define DECLARE_NSS_PROTOTYPES(service) \
extern enum nss_status _nss_ ## service ## _setrpcent (int); \
diff --git a/include/rpcsvc/nislib.h b/include/rpcsvc/nislib.h
index 841c7f73a1..9c2be0e811 100644
--- a/include/rpcsvc/nislib.h
+++ b/include/rpcsvc/nislib.h
@@ -1 +1,45 @@
+#ifndef __RPCSVC_NISLIB_H__
#include <nis/rpcsvc/nislib.h>
+
+libnsl_hidden_proto (nis_leaf_of_r)
+libnsl_hidden_proto (nis_name_of_r)
+libnsl_hidden_proto (nis_getnames)
+libnsl_hidden_proto (nis_freenames)
+libnsl_hidden_proto (nis_dir_cmp)
+libnsl_hidden_proto (nis_destroy_object)
+libnsl_hidden_proto (nis_local_directory)
+libnsl_hidden_proto (nis_local_group)
+libnsl_hidden_proto (nis_local_host)
+libnsl_hidden_proto (nis_local_principal)
+libnsl_hidden_proto (__free_fdresult)
+libnsl_hidden_proto (nis_free_request)
+libnsl_hidden_proto (nis_free_directory)
+libnsl_hidden_proto (nis_free_object)
+libnsl_hidden_proto (nis_freeresult)
+libnsl_hidden_proto (readColdStartFile)
+libnsl_hidden_proto (nis_print_rights)
+libnsl_hidden_proto (nis_print_directory)
+libnsl_hidden_proto (nis_print_group)
+libnsl_hidden_proto (nis_print_table)
+libnsl_hidden_proto (nis_print_link)
+libnsl_hidden_proto (nis_print_entry)
+libnsl_hidden_proto (nis_print_object)
+libnsl_hidden_proto (nis_sperrno)
+libnsl_hidden_proto (nis_sperror_r)
+libnsl_hidden_proto (__nisbind_destroy)
+libnsl_hidden_proto (__nisbind_next)
+libnsl_hidden_proto (__nisbind_connect)
+libnsl_hidden_proto (__nisbind_create)
+libnsl_hidden_proto (nis_lookup)
+libnsl_hidden_proto (nis_list)
+libnsl_hidden_proto (__nis_finddirectory)
+libnsl_hidden_proto (nis_domain_of_r)
+libnsl_hidden_proto (nis_modify)
+libnsl_hidden_proto (nis_remove)
+libnsl_hidden_proto (nis_add)
+libnsl_hidden_proto (__nis_default_owner)
+libnsl_hidden_proto (__nis_default_group)
+libnsl_hidden_proto (__nis_default_access)
+libnsl_hidden_proto (nis_clone_object)
+
+#endif
diff --git a/include/rpcsvc/yp.h b/include/rpcsvc/yp.h
new file mode 100644
index 0000000000..cc4e00fd0b
--- /dev/null
+++ b/include/rpcsvc/yp.h
@@ -0,0 +1,18 @@
+#ifndef __RPCSVC_YP_H__
+#include <nis/rpcsvc/yp.h>
+
+libnsl_hidden_proto (xdr_ypstat)
+libnsl_hidden_proto (xdr_ypxfrstat)
+libnsl_hidden_proto (xdr_domainname)
+libnsl_hidden_proto (xdr_mapname)
+libnsl_hidden_proto (xdr_peername)
+libnsl_hidden_proto (xdr_keydat)
+libnsl_hidden_proto (xdr_valdat)
+libnsl_hidden_proto (xdr_ypmap_parms)
+libnsl_hidden_proto (xdr_ypresp_key_val)
+libnsl_hidden_proto (xdr_ypresp_all)
+libnsl_hidden_proto (xdr_yppush_status)
+libnsl_hidden_proto (xdr_ypbind_resptype)
+libnsl_hidden_proto (xdr_ypbind_binding)
+
+#endif
diff --git a/include/rpcsvc/ypclnt.h b/include/rpcsvc/ypclnt.h
new file mode 100644
index 0000000000..b38dc6bb4c
--- /dev/null
+++ b/include/rpcsvc/ypclnt.h
@@ -0,0 +1,10 @@
+#ifndef __RPCSVC_YPCLNT_H__
+#include <nis/rpcsvc/ypclnt.h>
+
+libnsl_hidden_proto (ypbinderr_string)
+libnsl_hidden_proto (yp_bind)
+libnsl_hidden_proto (yp_get_default_domain)
+libnsl_hidden_proto (ypprot_err)
+libnsl_hidden_proto (yp_master)
+
+#endif
diff --git a/include/rpcsvc/ypupd.h b/include/rpcsvc/ypupd.h
new file mode 100644
index 0000000000..68116e629f
--- /dev/null
+++ b/include/rpcsvc/ypupd.h
@@ -0,0 +1,6 @@
+#ifndef __RPCSVC_YPUPD_H__
+#include <nis/rpcsvc/ypupd.h>
+
+libnsl_hidden_proto (xdr_yp_buf)
+
+#endif
diff --git a/include/utmp.h b/include/utmp.h
index 54f41ba5e5..3a35c599e5 100644
--- a/include/utmp.h
+++ b/include/utmp.h
@@ -16,4 +16,7 @@ extern int __getutid_r (__const struct utmp *__id, struct utmp *__buffer,
struct utmp **__result);
extern int __getutline_r (__const struct utmp *__line,
struct utmp *__buffer, struct utmp **__result);
+
+libutil_hidden_proto (login_tty)
+
#endif
diff --git a/localedata/ChangeLog b/localedata/ChangeLog
index 5f362c62b7..4467bc16c9 100644
--- a/localedata/ChangeLog
+++ b/localedata/ChangeLog
@@ -1,3 +1,173 @@
+2004-10-31 Petter Reinholdtsen <pere@hungry.com>
+
+ [BZ #337]
+ * SUPPORTED: Update bug reporting comment.
+ * locales/af_ZA: Change contact address from bug-glibc@gnu.org
+ to bug-glibc-locales@gnu.org (a new alias for the libc-locales mailing
+ list).
+ * locales/an_ES: Likewise.
+ * locales/ar_AE: Likewise.
+ * locales/ar_BH: Likewise.
+ * locales/ar_DZ: Likewise.
+ * locales/ar_EG: Likewise.
+ * locales/ar_IN: Likewise.
+ * locales/ar_IQ: Likewise.
+ * locales/ar_JO: Likewise.
+ * locales/ar_KW: Likewise.
+ * locales/ar_LB: Likewise.
+ * locales/ar_LY: Likewise.
+ * locales/ar_MA: Likewise.
+ * locales/ar_OM: Likewise.
+ * locales/ar_QA: Likewise.
+ * locales/ar_SA: Likewise.
+ * locales/ar_SD: Likewise.
+ * locales/ar_SY: Likewise.
+ * locales/ar_TN: Likewise.
+ * locales/ar_YE: Likewise.
+ * locales/be_BY: Likewise.
+ * locales/bn_IN: Likewise.
+ * locales/br_FR@euro: Likewise.
+ * locales/ca_ES: Likewise.
+ * locales/ca_ES@euro: Likewise.
+ * locales/cs_CZ: Likewise.
+ * locales/da_DK: Likewise.
+ * locales/de_AT: Likewise.
+ * locales/de_AT@euro: Likewise.
+ * locales/de_BE: Likewise.
+ * locales/de_BE@euro: Likewise.
+ * locales/de_CH: Likewise.
+ * locales/de_DE: Likewise.
+ * locales/de_DE@euro: Likewise.
+ * locales/de_LU: Likewise.
+ * locales/de_LU@euro: Likewise.
+ * locales/el_GR: Likewise.
+ * locales/el_GR@euro: Likewise.
+ * locales/en_AU: Likewise.
+ * locales/en_BW: Likewise.
+ * locales/en_CA: Likewise.
+ * locales/en_DK: Likewise.
+ * locales/en_GB: Likewise.
+ * locales/en_HK: Likewise.
+ * locales/en_IE: Likewise.
+ * locales/en_IE@euro: Likewise.
+ * locales/en_IN: Likewise.
+ * locales/en_NZ: Likewise.
+ * locales/en_PH: Likewise.
+ * locales/en_SG: Likewise.
+ * locales/en_US: Likewise.
+ * locales/en_ZW: Likewise.
+ * locales/es_AR: Likewise.
+ * locales/es_BO: Likewise.
+ * locales/es_CL: Likewise.
+ * locales/es_CO: Likewise.
+ * locales/es_CR: Likewise.
+ * locales/es_DO: Likewise.
+ * locales/es_EC: Likewise.
+ * locales/es_ES: Likewise.
+ * locales/es_ES@euro: Likewise.
+ * locales/es_GT: Likewise.
+ * locales/es_HN: Likewise.
+ * locales/es_MX: Likewise.
+ * locales/es_NI: Likewise.
+ * locales/es_PA: Likewise.
+ * locales/es_PE: Likewise.
+ * locales/es_PR: Likewise.
+ * locales/es_PY: Likewise.
+ * locales/es_SV: Likewise.
+ * locales/es_US: Likewise.
+ * locales/es_UY: Likewise.
+ * locales/es_VE: Likewise.
+ * locales/et_EE: Likewise.
+ * locales/eu_ES: Likewise.
+ * locales/eu_ES@euro: Likewise.
+ * locales/fi_FI: Likewise.
+ * locales/fi_FI@euro: Likewise.
+ * locales/fo_FO: Likewise.
+ * locales/fr_BE: Likewise.
+ * locales/fr_BE@euro: Likewise.
+ * locales/fr_CA: Likewise.
+ * locales/fr_CH: Likewise.
+ * locales/fr_FR: Likewise.
+ * locales/fr_FR@euro: Likewise.
+ * locales/fr_LU: Likewise.
+ * locales/fr_LU@euro: Likewise.
+ * locales/ga_IE: Likewise.
+ * locales/ga_IE@euro: Likewise.
+ * locales/gl_ES: Likewise.
+ * locales/gl_ES@euro: Likewise.
+ * locales/gu_IN: Likewise.
+ * locales/gv_GB: Likewise.
+ * locales/he_IL: Likewise.
+ * locales/hi_IN: Likewise.
+ * locales/hr_HR: Likewise.
+ * locales/hu_HU: Likewise.
+ * locales/id_ID: Likewise.
+ * locales/is_IS: Likewise.
+ * locales/it_CH: Likewise.
+ * locales/it_IT: Likewise.
+ * locales/it_IT@euro: Likewise.
+ * locales/iw_IL: Likewise.
+ * locales/ja_JP: Likewise.
+ * locales/kk_KZ: Likewise.
+ * locales/kl_GL: Likewise.
+ * locales/kn_IN: Likewise.
+ * locales/ko_KR: Likewise.
+ * locales/kw_GB: Likewise.
+ * locales/lo_LA: Likewise.
+ * locales/lt_LT: Likewise.
+ * locales/lv_LV: Likewise.
+ * locales/ml_IN: Likewise.
+ * locales/mn_MN: Likewise.
+ * locales/mr_IN: Likewise.
+ * locales/ms_MY: Likewise.
+ * locales/mt_MT: Likewise.
+ * locales/nb_NO: Likewise.
+ * locales/nl_BE: Likewise.
+ * locales/nl_BE@euro: Likewise.
+ * locales/nl_NL: Likewise.
+ * locales/nl_NL@euro: Likewise.
+ * locales/nn_NO: Likewise.
+ * locales/pa_IN: Likewise.
+ * locales/pl_PL: Likewise.
+ * locales/pt_BR: Likewise.
+ * locales/pt_PT: Likewise.
+ * locales/pt_PT@euro: Likewise.
+ * locales/ro_RO: Likewise.
+ * locales/ru_RU: Likewise.
+ * locales/ru_UA: Likewise.
+ * locales/sk_SK: Likewise.
+ * locales/sl_SI: Likewise.
+ * locales/sq_AL: Likewise.
+ * locales/sv_FI: Likewise.
+ * locales/sv_FI@euro: Likewise.
+ * locales/sv_SE: Likewise.
+ * locales/ta_IN: Likewise.
+ * locales/te_IN: Likewise.
+ * locales/th_TH: Likewise.
+ * locales/tr_TR: Likewise.
+ * locales/uk_UA: Likewise.
+ * locales/ur_PK: Likewise.
+ * locales/vi_VN: Likewise.
+ * locales/wa_BE@euro: Likewise.
+ * locales/zh_CN: Likewise.
+ * locales/zh_HK: Likewise.
+ * locales/zh_SG: Likewise.
+ * locales/zh_TW: Likewise.
+
+ [BZ #187]
+ * locales/tr_TR: Add 'yY' and 'nN' to yesexpr and noexpr, to avoid
+ surprises when using untranslated program.
+ * locales/tr_TR: Remove trailing '.*' from yesexpr and noexpr to
+ make it more like the structure of the POSIX locale values.
+ * locales/tr_TR: Correct numeric decimal point to use comma, and
+ correct grouping.
+ Based on patches from Deniz Akkus Kanca and Nilgün Belma Bugüner.
+
+ [BZ #421]
+ * locales/tr_TR: Update with new currency symbol valid from
+ 2005-01-01. Patch from Nilgün Belma Bugüner.
+ * locales/tr_TR: Convert UTF-8 comment to <U#> notation.
+
2004-10-11 Ulrich Drepper <drepper@redhat.com>
* locales/fa_IR: Add to_inpunct map.
diff --git a/localedata/SUPPORTED b/localedata/SUPPORTED
index aa0c079e2d..b5865ef856 100644
--- a/localedata/SUPPORTED
+++ b/localedata/SUPPORTED
@@ -1,6 +1,5 @@
# This file names the currently supported and somewhat tested locales.
-# If you have any additions please use the glibcbug script to send an
-# appropriate message.
+# If you have any additions please file a glibc bug report.
SUPPORTED-LOCALES=\
aa_DJ/ISO-8859-1 \
aa_ER/UTF-8 \
diff --git a/localedata/locales/af_ZA b/localedata/locales/af_ZA
index 2d0a1900ba..b5699bc77b 100644
--- a/localedata/locales/af_ZA
+++ b/localedata/locales/af_ZA
@@ -21,7 +21,7 @@ title "Afrikaans locale for South Africa"
source "RAP"
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Afrikaans"
diff --git a/localedata/locales/an_ES b/localedata/locales/an_ES
index ef64650ec8..a9722c5dac 100644
--- a/localedata/locales/an_ES
+++ b/localedata/locales/an_ES
@@ -23,7 +23,7 @@ title "Aragonese locale for Spain"
source ""
address ""
contact "Jordi Mallach Pérez"
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Aragonese"
diff --git a/localedata/locales/ar_AE b/localedata/locales/ar_AE
index 21ac611496..db4a819d48 100644
--- a/localedata/locales/ar_AE
+++ b/localedata/locales/ar_AE
@@ -9,7 +9,7 @@ title "Arabic language locale for United Arab Emirates"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/ar_BH b/localedata/locales/ar_BH
index 4ef1d25464..7837f502c2 100644
--- a/localedata/locales/ar_BH
+++ b/localedata/locales/ar_BH
@@ -9,7 +9,7 @@ title "Arabic language locale for Bahrain"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/ar_DZ b/localedata/locales/ar_DZ
index 755ed1c3bf..8a28cf9301 100644
--- a/localedata/locales/ar_DZ
+++ b/localedata/locales/ar_DZ
@@ -9,7 +9,7 @@ title "Arabic language locale for Algeria"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/ar_EG b/localedata/locales/ar_EG
index 39d55e65fb..8dd93062cf 100644
--- a/localedata/locales/ar_EG
+++ b/localedata/locales/ar_EG
@@ -9,7 +9,7 @@ title "Arabic language locale for Egypt"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/ar_IN b/localedata/locales/ar_IN
index f1cbb37904..9ba215d8e1 100644
--- a/localedata/locales/ar_IN
+++ b/localedata/locales/ar_IN
@@ -9,7 +9,7 @@ title "Arabic language locale for India"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/ar_IQ b/localedata/locales/ar_IQ
index 1f632130df..3e60a7fd69 100644
--- a/localedata/locales/ar_IQ
+++ b/localedata/locales/ar_IQ
@@ -9,7 +9,7 @@ title "Arabic language locale for Iraq"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/ar_JO b/localedata/locales/ar_JO
index 0e9066dce1..0a3154be3d 100644
--- a/localedata/locales/ar_JO
+++ b/localedata/locales/ar_JO
@@ -9,7 +9,7 @@ title "Arabic language locale for Jordan"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/ar_KW b/localedata/locales/ar_KW
index 7a81a37f85..31c1b17292 100644
--- a/localedata/locales/ar_KW
+++ b/localedata/locales/ar_KW
@@ -9,7 +9,7 @@ title "Arabic language locale for Kuwait"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/ar_LB b/localedata/locales/ar_LB
index 1a2333fa8a..2db8511581 100644
--- a/localedata/locales/ar_LB
+++ b/localedata/locales/ar_LB
@@ -9,7 +9,7 @@ title "Arabic language locale for Lebanon"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/ar_LY b/localedata/locales/ar_LY
index 41c98cf5ce..5c77561f4f 100644
--- a/localedata/locales/ar_LY
+++ b/localedata/locales/ar_LY
@@ -9,7 +9,7 @@ title "Arabic language locale for Libyan Arab Jamahiriya"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/ar_MA b/localedata/locales/ar_MA
index dc3ea7ccd7..b35f3a48b0 100644
--- a/localedata/locales/ar_MA
+++ b/localedata/locales/ar_MA
@@ -9,7 +9,7 @@ title "Arabic language locale for Morocco"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/ar_OM b/localedata/locales/ar_OM
index 2097e6edf7..6ebdfde0a9 100644
--- a/localedata/locales/ar_OM
+++ b/localedata/locales/ar_OM
@@ -9,7 +9,7 @@ title "Arabic language locale for Oman"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/ar_QA b/localedata/locales/ar_QA
index 1be6fd182b..bb139814ab 100644
--- a/localedata/locales/ar_QA
+++ b/localedata/locales/ar_QA
@@ -9,7 +9,7 @@ title "Arabic language locale for Qatar"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/ar_SA b/localedata/locales/ar_SA
index 5eef02cc1b..7d8423ca2b 100644
--- a/localedata/locales/ar_SA
+++ b/localedata/locales/ar_SA
@@ -13,7 +13,7 @@ title "Arabic locale for Saudi Arabia"
source ""
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/ar_SD b/localedata/locales/ar_SD
index 92e98d927f..7970f5be7a 100644
--- a/localedata/locales/ar_SD
+++ b/localedata/locales/ar_SD
@@ -9,7 +9,7 @@ title "Arabic language locale for Sudan"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/ar_SY b/localedata/locales/ar_SY
index 588e0b322c..283daa4de9 100644
--- a/localedata/locales/ar_SY
+++ b/localedata/locales/ar_SY
@@ -9,7 +9,7 @@ title "Arabic language locale for Syrian Arab Republic"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/ar_TN b/localedata/locales/ar_TN
index 78ba6831a6..ca8fae4f62 100644
--- a/localedata/locales/ar_TN
+++ b/localedata/locales/ar_TN
@@ -9,7 +9,7 @@ title "Arabic language locale for Tunisia"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/ar_YE b/localedata/locales/ar_YE
index c511a8ed25..b2b2038fef 100644
--- a/localedata/locales/ar_YE
+++ b/localedata/locales/ar_YE
@@ -9,7 +9,7 @@ title "Arabic language locale for Yemen"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Arabic"
diff --git a/localedata/locales/be_BY b/localedata/locales/be_BY
index 890c997425..0647eea095 100644
--- a/localedata/locales/be_BY
+++ b/localedata/locales/be_BY
@@ -20,7 +20,7 @@ title "Belarusian locale for Belarus"
source ""
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Belarusian"
diff --git a/localedata/locales/bn_IN b/localedata/locales/bn_IN
index c09fd5025a..6edbf68c6b 100644
--- a/localedata/locales/bn_IN
+++ b/localedata/locales/bn_IN
@@ -8,7 +8,7 @@ LC_IDENTIFICATION
title "Bengali language locale for India"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Bengali"
diff --git a/localedata/locales/br_FR@euro b/localedata/locales/br_FR@euro
index 035ed70a36..62b1da934f 100644
--- a/localedata/locales/br_FR@euro
+++ b/localedata/locales/br_FR@euro
@@ -15,7 +15,7 @@ LC_IDENTIFICATION
title "Breton locale for France with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Breton"
diff --git a/localedata/locales/ca_ES b/localedata/locales/ca_ES
index 10d5ffd1ca..1750222109 100644
--- a/localedata/locales/ca_ES
+++ b/localedata/locales/ca_ES
@@ -23,7 +23,7 @@ title "Catalan locale for Catalonia"
source "RAP"
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Catalan"
diff --git a/localedata/locales/ca_ES@euro b/localedata/locales/ca_ES@euro
index 73fffd0da9..cb5b85e049 100644
--- a/localedata/locales/ca_ES@euro
+++ b/localedata/locales/ca_ES@euro
@@ -18,7 +18,7 @@ title "Catalan locale for Catalonia with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Catalan"
diff --git a/localedata/locales/cs_CZ b/localedata/locales/cs_CZ
index c8829e6f7a..720842d96f 100644
--- a/localedata/locales/cs_CZ
+++ b/localedata/locales/cs_CZ
@@ -109,7 +109,7 @@ title "Czech locale for the Czech Republic"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Czech"
diff --git a/localedata/locales/da_DK b/localedata/locales/da_DK
index 0c0f2cbc12..39e96b5de1 100644
--- a/localedata/locales/da_DK
+++ b/localedata/locales/da_DK
@@ -32,7 +32,7 @@ title "Danish locale for Denmark"
source "Danish Standards Association"
address "Kollegievej 6, DK-2920 Charlottenlund, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Danish"
diff --git a/localedata/locales/de_AT b/localedata/locales/de_AT
index cd36633471..435363e397 100644
--- a/localedata/locales/de_AT
+++ b/localedata/locales/de_AT
@@ -22,7 +22,7 @@ title "German locale for Austria"
source "O:sterreiches Normungsinstitut"
address "Postfach 130, A-1021 Wien"
contact "Gerhard Budin"
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "German"
diff --git a/localedata/locales/de_AT@euro b/localedata/locales/de_AT@euro
index 6e01cf4e71..9604b255c5 100644
--- a/localedata/locales/de_AT@euro
+++ b/localedata/locales/de_AT@euro
@@ -22,7 +22,7 @@ title "German locale for Austria with Euro"
source "O:sterreiches Normungsinstitut"
address "Postfach 130, A-1021 Wien"
contact "Gerhard Budin"
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "German"
diff --git a/localedata/locales/de_BE b/localedata/locales/de_BE
index 3b07145064..140b407f07 100644
--- a/localedata/locales/de_BE
+++ b/localedata/locales/de_BE
@@ -24,7 +24,7 @@ title "German locale for Belgium"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "German"
diff --git a/localedata/locales/de_BE@euro b/localedata/locales/de_BE@euro
index 8ea7ab2b99..e5f02dcfc0 100644
--- a/localedata/locales/de_BE@euro
+++ b/localedata/locales/de_BE@euro
@@ -16,7 +16,7 @@ title "German locale for Belgium with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "German"
diff --git a/localedata/locales/de_CH b/localedata/locales/de_CH
index 72549f5b2e..96d44b5ee4 100644
--- a/localedata/locales/de_CH
+++ b/localedata/locales/de_CH
@@ -24,7 +24,7 @@ title "German locale for Switzerland"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "German"
diff --git a/localedata/locales/de_DE b/localedata/locales/de_DE
index 434055d0ce..93fded8b2a 100644
--- a/localedata/locales/de_DE
+++ b/localedata/locales/de_DE
@@ -8,7 +8,7 @@ title "German locale for Germany"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "German"
diff --git a/localedata/locales/de_DE@euro b/localedata/locales/de_DE@euro
index b2770ff611..d639e3fa4d 100644
--- a/localedata/locales/de_DE@euro
+++ b/localedata/locales/de_DE@euro
@@ -8,7 +8,7 @@ title "German locale for Germany with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "German"
diff --git a/localedata/locales/de_LU b/localedata/locales/de_LU
index 2abfdfbdad..51ecf37750 100644
--- a/localedata/locales/de_LU
+++ b/localedata/locales/de_LU
@@ -24,7 +24,7 @@ title "German locale for Luxemburg"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "German"
diff --git a/localedata/locales/de_LU@euro b/localedata/locales/de_LU@euro
index 4949935a61..3c41ffb761 100644
--- a/localedata/locales/de_LU@euro
+++ b/localedata/locales/de_LU@euro
@@ -16,7 +16,7 @@ title "German locale for Luxemburg with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "German"
diff --git a/localedata/locales/el_GR b/localedata/locales/el_GR
index c9de0f82cf..95278657a3 100644
--- a/localedata/locales/el_GR
+++ b/localedata/locales/el_GR
@@ -23,7 +23,7 @@ title "Greek locale for Greece"
source "RAP"
address "Sankt Jorgens Alle 8, DK-1615 Kobenhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Greek"
diff --git a/localedata/locales/el_GR@euro b/localedata/locales/el_GR@euro
index 93494831b0..bd1f6be068 100644
--- a/localedata/locales/el_GR@euro
+++ b/localedata/locales/el_GR@euro
@@ -6,7 +6,7 @@ title "Greek locale for Greece with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Greek"
diff --git a/localedata/locales/en_AU b/localedata/locales/en_AU
index 361213e3b1..bb52db4007 100644
--- a/localedata/locales/en_AU
+++ b/localedata/locales/en_AU
@@ -24,7 +24,7 @@ title "English locale for Australia"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "English"
diff --git a/localedata/locales/en_BW b/localedata/locales/en_BW
index 0833fcf0a9..ea8cf7ecb6 100644
--- a/localedata/locales/en_BW
+++ b/localedata/locales/en_BW
@@ -21,7 +21,7 @@ title "English locale for Botswana"
source "RAP"
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "English"
diff --git a/localedata/locales/en_CA b/localedata/locales/en_CA
index 115cd4c4aa..d1199b5248 100644
--- a/localedata/locales/en_CA
+++ b/localedata/locales/en_CA
@@ -26,7 +26,7 @@ title "English locale for Canada"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "English"
diff --git a/localedata/locales/en_DK b/localedata/locales/en_DK
index 59f28dec56..80d0411b53 100644
--- a/localedata/locales/en_DK
+++ b/localedata/locales/en_DK
@@ -29,7 +29,7 @@ title "English locale for Denmark"
source "Danish Standards Association"
address "Kollegievej 6, DK-2920 Charlottenlund, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "English"
diff --git a/localedata/locales/en_GB b/localedata/locales/en_GB
index 373d4f7380..52bf70a639 100644
--- a/localedata/locales/en_GB
+++ b/localedata/locales/en_GB
@@ -24,7 +24,7 @@ title "English locale for Britain"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact "Keld Simonsen"
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "English"
diff --git a/localedata/locales/en_HK b/localedata/locales/en_HK
index 226cf7c7a1..aab7b29f53 100644
--- a/localedata/locales/en_HK
+++ b/localedata/locales/en_HK
@@ -13,7 +13,7 @@ title "English locale for Hong Kong"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "English"
diff --git a/localedata/locales/en_IE b/localedata/locales/en_IE
index 2327fefe2a..2f31ddcc4e 100644
--- a/localedata/locales/en_IE
+++ b/localedata/locales/en_IE
@@ -24,7 +24,7 @@ title "English locale for Ireland"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "English"
diff --git a/localedata/locales/en_IE@euro b/localedata/locales/en_IE@euro
index a0ce258393..a1c302c9f7 100644
--- a/localedata/locales/en_IE@euro
+++ b/localedata/locales/en_IE@euro
@@ -16,7 +16,7 @@ title "English locale for Ireland with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "English"
diff --git a/localedata/locales/en_IN b/localedata/locales/en_IN
index b600421d05..33323c330e 100644
--- a/localedata/locales/en_IN
+++ b/localedata/locales/en_IN
@@ -10,7 +10,7 @@ title "English language locale for India"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "English"
diff --git a/localedata/locales/en_NZ b/localedata/locales/en_NZ
index 37009f1968..1ca93909ad 100644
--- a/localedata/locales/en_NZ
+++ b/localedata/locales/en_NZ
@@ -24,7 +24,7 @@ title "English locale for New Zealand"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "English"
diff --git a/localedata/locales/en_PH b/localedata/locales/en_PH
index 51264c3bcd..d822da795b 100644
--- a/localedata/locales/en_PH
+++ b/localedata/locales/en_PH
@@ -12,7 +12,7 @@ title "English language locale for Philippines"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "English"
diff --git a/localedata/locales/en_SG b/localedata/locales/en_SG
index d4275ce412..d83c601425 100644
--- a/localedata/locales/en_SG
+++ b/localedata/locales/en_SG
@@ -10,7 +10,7 @@ title "English language locale for Singapore"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "English"
diff --git a/localedata/locales/en_US b/localedata/locales/en_US
index 8ad12e137c..7aaa09953a 100644
--- a/localedata/locales/en_US
+++ b/localedata/locales/en_US
@@ -8,7 +8,7 @@ title "English locale for the USA"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "English"
diff --git a/localedata/locales/en_ZW b/localedata/locales/en_ZW
index 165f652b12..7a31abb0a1 100644
--- a/localedata/locales/en_ZW
+++ b/localedata/locales/en_ZW
@@ -21,7 +21,7 @@ title "English locale for Zimbabwe"
source "RAP"
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "English"
diff --git a/localedata/locales/es_AR b/localedata/locales/es_AR
index 0b2fef3c47..d32bbf2f77 100644
--- a/localedata/locales/es_AR
+++ b/localedata/locales/es_AR
@@ -25,7 +25,7 @@ title "Spanish locale for Argentina"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_BO b/localedata/locales/es_BO
index 491c22c6be..ae911c7b14 100644
--- a/localedata/locales/es_BO
+++ b/localedata/locales/es_BO
@@ -25,7 +25,7 @@ title "Spanish locale for Bolivia"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_CL b/localedata/locales/es_CL
index d4074f3dfd..4fe2187894 100644
--- a/localedata/locales/es_CL
+++ b/localedata/locales/es_CL
@@ -25,7 +25,7 @@ title "Spanish locale for Chile"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_CO b/localedata/locales/es_CO
index 65ceed299e..907048a578 100644
--- a/localedata/locales/es_CO
+++ b/localedata/locales/es_CO
@@ -25,7 +25,7 @@ title "Spanish locale for Colombia"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_CR b/localedata/locales/es_CR
index 20ad5eb93f..da541a95a7 100644
--- a/localedata/locales/es_CR
+++ b/localedata/locales/es_CR
@@ -16,7 +16,7 @@ title "Spanish locale for Costa Rica"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_DO b/localedata/locales/es_DO
index 8bea9d6e94..9a7fd5c68b 100644
--- a/localedata/locales/es_DO
+++ b/localedata/locales/es_DO
@@ -25,7 +25,7 @@ title "Spanish locale for Dominican Republic"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_EC b/localedata/locales/es_EC
index a50496b3cb..e927d11324 100644
--- a/localedata/locales/es_EC
+++ b/localedata/locales/es_EC
@@ -25,7 +25,7 @@ title "Spanish locale for Ecuador"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_ES b/localedata/locales/es_ES
index 84622321a1..60ec25bd5a 100644
--- a/localedata/locales/es_ES
+++ b/localedata/locales/es_ES
@@ -25,7 +25,7 @@ title "Spanish locale for Spain"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_ES@euro b/localedata/locales/es_ES@euro
index 4fa1585a7a..1d8bd61447 100644
--- a/localedata/locales/es_ES@euro
+++ b/localedata/locales/es_ES@euro
@@ -17,7 +17,7 @@ title "Spanish locale for Spain with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_GT b/localedata/locales/es_GT
index fc1b2f2e8d..0d0edf9183 100644
--- a/localedata/locales/es_GT
+++ b/localedata/locales/es_GT
@@ -25,7 +25,7 @@ title "Spanish locale for Guatemala"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_HN b/localedata/locales/es_HN
index 1ff4c209a8..3d2c4067fa 100644
--- a/localedata/locales/es_HN
+++ b/localedata/locales/es_HN
@@ -25,7 +25,7 @@ title "Spanish locale for Honduras"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_MX b/localedata/locales/es_MX
index 2cb35a2b87..70e5ae7abb 100644
--- a/localedata/locales/es_MX
+++ b/localedata/locales/es_MX
@@ -25,7 +25,7 @@ title "Spanish locale for Mexico"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_NI b/localedata/locales/es_NI
index ce9b830385..daf67d27d0 100644
--- a/localedata/locales/es_NI
+++ b/localedata/locales/es_NI
@@ -16,7 +16,7 @@ title "Spanish locale for Nicaragua"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_PA b/localedata/locales/es_PA
index c12427467e..93880d280e 100644
--- a/localedata/locales/es_PA
+++ b/localedata/locales/es_PA
@@ -25,7 +25,7 @@ title "Spanish locale for Panama"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_PE b/localedata/locales/es_PE
index 7b7dd27a0b..7e266cb46c 100644
--- a/localedata/locales/es_PE
+++ b/localedata/locales/es_PE
@@ -25,7 +25,7 @@ title "Spanish locale for Peru"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_PR b/localedata/locales/es_PR
index a784eff34f..42edaddbaa 100644
--- a/localedata/locales/es_PR
+++ b/localedata/locales/es_PR
@@ -16,7 +16,7 @@ title "Spanish locale for Puerto Rico"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_PY b/localedata/locales/es_PY
index a04f63c2ad..8a6b5a0cf6 100644
--- a/localedata/locales/es_PY
+++ b/localedata/locales/es_PY
@@ -25,7 +25,7 @@ title "Spanish locale for Paraguay"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_SV b/localedata/locales/es_SV
index 0882d87907..4c14a953a4 100644
--- a/localedata/locales/es_SV
+++ b/localedata/locales/es_SV
@@ -25,7 +25,7 @@ title "Spanish locale for El Salvador"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_US b/localedata/locales/es_US
index 7cbae56fda..0b12c6e203 100644
--- a/localedata/locales/es_US
+++ b/localedata/locales/es_US
@@ -25,7 +25,7 @@ title "Spanish locale for the USA"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_UY b/localedata/locales/es_UY
index bc38c9fa28..36d18b1af2 100644
--- a/localedata/locales/es_UY
+++ b/localedata/locales/es_UY
@@ -25,7 +25,7 @@ title "Spanish locale for Uruguay"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/es_VE b/localedata/locales/es_VE
index 6ff392314d..1e890d0f60 100644
--- a/localedata/locales/es_VE
+++ b/localedata/locales/es_VE
@@ -25,7 +25,7 @@ title "Spanish locale for Venezuela"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Spanish"
diff --git a/localedata/locales/et_EE b/localedata/locales/et_EE
index 4faec5cb53..5cae672c73 100644
--- a/localedata/locales/et_EE
+++ b/localedata/locales/et_EE
@@ -32,7 +32,7 @@ title "Estonian locale for Estonia"
source "Estonian Informatics Fund"
address "To-nisma:gi 8, Tallinn, EE0100 Estonia"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Estonian"
diff --git a/localedata/locales/eu_ES b/localedata/locales/eu_ES
index 9c269209df..e4c3c892b1 100644
--- a/localedata/locales/eu_ES
+++ b/localedata/locales/eu_ES
@@ -28,7 +28,7 @@ title "Basque locale for Spain"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Basque"
diff --git a/localedata/locales/eu_ES@euro b/localedata/locales/eu_ES@euro
index c536133ed0..36ee9557f4 100644
--- a/localedata/locales/eu_ES@euro
+++ b/localedata/locales/eu_ES@euro
@@ -17,7 +17,7 @@ title "Basque language locale for Spain with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Basque"
diff --git a/localedata/locales/fi_FI b/localedata/locales/fi_FI
index 52eac2f9ff..adfc5f2c02 100644
--- a/localedata/locales/fi_FI
+++ b/localedata/locales/fi_FI
@@ -29,7 +29,7 @@ title "Finnish locale for Finland"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Finnish"
diff --git a/localedata/locales/fi_FI@euro b/localedata/locales/fi_FI@euro
index c9cb78dc7c..f03f0440b7 100644
--- a/localedata/locales/fi_FI@euro
+++ b/localedata/locales/fi_FI@euro
@@ -17,7 +17,7 @@ title "Finnish locale for Finland with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Finnish"
diff --git a/localedata/locales/fo_FO b/localedata/locales/fo_FO
index 18fb0f6c7b..20deef722a 100644
--- a/localedata/locales/fo_FO
+++ b/localedata/locales/fo_FO
@@ -27,7 +27,7 @@ title "Faroese locale for Faroe Islands"
source "Danish Standards Association"
address "Kollegievej 6, DK-2920 Charlottenlund, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Faroese"
diff --git a/localedata/locales/fr_BE b/localedata/locales/fr_BE
index 549a640d53..af8f1b30c9 100644
--- a/localedata/locales/fr_BE
+++ b/localedata/locales/fr_BE
@@ -23,7 +23,7 @@ title "French locale for Belgium"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "French"
diff --git a/localedata/locales/fr_BE@euro b/localedata/locales/fr_BE@euro
index 0b2f08ea69..51968f8304 100644
--- a/localedata/locales/fr_BE@euro
+++ b/localedata/locales/fr_BE@euro
@@ -16,7 +16,7 @@ title "French locale for Belgium with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "French"
diff --git a/localedata/locales/fr_CA b/localedata/locales/fr_CA
index 4ef23f4089..8e13cfc0c8 100644
--- a/localedata/locales/fr_CA
+++ b/localedata/locales/fr_CA
@@ -24,7 +24,7 @@ title "French locale for Canada"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "French"
diff --git a/localedata/locales/fr_CH b/localedata/locales/fr_CH
index a63eda4f3e..e2508e64ce 100644
--- a/localedata/locales/fr_CH
+++ b/localedata/locales/fr_CH
@@ -24,7 +24,7 @@ title "French locale for Switzerland"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "French"
diff --git a/localedata/locales/fr_FR b/localedata/locales/fr_FR
index 70e008fdbf..e1de5da920 100644
--- a/localedata/locales/fr_FR
+++ b/localedata/locales/fr_FR
@@ -23,7 +23,7 @@ title "French locale for France"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact "Keld Simonsen"
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "French"
diff --git a/localedata/locales/fr_FR@euro b/localedata/locales/fr_FR@euro
index 391faf5f37..63f805adc9 100644
--- a/localedata/locales/fr_FR@euro
+++ b/localedata/locales/fr_FR@euro
@@ -15,7 +15,7 @@ LC_IDENTIFICATION
title "French locale for France with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "French"
diff --git a/localedata/locales/fr_LU b/localedata/locales/fr_LU
index 479ea05f07..286ad5b7e4 100644
--- a/localedata/locales/fr_LU
+++ b/localedata/locales/fr_LU
@@ -23,7 +23,7 @@ title "French locale for Luxemburg"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "French"
diff --git a/localedata/locales/fr_LU@euro b/localedata/locales/fr_LU@euro
index c3e7d690a3..3466e4081a 100644
--- a/localedata/locales/fr_LU@euro
+++ b/localedata/locales/fr_LU@euro
@@ -16,7 +16,7 @@ title "French locale for Luxemburg with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "French"
diff --git a/localedata/locales/ga_IE b/localedata/locales/ga_IE
index 42004acb43..751f6aba9c 100644
--- a/localedata/locales/ga_IE
+++ b/localedata/locales/ga_IE
@@ -21,7 +21,7 @@ title "Irish locale for Ireland"
source "NSAI"
address "Glasnevin, Dublin 9, Ireland"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Irish"
diff --git a/localedata/locales/ga_IE@euro b/localedata/locales/ga_IE@euro
index 984fa4746c..6feaaca2b2 100644
--- a/localedata/locales/ga_IE@euro
+++ b/localedata/locales/ga_IE@euro
@@ -15,7 +15,7 @@ title "Irish locale for Ireland with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Irish"
diff --git a/localedata/locales/gl_ES b/localedata/locales/gl_ES
index 8acf9f950d..29c40bf55d 100644
--- a/localedata/locales/gl_ES
+++ b/localedata/locales/gl_ES
@@ -24,7 +24,7 @@ title "Galician locale for Spain"
source "GPUL"
address "Facultade de Informática, Campus de Elvin~a, s/n, 15071 A Corun~a, Spain"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Galician"
diff --git a/localedata/locales/gl_ES@euro b/localedata/locales/gl_ES@euro
index accf8c9b3f..6934c6078e 100644
--- a/localedata/locales/gl_ES@euro
+++ b/localedata/locales/gl_ES@euro
@@ -17,7 +17,7 @@ title "Galician locale for Spain with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Galician"
diff --git a/localedata/locales/gu_IN b/localedata/locales/gu_IN
index aaca913f2c..667e29a91c 100644
--- a/localedata/locales/gu_IN
+++ b/localedata/locales/gu_IN
@@ -10,7 +10,7 @@ title "Gujarati Language Locale For India"
source "IndLinux.org"
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Gujarati"
diff --git a/localedata/locales/gv_GB b/localedata/locales/gv_GB
index 8a1e4636cc..4a1e1481d4 100644
--- a/localedata/locales/gv_GB
+++ b/localedata/locales/gv_GB
@@ -26,7 +26,7 @@ title "Manx Gaelic locale for Britain"
source "Alastair McKinstry"
address "Croí Lár, Ballinahalla, Maigh Cuilinn,, Co. Gaillimh, Ireland"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Manx Gaelic"
diff --git a/localedata/locales/he_IL b/localedata/locales/he_IL
index 05a8f30541..9e80e5e481 100644
--- a/localedata/locales/he_IL
+++ b/localedata/locales/he_IL
@@ -28,7 +28,7 @@ title "Hebrew locale for Israel"
source "RAP"
address "Sankt Jo/rgens Alle 8, DK-1615 Ko/benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Hebrew"
diff --git a/localedata/locales/hi_IN b/localedata/locales/hi_IN
index e7b762c69b..10284998a6 100644
--- a/localedata/locales/hi_IN
+++ b/localedata/locales/hi_IN
@@ -9,7 +9,7 @@ title "Hindi language locale for India"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Hindi"
diff --git a/localedata/locales/hr_HR b/localedata/locales/hr_HR
index 94185a2f00..aec93fb108 100644
--- a/localedata/locales/hr_HR
+++ b/localedata/locales/hr_HR
@@ -25,7 +25,7 @@ title "Croatian locale for Croatia"
source "CARNet/MZT"
address "Josipa Marohnica bb, Zagreb, Hrvatska"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Croatian"
diff --git a/localedata/locales/hu_HU b/localedata/locales/hu_HU
index 29b5ff7322..6dc2b8c70f 100644
--- a/localedata/locales/hu_HU
+++ b/localedata/locales/hu_HU
@@ -36,7 +36,7 @@ title "Hungarian locale for Hungary"
source "RAP"
address "Sankt Jorgens Alle 8, DK-1615 Kobenhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Hungarian"
diff --git a/localedata/locales/id_ID b/localedata/locales/id_ID
index c375f13a22..e64a9aa1b0 100644
--- a/localedata/locales/id_ID
+++ b/localedata/locales/id_ID
@@ -24,7 +24,7 @@ title "Indonesian locale for Indonesia"
source ""
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Indonesian"
diff --git a/localedata/locales/is_IS b/localedata/locales/is_IS
index 687ff6b49d..726ed9fcc2 100644
--- a/localedata/locales/is_IS
+++ b/localedata/locales/is_IS
@@ -25,7 +25,7 @@ title "Icelandic locale for Iceland"
source "Stadlarad I'slands"
address "Keldnaholt-ITI', IS-112 Reykjavi'k, Iceland"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Icelandic"
diff --git a/localedata/locales/it_CH b/localedata/locales/it_CH
index a9f69eb495..a45660f1dd 100644
--- a/localedata/locales/it_CH
+++ b/localedata/locales/it_CH
@@ -17,7 +17,7 @@ title "Italian locale for Switzerland"
source ""
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Italian"
diff --git a/localedata/locales/it_IT b/localedata/locales/it_IT
index b2b36d66ad..9bc8cb8ddb 100644
--- a/localedata/locales/it_IT
+++ b/localedata/locales/it_IT
@@ -23,7 +23,7 @@ title "Italian locale for Italy"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Italian"
diff --git a/localedata/locales/it_IT@euro b/localedata/locales/it_IT@euro
index cf197f2dda..e40615b200 100644
--- a/localedata/locales/it_IT@euro
+++ b/localedata/locales/it_IT@euro
@@ -16,7 +16,7 @@ title "Italian locale for Italy with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Italian"
diff --git a/localedata/locales/iw_IL b/localedata/locales/iw_IL
index 66d92513b3..a357029783 100644
--- a/localedata/locales/iw_IL
+++ b/localedata/locales/iw_IL
@@ -27,7 +27,7 @@ title "Hebrew locale for Israel"
source "RAP"
address "Sankt Jo/rgens Alle 8, DK-1615 Ko/benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Hebrew"
diff --git a/localedata/locales/ja_JP b/localedata/locales/ja_JP
index 5290a86b59..bb3897269a 100644
--- a/localedata/locales/ja_JP
+++ b/localedata/locales/ja_JP
@@ -12,7 +12,7 @@ title "Japanese language locale for Japan"
source "HANATAKA, Shinya, hanataka@abyss.rim.or.jp"
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Japanese"
diff --git a/localedata/locales/kk_KZ b/localedata/locales/kk_KZ
index 683476285f..e287291534 100644
--- a/localedata/locales/kk_KZ
+++ b/localedata/locales/kk_KZ
@@ -23,7 +23,7 @@ title "Kazakh locale for Kazakhstan"
source "NIPI, Kazakhstan Copper Corporation"
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Kazakh"
diff --git a/localedata/locales/kl_GL b/localedata/locales/kl_GL
index e2e3cba857..f4cccd40aa 100644
--- a/localedata/locales/kl_GL
+++ b/localedata/locales/kl_GL
@@ -28,7 +28,7 @@ title "Greenlandic locale for Greenland"
source "Danish Standards Association"
address "Kollegievej 6, DK-2920 Charlottenlund, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Greenlandic"
diff --git a/localedata/locales/kn_IN b/localedata/locales/kn_IN
index 40845556fe..a2a04ebd3f 100644
--- a/localedata/locales/kn_IN
+++ b/localedata/locales/kn_IN
@@ -11,7 +11,7 @@ title "Kannada language locale for India"
source "IndLinux.org"
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Kannada"
diff --git a/localedata/locales/ko_KR b/localedata/locales/ko_KR
index e6728decfc..ad78b51638 100644
--- a/localedata/locales/ko_KR
+++ b/localedata/locales/ko_KR
@@ -44,7 +44,7 @@ title "Korean locale for Republic of Korea"
source ""
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Korean"
diff --git a/localedata/locales/kw_GB b/localedata/locales/kw_GB
index 93af45b12e..fc7d352090 100644
--- a/localedata/locales/kw_GB
+++ b/localedata/locales/kw_GB
@@ -27,7 +27,7 @@ title "Cornish locale for Britain"
source "Alastair McKinstry"
address "Croí Lár, Ballinahalla, Maigh Cuilinn,, Co. Gaillimh, Ireland"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Cornish"
diff --git a/localedata/locales/lo_LA b/localedata/locales/lo_LA
index 027aade7dc..9cb6861ebf 100644
--- a/localedata/locales/lo_LA
+++ b/localedata/locales/lo_LA
@@ -47,7 +47,7 @@ title "Lao locale for Laos"
source ""
address ""
contact "Anousak Souphavanh at: anousak@muanglao.com"
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Lao"
diff --git a/localedata/locales/lt_LT b/localedata/locales/lt_LT
index 448f4b8098..fb3079bfad 100644
--- a/localedata/locales/lt_LT
+++ b/localedata/locales/lt_LT
@@ -35,7 +35,7 @@ title "Lithuanian locale for Lithuania"
source "Lithuanian Computer Society and"
address "P.O Box 1147, Donelaicio 60, 3000 Kaunas, Lithuania"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Lithuanian"
diff --git a/localedata/locales/lv_LV b/localedata/locales/lv_LV
index 016130a99c..0e823112ea 100644
--- a/localedata/locales/lv_LV
+++ b/localedata/locales/lv_LV
@@ -27,7 +27,7 @@ title "Latvian locale for Latvia"
source "Latvian Standard LVS 24-93"
address "LU MII, Rainis boul. 29, LV-1459 Riga, Latvia"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Latvian"
diff --git a/localedata/locales/ml_IN b/localedata/locales/ml_IN
index 91f83ef7f8..7053dd911f 100644
--- a/localedata/locales/ml_IN
+++ b/localedata/locales/ml_IN
@@ -9,7 +9,7 @@ title " Malayalam language locale for India"
source "Free Software Foundation of India, Trivandrum"
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Malayalam"
diff --git a/localedata/locales/mn_MN b/localedata/locales/mn_MN
index e75ff42ddc..5bea18cc4b 100644
--- a/localedata/locales/mn_MN
+++ b/localedata/locales/mn_MN
@@ -12,7 +12,7 @@ title "Mongolian locale for Mongolia"
source "OPENMN"
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Mongolian"
diff --git a/localedata/locales/mr_IN b/localedata/locales/mr_IN
index 24238caa58..67d4f68bfd 100644
--- a/localedata/locales/mr_IN
+++ b/localedata/locales/mr_IN
@@ -9,7 +9,7 @@ title "Marathi language locale for India"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Marathi"
diff --git a/localedata/locales/ms_MY b/localedata/locales/ms_MY
index 0fb0ffc826..c7345f0e76 100644
--- a/localedata/locales/ms_MY
+++ b/localedata/locales/ms_MY
@@ -11,7 +11,7 @@ title "Malay language locale for Malaysia"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org, sebol@ikhlas.com"
+email "bug-glibc-locales@gnu.org, sebol@ikhlas.com"
tel ""
fax ""
language "Malay"
diff --git a/localedata/locales/mt_MT b/localedata/locales/mt_MT
index 4096b27f44..918d04345c 100644
--- a/localedata/locales/mt_MT
+++ b/localedata/locales/mt_MT
@@ -12,7 +12,7 @@ title "Maltese language locale for Malta"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Maltese"
diff --git a/localedata/locales/nb_NO b/localedata/locales/nb_NO
index f43a7323a3..afead90319 100644
--- a/localedata/locales/nb_NO
+++ b/localedata/locales/nb_NO
@@ -25,7 +25,7 @@ title "Norwegian (Bokmal) locale for Norway"
source "Norsk Standardiseringsforbund"
address "University Library,, Drammensveien 41, N-9242 Oslo, Norge"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Norwegian, Bokm<U00E5>l"
diff --git a/localedata/locales/nl_BE b/localedata/locales/nl_BE
index aad9a20844..7942269130 100644
--- a/localedata/locales/nl_BE
+++ b/localedata/locales/nl_BE
@@ -24,7 +24,7 @@ title "Dutch locale for Belgium"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Dutch"
diff --git a/localedata/locales/nl_BE@euro b/localedata/locales/nl_BE@euro
index 068861ee59..d05477ff00 100644
--- a/localedata/locales/nl_BE@euro
+++ b/localedata/locales/nl_BE@euro
@@ -16,7 +16,7 @@ title "Dutch locale for Belgium with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Dutch"
diff --git a/localedata/locales/nl_NL b/localedata/locales/nl_NL
index 44c6ad1cc7..88a9036706 100644
--- a/localedata/locales/nl_NL
+++ b/localedata/locales/nl_NL
@@ -23,7 +23,7 @@ title "Dutch locale for the Netherlands"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Dutch"
diff --git a/localedata/locales/nl_NL@euro b/localedata/locales/nl_NL@euro
index edfb8ef0a9..cd36611643 100644
--- a/localedata/locales/nl_NL@euro
+++ b/localedata/locales/nl_NL@euro
@@ -16,7 +16,7 @@ title "Dutch locale for the Netherlands with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Dutch"
diff --git a/localedata/locales/nn_NO b/localedata/locales/nn_NO
index ec48206bc1..26229bcd0d 100644
--- a/localedata/locales/nn_NO
+++ b/localedata/locales/nn_NO
@@ -9,7 +9,7 @@ title "Nynorsk language locale for Norway"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Norwegian, Nynorsk"
diff --git a/localedata/locales/pa_IN b/localedata/locales/pa_IN
index 3e7bd2b9bb..a1b49943bf 100644
--- a/localedata/locales/pa_IN
+++ b/localedata/locales/pa_IN
@@ -8,7 +8,7 @@ title "Punjabi language locale for India"
source "IndLinux.org"
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Punjabi"
diff --git a/localedata/locales/pl_PL b/localedata/locales/pl_PL
index 7b3bee0af0..0c820683c8 100644
--- a/localedata/locales/pl_PL
+++ b/localedata/locales/pl_PL
@@ -25,7 +25,7 @@ title "Polish locale for Poland"
source "RAP"
address "Sankt Jo/rgens Alle 8, DK-1615 Ko/benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Polish"
diff --git a/localedata/locales/pt_BR b/localedata/locales/pt_BR
index 50c69cb82c..3b55671cbd 100644
--- a/localedata/locales/pt_BR
+++ b/localedata/locales/pt_BR
@@ -24,7 +24,7 @@ title "Portuguese locale for Brasil"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Portuguese"
diff --git a/localedata/locales/pt_PT b/localedata/locales/pt_PT
index 79a338ded9..952e6fb7a4 100644
--- a/localedata/locales/pt_PT
+++ b/localedata/locales/pt_PT
@@ -23,7 +23,7 @@ title "Portuguese locale for Portugal"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Portuguese"
diff --git a/localedata/locales/pt_PT@euro b/localedata/locales/pt_PT@euro
index 276fda3113..9a0eb76825 100644
--- a/localedata/locales/pt_PT@euro
+++ b/localedata/locales/pt_PT@euro
@@ -16,7 +16,7 @@ title "Portuguese locale for Portugal with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Portuguese"
diff --git a/localedata/locales/ro_RO b/localedata/locales/ro_RO
index 033de4d2f5..6520255980 100644
--- a/localedata/locales/ro_RO
+++ b/localedata/locales/ro_RO
@@ -24,7 +24,7 @@ title "Romanian locale for Romania"
source "RAP"
address "Sankt Jorgens Alle 8, DK-1615 Kobenhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Romanian"
diff --git a/localedata/locales/ru_RU b/localedata/locales/ru_RU
index fdb3427070..04bbc4d25d 100644
--- a/localedata/locales/ru_RU
+++ b/localedata/locales/ru_RU
@@ -24,7 +24,7 @@ title "Russian locale for Russia"
source "RAP"
address "Sankt Jorgens Alle 8, DK-1615 Kobenhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Russian"
diff --git a/localedata/locales/ru_UA b/localedata/locales/ru_UA
index 4250516182..f74df991d2 100644
--- a/localedata/locales/ru_UA
+++ b/localedata/locales/ru_UA
@@ -20,7 +20,7 @@ title "Russian locale for Ukraine"
source "RFC 2319"
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Russian"
diff --git a/localedata/locales/sk_SK b/localedata/locales/sk_SK
index 8d7a4d04d6..8b53b0c62f 100644
--- a/localedata/locales/sk_SK
+++ b/localedata/locales/sk_SK
@@ -36,7 +36,7 @@ title "Slovak locale for Slovak"
source ""
address "Narcisov<U00E1> 56, SK-821 01 Bratislava, Slovak Republic"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Slovak"
diff --git a/localedata/locales/sl_SI b/localedata/locales/sl_SI
index b6aa4d0aa3..2044b27c58 100644
--- a/localedata/locales/sl_SI
+++ b/localedata/locales/sl_SI
@@ -25,7 +25,7 @@ title "Slovenian locale for Slovenia"
source "USM/MZT"
address "Kotnikova 6,, Ljubljana, Slovenia"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Slovenian"
diff --git a/localedata/locales/sq_AL b/localedata/locales/sq_AL
index e0c7485e7e..1c9846515f 100644
--- a/localedata/locales/sq_AL
+++ b/localedata/locales/sq_AL
@@ -9,7 +9,7 @@ title "Albanian language locale for Albania"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Albanian"
diff --git a/localedata/locales/sv_FI b/localedata/locales/sv_FI
index 217b09b374..711fd80609 100644
--- a/localedata/locales/sv_FI
+++ b/localedata/locales/sv_FI
@@ -24,7 +24,7 @@ title "Swedish locale for Finland"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Swedish"
diff --git a/localedata/locales/sv_FI@euro b/localedata/locales/sv_FI@euro
index 3df88fbf24..f524e0e1e0 100644
--- a/localedata/locales/sv_FI@euro
+++ b/localedata/locales/sv_FI@euro
@@ -16,7 +16,7 @@ title "Swedish locale for Finland with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Swedish"
diff --git a/localedata/locales/sv_SE b/localedata/locales/sv_SE
index 099a71a3ae..25af3f81db 100644
--- a/localedata/locales/sv_SE
+++ b/localedata/locales/sv_SE
@@ -31,7 +31,7 @@ title "Swedish locale for Sweden"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Swedish"
diff --git a/localedata/locales/ta_IN b/localedata/locales/ta_IN
index c7ca06dc54..d1a03ea8e4 100644
--- a/localedata/locales/ta_IN
+++ b/localedata/locales/ta_IN
@@ -9,7 +9,7 @@ title "Tamil language locale for India"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Tamil"
diff --git a/localedata/locales/te_IN b/localedata/locales/te_IN
index a8667a02d2..efefeda976 100644
--- a/localedata/locales/te_IN
+++ b/localedata/locales/te_IN
@@ -9,7 +9,7 @@ title "Telgu language locale for India"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Telgu"
diff --git a/localedata/locales/th_TH b/localedata/locales/th_TH
index 3b042c9901..3eaa5bb41d 100644
--- a/localedata/locales/th_TH
+++ b/localedata/locales/th_TH
@@ -49,7 +49,7 @@ title "Thai locale for Thailand"
source ""
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Thai"
diff --git a/localedata/locales/tr_TR b/localedata/locales/tr_TR
index 44fee79941..22b76caf05 100644
--- a/localedata/locales/tr_TR
+++ b/localedata/locales/tr_TR
@@ -24,13 +24,17 @@ escape_char /
% 1998-01-11T15:54:39
% Onur Tolga Sehitoglu <onur@ceng.metu.edu.tr>,
% Dept. of Comp. Eng. METU/Ankara Turkey
+% 2004-05-29T15:13
+% Deniz Akkus Kanca <deniz@arayan.com>
+% 2004-10-30T10:28:35
+% Nilg<U00FC>n Belma Bug<U00FC>ner <nilgun@belgeler.org>
LC_IDENTIFICATION
title "Turkish locale for Turkey"
source "RAP"
address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Turkish"
@@ -3464,18 +3468,19 @@ class "combining_level3"; /
END LC_CTYPE
LC_MESSAGES
-yesexpr "<U005E><U005B><U0065><U0045><U005D><U002E><U002A>"
-noexpr "<U005E><U005B><U0068><U0048><U005D><U002E><U002A>"
+yesexpr "<U005E><U005B><U0079><U0059><U0065><U0045><U005D>"
+noexpr "<U005E><U005B><U006E><U004E><U0068><U0048><U005D>"
yesstr "<U0065><U0076><U0065><U0074>"
nostr "<U0068><U0061><U0079><U0131><U0072>"
END LC_MESSAGES
LC_MONETARY
-int_curr_symbol "<U0054><U0052><U004C><U0020>"
-currency_symbol "<U0054><U004C>"
+% ISO-4217 (2004-10-25): TRY 949 2
+int_curr_symbol "<U0054><U0052><U0059><U0020>"
+currency_symbol "<U0059><U0054><U004C>"
mon_decimal_point "<U002C>"
mon_thousands_sep "<U002E>"
-mon_grouping 3
+mon_grouping 3;3
positive_sign ""
negative_sign "<U002D>"
int_frac_digits 2
@@ -3489,9 +3494,9 @@ n_sign_posn 1
END LC_MONETARY
LC_NUMERIC
-decimal_point "<U002E>"
-thousands_sep ""
-grouping -1
+decimal_point "<U002C>"
+thousands_sep "<U002E>"
+grouping 3;3
END LC_NUMERIC
LC_TIME
@@ -3553,7 +3558,7 @@ END LC_MEASUREMENT
LC_NAME
name_fmt "<U0025><U0064><U0025><U0074><U0025><U0067><U0025><U0074>/
<U0025><U006D><U0025><U0074><U0025><U0066>"
-% Say.MŽýn
+% Say<U0131>n
name_gen "<U0053><U0061><U0079><U0131><U006E>"
% Bay
name_mr "<U0042><U0061><U0079>"
diff --git a/localedata/locales/uk_UA b/localedata/locales/uk_UA
index e841846836..eb482935e2 100644
--- a/localedata/locales/uk_UA
+++ b/localedata/locales/uk_UA
@@ -22,7 +22,7 @@ title "Ukrainian locale for Ukraine"
source "RFC 2319"
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Ukrainian"
diff --git a/localedata/locales/ur_PK b/localedata/locales/ur_PK
index 2c9362e180..71aa261c4d 100644
--- a/localedata/locales/ur_PK
+++ b/localedata/locales/ur_PK
@@ -19,7 +19,7 @@ title "Urdu Language Locale for Pakistan"
source ""
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Urdu"
diff --git a/localedata/locales/vi_VN b/localedata/locales/vi_VN
index 532352cd13..df8fe35f6b 100644
--- a/localedata/locales/vi_VN
+++ b/localedata/locales/vi_VN
@@ -11,7 +11,7 @@ title "Vietnamese language locale for Vietnam"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Vietnamese"
diff --git a/localedata/locales/wa_BE@euro b/localedata/locales/wa_BE@euro
index 1c67a8a849..a88b906997 100644
--- a/localedata/locales/wa_BE@euro
+++ b/localedata/locales/wa_BE@euro
@@ -16,7 +16,7 @@ title "Walloon locale for Belgium with Euro"
source "Free Software Foundation, Inc."
address "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Walloon"
diff --git a/localedata/locales/zh_CN b/localedata/locales/zh_CN
index 9831a06d0b..152411da10 100644
--- a/localedata/locales/zh_CN
+++ b/localedata/locales/zh_CN
@@ -20,7 +20,7 @@ title "Chinese locale for Peoples Republic of China"
source ""
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Chinese"
diff --git a/localedata/locales/zh_HK b/localedata/locales/zh_HK
index 3b45ac3d14..b4798eb878 100644
--- a/localedata/locales/zh_HK
+++ b/localedata/locales/zh_HK
@@ -9,7 +9,7 @@ title "Chinese language locale for Hong Kong"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Chinese"
diff --git a/localedata/locales/zh_SG b/localedata/locales/zh_SG
index c03eab50e3..60c985c072 100644
--- a/localedata/locales/zh_SG
+++ b/localedata/locales/zh_SG
@@ -9,7 +9,7 @@ title "Chinese language locale for Singapore"
source "IBM Globalization Center of Competency, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Chinese"
diff --git a/localedata/locales/zh_TW b/localedata/locales/zh_TW
index 15e1587802..f9ea7aa1b3 100644
--- a/localedata/locales/zh_TW
+++ b/localedata/locales/zh_TW
@@ -21,7 +21,7 @@ title "Chinese locale for Taiwan"
source ""
address ""
contact ""
-email "bug-glibc@gnu.org"
+email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "Chinese"
diff --git a/login/login_tty.c b/login/login_tty.c
index 3cf6f1e451..1bb1703267 100644
--- a/login/login_tty.c
+++ b/login/login_tty.c
@@ -70,3 +70,4 @@ login_tty(fd)
(void) close(fd);
return (0);
}
+libutil_hidden_def (login_tty)
diff --git a/login/openpty.c b/login/openpty.c
index 19852e1d82..fe11d49feb 100644
--- a/login/openpty.c
+++ b/login/openpty.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998, 1999 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 1999, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Zack Weinberg <zack@rabi.phys.columbia.edu>, 1998.
@@ -136,3 +136,4 @@ openpty (int *amaster, int *aslave, char *name, struct termios *termp,
close (master);
return -1;
}
+libutil_hidden_def (openpty)
diff --git a/malloc/malloc.c b/malloc/malloc.c
index 2e91952a26..6d6294c6e6 100644
--- a/malloc/malloc.c
+++ b/malloc/malloc.c
@@ -4198,6 +4198,8 @@ _int_free(mstate av, Void_t* mem)
/* free(0) has no effect */
if (mem != 0) {
+ const char *errstr = NULL;
+
p = mem2chunk(mem);
size = chunksize(p);
@@ -4207,7 +4209,9 @@ _int_free(mstate av, Void_t* mem)
here by accident or by "design" from some intruder. */
if (__builtin_expect ((uintptr_t) p > (uintptr_t) -size, 0))
{
- malloc_printerr (check_action, "free(): invalid pointer", mem);
+ errstr = "free(): invalid pointer";
+ errout:
+ malloc_printerr (check_action, errstr, mem);
return;
}
@@ -4235,9 +4239,8 @@ _int_free(mstate av, Void_t* mem)
record we are going to add (i.e., double free). */
if (__builtin_expect (*fb == p, 0))
{
- double_free:
- malloc_printerr (check_action, "double free or corruption", mem);
- return;
+ errstr = "double free or corruption (fasttop)";
+ goto errout;
}
p->fd = *fb;
*fb = p;
@@ -4253,15 +4256,24 @@ _int_free(mstate av, Void_t* mem)
/* Lightweight tests: check whether the block is already the
top block. */
if (__builtin_expect (p == av->top, 0))
- goto double_free;
+ {
+ errstr = "double free or corruption (top)";
+ goto errout;
+ }
/* Or whether the next chunk is beyond the boundaries of the arena. */
if (__builtin_expect (contiguous (av)
&& (char *) nextchunk
>= ((char *) av->top + chunksize(av->top)), 0))
- goto double_free;
+ {
+ errstr = "double free or corruption (out)";
+ goto errout;
+ }
/* Or whether the block is actually not marked used. */
if (__builtin_expect (!prev_inuse(nextchunk), 0))
- goto double_free;
+ {
+ errstr = "double free or corruption (!prev)";
+ goto errout;
+ }
nextsize = chunksize(nextchunk);
assert(nextsize > 0);
diff --git a/nis/nis_add.c b/nis/nis_add.c
index 29646bd126..f5e783cc2f 100644
--- a/nis/nis_add.c
+++ b/nis/nis_add.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1998, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@uni-paderborn.de>, 1997.
@@ -72,3 +72,4 @@ nis_add (const_nis_name name, const nis_object *obj2)
return res;
}
+libnsl_hidden_def (nis_add)
diff --git a/nis/nis_addmember.c b/nis/nis_addmember.c
index e7e429c4fd..bbe1c23977 100644
--- a/nis/nis_addmember.c
+++ b/nis/nis_addmember.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 1997, 1998, 1999 Free Software Foundation, Inc.
+/* Copyright (c) 1997, 1998, 1999, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1997.
@@ -17,6 +17,7 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
+#include <assert.h>
#include <string.h>
#include <rpcsvc/nis.h>
@@ -71,6 +72,8 @@ nis_addmember (const_nis_name member, const_nis_name group)
}
++NIS_RES_OBJECT (res)->GR_data.gr_members.gr_members_len;
+ /* Check the buffer bounds are not exceeded. */
+ assert (strlen (NIS_RES_OBJECT(res)->zo_name) + 1 < grouplen + 14);
cp = stpcpy (buf, NIS_RES_OBJECT(res)->zo_name);
*cp++ = '.';
strncpy (cp, NIS_RES_OBJECT (res)->zo_domain, NIS_MAXNAMELEN);
diff --git a/nis/nis_call.c b/nis/nis_call.c
index d65b1ddac7..14041a160c 100644
--- a/nis/nis_call.c
+++ b/nis/nis_call.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 1998, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1998, 2001, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1997.
@@ -31,8 +31,8 @@
#include "nis_xdr.h"
#include "nis_intern.h"
-static struct timeval RPCTIMEOUT = {10, 0};
-static struct timeval UDPTIMEOUT = {5, 0};
+static const struct timeval RPCTIMEOUT = {10, 0};
+static const struct timeval UDPTIMEOUT = {5, 0};
extern u_short __pmap_getnisport (struct sockaddr_in *address, u_long program,
u_long version, u_int protocol);
@@ -71,6 +71,7 @@ __nisbind_destroy (dir_binding *bind)
clnt_destroy (bind->clnt);
}
}
+libnsl_hidden_def (__nisbind_destroy)
nis_error
__nisbind_next (dir_binding *bind)
@@ -114,6 +115,7 @@ __nisbind_next (dir_binding *bind)
return NIS_FAIL;
}
+libnsl_hidden_def (__nisbind_next)
nis_error
__nisbind_connect (dir_binding *dbp)
@@ -150,7 +152,7 @@ __nisbind_connect (dir_binding *dbp)
if (dbp->clnt == NULL)
return NIS_RPCERROR;
- clnt_control (dbp->clnt, CLSET_TIMEOUT, (caddr_t)&RPCTIMEOUT);
+ clnt_control (dbp->clnt, CLSET_TIMEOUT, (caddr_t) &RPCTIMEOUT);
/* If the program exists, close the socket */
if (fcntl (dbp->socket, F_SETFD, 1) == -1)
perror ("fcntl: F_SETFD");
@@ -159,12 +161,15 @@ __nisbind_connect (dir_binding *dbp)
{
if (serv->key_type == NIS_PK_DH)
{
- char netname[MAXNETNAMELEN+1];
+ char netname[MAXNETNAMELEN + 1];
char *p;
p = stpcpy (netname, "unix.");
- strncpy (p, serv->name,MAXNETNAMELEN-5);
+ strncpy (p, serv->name, MAXNETNAMELEN - 5);
netname[MAXNETNAMELEN] = '\0';
+ // XXX What is this supposed to do? If we really want to replace
+ // XXX the first dot, then we might as well use unix@ as the
+ // XXX prefix string. --drepper
p = strchr (netname, '.');
*p = '@';
dbp->clnt->cl_auth =
@@ -179,6 +184,7 @@ __nisbind_connect (dir_binding *dbp)
return NIS_SUCCESS;
}
+libnsl_hidden_def (__nisbind_connect)
nis_error
__nisbind_create (dir_binding *dbp, const nis_server *serv_val,
@@ -216,6 +222,7 @@ __nisbind_create (dir_binding *dbp, const nis_server *serv_val,
return NIS_SUCCESS;
}
+libnsl_hidden_def (__nisbind_create)
/* __nisbind_connect (dbp) must be run before calling this function !
So we could use the same binding twice */
@@ -244,7 +251,7 @@ __do_niscall3 (dir_binding *dbp, u_long prog, xdrproc_t xargs, caddr_t req,
if ((((nis_result *)resp)->status == NIS_CBRESULTS) &&
(cb != NULL))
{
- __nis_do_callback(dbp, &((nis_result *)resp)->cookie, cb);
+ __nis_do_callback (dbp, &((nis_result *) resp)->cookie, cb);
break;
}
/* Yes, the missing break is correct. If we doesn't have to
@@ -258,9 +265,9 @@ __do_niscall3 (dir_binding *dbp, u_long prog, xdrproc_t xargs, caddr_t req,
case NIS_IBREMOVE:
case NIS_IBFIRST:
case NIS_IBNEXT:
- if ((((nis_result *)resp)->status == NIS_SYSTEMERROR) ||
- (((nis_result *)resp)->status == NIS_NOSUCHNAME) ||
- (((nis_result *)resp)->status == NIS_NOT_ME))
+ if (((nis_result *)resp)->status == NIS_SYSTEMERROR
+ || ((nis_result *)resp)->status == NIS_NOSUCHNAME
+ || ((nis_result *)resp)->status == NIS_NOT_ME)
{
if (__nisbind_next (dbp) == NIS_SUCCESS)
{
@@ -276,9 +283,9 @@ __do_niscall3 (dir_binding *dbp, u_long prog, xdrproc_t xargs, caddr_t req,
}
break;
case NIS_FINDDIRECTORY:
- if ((((fd_result *)resp)->status == NIS_SYSTEMERROR) ||
- (((fd_result *)resp)->status == NIS_NOSUCHNAME) ||
- (((fd_result *)resp)->status == NIS_NOT_ME))
+ if (((fd_result *)resp)->status == NIS_SYSTEMERROR
+ || ((fd_result *)resp)->status == NIS_NOSUCHNAME
+ || ((fd_result *)resp)->status == NIS_NOT_ME)
{
if (__nisbind_next (dbp) == NIS_SUCCESS)
{
@@ -295,9 +302,9 @@ __do_niscall3 (dir_binding *dbp, u_long prog, xdrproc_t xargs, caddr_t req,
break;
case NIS_DUMPLOG: /* log_result */
case NIS_DUMP:
- if ((((log_result *)resp)->lr_status == NIS_SYSTEMERROR) ||
- (((log_result *)resp)->lr_status == NIS_NOSUCHNAME) ||
- (((log_result *)resp)->lr_status == NIS_NOT_ME))
+ if (((log_result *)resp)->lr_status == NIS_SYSTEMERROR
+ || ((log_result *)resp)->lr_status == NIS_NOSUCHNAME
+ || ((log_result *)resp)->lr_status == NIS_NOT_ME)
{
if (__nisbind_next (dbp) == NIS_SUCCESS)
{
@@ -339,10 +346,8 @@ __do_niscall2 (const nis_server *server, u_int server_len, u_long prog,
return status;
while (__nisbind_connect (&dbp) != NIS_SUCCESS)
- {
- if (__nisbind_next (&dbp) != NIS_SUCCESS)
- return NIS_NAMEUNREACHABLE;
- }
+ if (__nisbind_next (&dbp) != NIS_SUCCESS)
+ return NIS_NAMEUNREACHABLE;
status = __do_niscall3 (&dbp, prog, xargs, req, xres, resp, flags, cb);
@@ -383,11 +388,11 @@ rec_dirsearch (const_nis_name name, directory_obj *dir, nis_error *status)
__free_fdresult (fd_res);
return dir;
}
- obj = calloc(1, sizeof(directory_obj));
- xdrmem_create(&xdrs, fd_res->dir_data.dir_data_val,
- fd_res->dir_data.dir_data_len, XDR_DECODE);
- _xdr_directory_obj(&xdrs, obj);
- xdr_destroy(&xdrs);
+ obj = calloc (1, sizeof (directory_obj));
+ xdrmem_create (&xdrs, fd_res->dir_data.dir_data_val,
+ fd_res->dir_data.dir_data_len, XDR_DECODE);
+ _xdr_directory_obj (&xdrs, obj);
+ xdr_destroy (&xdrs);
__free_fdresult (fd_res);
if (obj != NULL)
{
@@ -408,9 +413,9 @@ rec_dirsearch (const_nis_name name, directory_obj *dir, nis_error *status)
{
directory_obj *obj;
size_t namelen = strlen (name);
- char leaf [namelen + 3];
- char domain [namelen + 3];
- char ndomain [namelen + 3];
+ char leaf[namelen + 3];
+ char domain[namelen + 3];
+ char ndomain[namelen + 3];
char *cp;
u_int run = 0;
@@ -478,10 +483,10 @@ rec_dirsearch (const_nis_name name, directory_obj *dir, nis_error *status)
static directory_obj *
first_shoot (const_nis_name name, directory_obj *dir)
{
- directory_obj *obj;
+ directory_obj *obj = NULL;
fd_result *fd_res;
XDR xdrs;
- char domain [strlen (name) + 3];
+ char domain[strlen (name) + 3];
if (nis_dir_cmp (name, dir->do_name) == SAME_NAME)
return dir;
@@ -492,25 +497,21 @@ first_shoot (const_nis_name name, directory_obj *dir)
return dir;
fd_res = __nis_finddirectory (dir, domain);
- if (fd_res->status != NIS_SUCCESS)
+ if (fd_res->status == NIS_SUCCESS
+ && (obj = calloc (1, sizeof (directory_obj))) != NULL)
{
- __free_fdresult (fd_res);
- return NULL;
+ xdrmem_create(&xdrs, fd_res->dir_data.dir_data_val,
+ fd_res->dir_data.dir_data_len, XDR_DECODE);
+ _xdr_directory_obj (&xdrs, obj);
+ xdr_destroy (&xdrs);
}
- obj = calloc(1, sizeof(directory_obj));
- if (obj == NULL)
- return NULL;
- xdrmem_create(&xdrs, fd_res->dir_data.dir_data_val,
- fd_res->dir_data.dir_data_len, XDR_DECODE);
- _xdr_directory_obj (&xdrs, obj);
- xdr_destroy (&xdrs);
+
__free_fdresult (fd_res);
+
if (obj != NULL)
- {
- nis_free_directory (dir);
- return obj;
- }
- return NULL;
+ nis_free_directory (dir);
+
+ return obj;
}
nis_error
diff --git a/nis/nis_clone_obj.c b/nis/nis_clone_obj.c
index 82d1425081..5f9dd34b51 100644
--- a/nis/nis_clone_obj.c
+++ b/nis/nis_clone_obj.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (c) 1997, 1998, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1997.
@@ -29,43 +29,41 @@ nis_clone_object (const nis_object *src, nis_object *dest)
unsigned char *addr;
unsigned long size;
XDR xdrs;
- nis_object *res;
+ nis_object *res = NULL;
if (src == NULL)
return (NULL);
- size = xdr_sizeof ((xdrproc_t)_xdr_nis_object, (char *)src);
- if ((addr = calloc(1, size)) == NULL)
+ size = xdr_sizeof ((xdrproc_t)_xdr_nis_object, (char *) src);
+ if ((addr = calloc (1, size)) == NULL)
return NULL;
if (dest == NULL)
{
if ((res = calloc (1, sizeof (nis_object))) == NULL)
- {
- free (addr);
- return NULL;
- }
+ goto out2;
}
else
res = dest;
- xdrmem_create(&xdrs, addr, size, XDR_ENCODE);
+ xdrmem_create (&xdrs, addr, size, XDR_ENCODE);
if (!_xdr_nis_object (&xdrs, (nis_object *)src))
- {
- xdr_destroy (&xdrs);
- free (addr);
- return NULL;
- }
+ goto out3;
xdr_destroy (&xdrs);
- xdrmem_create(&xdrs, addr, size, XDR_DECODE);
- if (!_xdr_nis_object(&xdrs, res))
+ xdrmem_create (&xdrs, addr, size, XDR_DECODE);
+ if (!_xdr_nis_object (&xdrs, res))
{
- xdr_destroy (&xdrs);
- free (addr);
- return NULL;
+ out3:
+ if (dest == NULL)
+ free (res);
+ res = NULL;
}
+
+ out:
xdr_destroy (&xdrs);
+ out2:
free (addr);
return res;
}
+libnsl_hidden_def (nis_clone_object)
diff --git a/nis/nis_defaults.c b/nis/nis_defaults.c
index f68699a07a..f13578635a 100644
--- a/nis/nis_defaults.c
+++ b/nis/nis_defaults.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (c) 1997, 1998, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1997.
@@ -395,6 +395,7 @@ __nis_default_owner (char *defaults)
return strdup (default_owner);
}
+libnsl_hidden_def (__nis_default_owner)
nis_name
__nis_default_group (char *defaults)
@@ -435,6 +436,7 @@ __nis_default_group (char *defaults)
return strdup (default_group);
}
+libnsl_hidden_def (__nis_default_group)
uint32_t
__nis_default_ttl (char *defaults)
@@ -483,3 +485,4 @@ __nis_default_access (char *param, unsigned int defaults)
return result;
}
+libnsl_hidden_def (__nis_default_access)
diff --git a/nis/nis_domain_of_r.c b/nis/nis_domain_of_r.c
index 167a499b80..ca298f3505 100644
--- a/nis/nis_domain_of_r.c
+++ b/nis/nis_domain_of_r.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 1997 Free Software Foundation, Inc.
+/* Copyright (c) 1997, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1997.
@@ -29,7 +29,7 @@ nis_domain_of_r (const_nis_name name, char *buffer, size_t buflen)
if (buffer == NULL)
{
- errno = ERANGE;
+ __set_errno (ERANGE);
return NULL;
}
@@ -44,14 +44,14 @@ nis_domain_of_r (const_nis_name name, char *buffer, size_t buflen)
cptr_len = strlen (cptr);
if (cptr_len == 0)
- strcpy (buffer, ".");
- else if (cptr_len >= buflen)
+ return strcpy (buffer, ".");
+
+ if (__builtin_expect (cptr_len >= buflen, 0))
{
- errno = ERANGE;
+ __set_errno (ERANGE);
return NULL;
}
- else
- memcpy (buffer, cptr, cptr_len + 1);
- return buffer;
+ return memcpy (buffer, cptr, cptr_len + 1);
}
+libnsl_hidden_proto (nis_domain_of_r)
diff --git a/nis/nis_error.c b/nis/nis_error.c
index 66dda28840..147f88ce15 100644
--- a/nis/nis_error.c
+++ b/nis/nis_error.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 1997, 1998, 1999 Free Software Foundation, Inc.
+/* Copyright (c) 1997, 1998, 1999, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1997.
@@ -84,6 +84,7 @@ nis_sperrno (const nis_error status)
else
return gettext (nis_errlist[status]);
}
+libnsl_hidden_def (nis_sperrno)
void
nis_perror (const nis_error status, const char *label)
@@ -115,6 +116,7 @@ nis_sperror_r (const nis_error status, const char *label,
return buffer;
}
+libnsl_hidden_def (nis_sperror_r)
char *
nis_sperror (const nis_error status, const char *label)
diff --git a/nis/nis_file.c b/nis/nis_file.c
index c84fb3c6c9..1f2295787c 100644
--- a/nis/nis_file.c
+++ b/nis/nis_file.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 1997, 1998, 1999 Free Software Foundation, Inc.
+/* Copyright (c) 1997, 1998, 1999, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@suse.de>, 1997.
@@ -28,21 +28,17 @@ static const char cold_start_file[] = "/var/nis/NIS_COLD_START";
directory_obj *
readColdStartFile (void)
{
- XDR xdrs;
- FILE *in;
- bool_t status = TRUE;
- directory_obj *obj;
-
- in = fopen (cold_start_file, "rb");
+ FILE *in = fopen (cold_start_file, "rc");
if (in == NULL)
return NULL;
- obj = calloc (1, sizeof (directory_obj));
+ directory_obj *obj = calloc (1, sizeof (directory_obj));
if (obj != NULL)
{
+ XDR xdrs;
xdrstdio_create (&xdrs, in, XDR_DECODE);
- status = _xdr_directory_obj (&xdrs, obj);
+ bool_t status = _xdr_directory_obj (&xdrs, obj);
xdr_destroy (&xdrs);
if (!status)
@@ -56,6 +52,7 @@ readColdStartFile (void)
return obj;
}
+libnsl_hidden_def (readColdStartFile)
bool_t
writeColdStartFile (const directory_obj *obj)
diff --git a/nis/nis_free.c b/nis/nis_free.c
index 48b8a0882c..fae9251c4b 100644
--- a/nis/nis_free.c
+++ b/nis/nis_free.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (c) 1997, 1998, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1997.
@@ -29,6 +29,7 @@ __free_fdresult (fd_result *res)
free (res);
}
}
+libnsl_hidden_def (__free_fdresult)
void
nis_free_request (ib_request *ibreq)
@@ -39,6 +40,7 @@ nis_free_request (ib_request *ibreq)
free (ibreq);
}
}
+libnsl_hidden_def (nis_free_request)
void
nis_free_directory (directory_obj *obj)
@@ -49,6 +51,7 @@ nis_free_directory (directory_obj *obj)
free (obj);
}
}
+libnsl_hidden_def (nis_free_directory)
void
nis_free_object (nis_object *obj)
@@ -59,6 +62,7 @@ nis_free_object (nis_object *obj)
free (obj);
}
}
+libnsl_hidden_def (nis_free_object)
void
nis_freeresult (nis_result *res)
@@ -69,3 +73,4 @@ nis_freeresult (nis_result *res)
free (res);
}
}
+libnsl_hidden_def (nis_freeresult)
diff --git a/nis/nis_local_names.c b/nis/nis_local_names.c
index 3fffb6f67f..30fd208b75 100644
--- a/nis/nis_local_names.c
+++ b/nis/nis_local_names.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (c) 1997, 1998, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1997.
@@ -28,18 +28,12 @@ nis_local_group (void)
{
static char __nisgroup[NIS_MAXNAMELEN + 1];
- if (__nisgroup[0] == '\0')
+ char *cptr;
+ if (__nisgroup[0] == '\0'
+ && (cptr = getenv ("NIS_GROUP")) != NULL
+ && strlen (cptr) < NIS_MAXNAMELEN)
{
- char *cptr;
- char *cp;
-
- if ((cptr = getenv ("NIS_GROUP")) == NULL)
- return __nisgroup;
-
- if (strlen (cptr) >= NIS_MAXNAMELEN)
- return __nisgroup;
-
- cp = stpcpy (__nisgroup, cptr);
+ char *cp = stpcpy (__nisgroup, cptr);
if (cp[-1] != '.')
{
@@ -56,7 +50,7 @@ nis_local_group (void)
return __nisgroup;
}
-
+libnsl_hidden_def (nis_local_group)
nis_name
nis_local_directory (void)
@@ -82,6 +76,7 @@ nis_local_directory (void)
return __nisdomainname;
}
+libnsl_hidden_def (nis_local_directory)
nis_name
nis_local_principal (void)
@@ -101,6 +96,7 @@ nis_local_principal (void)
uid, nis_local_directory ());
if (len >= NIS_MAXNAMELEN - 1)
+ nobody:
/* XXX The buffer is too small. Can this happen??? */
return strcpy (__principal, "nobody");
@@ -114,7 +110,7 @@ nis_local_principal (void)
FOLLOW_PATH, NULL, NULL);
if (res == NULL)
- return strcpy (__principal, "nobody");
+ goto nobody;
if (NIS_RES_STATUS (res) == NIS_SUCCESS)
{
@@ -134,17 +130,18 @@ LOCAL entry for UID %d in directory %s not unique\n"),
else
{
nis_freeresult (res);
- return strcpy (__principal, "nobody");
+ goto nobody;
}
}
else
return strcpy (__principal, nis_local_host ());
/* Should be never reached */
- return strcpy (__principal, "nobody");
+ goto nobody;
}
return __principal;
}
+libnsl_hidden_def (nis_local_principal)
nis_name
nis_local_host (void)
@@ -178,3 +175,4 @@ nis_local_host (void)
return __nishostname;
}
+libnsl_hidden_def (nis_local_host)
diff --git a/nis/nis_lookup.c b/nis/nis_lookup.c
index 924931c021..0b97e67a61 100644
--- a/nis/nis_lookup.c
+++ b/nis/nis_lookup.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1998, 1999, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@uni-paderborn.de>, 1997.
@@ -222,3 +222,4 @@ nis_lookup (const_nis_name name, const unsigned int flags)
return res;
}
+libnsl_hidden_def (nis_lookup)
diff --git a/nis/nis_modify.c b/nis/nis_modify.c
index 6218fdc0e5..0ec0ec6f42 100644
--- a/nis/nis_modify.c
+++ b/nis/nis_modify.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1998, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@uni-paderborn.de>, 1997.
@@ -38,7 +38,7 @@ nis_modify (const_nis_name name, const nis_object *obj2)
if (res == NULL)
return NULL;
- req.ns_name = (char *)name;
+ req.ns_name = (char *) name;
memcpy (&obj, obj2, sizeof (nis_object));
@@ -72,3 +72,4 @@ nis_modify (const_nis_name name, const nis_object *obj2)
return res;
}
+libnsl_hidden_def (nis_modify)
diff --git a/nis/nis_print.c b/nis/nis_print.c
index 4c5a51935b..a8d7e8c7d0 100644
--- a/nis/nis_print.c
+++ b/nis/nis_print.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 1997, 1998, 1999 Free Software Foundation, Inc.
+/* Copyright (c) 1997, 1998, 1999, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1997.
@@ -87,7 +87,7 @@ print_flags (const unsigned int flags)
}
else
{
- fputs("TEXTUAL DATA", stdout);
+ fputs ("TEXTUAL DATA", stdout);
if (flags & TA_SEARCHABLE)
{
if (flags & TA_CASE)
@@ -156,6 +156,7 @@ nis_print_rights (const unsigned int access)
}
fputs (result, stdout);
}
+libnsl_hidden_def (nis_print_rights)
void
nis_print_directory (const directory_obj *dir)
@@ -243,6 +244,7 @@ nis_print_directory (const directory_obj *dir)
}
}
}
+libnsl_hidden_def (nis_print_directory)
void
nis_print_group (const group_obj *obj)
@@ -257,6 +259,7 @@ nis_print_group (const group_obj *obj)
for (i = 0; i < obj->gr_members.gr_members_len; i++)
printf ("\t%s\n", obj->gr_members.gr_members_val[i]);
}
+libnsl_hidden_def (nis_print_group)
void
nis_print_table (const table_obj *obj)
@@ -279,6 +282,7 @@ nis_print_table (const table_obj *obj)
fputc ('\n', stdout);
}
}
+libnsl_hidden_def (nis_print_table)
void
nis_print_link (const link_obj *obj)
@@ -288,6 +292,7 @@ nis_print_link (const link_obj *obj)
printf (_("Linked to : %s\n"), obj->li_name);
/* XXX Print the attributs here, if they exists */
}
+libnsl_hidden_def (nis_print_link)
void
nis_print_entry (const entry_obj *obj)
@@ -311,6 +316,7 @@ nis_print_entry (const entry_obj *obj)
obj->en_cols.en_cols_val[i].ec_value.ec_value_val);
}
}
+libnsl_hidden_def (nis_print_entry)
void
nis_print_object (const nis_object * obj)
@@ -356,6 +362,7 @@ nis_print_object (const nis_object * obj)
break;
}
}
+libnsl_hidden_def (nis_print_object)
void
nis_print_result (const nis_result *res)
diff --git a/nis/nis_remove.c b/nis/nis_remove.c
index 7ea0e89ecc..3aefccea44 100644
--- a/nis/nis_remove.c
+++ b/nis/nis_remove.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1998, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@uni-paderborn.de>, 1997.
@@ -56,3 +56,4 @@ nis_remove (const_nis_name name, const nis_object *obj)
return res;
}
+libnsl_hidden_def (nis_remove)
diff --git a/nis/nis_subr.c b/nis/nis_subr.c
index 78e58aeba9..4c4ef8b5b4 100644
--- a/nis/nis_subr.c
+++ b/nis/nis_subr.c
@@ -41,7 +41,7 @@ nis_leaf_of_r (const_nis_name name, char *buffer, size_t buflen)
if (i > buflen - 1)
{
- errno = ERANGE;
+ __set_errno (ERANGE);
return NULL;
}
@@ -49,7 +49,7 @@ nis_leaf_of_r (const_nis_name name, char *buffer, size_t buflen)
{
if ((size_t)i >= buflen)
{
- errno = ERANGE;
+ __set_errno (ERANGE);
return NULL;
}
@@ -58,6 +58,7 @@ nis_leaf_of_r (const_nis_name name, char *buffer, size_t buflen)
return buffer;
}
+libnsl_hidden_def (nis_leaf_of_r)
nis_name
nis_name_of (const_nis_name name)
@@ -84,7 +85,7 @@ nis_name_of_r (const_nis_name name, char *buffer, size_t buflen)
if ((size_t) diff >= buflen)
{
- errno = ERANGE;
+ __set_errno (ERANGE);
return NULL;
}
@@ -95,14 +96,15 @@ nis_name_of_r (const_nis_name name, char *buffer, size_t buflen)
return buffer;
}
+libnsl_hidden_def (nis_name_of_r)
static int
count_dots (const_nis_name str)
{
int count = 0;
- size_t i;
+ size_t l = strlen (str);
- for (i = 0; i < strlen (str); ++i)
+ for (size_t i = 0; i < l; ++i)
if (str[i] == '.')
++count;
@@ -252,6 +254,7 @@ nis_getnames (const_nis_name name)
return getnames;
}
+libnsl_hidden_def (nis_getnames)
void
nis_freenames (nis_name *names)
@@ -266,6 +269,7 @@ nis_freenames (nis_name *names)
free (names);
}
+libnsl_hidden_def (nis_freenames)
name_pos
nis_dir_cmp (const_nis_name n1, const_nis_name n2)
@@ -303,9 +307,11 @@ nis_dir_cmp (const_nis_name n1, const_nis_name n2)
}
}
+libnsl_hidden_def (nis_dir_cmp)
void
nis_destroy_object (nis_object *obj)
{
nis_free_object (obj);
}
+libnsl_hidden_def (nis_destroy_object)
diff --git a/nis/nis_table.c b/nis/nis_table.c
index 746444c311..13acdfdf50 100644
--- a/nis/nis_table.c
+++ b/nis/nis_table.c
@@ -476,6 +476,7 @@ nis_list (const_nis_name name, unsigned int flags,
return res;
}
+libnsl_hidden_def (nis_list)
nis_result *
nis_add_entry (const_nis_name name, const nis_object *obj2, unsigned int flags)
diff --git a/nis/nis_util.c b/nis/nis_util.c
index 1220987d9c..9ed8b95907 100644
--- a/nis/nis_util.c
+++ b/nis/nis_util.c
@@ -46,7 +46,7 @@ __nis_finddirectory (directory_obj *dir, const_nis_name name)
return fd_res;
}
-
+libnsl_hidden_def (__nis_finddirectory)
/* The hash implementation is in a separate file. */
#include "nis_hash.c"
diff --git a/nis/nisplus-parser.h b/nis/nisplus-parser.h
index 69b4faae39..f4b8d49596 100644
--- a/nis/nisplus-parser.h
+++ b/nis/nisplus-parser.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1997.
@@ -31,4 +31,8 @@ extern int _nss_nisplus_parse_grent (nis_result *, u_long, struct group *,
extern int _nss_nisplus_parse_spent (nis_result *, struct spwd *,
char *, size_t, int *);
+libnss_nisplus_hidden_proto (_nss_nisplus_parse_pwent)
+libnss_nisplus_hidden_proto (_nss_nisplus_parse_grent)
+libnss_nisplus_hidden_proto (_nss_nisplus_parse_spent)
+
#endif
diff --git a/nis/nss_nisplus/nisplus-parser.c b/nis/nss_nisplus/nisplus-parser.c
index f160338cee..b61733a628 100644
--- a/nis/nss_nisplus/nisplus-parser.c
+++ b/nis/nss_nisplus/nisplus-parser.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 1999 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1999, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1997.
@@ -141,6 +141,7 @@ _nss_nisplus_parse_pwent (nis_result *result, struct passwd *pw,
return 1;
}
+libnss_nisplus_hidden_def (_nss_nisplus_parse_pwent)
int
_nss_nisplus_parse_grent (nis_result *result, u_long entry, struct group *gr,
@@ -257,6 +258,7 @@ _nss_nisplus_parse_grent (nis_result *result, u_long entry, struct group *gr,
return 1;
}
+libnss_nisplus_hidden_def (_nss_nisplus_parse_grent)
int
_nss_nisplus_parse_spent (nis_result *result, struct spwd *sp,
@@ -371,3 +373,4 @@ _nss_nisplus_parse_spent (nis_result *result, struct spwd *sp,
return 1;
}
+libnss_nisplus_hidden_def (_nss_nisplus_parse_spent)
diff --git a/nis/yp_xdr.c b/nis/yp_xdr.c
index f962c4dfcc..0ee80126e8 100644
--- a/nis/yp_xdr.c
+++ b/nis/yp_xdr.c
@@ -33,60 +33,53 @@
bool_t
xdr_ypstat (XDR *xdrs, ypstat *objp)
{
- if (!xdr_enum (xdrs, (enum_t *) objp))
- return FALSE;
- return TRUE;
+ return xdr_enum (xdrs, (enum_t *) objp);
}
+libnsl_hidden_def (xdr_ypstat)
bool_t
xdr_ypxfrstat (XDR *xdrs, ypxfrstat *objp)
{
- if (!xdr_enum (xdrs, (enum_t *) objp))
- return FALSE;
- return TRUE;
+ return xdr_enum (xdrs, (enum_t *) objp);
}
+libnsl_hidden_def (xdr_ypxfrstat)
bool_t
xdr_domainname (XDR *xdrs, domainname *objp)
{
- if (!xdr_string (xdrs, objp, ~0))
- return FALSE;
- return TRUE;
+ return xdr_string (xdrs, objp, ~0);
}
+libnsl_hidden_def (xdr_domainname)
bool_t
xdr_mapname (XDR *xdrs, mapname *objp)
{
- if (!xdr_string (xdrs, objp, ~0))
- return FALSE;
- return TRUE;
+ return xdr_string (xdrs, objp, ~0);
}
+libnsl_hidden_def (xdr_mapname)
bool_t
xdr_peername (XDR *xdrs, peername *objp)
{
- if (!xdr_string (xdrs, objp, ~0))
- return FALSE;
- return TRUE;
+ return xdr_string (xdrs, objp, ~0);
}
+libnsl_hidden_def (xdr_peername)
bool_t
xdr_keydat (XDR *xdrs, keydat *objp)
{
- if (!xdr_bytes (xdrs, (char **) &objp->keydat_val,
- (u_int *) &objp->keydat_len, ~0))
- return FALSE;
- return TRUE;
+ return xdr_bytes (xdrs, (char **) &objp->keydat_val,
+ (u_int *) &objp->keydat_len, ~0);
}
+libnsl_hidden_def (xdr_keydat)
bool_t
xdr_valdat (XDR *xdrs, valdat *objp)
{
- if (!xdr_bytes (xdrs, (char **) &objp->valdat_val,
- (u_int *) &objp->valdat_len, ~0))
- return FALSE;
- return TRUE;
+ return xdr_bytes (xdrs, (char **) &objp->valdat_val,
+ (u_int *) &objp->valdat_len, ~0);
}
+libnsl_hidden_def (xdr_valdat)
bool_t
xdr_ypmap_parms (XDR *xdrs, ypmap_parms *objp)
@@ -97,10 +90,9 @@ xdr_ypmap_parms (XDR *xdrs, ypmap_parms *objp)
return FALSE;
if (!xdr_u_int (xdrs, &objp->ordernum))
return FALSE;
- if (!xdr_peername (xdrs, &objp->peer))
- return FALSE;
- return TRUE;
+ return xdr_peername (xdrs, &objp->peer);
}
+libnsl_hidden_def (xdr_ypmap_parms)
bool_t
xdr_ypreq_key (XDR *xdrs, ypreq_key *objp)
@@ -109,9 +101,7 @@ xdr_ypreq_key (XDR *xdrs, ypreq_key *objp)
return FALSE;
if (!xdr_mapname (xdrs, &objp->map))
return FALSE;
- if (!xdr_keydat (xdrs, &objp->key))
- return FALSE;
- return TRUE;
+ return xdr_keydat (xdrs, &objp->key);
}
bool_t
@@ -119,9 +109,7 @@ xdr_ypreq_nokey (XDR *xdrs, ypreq_nokey *objp)
{
if (!xdr_domainname (xdrs, &objp->domain))
return FALSE;
- if (!xdr_mapname (xdrs, &objp->map))
- return FALSE;
- return TRUE;
+ return xdr_mapname (xdrs, &objp->map);
}
bool_t
@@ -133,9 +121,7 @@ xdr_ypreq_xfr (XDR *xdrs, ypreq_xfr *objp)
return FALSE;
if (!xdr_u_int (xdrs, &objp->prog))
return FALSE;
- if (!xdr_u_int (xdrs, &objp->port))
- return FALSE;
- return TRUE;
+ return xdr_u_int (xdrs, &objp->port);
}
bool_t
@@ -143,9 +129,7 @@ xdr_ypresp_val (XDR *xdrs, ypresp_val *objp)
{
if (!xdr_ypstat (xdrs, &objp->stat))
return FALSE;
- if (!xdr_valdat (xdrs, &objp->val))
- return FALSE;
- return TRUE;
+ return xdr_valdat (xdrs, &objp->val);
}
bool_t
@@ -155,19 +139,16 @@ xdr_ypresp_key_val (XDR *xdrs, ypresp_key_val *objp)
return FALSE;
if (!xdr_valdat (xdrs, &objp->val))
return FALSE;
- if (!xdr_keydat (xdrs, &objp->key))
- return FALSE;
- return TRUE;
+ return xdr_keydat (xdrs, &objp->key);
}
+libnsl_hidden_def (xdr_ypresp_key_val)
bool_t
xdr_ypresp_master (XDR *xdrs, ypresp_master *objp)
{
if (!xdr_ypstat (xdrs, &objp->stat))
return FALSE;
- if (!xdr_peername (xdrs, &objp->peer))
- return FALSE;
- return TRUE;
+ return xdr_peername (xdrs, &objp->peer);
}
bool_t
@@ -175,9 +156,7 @@ xdr_ypresp_order (XDR *xdrs, ypresp_order *objp)
{
if (!xdr_ypstat (xdrs, &objp->stat))
return FALSE;
- if (!xdr_u_int (xdrs, &objp->ordernum))
- return FALSE;
- return TRUE;
+ return xdr_u_int (xdrs, &objp->ordernum);
}
bool_t
@@ -188,9 +167,7 @@ xdr_ypresp_all (XDR *xdrs, ypresp_all *objp)
switch (objp->more)
{
case TRUE:
- if (!xdr_ypresp_key_val (xdrs, &objp->ypresp_all_u.val))
- return FALSE;
- break;
+ return xdr_ypresp_key_val (xdrs, &objp->ypresp_all_u.val);
case FALSE:
break;
default:
@@ -198,15 +175,14 @@ xdr_ypresp_all (XDR *xdrs, ypresp_all *objp)
}
return TRUE;
}
+libnsl_hidden_def (xdr_ypresp_all)
bool_t
xdr_ypresp_xfr (XDR *xdrs, ypresp_xfr *objp)
{
if (!xdr_u_int (xdrs, &objp->transid))
return FALSE;
- if (!xdr_ypxfrstat (xdrs, &objp->xfrstat))
- return FALSE;
- return TRUE;
+ return xdr_ypxfrstat (xdrs, &objp->xfrstat);
}
bool_t
@@ -214,10 +190,8 @@ xdr_ypmaplist (XDR *xdrs, ypmaplist *objp)
{
if (!xdr_mapname (xdrs, &objp->map))
return FALSE;
- if (!xdr_pointer (xdrs, (char **) &objp->next, sizeof (ypmaplist),
- (xdrproc_t) xdr_ypmaplist))
- return FALSE;
- return TRUE;
+ return xdr_pointer (xdrs, (char **) &objp->next, sizeof (ypmaplist),
+ (xdrproc_t) xdr_ypmaplist);
}
bool_t
@@ -225,47 +199,40 @@ xdr_ypresp_maplist (XDR *xdrs, ypresp_maplist *objp)
{
if (!xdr_ypstat (xdrs, &objp->stat))
return FALSE;
- if (!xdr_pointer (xdrs, (char **) &objp->maps, sizeof (ypmaplist),
- (xdrproc_t) xdr_ypmaplist))
- return FALSE;
- return TRUE;
+ return xdr_pointer (xdrs, (char **) &objp->maps, sizeof (ypmaplist),
+ (xdrproc_t) xdr_ypmaplist);
}
bool_t
xdr_yppush_status (XDR *xdrs, yppush_status *objp)
{
- if (!xdr_enum (xdrs, (enum_t *) objp))
- return FALSE;
- return TRUE;
+ return xdr_enum (xdrs, (enum_t *) objp);
}
+libnsl_hidden_def (xdr_yppush_status)
bool_t
xdr_yppushresp_xfr (XDR *xdrs, yppushresp_xfr *objp)
{
if (!xdr_u_int (xdrs, &objp->transid))
return FALSE;
- if (!xdr_yppush_status (xdrs, &objp->status))
- return FALSE;
- return TRUE;
+ return xdr_yppush_status (xdrs, &objp->status);
}
bool_t
xdr_ypbind_resptype (XDR *xdrs, ypbind_resptype *objp)
{
- if (!xdr_enum (xdrs, (enum_t *) objp))
- return FALSE;
- return TRUE;
+ return xdr_enum (xdrs, (enum_t *) objp);
}
+libnsl_hidden_def (xdr_ypbind_resptype)
bool_t
xdr_ypbind_binding (XDR *xdrs, ypbind_binding *objp)
{
if (!xdr_opaque (xdrs, objp->ypbind_binding_addr, 4))
return FALSE;
- if (!xdr_opaque (xdrs, objp->ypbind_binding_port, 2))
- return FALSE;
- return TRUE;
+ return xdr_opaque (xdrs, objp->ypbind_binding_port, 2);
}
+libnsl_hidden_def (xdr_ypbind_binding)
bool_t
xdr_ypbind_resp (XDR *xdrs, ypbind_resp *objp)
@@ -275,17 +242,11 @@ xdr_ypbind_resp (XDR *xdrs, ypbind_resp *objp)
switch (objp->ypbind_status)
{
case YPBIND_FAIL_VAL:
- if (!xdr_u_int (xdrs, &objp->ypbind_resp_u.ypbind_error))
- return FALSE;
- break;
+ return xdr_u_int (xdrs, &objp->ypbind_resp_u.ypbind_error);
case YPBIND_SUCC_VAL:
- if (!xdr_ypbind_binding (xdrs, &objp->ypbind_resp_u.ypbind_bindinfo))
- return FALSE;
- break;
- default:
- return FALSE;
+ return xdr_ypbind_binding (xdrs, &objp->ypbind_resp_u.ypbind_bindinfo);
}
- return TRUE;
+ return FALSE;
}
bool_t
@@ -295,9 +256,7 @@ xdr_ypbind_setdom (XDR *xdrs, ypbind_setdom *objp)
return FALSE;
if (!xdr_ypbind_binding (xdrs, &objp->ypsetdom_binding))
return FALSE;
- if (!xdr_u_int (xdrs, &objp->ypsetdom_vers))
- return FALSE;
- return TRUE;
+ return xdr_u_int (xdrs, &objp->ypsetdom_vers);
}
bool_t
diff --git a/nis/ypclnt.c b/nis/ypclnt.c
index f25c7c710b..65b9c55467 100644
--- a/nis/ypclnt.c
+++ b/nis/ypclnt.c
@@ -230,6 +230,7 @@ yp_bind (const char *indomain)
return status;
}
+libnsl_hidden_def (yp_bind)
static void
yp_unbind_locked (const char *indomain)
@@ -394,6 +395,7 @@ yp_get_default_domain (char **outdomain)
return result;
}
+libnsl_hidden_def (yp_get_default_domain)
int
__yp_check (char **domain)
@@ -580,6 +582,7 @@ yp_master (const char *indomain, const char *inmap, char **outname)
return *outname == NULL ? YPERR_YPERR : YPERR_SUCCESS;
}
+libnsl_hidden_def (yp_master)
int
yp_order (const char *indomain, const char *inmap, unsigned int *outorder)
@@ -823,36 +826,29 @@ yperr_string (const int error)
return _("Unknown NIS error code");
}
+static const int8_t yp_2_yperr[] =
+ {
+#define YP2YPERR(yp, yperr) [YP_##yp - YP_VERS] = YPERR_##yperr
+ YP2YPERR (TRUE, SUCCESS),
+ YP2YPERR (NOMORE, NOMORE),
+ YP2YPERR (FALSE, YPERR),
+ YP2YPERR (NOMAP, MAP),
+ YP2YPERR (NODOM, DOMAIN),
+ YP2YPERR (NOKEY, KEY),
+ YP2YPERR (BADOP, YPERR),
+ YP2YPERR (BADDB, BADDB),
+ YP2YPERR (YPERR, YPERR),
+ YP2YPERR (BADARGS, BADARGS),
+ YP2YPERR (VERS, VERS)
+ };
int
ypprot_err (const int code)
{
- switch (code)
- {
- case YP_TRUE:
- return YPERR_SUCCESS;
- case YP_NOMORE:
- return YPERR_NOMORE;
- case YP_FALSE:
- return YPERR_YPERR;
- case YP_NOMAP:
- return YPERR_MAP;
- case YP_NODOM:
- return YPERR_DOMAIN;
- case YP_NOKEY:
- return YPERR_KEY;
- case YP_BADOP:
- return YPERR_YPERR;
- case YP_BADDB:
- return YPERR_BADDB;
- case YP_YPERR:
- return YPERR_YPERR;
- case YP_BADARGS:
- return YPERR_BADARGS;
- case YP_VERS:
- return YPERR_VERS;
- }
- return YPERR_YPERR;
+ if (code < YP_VERS || code > YP_NOKEY)
+ return YPERR_YPERR;
+ return yp_2_yperr[code];
}
+libnsl_hidden_def (ypprot_err)
const char *
ypbinderr_string (const int error)
@@ -871,7 +867,7 @@ ypbinderr_string (const int error)
return _("Unknown ypbind error");
}
}
-
+libnsl_hidden_def (ypbinderr_string)
#define WINDOW 60
diff --git a/nis/ypupdate_xdr.c b/nis/ypupdate_xdr.c
index e4027b07df..4789e47c3e 100644
--- a/nis/ypupdate_xdr.c
+++ b/nis/ypupdate_xdr.c
@@ -36,11 +36,10 @@
bool_t
xdr_yp_buf (XDR *xdrs, yp_buf *objp)
{
- if (!xdr_bytes (xdrs, (char **) &objp->yp_buf_val,
- (u_int *) &objp->yp_buf_len, ~0))
- return FALSE;
- return TRUE;
+ return xdr_bytes (xdrs, (char **) &objp->yp_buf_val,
+ (u_int *) &objp->yp_buf_len, ~0);
}
+libnsl_hidden_def (xdr_yp_buf)
bool_t
xdr_ypupdate_args (XDR *xdrs, ypupdate_args *objp)
@@ -49,9 +48,7 @@ xdr_ypupdate_args (XDR *xdrs, ypupdate_args *objp)
return FALSE;
if (!xdr_yp_buf (xdrs, &objp->key))
return FALSE;
- if (!xdr_yp_buf (xdrs, &objp->datum))
- return FALSE;
- return TRUE;
+ return xdr_yp_buf (xdrs, &objp->datum);
}
bool_t
@@ -59,7 +56,5 @@ xdr_ypdelete_args (XDR *xdrs, ypdelete_args *objp)
{
if (!xdr_string (xdrs, &objp->mapname, ~0))
return FALSE;
- if (!xdr_yp_buf (xdrs, &objp->key))
- return FALSE;
- return TRUE;
+ return xdr_yp_buf (xdrs, &objp->key);
}
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 2385b9cd37..31be4c37bb 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,34 @@
+2004-10-29 Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * sysdeps/unix/sysv/linux/sh/sem_timedwait.S (sem_timedwait):
+ Set ETIMEDOUT to errno when time is up. Tweak to avoid
+ assembler warning.
+
+2004-10-28 Jakub Jelinek <jakub@redhat.com>
+
+ * pthread_create.c (__pthread_create_2_1): Avoid leaking stacks
+ if sched_priority is not between minprio and maxprio.
+
+2004-10-25 Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S
+ (__pthread_cond_timedwait): Use clock_gettime syscall if exists.
+
+ * sysdeps/unix/sysv/linux/sh/lowlevellock.S
+ (__lll_mutex_timedlock_wait): Fix a bad branch condition.
+
+2004-10-24 Ulrich Drepper <drepper@redhat.com>
+
+ * sysdeps/unix/sysv/linux/smp.h (is_smp_system): Use
+ not-cancelable I/O functions.
+
+2004-10-21 Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * sysdeps/unix/sysv/linux/sh/lowlevellock.S
+ (__lll_mutex_timedlock_wait): If woken but cannot get the lock,
+ make sure 2 is stored in the futex and we looked at the old value.
+ Fix a few other problems to return the correct value.
+
2004-10-14 Richard Henderson <rth@redhat.com>
* sysdeps/alpha/tcb-offsets.sym (thread_offsetof): Redefine to
diff --git a/nptl/pthread_create.c b/nptl/pthread_create.c
index 1bab72d1e9..7293f4c71c 100644
--- a/nptl/pthread_create.c
+++ b/nptl/pthread_create.c
@@ -459,10 +459,12 @@ __pthread_create_2_1 (newthread, attr, start_routine, arg)
err = create_thread (pd, iattr, STACK_VARIABLES_ARGS);
if (err != 0)
{
- errout:
/* Something went wrong. Free the resources. */
if (!is_detached)
- __deallocate_stack (pd);
+ {
+ errout:
+ __deallocate_stack (pd);
+ }
return err;
}
diff --git a/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S b/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S
index 320fe18fe8..bcb15615e5 100644
--- a/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S
+++ b/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S
@@ -117,6 +117,7 @@ __lll_mutex_timedlock_wait:
mov #1, r3
mov #2, r4
CMPXCHG (r3, @r8, r4, r2)
+ tst r2, r2
bt 8f
mov r8, r4
@@ -127,13 +128,14 @@ __lll_mutex_timedlock_wait:
extu.b r3, r3
trapa #0x14
SYSCALL_INST_PAD
- mov r0, r4
+ mov r0, r5
-8:
+8:
mov #0, r3
mov #2, r4
CMPXCHG (r3, @r8, r4, r2)
- bf 7f
+ bf/s 7f
+ mov #0, r0
6:
add #8, r15
@@ -144,8 +146,14 @@ __lll_mutex_timedlock_wait:
7:
/* Check whether the time expired. */
mov #-ETIMEDOUT, r1
- cmp/eq r4, r1
+ cmp/eq r5, r1
bt 5f
+
+ /* Make sure the current holder knows we are going to sleep. */
+ XCHG (r2, @r8, r3)
+ tst r3, r3
+ bt/s 6b
+ mov #0, r0
bra 1b
nop
3:
diff --git a/nptl/sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S b/nptl/sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S
index d0c55ecfef..74206a71ec 100644
--- a/nptl/sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S
+++ b/nptl/sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S
@@ -133,6 +133,34 @@ __pthread_cond_timedwait:
8:
/* Get current time. */
+#ifdef __NR_clock_gettime
+ /* Get the clock number. */
+ mov.l @(cond_nwaiters,r8), r4
+ mov #((1 << clock_bits) - 1), r0
+ and r0, r4
+ /* Only clocks 0 and 1 are allowed. Both are handled in the
+ kernel. */
+ mov r15, r5
+ add #16, r5
+ mov.w .L__NR_clock_gettime, r3
+ trapa #0x12
+ SYSCALL_INST_PAD
+# ifndef __ASSUME_POSIX_TIMERS
+ cmp/eq #-ENOSYS, r0
+ bt 19f
+# endif
+
+ /* Compute relative timeout. */
+ mov.l @r13, r2
+ mov.l @(4,r13), r3
+ mov.l @(16,r15), r0
+ bra 0f
+ mov.l @(20,r15), r1
+.L__NR_clock_gettime:
+ .word __NR_clock_gettime
+
+# ifndef __ASSUME_POSIX_TIMERS
+19:
mov r15, r4
add #16, r4
mov #0, r5
@@ -143,11 +171,30 @@ __pthread_cond_timedwait:
/* Compute relative timeout. */
mov.l @(20,r15), r0
mov.w .L1k, r1
- dmulu.l r0, r1 /* Milli seconds to nano seconds. */
+ dmulu.l r0, r1 /* Micro seconds to nano seconds. */
mov.l @r13, r2
mov.l @(4,r13), r3
mov.l @(16,r15), r0
sts macl, r1
+#endif
+0:
+#else
+ mov r15, r4
+ add #16, r4
+ mov #0, r5
+ mov #SYS_gettimeofday, r3
+ trapa #0x12
+ SYSCALL_INST_PAD
+
+ /* Compute relative timeout. */
+ mov.l @(20,r15), r0
+ mov.w .L1k, r1
+ dmulu.l r0, r1 /* Micro seconds to nano seconds. */
+ mov.l @r13, r2
+ mov.l @(4,r13), r3
+ mov.l @(16,r15), r0
+ sts macl, r1
+#endif
sub r0, r2
clrt
subc r1, r3
diff --git a/nptl/sysdeps/unix/sysv/linux/sh/sem_timedwait.S b/nptl/sysdeps/unix/sysv/linux/sh/sem_timedwait.S
index 27a1bb019d..acb7d0f78b 100644
--- a/nptl/sysdeps/unix/sysv/linux/sh/sem_timedwait.S
+++ b/nptl/sysdeps/unix/sysv/linux/sh/sem_timedwait.S
@@ -42,8 +42,10 @@ sem_timedwait:
mov #0xf9, r1
and r1, r0
cmp/eq #8, r0
- bt 10f
-
+ bf 0f
+ bra 10f
+ stc gbr, r0
+0:
mov.l @r4, r0
2:
tst r0, r0
@@ -115,7 +117,8 @@ sem_timedwait:
add #-1, r2
5:
cmp/pz r2
- bf 6f /* Time is already up. */
+ bf/s 6f /* Time is already up. */
+ mov #ETIMEDOUT, r0
/* Store relative timeout. */
mov.l r2, @r15
@@ -196,7 +199,6 @@ sem_timedwait:
10:
/* Canceled. */
- stc gbr, r0
mov.w .Lresult, r1
mov #-1, r2
mov.l r2, @(r0,r1)
diff --git a/nptl/sysdeps/unix/sysv/linux/smp.h b/nptl/sysdeps/unix/sysv/linux/smp.h
index 718fab683b..c1160a7939 100644
--- a/nptl/sysdeps/unix/sysv/linux/smp.h
+++ b/nptl/sysdeps/unix/sysv/linux/smp.h
@@ -20,6 +20,7 @@
#include <fcntl.h>
#include <string.h>
#include <sys/sysctl.h>
+#include <not-cancel.h>
/* Test whether the machine has more than one processor. This is not the
best test but good enough. More complicated tests would require `malloc'
@@ -37,13 +38,13 @@ is_smp_system (void)
buf, &reslen, NULL, 0) < 0)
{
/* This was not successful. Now try reading the /proc filesystem. */
- int fd = __open ("/proc/sys/kernel/version", O_RDONLY);
+ int fd = open_not_cancel_2 ("/proc/sys/kernel/version", O_RDONLY);
if (__builtin_expect (fd, 0) == -1
- || (reslen = __read (fd, buf, sizeof (buf))) <= 0)
+ || (reslen = read_not_cancel (fd, buf, sizeof (buf))) <= 0)
/* This also didn't work. We give up and say it's a UP machine. */
buf[0] = '\0';
- __close (fd);
+ close_not_cancel_no_status (fd);
}
return strstr (buf, "SMP") != NULL;
diff --git a/nss/nss_files/files-netgrp.c b/nss/nss_files/files-netgrp.c
index e207691996..8bdc68bd14 100644
--- a/nss/nss_files/files-netgrp.c
+++ b/nss/nss_files/files-netgrp.c
@@ -274,6 +274,7 @@ _nss_netgroup_parseline (char **cursor, struct __netgrent *result,
return status;
}
+libnss_files_hidden_def (_nss_netgroup_parseline)
enum nss_status
diff --git a/nss/nss_files/files-parse.c b/nss/nss_files/files-parse.c
index 7d1e2326d3..3ba37c8941 100644
--- a/nss/nss_files/files-parse.c
+++ b/nss/nss_files/files-parse.c
@@ -1,5 +1,5 @@
/* Common code for file-based database parsers in nss_files module.
- Copyright (C) 1996-2000, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1996-2000, 2003, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -73,7 +73,13 @@ struct parser_data
/* Export the line parser function so it can be used in nss_db. */
# define parser_stclass /* Global */
# define parse_line CONCAT(_nss_files_parse_,ENTNAME)
-# define nss_files_parse_hidden_def(name) libc_hidden_def (name)
+# ifdef IS_IN_libc
+/* We are defining one of the functions that actually lives in libc
+ because it is used to implement fget*ent and suchlike. */
+# define nss_files_parse_hidden_def(name) libc_hidden_def (name)
+# else
+# define nss_files_parse_hidden_def(name) libnss_files_hidden_def (name)
+# endif
#endif
diff --git a/posix/execvp.c b/posix/execvp.c
index 6e919526d7..d6f60c02e7 100644
--- a/posix/execvp.c
+++ b/posix/execvp.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,92,95,96,97,98,99,2002 Free Software Foundation, Inc.
+/* Copyright (C) 1991,92,1995-99,2002,2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -135,6 +135,11 @@ execvp (file, argv)
/* Those errors indicate the file is missing or not executable
by us, in which case we want to just try the next path
directory. */
+ case ENODEV:
+ case ETIMEDOUT:
+ /* Some strange filesystems like AFS return even
+ stranger error numbers. They cannot reasonably mean
+ anything else so ignore those, too. */
break;
default:
diff --git a/resolv/nss_dns/dns-host.c b/resolv/nss_dns/dns-host.c
index f6a2fa65d6..7045c5915b 100644
--- a/resolv/nss_dns/dns-host.c
+++ b/resolv/nss_dns/dns-host.c
@@ -127,6 +127,14 @@ static enum nss_status getanswer_r (const querybuf *answer, int anslen,
size_t buflen, int *errnop, int *h_errnop,
int map, int32_t *ttlp, char **canonp);
+extern enum nss_status _nss_dns_gethostbyname3_r (const char *name, int af,
+ struct hostent *result,
+ char *buffer, size_t buflen,
+ int *errnop, int *h_errnop,
+ int32_t *ttlp,
+ char **canonp);
+hidden_proto (_nss_dns_gethostbyname3_r)
+
enum nss_status
_nss_dns_gethostbyname3_r (const char *name, int af, struct hostent *result,
char *buffer, size_t buflen, int *errnop,
@@ -216,6 +224,7 @@ _nss_dns_gethostbyname3_r (const char *name, int af, struct hostent *result,
free (host_buffer.buf);
return status;
}
+hidden_def (_nss_dns_gethostbyname3_r)
enum nss_status
@@ -236,11 +245,11 @@ _nss_dns_gethostbyname_r (const char *name, struct hostent *result,
enum nss_status status = NSS_STATUS_NOTFOUND;
if (_res.options & RES_USE_INET6)
- status = _nss_dns_gethostbyname2_r (name, AF_INET6, result, buffer,
- buflen, errnop, h_errnop);
+ status = _nss_dns_gethostbyname3_r (name, AF_INET6, result, buffer,
+ buflen, errnop, h_errnop, NULL, NULL);
if (status == NSS_STATUS_NOTFOUND)
- status = _nss_dns_gethostbyname2_r (name, AF_INET, result, buffer,
- buflen, errnop, h_errnop);
+ status = _nss_dns_gethostbyname3_r (name, AF_INET, result, buffer,
+ buflen, errnop, h_errnop, NULL, NULL);
return status;
}
diff --git a/resolv/res_send.c b/resolv/res_send.c
index 7773a2f522..8fb21a9446 100644
--- a/resolv/res_send.c
+++ b/resolv/res_send.c
@@ -73,14 +73,13 @@ static const char rcsid[] = "$BINDId: res_send.c,v 8.38 2000/03/30 20:16:51 vixi
* Send query to name server and wait for reply.
*/
+#include <assert.h>
#include <sys/types.h>
#include <sys/param.h>
#include <sys/time.h>
#include <sys/socket.h>
#include <sys/uio.h>
-#ifdef _LIBC
#include <sys/poll.h>
-#endif
#include <netinet/in.h>
#include <arpa/nameser.h>
@@ -103,9 +102,6 @@ static const char rcsid[] = "$BINDId: res_send.c,v 8.38 2000/03/30 20:16:51 vixi
#define MAXPACKET 65536
#endif
-#ifndef _LIBC
-#include <isc/eventlib.h>
-#else
/* From ev_streams.c. */
@@ -170,7 +166,6 @@ evNowTime(struct timespec *res) {
TIMEVAL_TO_TIMESPEC (&now, res);
}
-#endif
/* Options. Leave them on. */
/* #undef DEBUG */
@@ -178,10 +173,6 @@ evNowTime(struct timespec *res) {
#define EXT(res) ((res)->_u._ext)
-#ifndef _LIBC
-static const int highestFD = FD_SETSIZE - 1;
-#endif
-
/* Forward. */
static int send_vc(res_state, const u_char *, int,
@@ -194,22 +185,11 @@ static void Aerror(const res_state, FILE *, const char *, int,
const struct sockaddr *);
static void Perror(const res_state, FILE *, const char *, int);
#endif
-#ifdef _LIBC
static int sock_eq(struct sockaddr_in6 *, struct sockaddr_in6 *);
-#else
-static int sock_eq(struct sockaddr_in *, struct sockaddr_in *);
-#endif
-#ifdef NEED_PSELECT
-static int pselect(int, void *, void *, void *,
- struct timespec *,
- const sigset_t *);
-#endif
/* Reachover. */
-#ifdef _LIBC
static void convaddr4to6(struct sockaddr_in6 *sa);
-#endif
void res_pquery(const res_state, const u_char *, int, FILE *);
/* Public. */
@@ -224,15 +204,10 @@ void res_pquery(const res_state, const u_char *, int, FILE *);
* paul vixie, 29may94
*/
int
-#ifdef _LIBC
res_ourserver_p(const res_state statp, const struct sockaddr_in6 *inp)
-#else
-res_ourserver_p(const res_state statp, const struct sockaddr_in *inp)
-#endif
{
int ns;
-#ifdef _LIBC
if (inp->sin6_family == AF_INET) {
struct sockaddr_in *in4p = (struct sockaddr_in *) inp;
in_port_t port = in4p->sin_port;
@@ -260,18 +235,6 @@ res_ourserver_p(const res_state statp, const struct sockaddr_in *inp)
return (1);
}
}
-#else
- struct sockaddr_in ina = *inp;
- for (ns = 0; ns < statp->nscount; ns++) {
- const struct sockaddr_in *srv = &statp->nsaddr_list[ns];
-
- if (srv->sin_family == ina.sin_family &&
- srv->sin_port == ina.sin_port &&
- (srv->sin_addr.s_addr == INADDR_ANY ||
- srv->sin_addr.s_addr == ina.sin_addr.s_addr))
- return (1);
- }
-#endif
return (0);
}
@@ -406,18 +369,12 @@ __libc_res_nsend(res_state statp, const u_char *buf, int buflen,
if (EXT(statp).nscount != statp->nscount)
needclose++;
else
-#ifdef _LIBC
for (ns = 0; ns < MAXNS; ns++) {
unsigned int map = EXT(statp).nsmap[ns];
if (map < MAXNS
&& !sock_eq((struct sockaddr_in6 *)
&statp->nsaddr_list[map],
EXT(statp).nsaddrs[ns]))
-#else
- for (ns = 0; ns < statp->nscount; ns++) {
- if (!sock_eq(&statp->nsaddr_list[ns],
- &EXT(statp).nsaddrs[ns]))
-#endif
{
needclose++;
break;
@@ -431,7 +388,6 @@ __libc_res_nsend(res_state statp, const u_char *buf, int buflen,
* Maybe initialize our private copy of the ns_addr_list.
*/
if (EXT(statp).nsinit == 0) {
-#ifdef _LIBC
unsigned char map[MAXNS];
memset (map, MAXNS, sizeof (map));
@@ -471,13 +427,6 @@ __libc_res_nsend(res_state statp, const u_char *buf, int buflen,
n++;
}
}
-#else
- for (ns = 0; ns < statp->nscount; ns++) {
- EXT(statp).nsaddrs[ns] = statp->nsaddr_list[ns];
- EXT(statp).nssocks[ns] = -1;
- }
- EXT(statp).nscount = ns;
-#endif
EXT(statp).nsinit = 1;
}
@@ -487,7 +436,6 @@ __libc_res_nsend(res_state statp, const u_char *buf, int buflen,
*/
if ((statp->options & RES_ROTATE) != 0 &&
(statp->options & RES_BLAST) == 0) {
-#ifdef _LIBC
struct sockaddr_in6 *ina;
unsigned int map;
@@ -511,35 +459,18 @@ __libc_res_nsend(res_state statp, const u_char *buf, int buflen,
EXT(statp).nsaddrs[n] = ina;
EXT(statp).nsmap[n] = map;
}
-#else
- struct sockaddr_in ina;
- int lastns = statp->nscount - 1;
-
- ina = statp->nsaddr_list[0];
- for (ns = 0; ns < lastns; ns++)
- statp->nsaddr_list[ns] = statp->nsaddr_list[ns + 1];
- statp->nsaddr_list[lastns] = ina;
-#endif
}
/*
* Send request, RETRY times, or until successful.
*/
for (try = 0; try < statp->retry; try++) {
-#ifdef _LIBC
for (ns = 0; ns < MAXNS; ns++)
-#else
- for (ns = 0; ns < statp->nscount; ns++)
-#endif
{
-#ifdef _LIBC
struct sockaddr_in6 *nsap = EXT(statp).nsaddrs[ns];
if (nsap == NULL)
goto next_ns;
-#else
- struct sockaddr_in *nsap = &statp->nsaddr_list[ns];
-#endif
same_ns:
if (statp->qhook) {
int done = 0, loops = 0;
@@ -547,16 +478,11 @@ __libc_res_nsend(res_state statp, const u_char *buf, int buflen,
do {
res_sendhookact act;
-#ifdef _LIBC
struct sockaddr_in *nsap4;
nsap4 = (struct sockaddr_in *) nsap;
act = (*statp->qhook)(&nsap4, &buf, &buflen,
ans, anssiz, &resplen);
nsap = (struct sockaddr_in6 *) nsap4;
-#else
- act = (*statp->qhook)(&nsap, &buf, &buflen,
- ans, anssiz, &resplen);
-#endif
switch (act) {
case res_goahead:
done = 1;
@@ -579,19 +505,13 @@ __libc_res_nsend(res_state statp, const u_char *buf, int buflen,
} while (!done);
}
-#ifdef _LIBC
-# ifdef DEBUG
+#ifdef DEBUG
char tmpbuf[40];
-# endif
+#endif
Dprint(statp->options & RES_DEBUG,
(stdout, ";; Querying server (# %d) address = %s\n",
ns + 1, inet_ntop(AF_INET6, &nsap->sin6_addr,
tmpbuf, sizeof (tmpbuf))));
-#else
- Dprint(statp->options & RES_DEBUG,
- (stdout, ";; Querying server (# %d) address = %s\n",
- ns + 1, inet_ntoa(nsap->sin_addr)));
-#endif
if (v_circuit) {
/* Use VC; at most one attempt per server. */
@@ -641,14 +561,9 @@ __libc_res_nsend(res_state statp, const u_char *buf, int buflen,
do {
res_sendhookact act;
-#ifdef _LIBC
act = (*statp->rhook)((struct sockaddr_in *)
nsap, buf, buflen,
ans, anssiz, &resplen);
-#else
- act = (*statp->rhook)(nsap, buf, buflen,
- ans, anssiz, &resplen);
-#endif
switch (act) {
case res_goahead:
case res_done:
@@ -704,11 +619,7 @@ send_vc(res_state statp,
u_char *ans = *ansp;
int anssiz = *anssizp;
HEADER *anhp = (HEADER *) ans;
-#ifdef _LIBC
struct sockaddr_in6 *nsap = EXT(statp).nsaddrs[ns];
-#else
- struct sockaddr_in *nsap = &statp->nsaddr_list[ns];
-#endif
int truncating, connreset, resplen, n;
struct iovec iov[2];
u_short len;
@@ -720,11 +631,7 @@ send_vc(res_state statp,
/* Are we still talking to whom we want to talk to? */
if (statp->_vcsock >= 0 && (statp->_flags & RES_F_VC) != 0) {
-#ifdef _LIBC
struct sockaddr_in6 peer;
-#else
- struct sockaddr_in peer;
-#endif
int size = sizeof peer;
if (getpeername(statp->_vcsock,
@@ -739,15 +646,7 @@ send_vc(res_state statp,
if (statp->_vcsock >= 0)
res_nclose(statp);
-#ifdef _LIBC
statp->_vcsock = socket(nsap->sin6_family, SOCK_STREAM, 0);
-#else
- statp->_vcsock = socket(PF_INET, SOCK_STREAM, 0);
- if (statp->_vcsock > highestFD) {
- res_nclose(statp);
- __set_errno (ENOTSOCK);
- }
-#endif
if (statp->_vcsock < 0) {
*terrno = errno;
Perror(statp, stderr, "socket(vc)", errno);
@@ -904,25 +803,15 @@ send_dg(res_state statp,
u_char *ans = *ansp;
int anssiz = *anssizp;
HEADER *anhp = (HEADER *) ans;
-#ifdef _LIBC
struct sockaddr_in6 *nsap = EXT(statp).nsaddrs[ns];
-#else
- const struct sockaddr_in *nsap = &statp->nsaddr_list[ns];
-#endif
struct timespec now, timeout, finish;
-#ifdef _LIBC
struct pollfd pfd[1];
int ptimeout;
struct sockaddr_in6 from;
static int socket_pf = 0;
-#else
- fd_set dsmask;
- struct sockaddr_in from;
-#endif
- int fromlen, resplen, seconds, n, s;
+ int fromlen, resplen, seconds, n;
if (EXT(statp).nssocks[ns] == -1) {
-#ifdef _LIBC
/* only try IPv6 if IPv6 NS and if not failed before */
if ((EXT(statp).nscount6 > 0) && (socket_pf != PF_INET)) {
EXT(statp).nssocks[ns] =
@@ -932,24 +821,14 @@ send_dg(res_state statp,
}
if (EXT(statp).nssocks[ns] < 0)
EXT(statp).nssocks[ns] = socket(PF_INET, SOCK_DGRAM, 0);
-#else
- EXT(statp).nssocks[ns] = socket(PF_INET, SOCK_DGRAM, 0);
- if (EXT(statp).nssocks[ns] > highestFD) {
- res_nclose(statp);
- __set_errno (ENOTSOCK);
- }
-#endif
if (EXT(statp).nssocks[ns] < 0) {
*terrno = errno;
Perror(statp, stderr, "socket(dg)", errno);
return (-1);
}
-#ifndef CANNOT_CONNECT_DGRAM
-#ifdef _LIBC
/* If IPv6 socket and nsap is IPv4, make it IPv4-mapped */
if ((socket_pf == PF_INET6) && (nsap->sin6_family == AF_INET))
convaddr4to6(nsap);
-#endif
/*
* On a 4.3BSD+ machine (client and server,
* actually), sending to a nameserver datagram
@@ -968,7 +847,6 @@ send_dg(res_state statp,
res_nclose(statp);
return (0);
}
-#endif /* !CANNOT_CONNECT_DGRAM */
/* Make socket non-blocking. */
int fl = __fcntl (EXT(statp).nssocks[ns], F_GETFL);
if (fl != -1)
@@ -977,7 +855,7 @@ send_dg(res_state statp,
Dprint(statp->options & RES_DEBUG,
(stdout, ";; new DG socket\n"))
}
- s = EXT(statp).nssocks[ns];
+
/*
* Compute time for the total operation.
*/
@@ -990,28 +868,29 @@ send_dg(res_state statp,
evConsTime(&timeout, seconds, 0);
evAddTime(&finish, &now, &timeout);
int need_recompute = 0;
- resend:
-#ifdef _LIBC
+ int nwritten = 0;
+ pfd[0].fd = EXT(statp).nssocks[ns];
+ pfd[0].events = POLLOUT;
+ wait:
+ if (need_recompute) {
+ evNowTime(&now);
+ if (evCmpTime(finish, now) <= 0) {
+ Perror(statp, stderr, "select", errno);
+ res_nclose(statp);
+ return (0);
+ }
+ evSubTime(&timeout, &finish, &now);
+ }
/* Convert struct timespec in milliseconds. */
ptimeout = timeout.tv_sec * 1000 + timeout.tv_nsec / 1000000;
- pfd[0].fd = s;
- pfd[0].events = POLLOUT;
- n = __poll (pfd, 1, 0);
+ n = 0;
+ if (nwritten == 0)
+ n = __poll (pfd, 1, 0);
if (__builtin_expect (n == 0, 0)) {
n = __poll (pfd, 1, ptimeout);
need_recompute = 1;
}
-#else
- FD_ZERO(&dsmask);
- FD_SET(s, &dsmask);
- struct timeval zerotime = { 0, 0 };
- n = pselect(s + 1, NULL, &dsmask, NULL, &zerotime, NULL);
- if (n == 0) {
- n = pselect(s + 1, NULL, &dsmask, NULL, &timeout, NULL);
- need_recompute = 1;
- }
-#endif
if (n == 0) {
Dprint(statp->options & RES_DEBUG, (stdout,
";; timeout sending\n"));
@@ -1024,183 +903,136 @@ send_dg(res_state statp,
evNowTime(&now);
if (evCmpTime(finish, now) > 0) {
evSubTime(&timeout, &finish, &now);
- goto resend;
+ goto wait;
}
}
- Perror(statp, stderr, "select", errno);
+ Perror(statp, stderr, "poll", errno);
res_nclose(statp);
return (0);
}
__set_errno (0);
-#ifndef CANNOT_CONNECT_DGRAM
- if (send(s, (char*)buf, buflen, 0) != buflen) {
- if (errno == EINTR || errno == EAGAIN)
- goto recompute_resend;
- Perror(statp, stderr, "send", errno);
- res_nclose(statp);
- return (0);
- }
-#else /* !CANNOT_CONNECT_DGRAM */
-#ifdef _LIBC
- /* If IPv6 socket and nsap is IPv4, make it IPv4-mapped */
- if ((socket_pf == PF_INET6) && (nsap->sin6_family == AF_INET))
- convaddr4to6(nsap);
-#endif
- if (sendto(s, (char*)buf, buflen, 0,
- (struct sockaddr *)nsap, sizeof *nsap) != buflen)
- {
- if (errno == EINTR || errno == EAGAIN)
- goto recompute_resend;
- Aerror(statp, stderr, "sendto", errno,
- (struct sockaddr *) nsap);
- res_nclose(statp);
- return (0);
- }
-#endif /* !CANNOT_CONNECT_DGRAM */
-
- wait:
- if (need_recompute) {
- evNowTime(&now);
- if (evCmpTime(finish, now) <= 0) {
- err_return:
- Perror(statp, stderr, "select", errno);
+ if (pfd[0].revents & POLLOUT) {
+ if (send(pfd[0].fd, (char*)buf, buflen, 0) != buflen) {
+ if (errno == EINTR || errno == EAGAIN)
+ goto recompute_resend;
+ Perror(statp, stderr, "send", errno);
+ res_nclose(statp);
+ return (0);
+ }
+ pfd[0].events = POLLIN;
+ ++nwritten;
+ goto wait;
+ } else if (pfd[0].revents & POLLIN) {
+ fromlen = sizeof(struct sockaddr_in6);
+ if (anssiz < MAXPACKET
+ && anscp
+ && (ioctl (pfd[0].fd, FIONREAD, &resplen) < 0
+ || anssiz < resplen)) {
+ ans = malloc (MAXPACKET);
+ if (ans == NULL)
+ ans = *ansp;
+ else {
+ anssiz = MAXPACKET;
+ *anssizp = MAXPACKET;
+ *ansp = ans;
+ *anscp = ans;
+ anhp = (HEADER *) ans;
+ }
+ }
+ resplen = recvfrom(pfd[0].fd, (char*)ans, anssiz,0,
+ (struct sockaddr *)&from, &fromlen);
+ if (resplen <= 0) {
+ if (errno == EINTR || errno == EAGAIN) {
+ need_recompute = 1;
+ goto wait;
+ }
+ Perror(statp, stderr, "recvfrom", errno);
res_nclose(statp);
return (0);
}
- evSubTime(&timeout, &finish, &now);
- }
-#ifdef _LIBC
- /* Convert struct timespec in milliseconds. */
- ptimeout = timeout.tv_sec * 1000 + timeout.tv_nsec / 1000000;
-
- pfd[0].events = POLLIN;
- n = __poll (pfd, 1, ptimeout);
-#else
- n = pselect(s + 1, &dsmask, NULL, NULL, &timeout, NULL);
-#endif
- if (n == 0) {
- Dprint(statp->options & RES_DEBUG, (stdout,
- ";; timeout receiving\n"));
*gotsomewhere = 1;
- return (0);
- }
- if (n < 0) {
- if (errno == EINTR) {
- need_recompute = 1;
+ if (resplen < HFIXEDSZ) {
+ /*
+ * Undersized message.
+ */
+ Dprint(statp->options & RES_DEBUG,
+ (stdout, ";; undersized: %d\n",
+ resplen));
+ *terrno = EMSGSIZE;
+ res_nclose(statp);
+ return (0);
+ }
+ if (hp->id != anhp->id) {
+ /*
+ * response from old query, ignore it.
+ * XXX - potential security hazard could
+ * be detected here.
+ */
+ DprintQ((statp->options & RES_DEBUG) ||
+ (statp->pfcode & RES_PRF_REPLY),
+ (stdout, ";; old answer:\n"),
+ ans, (resplen > anssiz) ? anssiz : resplen);
goto wait;
}
- goto err_return;
- }
- __set_errno (0);
-#ifdef _LIBC
- fromlen = sizeof(struct sockaddr_in6);
-#else
- fromlen = sizeof(struct sockaddr_in);
-#endif
- if (anssiz < MAXPACKET
- && anscp
- && (ioctl (s, FIONREAD, &resplen) < 0
- || anssiz < resplen)) {
- ans = malloc (MAXPACKET);
- if (ans == NULL)
- ans = *ansp;
- else {
- anssiz = MAXPACKET;
- *anssizp = MAXPACKET;
- *ansp = ans;
- *anscp = ans;
- anhp = (HEADER *) ans;
+ if (!(statp->options & RES_INSECURE1) &&
+ !res_ourserver_p(statp, &from)) {
+ /*
+ * response from wrong server? ignore it.
+ * XXX - potential security hazard could
+ * be detected here.
+ */
+ DprintQ((statp->options & RES_DEBUG) ||
+ (statp->pfcode & RES_PRF_REPLY),
+ (stdout, ";; not our server:\n"),
+ ans, (resplen > anssiz) ? anssiz : resplen);
+ goto wait;
}
- }
- resplen = recvfrom(s, (char*)ans, anssiz,0,
- (struct sockaddr *)&from, &fromlen);
- if (resplen <= 0) {
- if (errno == EINTR || errno == EAGAIN) {
- need_recompute = 1;
+ if (!(statp->options & RES_INSECURE2) &&
+ !res_queriesmatch(buf, buf + buflen,
+ ans, ans + anssiz)) {
+ /*
+ * response contains wrong query? ignore it.
+ * XXX - potential security hazard could
+ * be detected here.
+ */
+ DprintQ((statp->options & RES_DEBUG) ||
+ (statp->pfcode & RES_PRF_REPLY),
+ (stdout, ";; wrong query name:\n"),
+ ans, (resplen > anssiz) ? anssiz : resplen);
goto wait;
}
- Perror(statp, stderr, "recvfrom", errno);
- res_nclose(statp);
- return (0);
- }
- *gotsomewhere = 1;
- if (resplen < HFIXEDSZ) {
+ if (anhp->rcode == SERVFAIL ||
+ anhp->rcode == NOTIMP ||
+ anhp->rcode == REFUSED) {
+ DprintQ(statp->options & RES_DEBUG,
+ (stdout, "server rejected query:\n"),
+ ans, (resplen > anssiz) ? anssiz : resplen);
+ res_nclose(statp);
+ /* don't retry if called from dig */
+ if (!statp->pfcode)
+ return (0);
+ }
+ if (!(statp->options & RES_IGNTC) && anhp->tc) {
+ /*
+ * To get the rest of answer,
+ * use TCP with same server.
+ */
+ Dprint(statp->options & RES_DEBUG,
+ (stdout, ";; truncated answer\n"));
+ *v_circuit = 1;
+ res_nclose(statp);
+ return (1);
+ }
/*
- * Undersized message.
+ * All is well, or the error is fatal. Signal that the
+ * next nameserver ought not be tried.
*/
- Dprint(statp->options & RES_DEBUG,
- (stdout, ";; undersized: %d\n",
- resplen));
- *terrno = EMSGSIZE;
+ return (resplen);
+ } else if (pfd[0].revents & (POLLERR | POLLHUP | POLLNVAL)) {
+ /* Something went wrong. We can stop trying. */
res_nclose(statp);
return (0);
}
- if (hp->id != anhp->id) {
- /*
- * response from old query, ignore it.
- * XXX - potential security hazard could
- * be detected here.
- */
- DprintQ((statp->options & RES_DEBUG) ||
- (statp->pfcode & RES_PRF_REPLY),
- (stdout, ";; old answer:\n"),
- ans, (resplen > anssiz) ? anssiz : resplen);
- goto wait;
- }
- if (!(statp->options & RES_INSECURE1) &&
- !res_ourserver_p(statp, &from)) {
- /*
- * response from wrong server? ignore it.
- * XXX - potential security hazard could
- * be detected here.
- */
- DprintQ((statp->options & RES_DEBUG) ||
- (statp->pfcode & RES_PRF_REPLY),
- (stdout, ";; not our server:\n"),
- ans, (resplen > anssiz) ? anssiz : resplen);
- goto wait;
- }
- if (!(statp->options & RES_INSECURE2) &&
- !res_queriesmatch(buf, buf + buflen,
- ans, ans + anssiz)) {
- /*
- * response contains wrong query? ignore it.
- * XXX - potential security hazard could
- * be detected here.
- */
- DprintQ((statp->options & RES_DEBUG) ||
- (statp->pfcode & RES_PRF_REPLY),
- (stdout, ";; wrong query name:\n"),
- ans, (resplen > anssiz) ? anssiz : resplen);
- goto wait;
- }
- if (anhp->rcode == SERVFAIL ||
- anhp->rcode == NOTIMP ||
- anhp->rcode == REFUSED) {
- DprintQ(statp->options & RES_DEBUG,
- (stdout, "server rejected query:\n"),
- ans, (resplen > anssiz) ? anssiz : resplen);
- res_nclose(statp);
- /* don't retry if called from dig */
- if (!statp->pfcode)
- return (0);
- }
- if (!(statp->options & RES_IGNTC) && anhp->tc) {
- /*
- * To get the rest of answer,
- * use TCP with same server.
- */
- Dprint(statp->options & RES_DEBUG,
- (stdout, ";; truncated answer\n"));
- *v_circuit = 1;
- res_nclose(statp);
- return (1);
- }
- /*
- * All is well, or the error is fatal. Signal that the
- * next nameserver ought not be tried.
- */
- return (resplen);
}
#ifdef DEBUG
@@ -1239,7 +1071,6 @@ Perror(const res_state statp, FILE *file, const char *string, int error) {
#endif
static int
-#ifdef _LIBC
sock_eq(struct sockaddr_in6 *a1, struct sockaddr_in6 *a2) {
if (a1->sin6_family == a2->sin6_family) {
if (a1->sin6_family == AF_INET)
@@ -1262,15 +1093,7 @@ sock_eq(struct sockaddr_in6 *a1, struct sockaddr_in6 *a2) {
(a1->sin6_addr.s6_addr32[3] ==
((struct sockaddr_in *)a2)->sin_addr.s_addr));
}
-#else
-sock_eq(struct sockaddr_in *a1, struct sockaddr_in *a2) {
- return ((a1->sin_family == a2->sin_family) &&
- (a1->sin_port == a2->sin_port) &&
- (a1->sin_addr.s_addr == a2->sin_addr.s_addr));
-}
-#endif
-#ifdef _LIBC
/*
* Converts IPv4 family, address and port to
* IPv6 family, IPv4-mapped IPv6 address and port.
@@ -1289,30 +1112,3 @@ convaddr4to6(struct sockaddr_in6 *sa)
sa->sin6_addr.s6_addr32[2] = htonl(0xFFFF);
sa->sin6_addr.s6_addr32[3] = addr;
}
-#endif
-
-#ifdef NEED_PSELECT
-/* XXX needs to move to the porting library. */
-static int
-pselect(int nfds, void *rfds, void *wfds, void *efds,
- struct timespec *tsp, const sigset_t *sigmask)
-{
- struct timeval tv, *tvp;
- sigset_t sigs;
- int n;
-
- if (tsp) {
- tvp = &tv;
- tv = evTimeVal(*tsp);
- } else
- tvp = NULL;
- if (sigmask)
- sigprocmask(SIG_SETMASK, sigmask, &sigs);
- n = select(nfds, rfds, wfds, efds, tvp);
- if (sigmask)
- sigprocmask(SIG_SETMASK, &sigs, NULL);
- if (tsp)
- TIMEVAL_TO_TIMESPEC (tv, *tsp);
- return (n);
-}
-#endif
diff --git a/sysdeps/am29k/ffs.c b/sysdeps/am29k/ffs.c
deleted file mode 100644
index 6f080db442..0000000000
--- a/sysdeps/am29k/ffs.c
+++ /dev/null
@@ -1,43 +0,0 @@
-/* ffs -- find first set bit in a word, counted from least significant end.
- For Amd 290x0.
- Copyright (C) 1991, 1992, 1997, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Torbjorn Granlund (tege@sics.se).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <bstring.h>
-
-#undef ffs
-
-#ifdef __GNUC__
-
-int
-__ffs (x)
- int x;
-{
- int cnt;
-
- asm ("clz %0,%1" : "=r" (cnt) : "r" (x & -x));
-
- return 32 - cnt;
-}
-weak_alias (__ffs, ffs)
-libc_hidden_builtin_def (ffs)
-
-#else
-#include <sysdeps/generic/ffs.c>
-#endif
diff --git a/sysdeps/cris/Dist b/sysdeps/cris/Dist
deleted file mode 100644
index cf1ffb6a08..0000000000
--- a/sysdeps/cris/Dist
+++ /dev/null
@@ -1 +0,0 @@
-_mcount.S
diff --git a/sysdeps/cris/Implies b/sysdeps/cris/Implies
deleted file mode 100644
index 780c4e2467..0000000000
--- a/sysdeps/cris/Implies
+++ /dev/null
@@ -1,3 +0,0 @@
-wordsize-32
-ieee754/flt-32
-ieee754/dbl-64
diff --git a/sysdeps/cris/Makefile b/sysdeps/cris/Makefile
deleted file mode 100644
index 1ecb78c3e0..0000000000
--- a/sysdeps/cris/Makefile
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
-# This file is part of the GNU C Library.
-
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
-
-# You should have received a copy of the GNU Lesser General Public
-# License along with the GNU C Library; if not, write to the Free
-# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-# 02111-1307 USA.
-
-# We don't support long doubles as a distinct type. We don't need to set
-# this variable; it's here mostly for documentational purposes.
-
-long-double-fcts = no
-
-# FIXME: Note that this is a machine-specific stub; profiling is not
-# implemented.
-ifeq ($(subdir),gmon)
-sysdep_routines += _mcount
-endif
-
-# FIXME: This test seems generally bogus. Wrong types in function calls
-# and assumes FE_TONEAREST is defined. Does it work somewhere?
-# Presumably it does, so let's settle for filtering it out target-wise
-# until it's agreed what should be done.
-ifeq ($(subdir),math)
-tests := $(filter-out test-fenv, $(tests))
-endif
-
-# PIC code must be assembled with special options, passed on by gcc when
-# given the -fpic option.
-ASFLAGS-.os = -fpic
-
-# Overflow occurs at 2**15/4 (8192) symbols. Glibc uses about 2000.
-# So use -fpic: smaller-size relocs; smaller, faster code.
-pic-ccflag = -fpic
diff --git a/sysdeps/cris/__longjmp.S b/sysdeps/cris/__longjmp.S
deleted file mode 100644
index cce27ca25e..0000000000
--- a/sysdeps/cris/__longjmp.S
+++ /dev/null
@@ -1,38 +0,0 @@
-/* longjmp for CRIS.
- Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-#define _SETJMP_H
-#define _ASM
-#include <bits/setjmp.h>
-
- .syntax no_register_prefix
-
-/* Saving and restoring CCR is meaningless, so we don't do it. */
-ENTRY (__longjmp)
- /* Note that r10 = jmp_buf, r11 = retval. */
- move [r10+16*4],srp
- test.d r11
- beq 0f /* Already a 1 in place. */
- nop
- /* Offset for r9, the return value (see setjmp). */
- move.d r11,[r10+6*4]
-0:
- movem [r10],pc
-END (__longjmp)
diff --git a/sysdeps/cris/_mcount.S b/sysdeps/cris/_mcount.S
deleted file mode 100644
index a939131645..0000000000
--- a/sysdeps/cris/_mcount.S
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Machine-specific calling sequence for `mcount' profiling function for CRIS.
- Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* FIXME: This isn't implemented yet. This is just a machine-specific
- stub. Perhaps a real implementation can make use of it. */
-
-#include <sysdep.h>
-
-#undef CALL_MCOUNT
-#define CALL_MCOUNT
-
-ENTRY (_mcount)
- SETUP_PIC
- /* Sorry, isn't implemented yet.
- Can't call abort; that will recurse. Force SEGV instead. */
- test.d [99]
-1:
- ba 1b
- nop
-END (_mcount)
diff --git a/sysdeps/cris/bits/endian.h b/sysdeps/cris/bits/endian.h
deleted file mode 100644
index 034307e395..0000000000
--- a/sysdeps/cris/bits/endian.h
+++ /dev/null
@@ -1,7 +0,0 @@
-/* CRIS is little-endian. */
-
-#ifndef _ENDIAN_H
-# error "Never use <bits/endian.h> directly; include <endian.h> instead."
-#endif
-
-#define __BYTE_ORDER __LITTLE_ENDIAN
diff --git a/sysdeps/cris/bits/setjmp.h b/sysdeps/cris/bits/setjmp.h
deleted file mode 100644
index 0d7825bc86..0000000000
--- a/sysdeps/cris/bits/setjmp.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/* Copyright (C) 1997, 1998 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* Define the machine-dependent type `jmp_buf', CRIS version. */
-
-/* Note that saving and restoring CCR has no meaning in user mode, so we
- don't actually do it; the slot is now reserved.
-
- jmp_buf[0] - PC
- jmp_buf[1] - SP (R14)
- jmp_buf[2] - R13
- jmp_buf[3] - R12
- jmp_buf[4] - R11
- jmp_buf[5] - R10
- jmp_buf[6] - R9
- jmp_buf[7] - R8
- jmp_buf[8] - R7
- jmp_buf[9] - R6
- jmp_buf[10] - R5
- jmp_buf[11] - R4
- jmp_buf[12] - R3
- jmp_buf[13] - R2
- jmp_buf[14] - R1
- jmp_buf[15] - R0
- jmp_buf[16] - SRP
- jmp_buf[17] - CCR */
-
-#ifndef _ASM
-typedef unsigned long int __jmp_buf[18];
-#endif
-
-#if defined (__USE_MISC) || defined (_ASM)
-#define JB_SP 1
-#endif
-
-/* Test if longjmp to JMPBUF would unwind the frame
- containing a local variable at ADDRESS. */
-#define _JMPBUF_UNWINDS(jmpbuf, address) \
- ((unsigned long int) (address) < (jmpbuf)[JB_SP])
diff --git a/sysdeps/cris/bits/string.h b/sysdeps/cris/bits/string.h
deleted file mode 100644
index fa893d3653..0000000000
--- a/sysdeps/cris/bits/string.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Optimized, inlined string functions. CRIS version.
- Copyright (C) 1997, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _STRING_H
-# error "Never use <bits/string.h> directly; include <string.h> instead."
-#endif
-
-/* Currently the only purpose of this file is to tell the generic inline
- macros that unaligned memory access is possible. */
-#define _STRING_ARCH_unaligned 1
diff --git a/sysdeps/cris/dl-machine.h b/sysdeps/cris/dl-machine.h
deleted file mode 100644
index 368733e73f..0000000000
--- a/sysdeps/cris/dl-machine.h
+++ /dev/null
@@ -1,391 +0,0 @@
-/* Machine-dependent ELF dynamic relocation inline functions. CRIS version.
- Copyright (C) 1996-2001, 2002, 2003 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef dl_machine_h
-#define dl_machine_h
-
-#define ELF_MACHINE_NAME "CRIS"
-
-#include <sys/param.h>
-
-#ifdef __PIC__
-# define CALL_FN(x) \
- "move.d $pc,$r9\n\t" \
- "add.d " #x " - .,$r9\n\t" \
- "jsr $r9"
-#else
-# define CALL_FN(x) "jsr " #x
-#endif
-
-/* Return nonzero iff ELF header is compatible with the running host. */
-
-static inline int
-elf_machine_matches_host (const Elf32_Ehdr *ehdr)
-{
- return ehdr->e_machine == EM_CRIS;
-}
-
-/* Return the link-time address of _DYNAMIC. Conveniently, this is the
- first element of the GOT. This must be inlined in a function which
- uses global data. */
-
-static inline Elf32_Addr
-elf_machine_dynamic (void)
-{
- /* Don't just set this to an asm variable "r0" since that's not logical
- (like, the variable is uninitialized and the register is fixed) and
- may make GCC trip over itself doing register allocation. Yes, I'm
- paranoid. Why do you ask? */
- Elf32_Addr *got;
-
- __asm__ ("move.d $r0,%0" : "=rm" (got));
- return *got;
-}
-
-/* Return the run-time load address of the shared object. We do it like
- m68k and i386, by taking an arbitrary local symbol, forcing a GOT entry
- for it, and peeking into the GOT table, which is set to the link-time
- file-relative symbol value (regardless of whether the target is REL or
- RELA). We subtract this link-time file-relative value from the "local"
- value we calculate from GOT position and GOT offset. FIXME: Perhaps
- there's some other symbol we could use, that we don't *have* to force a
- GOT entry for. */
-
-static inline Elf32_Addr
-elf_machine_load_address (void)
-{
- Elf32_Addr gotaddr_diff;
- __asm__ ("sub.d [$r0+_dl_start:GOT16],$r0,%0\n\t"
- "add.d _dl_start:GOTOFF,%0" : "=r" (gotaddr_diff));
- return gotaddr_diff;
-}
-
-/* Set up the loaded object described by L so its unrelocated PLT
- entries will jump to the on-demand fixup code in dl-runtime.c. */
-
-static inline int
-elf_machine_runtime_setup (struct link_map *l, int lazy, int profile)
-{
- Elf32_Addr *got;
- extern void _dl_runtime_resolve (Elf32_Word);
- extern void _dl_runtime_profile (Elf32_Word);
-
- if (l->l_info[DT_JMPREL] && lazy)
- {
- /* The GOT entries for functions in the PLT have not yet been
- filled in. Their initial contents will arrange when called
- to push an offset into the .rela.plt section, push
- _GLOBAL_OFFSET_TABLE_[1], and then jump to
- _GLOBAL_OFFSET_TABLE_[2]. */
- got = (Elf32_Addr *) D_PTR (l, l_info[DT_PLTGOT]);
- got[1] = (Elf32_Addr) l; /* Identify this shared object. */
-
- /* The got[2] entry contains the address of a function which gets
- called to get the address of a so far unresolved function and
- jump to it. The profiling extension of the dynamic linker allows
- to intercept the calls to collect information. In this case we
- don't store the address in the GOT so that all future calls also
- end in this function. */
- if (__builtin_expect (profile, 0))
- {
- got[2] = (Elf32_Addr) &_dl_runtime_profile;
-
- if (_dl_name_match_p (GL(dl_profile), l))
- {
- /* This is the object we are looking for. Say that we really
- want profiling and the timers are started. */
- GL(dl_profile_map) = l;
- }
- }
- else
- /* This function will get called to fix up the GOT entry indicated by
- the offset on the stack, and then jump to the resolved address. */
- got[2] = (Elf32_Addr) &_dl_runtime_resolve;
- }
-
- return lazy;
-}
-
-/* This code is used in dl-runtime.c to call the `fixup' function
- and then redirect to the address it returns.
-
- We get here with the offset into the relocation table pushed on stack,
- and the link map in MOF. */
-
-#define TRAMPOLINE_TEMPLATE(tramp_name, fixup_name) \
-"; Trampoline for " #fixup_name "\n\
- .globl " #tramp_name "\n\
- .type " #tramp_name ", @function\n\
-" #tramp_name ":\n\
- push $r13\n\
- push $r12\n\
- push $r11\n\
- push $r10\n\
- push $r9\n\
- push $srp\n\
- move.d [$sp+6*4],$r11\n\
- move $mof,$r10\n\
- " CALL_FN (fixup_name) "\n\
- move.d $r10,[$sp+6*4]\n\
- pop $srp\n\
- pop $r9\n\
- pop $r10\n\
- pop $r11\n\
- pop $r12\n\
- pop $r13\n\
- jump [$sp+]\n\
- .size " #tramp_name ", . - " #tramp_name "\n"
-#ifndef PROF
-#define ELF_MACHINE_RUNTIME_TRAMPOLINE \
-asm (TRAMPOLINE_TEMPLATE (_dl_runtime_resolve, fixup) \
- TRAMPOLINE_TEMPLATE (_dl_runtime_profile, profile_fixup));
-#else
-#define ELF_MACHINE_RUNTIME_TRAMPOLINE \
-asm (TRAMPOLINE_TEMPLATE (_dl_runtime_resolve, fixup) \
- ".globl _dl_runtime_profile\n" \
- ".set _dl_runtime_profile, _dl_runtime_resolve");
-#endif
-
-
-/* Mask identifying addresses reserved for the user program,
- where the dynamic linker should not map anything. */
-#define ELF_MACHINE_USER_ADDRESS_MASK 0xf8000000UL
-
-/* Initial entry point code for the dynamic linker.
- The C function `_dl_start' is the real entry point;
- its return value is the user program's entry point. */
-
-#define RTLD_START asm ("\
- .text\n\
- .globl _start\n\
- .type _start,@function\n\
-_start:\n\
- move.d $sp,$r10\n\
- " CALL_FN (_dl_start) "\n\
- /* FALLTHRU */\n\
-\n\
- .globl _dl_start_user\n\
- .type _dl_start_user,@function\n\
-_dl_start_user:\n\
- ; Save the user entry point address in R1.\n\
- move.d $r10,$r1\n\
- ; Point R0 at the GOT.\n\
- move.d $pc,$r0\n\
- sub.d .:GOTOFF,$r0\n\
- ; See if we were run as a command with the executable file\n\
- ; name as an extra leading argument.\n\
- move.d [$r0+_dl_skip_args:GOT16],$r13\n\
- move.d [$r13],$r9\n\
- ; Get the original argument count\n\
- move.d [$sp],$r11\n\
- ; Subtract _dl_skip_args from it.\n\
- sub.d $r9,$r11\n\
- ; Adjust the stack pointer to skip _dl_skip_args words.\n\
- addi $r9.d,$sp\n\
- ; Put the new argc in place as expected by the user entry.\n\
- move.d $r11,[$sp]\n\
- ; Call _dl_init (struct link_map *main_map, int argc, char **argv, char **env)\n\
- ; env: skip scaled argc and skip stored argc and NULL at end of argv[].\n\
- move.d $sp,$r13\n\
- addi $r11.d,$r13\n\
- addq 8,$r13\n\
- ; argv: skip stored argc.\n\
- move.d $sp,$r12\n\
- addq 4,$r12\n\
- ; main_map: at _dl_loaded.\n\
- move.d [$r0+_rtld_local:GOT16],$r9\n\
- move.d [$r9],$r10\n\
- move.d _dl_init_internal:PLTG,$r9\n\
- add.d $r0,$r9\n\
- jsr $r9\n\
- ; Pass our finalizer function to the user in R10.\n\
- move.d [$r0+_dl_fini:GOT16],$r10\n\
- ; Terminate the frame-pointer.\n\
- moveq 0,$r8\n\
- ; Cause SEGV if user entry returns.\n\
- move $r8,$srp\n\
- ; Jump to the user's entry point.\n\
- jump $r1\n\
- .size _dl_start_user, . - _dl_start_user\n\
- .previous");
-
-/* The union of reloc-type-classes where the reloc TYPE is a member.
-
- TYPE is in the class ELF_RTYPE_CLASS_PLT if it can describe a
- relocation for a PLT entry, that is, for which a PLT entry should not
- be allowed to define the value. The GNU linker for CRIS can merge a
- .got.plt entry (R_CRIS_JUMP_SLOT) with a .got entry (R_CRIS_GLOB_DAT),
- so we need to match both these reloc types.
-
- TYPE is in the class ELF_RTYPE_CLASS_NOCOPY if it should not be allowed
- to resolve to one of the main executable's symbols, as for a COPY
- reloc. */
-#define elf_machine_type_class(type) \
- ((((((type) == R_CRIS_JUMP_SLOT)) \
- || ((type) == R_CRIS_GLOB_DAT)) * ELF_RTYPE_CLASS_PLT) \
- | (((type) == R_CRIS_COPY) * ELF_RTYPE_CLASS_COPY))
-
-/* A reloc type used for ld.so cmdline arg lookups to reject PLT entries. */
-#define ELF_MACHINE_JMP_SLOT R_CRIS_JUMP_SLOT
-
-/* CRIS never uses Elf32_Rel relocations. */
-#define ELF_MACHINE_NO_REL 1
-
-/* We define an initialization functions. This is called very early in
- _dl_sysdep_start. */
-#define DL_PLATFORM_INIT dl_platform_init ()
-
-static inline void __attribute__ ((unused))
-dl_platform_init (void)
-{
- if (GL(dl_platform) != NULL && *GL(dl_platform) == '\0')
- /* Avoid an empty string which would disturb us. */
- GL(dl_platform) = NULL;
-}
-
-static inline Elf32_Addr
-elf_machine_fixup_plt (struct link_map *map, lookup_t t,
- const Elf32_Rela *reloc,
- Elf32_Addr *reloc_addr, Elf32_Addr value)
-{
- return *reloc_addr = value;
-}
-
-/* Return the final value of a plt relocation. */
-static inline Elf32_Addr
-elf_machine_plt_value (struct link_map *map, const Elf32_Rela *reloc,
- Elf32_Addr value)
-{
- return value + reloc->r_addend;
-}
-
-#endif /* !dl_machine_h */
-
-#ifdef RESOLVE
-
-/* Perform the relocation specified by RELOC and SYM (which is fully resolved).
- MAP is the object containing the reloc. */
-
-static inline void
-elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc,
- const Elf32_Sym *sym, const struct r_found_version *version,
- void *const reloc_addr_arg)
-{
- Elf32_Addr *const reloc_addr = reloc_addr_arg;
- const unsigned int r_type = ELF32_R_TYPE (reloc->r_info);
-
- if (__builtin_expect (r_type == R_CRIS_RELATIVE, 0))
- *reloc_addr = map->l_addr + reloc->r_addend;
- else
- {
-#ifndef RTLD_BOOTSTRAP
- const Elf32_Sym *const refsym = sym;
-#endif
- Elf32_Addr value;
- if (sym->st_shndx != SHN_UNDEF
- && ELF32_ST_BIND (sym->st_info) == STB_LOCAL)
- value = map->l_addr;
- else
- {
- value = RESOLVE (&sym, version, r_type);
- if (sym)
- value += sym->st_value;
- }
- value += reloc->r_addend; /* Assume copy relocs have zero addend. */
-
- switch (r_type)
- {
-#ifndef RTLD_BOOTSTRAP
- case R_CRIS_COPY:
- if (sym == NULL)
- /* This can happen in trace mode if an object could not be
- found. */
- break;
- if (sym->st_size > refsym->st_size
- || (GL(dl_verbose) && sym->st_size < refsym->st_size))
- {
- const char *strtab;
-
- strtab = (const void *) D_PTR (map, l_info[DT_STRTAB]);
- _dl_error_printf ("\
-%s: Symbol `%s' has different size in shared object, consider re-linking\n",
- rtld_progname ?: "<program name unknown>",
- strtab + refsym->st_name);
- }
- memcpy (reloc_addr_arg, (void *) value,
- MIN (sym->st_size, refsym->st_size));
- break;
-
- case R_CRIS_32:
-#endif
- case R_CRIS_GLOB_DAT:
- case R_CRIS_JUMP_SLOT:
- *reloc_addr = value;
- break;
-#ifndef RTLD_BOOTSTRAP
- case R_CRIS_8:
- *(char *) reloc_addr = value;
- break;
- case R_CRIS_16:
- *(short *) reloc_addr = value;
- break;
- case R_CRIS_8_PCREL:
- *(char *) reloc_addr
- = value + reloc->r_addend - (Elf32_Addr) reloc_addr - 1;
- break;
- case R_CRIS_16_PCREL:
- *(short *) reloc_addr
- = value + reloc->r_addend - (Elf32_Addr) reloc_addr - 2;
- break;
- case R_CRIS_32_PCREL:
- *reloc_addr = value + reloc->r_addend - (Elf32_Addr) reloc_addr - 4;
- break;
-#endif
- case R_CRIS_NONE:
- break;
-#if !defined RTLD_BOOTSTRAP || defined _NDEBUG
- default:
- _dl_reloc_bad_type (map, r_type, 0);
- break;
-#endif
- }
- }
-}
-
-static inline void
-elf_machine_rela_relative (Elf32_Addr l_addr, const Elf32_Rela *reloc,
- void *const reloc_addr_arg)
-{
- Elf32_Addr *const reloc_addr = reloc_addr_arg;
- *reloc_addr = l_addr + reloc->r_addend;
-}
-
-static inline void
-elf_machine_lazy_rel (struct link_map *map,
- Elf32_Addr l_addr, const Elf32_Rela *reloc)
-{
- Elf32_Addr *const reloc_addr = (void *) (l_addr + reloc->r_offset);
- const unsigned int r_type = ELF32_R_TYPE (reloc->r_info);
- if (__builtin_expect (r_type == R_CRIS_JUMP_SLOT, 1))
- *reloc_addr += l_addr;
- else
- _dl_reloc_bad_type (map, r_type, 1);
-}
-
-#endif /* RESOLVE */
diff --git a/sysdeps/cris/elf/start.S b/sysdeps/cris/elf/start.S
deleted file mode 100644
index a3f85bcd01..0000000000
--- a/sysdeps/cris/elf/start.S
+++ /dev/null
@@ -1,141 +0,0 @@
-/* Startup code compliant to the ELF CRIS ABI (to-be-written).
- Copyright (C) 2001, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- In addition to the permissions in the GNU Lesser General Public
- License, the Free Software Foundation gives you unlimited
- permission to link the compiled version of this file with other
- programs, and to distribute those programs without any restriction
- coming from the use of this file. (The GNU Lesser General Public
- License restrictions do apply in other respects; for example, they
- cover modification of the file, and distribution when not linked
- into another program.)
-
- Note that people who make modified versions of this file are not
- obligated to grant this special exception for their modified
- versions; it is their choice whether to do so. The GNU Lesser
- General Public License gives permission to release a modified
- version without this exception; this exception also makes it
- possible to release a modified version which carries forward this
- exception.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-/* This is the canonical entry point, usually the first thing in the text
- segment. When the entry point runs, most registers' values are
- unspecified, except for:
-
- R10 Contains a function pointer to be registered with `atexit'.
- This is how the dynamic linker arranges to have DT_FINI
- functions called for shared libraries that have been loaded
- before this code runs.
-
- SP The stack contains the arguments and environment:
- [SP] argc
- [SP+4] argv[0]
- ...
- [SP+4*argc] NULL
- [SP+4*(argc+1)] envp[0]
- ...
- NULL
-*/
-
- .syntax no_register_prefix
-
- .text
- .globl _start
- .type _start,@function
-_start:
- /* Clear the frame pointer, to mark the outermost frame. */
- moveq 0,r8
-
- /* Move the shared library termination function to the right place
- for __libc_main. */
- move.d r10,r9
-
- /* Extract the arguments as encoded on the stack and set up the
- arguments for `main': argc, argv. envp will be determined
- later in __libc_start_main. */
-
- /* Get the argument count. */
- move.d [sp],r11
-
- /* Store the stack pointer as end of stack. We overwrite
- the incoming argc. */
- move.d sp,[sp]
-
- /* The argument vector starts just after the argument count. */
- move.d sp,r12
- addq 4,r12
-
- /* There are seven arguments to __libc_start_main:
- r10: main - Address of it.
- r11: argc
- r12: argv
- r13: init - Function to call.
-
- [sp]: fini - Function to register with atexit.
- [sp+4]: rtld_fini - Another function to register with atexit.
- [sp+8]: stack_end - Top of stack (actually same as argv).
-
- The last two are passed on stack. */
-
- /* Store the fini function coming from the dynamic loader. */
- push r9
-
- /* Get the addresses of our own entry points to `.fini' and
- `.init'. */
-
-#ifdef __PIC__
- /* If for some reason this program is compiled as PIC, set up R0. */
- move.d pc,r0
- sub.d .:GOTOFF,r0
-
- move.d __libc_csu_init:PLTG,r13
- add.d r0,r13
- move.d __libc_csu_fini:PLTG,r9
- add.d r0,r9
- move.d main:PLTG,r10
- add.d r0,r10
-#else
- move.d __libc_csu_init,r13
- move.d __libc_csu_fini,r9
- move.d main,r10
-#endif
- push r9
-
- /* Call the user's main function, and exit with its value. But
- let the libc call main. */
- PLTCALL (__libc_start_main)
-
- /* Crash if somehow `exit' does return. We have at least 8192
- invalid addresses to choose from. */
- test.d [6502]
-
- /* Stop the unstoppable. */
-0:
- ba 0b
- nop
-
-/* Define a symbol for the first piece of initialized data. */
- .data
- .globl __data_start
-__data_start:
- .long 0
- .weak data_start
- data_start = __data_start
diff --git a/sysdeps/cris/machine-gmon.h b/sysdeps/cris/machine-gmon.h
deleted file mode 100644
index 2f36a34d67..0000000000
--- a/sysdeps/cris/machine-gmon.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/* PowerPC-specific implementation of profiling support.
- Copyright (C) 1997, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-void __mcount_internal (unsigned long frompc, unsigned long selfpc);
-
-#define _MCOUNT_DECL(frompc, selfpc) \
-void __mcount_internal (unsigned long frompc, unsigned long selfpc)
-
-
-/* Define MCOUNT as empty since we have the implementation in another
- file. FIXME: Just stubs, currently. */
-#define MCOUNT
diff --git a/sysdeps/cris/memcopy.h b/sysdeps/cris/memcopy.h
deleted file mode 100644
index 134d361217..0000000000
--- a/sysdeps/cris/memcopy.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdeps/generic/memcopy.h>
-
-/* We override the word-copying macros, partly because misalignment in one
- pointer isn't cause for a special function, partly because we want to
- get rid of wordcopy.c; these macros are only used in memmove.c (and
- it's sibling bcopy) since we have arch-specific mempcpy, memcpy and
- memset. */
-
-#undef OP_T_THRES
-#define OP_T_THRES OPSIZ
-
-#define WORD_COPY_FWD(dst_bp, src_bp, nbytes_left, nbytes) \
- do \
- { \
- unsigned long enddst_bp = dst_bp + nbytes - (nbytes % OPSIZ); \
- nbytes_left = (nbytes % OPSIZ); \
- while (dst_bp < (unsigned long) enddst_bp) \
- { \
- op_t x = *(op_t *) src_bp; \
- src_bp += sizeof x; \
- *(op_t *) dst_bp = x; \
- dst_bp += sizeof x; \
- } \
- } while (0)
-
-#define WORD_COPY_BWD(dst_bp, src_bp, nbytes_left, nbytes) \
- do \
- { \
- unsigned long enddst_bp = dst_bp - nbytes + (nbytes % OPSIZ); \
- nbytes_left = (nbytes % OPSIZ); \
- while (dst_bp > enddst_bp) \
- { \
- op_t x; \
- src_bp -= sizeof x; \
- x = *(op_t *) src_bp; \
- dst_bp -= sizeof x; \
- *(op_t *) dst_bp = x; \
- } \
- } while (0)
diff --git a/sysdeps/cris/memusage.h b/sysdeps/cris/memusage.h
deleted file mode 100644
index 58b57ff370..0000000000
--- a/sysdeps/cris/memusage.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* No asm variables, just for reasons of solid healthy paranoia. */
-#define GETSP() \
- ({ \
- uintptr_t stack_ptr; \
- __asm__ ("move.d $sp,%0" : "=rm" (stack_ptr)); \
- stack_ptr; \
- })
-
-#include <sysdeps/generic/memusage.h>
diff --git a/sysdeps/cris/setjmp.S b/sysdeps/cris/setjmp.S
deleted file mode 100644
index c5a512f49b..0000000000
--- a/sysdeps/cris/setjmp.S
+++ /dev/null
@@ -1,66 +0,0 @@
-/* setjmp for CRIS.
- Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-#define _SETJMP_H
-#define _ASM
-#include <bits/setjmp.h>
-
- .syntax no_register_prefix
-
-ENTRY (__sigsetjmp)
-.Local__sigsetjmp:
- moveq 1,r9
- movem sp,[r10+1*4]
-#ifdef __PIC__
- move.d pc,r9
- addq 0f-.,r9
-#else
- move.d 0f,r9
-#endif
- move.d r9,[r10]
- move srp,[r10+16*4]
- move ccr,[r10+17*4]
- PLTJUMP (__sigjmp_save)
-0: /* This is where longjmp returns. (Don't use "ret" - it's a macro. */
- Ret
- move.d r9,r10
-END (__sigsetjmp)
-
-/* Binary compatibility entry points. Having these in separate files
- is not meaningful and just adds library overhead. */
-
-ENTRY (__setjmp)
- ba .Local__sigsetjmp
- moveq 0,r11
-END (__setjmp)
-
-ENTRY (_setjmp)
- ba .Local__sigsetjmp
- moveq 0,r11
-END (_setjmp)
-
-ENTRY (setjmp)
- ba .Local__sigsetjmp
- moveq 1,r11
-END (setjmp)
-
-weak_extern (__setjmp)
-weak_extern (_setjmp)
-weak_extern (setjmp)
diff --git a/sysdeps/cris/stackinfo.h b/sysdeps/cris/stackinfo.h
deleted file mode 100644
index 43c944834f..0000000000
--- a/sysdeps/cris/stackinfo.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright (C) 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* This file contains a bit of information about the stack allocation
- of the processor. */
-
-#ifndef _STACKINFO_H
-#define _STACKINFO_H 1
-
-/* On cris the stack grows down. */
-#define _STACK_GROWS_DOWN 1
-
-#endif /* stackinfo.h */
diff --git a/sysdeps/cris/sysdep.h b/sysdeps/cris/sysdep.h
deleted file mode 100644
index 913d5ad9b7..0000000000
--- a/sysdeps/cris/sysdep.h
+++ /dev/null
@@ -1,114 +0,0 @@
-/* Assembler macros for CRIS.
- Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdeps/generic/sysdep.h>
-
-#ifndef HAVE_ELF
-# error ELF is assumed. Generalize the code and retry.
-#endif
-
-#ifndef NO_UNDERSCORES
-# error User-label prefix (underscore) assumed absent. Generalize the code and retry.
-#endif
-
-#ifdef __ASSEMBLER__
-
-/* Syntactic details of assembly-code. */
-
-/* It is *not* generally true that "ELF uses byte-counts for .align, most
- others use log2 of count of bytes", like some neighboring configs say.
- See "align" in gas/read.c which is not overridden by
- gas/config/obj-elf.c. It takes a log2 argument. *Some* targets
- override it to take a byte argument. People should read source instead
- of relying on hearsay. */
-# define ALIGNARG(log2) log2
-
-# define ASM_TYPE_DIRECTIVE(name,typearg) .type name,typearg
-# define ASM_SIZE_DIRECTIVE(name) .size name,.-name
-
-/* The non-PIC jump is preferred, since it does not stall, and does not
- invoke generation of a PLT. These macros assume that $r0 is set up as
- GOT register. */
-# ifdef __PIC__
-# define PLTJUMP(_x) \
- add.d C_SYMBOL_NAME (_x):PLT,$pc
-
-# define PLTCALL(_x) \
- move.d C_SYMBOL_NAME (_x):PLTG,$r9 @ \
- add.d $r0,$r9 @ \
- jsr $r9
-
-# define SETUP_PIC \
- push $r0 @ \
- move.d $pc,$r0 @ \
- sub.d .:GOTOFF,$r0
-
-# define TEARDOWN_PIC pop $r0
-# else
-# define PLTJUMP(_x) jump C_SYMBOL_NAME (_x)
-# define PLTCALL(_x) jsr C_SYMBOL_NAME (_x)
-# define SETUP_PIC
-# define TEARDOWN_PIC
-# endif
-
-/* Define an entry point visible from C. */
-# define ENTRY(name) \
- .text @ \
- ASM_GLOBAL_DIRECTIVE C_SYMBOL_NAME (name) @ \
- ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME (name), function) @ \
- .align ALIGNARG (2) @ \
- C_LABEL(name) @ \
- CALL_MCOUNT
-
-# undef END
-# define END(name) \
- ASM_SIZE_DIRECTIVE (C_SYMBOL_NAME (name))
-
-/* If compiled for profiling, call `mcount' at the start of each function.
- FIXME: Note that profiling is not actually implemented. This is just
- example code which might not even compile, though it is believed to be
- correct. */
-# ifdef PROF
-# define CALL_MCOUNT \
- push $srp @ \
- push $r9 @ \
- push $r10 @ \
- push $r11 @ \
- push $r12 @ \
- push $r13 @ \
- SETUP_PIC @ \
- PLTCALL (mcount) @ \
- TEARDOWN_PIC @ \
- pop $r13 @ \
- pop $r12 @ \
- pop $r11 @ \
- pop $r10 @ \
- pop $r9 @ \
- pop $srp
-# else
-# define CALL_MCOUNT /* Do nothing. */
-# endif
-
-/* Since C identifiers are not normally prefixed with an underscore
- on this system, the asm identifier `syscall_error' intrudes on the
- C name space. Make sure we use an innocuous name. */
-# define syscall_error __syscall_error
-# define mcount _mcount
-
-#endif /* __ASSEMBLER__ */
diff --git a/sysdeps/cris/wordcopy.c b/sysdeps/cris/wordcopy.c
deleted file mode 100644
index 6525e9f035..0000000000
--- a/sysdeps/cris/wordcopy.c
+++ /dev/null
@@ -1 +0,0 @@
-/* Empty; not needed. */
diff --git a/sysdeps/hppa/configure b/sysdeps/hppa/configure
new file mode 100755
index 0000000000..07bde0e0ee
--- /dev/null
+++ b/sysdeps/hppa/configure
@@ -0,0 +1,34 @@
+# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+
+hppa*linux*)
+echo "$as_me:$LINENO: checking for assembler line separator" >&5
+echo $ECHO_N "checking for assembler line separator... $ECHO_C" >&6
+if test "${libc_cv_asm_line_sep+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat > conftest.s <<EOF
+nop ; is_old_puffin
+EOF
+if { ac_try='${CC-cc} -c $ASFLAGS conftest.s 1>&5'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ libc_cv_asm_line_sep='!'
+else
+ if test -z "$enable_hacker_mode"; then
+ echo "*** You need a newer assembler to compile glibc"
+ rm -f conftest*
+ exit 1
+ fi
+ libc_cv_asm_line_sep=';'
+fi
+rm -f conftest*
+fi
+echo "$as_me:$LINENO: result: $libc_cv_asm_line_sep" >&5
+echo "${ECHO_T}$libc_cv_asm_line_sep" >&6
+cat >>confdefs.h <<_ACEOF
+#define ASM_LINE_SEP $libc_cv_asm_line_sep
+_ACEOF
+
diff --git a/sysdeps/hppa/configure.in b/sysdeps/hppa/configure.in
new file mode 100644
index 0000000000..1ec6780835
--- /dev/null
+++ b/sysdeps/hppa/configure.in
@@ -0,0 +1,22 @@
+GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
+
+dnl The standard hppa assembler uses `;' to start comments and `!'
+dnl as a line separator.
+hppa*linux*)
+AC_CACHE_CHECK(for assembler line separator,
+ libc_cv_asm_line_sep, [dnl
+cat > conftest.s <<EOF
+nop ; is_old_puffin
+EOF
+if AC_TRY_COMMAND(${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
+ libc_cv_asm_line_sep='!'
+else
+ if test -z "$enable_hacker_mode"; then
+ echo "*** You need a newer assembler to compile glibc"
+ rm -f conftest*
+ exit 1
+ fi
+ libc_cv_asm_line_sep=';'
+fi
+rm -f conftest*])
+AC_DEFINE_UNQUOTED(ASM_LINE_SEP, $libc_cv_asm_line_sep)
diff --git a/sysdeps/i386/Makefile b/sysdeps/i386/Makefile
index fb14806029..52faaa3109 100644
--- a/sysdeps/i386/Makefile
+++ b/sysdeps/i386/Makefile
@@ -21,6 +21,10 @@ CFLAGS-dl-load.c += -Wno-unused
CFLAGS-dl-reloc.c += -Wno-unused
endif
+ifeq ($(subdir),debug)
+CFLAGS-backtrace.c += -fexceptions
+endif
+
# Most of the glibc routines don't ever call user defined callbacks
# nor use any FPU or SSE* and as such don't need bigger %esp alignment
# than 4 bytes.
diff --git a/sysdeps/i386/backtrace.c b/sysdeps/i386/backtrace.c
index 10ff44d11d..cb7530396b 100644
--- a/sysdeps/i386/backtrace.c
+++ b/sysdeps/i386/backtrace.c
@@ -1,5 +1,5 @@
/* Return backtrace of current program state.
- Copyright (C) 1998, 2000 Free Software Foundation, Inc.
+ Copyright (C) 1998, 2000, 2003, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
@@ -18,8 +18,64 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
+#include <bits/libc-lock.h>
+#include <dlfcn.h>
#include <execinfo.h>
-#include <bp-checks.h>
+#include <stdlib.h>
+#include <unwind.h>
+
+struct trace_arg
+{
+ void **array;
+ int cnt, size;
+ void *lastebp, *lastesp;
+};
+
+#ifdef SHARED
+static _Unwind_Reason_Code (*unwind_backtrace) (_Unwind_Trace_Fn, void *);
+static _Unwind_Ptr (*unwind_getip) (struct _Unwind_Context *);
+static _Unwind_Ptr (*unwind_getcfa) (struct _Unwind_Context *);
+static _Unwind_Ptr (*unwind_getgr) (struct _Unwind_Context *, int);
+
+static void
+init (void)
+{
+ void *handle = __libc_dlopen ("libgcc_s.so.1");
+
+ if (handle == NULL)
+ return;
+
+ unwind_backtrace = __libc_dlsym (handle, "_Unwind_Backtrace");
+ unwind_getip = __libc_dlsym (handle, "_Unwind_GetIP");
+ unwind_getcfa = __libc_dlsym (handle, "_Unwind_GetCFA");
+ unwind_getgr = __libc_dlsym (handle, "_Unwind_GetGR");
+ if (unwind_getip == NULL || unwind_getgr == NULL || unwind_getcfa == NULL)
+ unwind_backtrace = NULL;
+}
+#else
+# define unwind_backtrace _Unwind_Backtrace
+# define unwind_getip _Unwind_GetIP
+# define unwind_getcfa _Unwind_GetCFA
+# define unwind_getgr _Unwind_GetGR
+#endif
+
+static _Unwind_Reason_Code
+backtrace_helper (struct _Unwind_Context *ctx, void *a)
+{
+ struct trace_arg *arg = a;
+
+ /* We are first called with address in the __backtrace function.
+ Skip it. */
+ if (arg->cnt != -1)
+ arg->array[arg->cnt] = (void *) unwind_getip (ctx);
+ if (++arg->cnt == arg->size)
+ return _URC_END_OF_STACK;
+
+ /* %ebp is DWARF2 register 5 on IA-32. */
+ arg->lastebp = (void *) unwind_getgr (ctx, 5);
+ arg->lastesp = (void *) unwind_getcfa (ctx);
+ return _URC_NO_REASON;
+}
/* This is a global variable set at program start time. It marks the
@@ -27,46 +83,61 @@
extern void *__libc_stack_end;
-/* This is the stack alyout we see with every stack frame.
+/* This is the stack layout we see with every stack frame
+ if not compiled without frame pointer.
+-----------------+ +-----------------+
%ebp -> | %ebp last frame--------> | %ebp last frame--->...
| | | |
| return address | | return address |
+-----------------+ +-----------------+
-*/
+
+ First try as far to get as far as possible using
+ _Unwind_Backtrace which handles -fomit-frame-pointer
+ as well, but requires .eh_frame info. Then fall back to
+ walking the stack manually. */
+
struct layout
{
- struct layout *__unbounded next;
- void *__unbounded return_address;
+ struct layout *ebp;
+ void *ret;
};
+
int
__backtrace (array, size)
void **array;
int size;
{
- /* We assume that all the code is generated with frame pointers set. */
- register void *ebp __asm__ ("ebp");
- register void *esp __asm__ ("esp");
- struct layout *current;
- int cnt = 0;
-
- /* We skip the call to this function, it makes no sense to record it. */
- current = BOUNDED_1 ((struct layout *) ebp);
- while (cnt < size)
+ struct trace_arg arg = { .array = array, .size = size, .cnt = -1 };
+#ifdef SHARED
+ __libc_once_define (static, once);
+
+ __libc_once (once, init);
+ if (unwind_backtrace == NULL)
+ return 0;
+#endif
+
+ if (size >= 1)
+ unwind_backtrace (backtrace_helper, &arg);
+
+ if (arg.cnt > 1 && arg.array[arg.cnt - 1] == NULL)
+ --arg.cnt;
+ else if (arg.cnt < size)
{
- if ((void *) current < esp || (void *) current > __libc_stack_end)
- /* This means the address is out of range. Note that for the
- toplevel we see a frame pointer with value NULL which clearly is
- out of range. */
- break;
+ struct layout *ebp = (struct layout *) arg.lastebp;
- array[cnt++] = current->return_address;
+ while (arg.cnt < size)
+ {
+ /* Check for out of range. */
+ if ((void *) ebp < arg.lastesp || (void *) ebp > __libc_stack_end
+ || ((long) ebp & 3))
+ break;
- current = current->next;
+ array[arg.cnt++] = ebp->ret;
+ ebp = ebp->ebp;
+ }
}
-
- return cnt;
+ return arg.cnt != -1 ? arg.cnt : 0;
}
weak_alias (__backtrace, backtrace)
diff --git a/sysdeps/i860/memcopy.h b/sysdeps/i860/memcopy.h
deleted file mode 100644
index 3bb9ba5138..0000000000
--- a/sysdeps/i860/memcopy.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright (C) 1991, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdeps/generic/memcopy.h>
-
-#if 0
-#undef MERGE
-/* In order to make this work properly, an 's' constraint need to be added
- to tm-i860.h, to mean the SC register. */
-#define MERGE(w0, sh_1, w1, sh_2) \
- ({ \
- unsigned int __merge; \
- asm("shrd %2,%1,%0" : \
- "=r" (__merge) : \
- "r" (w0), "r" (w1), "s" (sh_1)); \
- __merge; \
- })
-#endif
diff --git a/sysdeps/i960/Implies b/sysdeps/i960/Implies
deleted file mode 100644
index 1d569744ab..0000000000
--- a/sysdeps/i960/Implies
+++ /dev/null
@@ -1,3 +0,0 @@
-# i960 family uses IEEE 754 floating point.
-ieee754/flt-32
-ieee754/dbl-64
diff --git a/sysdeps/i960/add_n.s b/sysdeps/i960/add_n.s
deleted file mode 100644
index 6031f6d4c3..0000000000
--- a/sysdeps/i960/add_n.s
+++ /dev/null
@@ -1,21 +0,0 @@
-.text
- .align 4
- .globl ___mpn_add_n
-___mpn_add_n:
- mov 0,g6 # clear carry-save register
- cmpo 1,0 # clear cy
-
-Loop: subo 1,g3,g3 # update loop counter
- ld (g1),g5 # load from s1_ptr
- addo 4,g1,g1 # s1_ptr++
- ld (g2),g4 # load from s2_ptr
- addo 4,g2,g2 # s2_ptr++
- cmpo g6,1 # restore cy from g6, relies on cy being 0
- addc g4,g5,g4 # main add
- subc 0,0,g6 # save cy in g6
- st g4,(g0) # store result to res_ptr
- addo 4,g0,g0 # res_ptr++
- cmpobne 0,g3,Loop # when branch is taken, clears C bit
-
- mov g6,g0
- ret
diff --git a/sysdeps/i960/addmul_1.s b/sysdeps/i960/addmul_1.s
deleted file mode 100644
index 1a3de95e50..0000000000
--- a/sysdeps/i960/addmul_1.s
+++ /dev/null
@@ -1,26 +0,0 @@
-.text
- .align 4
- .globl ___mpn_mul_1
-___mpn_mul_1:
- subo g2,0,g2
- shlo 2,g2,g4
- subo g4,g1,g1
- subo g4,g0,g13
- mov 0,g0
-
- cmpo 1,0 # clear C bit on AC.cc
-
-Loop: ld (g1)[g2*4],g5
- emul g3,g5,g6
- ld (g13)[g2*4],g5
-
- addc g0,g6,g6 # relies on that C bit is clear
- addc 0,g7,g7
- addc g5,g6,g6 # relies on that C bit is clear
- st g6,(g13)[g2*4]
- addc 0,g7,g0
-
- addo g2,1,g2
- cmpobne 0,g2,Loop # when branch is taken, clears C bit
-
- ret
diff --git a/sysdeps/i960/ffs.c b/sysdeps/i960/ffs.c
deleted file mode 100644
index ad907a4ecb..0000000000
--- a/sysdeps/i960/ffs.c
+++ /dev/null
@@ -1,46 +0,0 @@
-/* ffs -- find first set bit in a word, counted from least significant end.
- For i960 Core architecture
- This file is part of the GNU C Library.
- Copyright (C) 1994, 1997, 2004 Free Software Foundation, Inc.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <string.h>
-
-#undef ffs
-
-#if defined (__GNUC__) && defined (__i960__)
-
-int
-__ffs (x)
- int x;
-{
- int cnt;
-
- asm ("scanbit %1,%0" : "=d" (cnt) : "rm" (x & -x));
-
- return cnt;
-}
-weak_alias (__ffs, ffs)
-libc_hidden_builtin_def (ffs)
-
-#else
-
-#include <sysdeps/generic/ffs.c>
-
-#endif
diff --git a/sysdeps/i960/mul_1.s b/sysdeps/i960/mul_1.s
deleted file mode 100644
index e75ea42d39..0000000000
--- a/sysdeps/i960/mul_1.s
+++ /dev/null
@@ -1,23 +0,0 @@
-.text
- .align 4
- .globl ___mpn_mul_1
-___mpn_mul_1:
- subo g2,0,g2
- shlo 2,g2,g4
- subo g4,g1,g1
- subo g4,g0,g13
- mov 0,g0
-
- cmpo 1,0 # clear C bit on AC.cc
-
-Loop: ld (g1)[g2*4],g5
- emul g3,g5,g6
-
- addc g0,g6,g6 # relies on that C bit is clear
- st g6,(g13)[g2*4]
- addc 0,g7,g0
-
- addo g2,1,g2
- cmpobne 0,g2,Loop # when branch is taken, clears C bit
-
- ret
diff --git a/sysdeps/i960/sub_n.s b/sysdeps/i960/sub_n.s
deleted file mode 100644
index 13ebbfa9f2..0000000000
--- a/sysdeps/i960/sub_n.s
+++ /dev/null
@@ -1,21 +0,0 @@
-.text
- .align 4
- .globl ___mpn_sub_n
-___mpn_sub_n:
- mov 1,g6 # set carry-save register
- cmpo 1,0 # clear cy
-
-Loop: subo 1,g3,g3 # update loop counter
- ld (g1),g5 # load from s1_ptr
- addo 4,g1,g1 # s1_ptr++
- ld (g2),g4 # load from s2_ptr
- addo 4,g2,g2 # s2_ptr++
- cmpo g6,1 # restore cy from g6, relies on cy being 0
- subc g4,g5,g4 # main subtract
- subc 0,0,g6 # save cy in g6
- st g4,(g0) # store result to res_ptr
- addo 4,g0,g0 # res_ptr++
- cmpobne 0,g3,Loop # when branch is taken, cy will be 0
-
- mov g6,g0
- ret
diff --git a/sysdeps/m68k/dl-machine.h b/sysdeps/m68k/dl-machine.h
index e52893889d..146c5866a9 100644
--- a/sysdeps/m68k/dl-machine.h
+++ b/sysdeps/m68k/dl-machine.h
@@ -223,7 +223,7 @@ elf_machine_plt_value (struct link_map *map, const Elf32_Rela *reloc,
/* Perform the relocation specified by RELOC and SYM (which is fully resolved).
MAP is the object containing the reloc. */
-static inline void __attribute__ ((always_inline))
+auto inline void __attribute__ ((unused, always_inline))
elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc,
const Elf32_Sym *sym, const struct r_found_version *version,
void *const reloc_addr_arg)
@@ -294,7 +294,7 @@ elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc,
}
}
-static inline void
+auto inline void __attribute__ ((unused, always_inline))
elf_machine_rela_relative (Elf32_Addr l_addr, const Elf32_Rela *reloc,
void *const reloc_addr_arg)
{
@@ -302,7 +302,7 @@ elf_machine_rela_relative (Elf32_Addr l_addr, const Elf32_Rela *reloc,
*reloc_addr = l_addr + reloc->r_addend;
}
-static inline void
+auto inline void __attribute__ ((unused, always_inline))
elf_machine_lazy_rel (struct link_map *map,
Elf32_Addr l_addr, const Elf32_Rela *reloc)
{
diff --git a/sysdeps/m88k/add_n.s b/sysdeps/m88k/add_n.s
deleted file mode 100644
index a10730d7c4..0000000000
--- a/sysdeps/m88k/add_n.s
+++ /dev/null
@@ -1,104 +0,0 @@
-; mc88100 __mpn_add -- Add two limb vectors of the same length > 0 and store
-; sum in a third limb vector.
-
-; Copyright (C) 1992, 1994, 1995 Free Software Foundation, Inc.
-
-; This file is part of the GNU MP Library.
-
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Lesser General Public License as published by
-; the Free Software Foundation; either version 2.1 of the License, or (at your
-; option) any later version.
-
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-; License for more details.
-
-; You should have received a copy of the GNU Lesser General Public License
-; along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-; MA 02111-1307, USA.
-
-
-; INPUT PARAMETERS
-; res_ptr r2
-; s1_ptr r3
-; s2_ptr r4
-; size r5
-
-; This code has been optimized to run one instruction per clock, avoiding
-; load stalls and writeback contention. As a result, the instruction
-; order is not always natural.
-
-; The speed is about 4.6 clocks/limb + 18 clocks/limb-vector on an 88100,
-; but on the 88110, it seems to run much slower, 6.6 clocks/limb.
-
- text
- align 16
- global ___mpn_add_n
-___mpn_add_n:
- ld r6,r3,0 ; read first limb from s1_ptr
- extu r10,r5,3
- ld r7,r4,0 ; read first limb from s2_ptr
-
- subu.co r5,r0,r5 ; (clear carry as side effect)
- mak r5,r5,3<4>
- bcnd eq0,r5,Lzero
-
- or r12,r0,lo16(Lbase)
- or.u r12,r12,hi16(Lbase)
- addu r12,r12,r5 ; r12 is address for entering in loop
-
- extu r5,r5,2 ; divide by 4
- subu r2,r2,r5 ; adjust res_ptr
- subu r3,r3,r5 ; adjust s1_ptr
- subu r4,r4,r5 ; adjust s2_ptr
-
- or r8,r6,r0
-
- jmp.n r12
- or r9,r7,r0
-
-Loop: addu r3,r3,32
- st r8,r2,28
- addu r4,r4,32
- ld r6,r3,0
- addu r2,r2,32
- ld r7,r4,0
-Lzero: subu r10,r10,1 ; add 0 + 8r limbs (adj loop cnt)
-Lbase: ld r8,r3,4
- addu.cio r6,r6,r7
- ld r9,r4,4
- st r6,r2,0
- ld r6,r3,8 ; add 7 + 8r limbs
- addu.cio r8,r8,r9
- ld r7,r4,8
- st r8,r2,4
- ld r8,r3,12 ; add 6 + 8r limbs
- addu.cio r6,r6,r7
- ld r9,r4,12
- st r6,r2,8
- ld r6,r3,16 ; add 5 + 8r limbs
- addu.cio r8,r8,r9
- ld r7,r4,16
- st r8,r2,12
- ld r8,r3,20 ; add 4 + 8r limbs
- addu.cio r6,r6,r7
- ld r9,r4,20
- st r6,r2,16
- ld r6,r3,24 ; add 3 + 8r limbs
- addu.cio r8,r8,r9
- ld r7,r4,24
- st r8,r2,20
- ld r8,r3,28 ; add 2 + 8r limbs
- addu.cio r6,r6,r7
- ld r9,r4,28
- st r6,r2,24
- bcnd.n ne0,r10,Loop ; add 1 + 8r limbs
- addu.cio r8,r8,r9
-
- st r8,r2,28 ; store most significant limb
-
- jmp.n r1
- addu.ci r2,r0,r0 ; return carry-out from most sign. limb
diff --git a/sysdeps/m88k/ffs.c b/sysdeps/m88k/ffs.c
deleted file mode 100644
index b7db70fd3b..0000000000
--- a/sysdeps/m88k/ffs.c
+++ /dev/null
@@ -1,45 +0,0 @@
-/* ffs -- find first set bit in a word, counted from least significant end.
- For Motorola 88000.
- This file is part of the GNU C Library.
- Copyright (C) 1991, 1992, 1997, 2004 Free Software Foundation, Inc.
- Contributed by Torbjorn Granlund (tege@sics.se).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <bstring.h>
-
-#undef ffs
-
-#ifdef __GNUC__
-
-int
-__ffs (x)
- int x;
-{
- int cnt;
-
- if (x == 0)
- return 0;
-
- asm ("ff1 %0,%1" : "=r" (cnt) : "r" (x & -x));
- return cnt + 1;
-}
-weak_alias (__ffs, ffs)
-libc_hidden_builtin_def (ffs)
-
-#else
-#include <sysdeps/generic/ffs.c>
-#endif
diff --git a/sysdeps/m88k/m88100/add_n.S b/sysdeps/m88k/m88100/add_n.S
deleted file mode 100644
index 2107eb55cb..0000000000
--- a/sysdeps/m88k/m88100/add_n.S
+++ /dev/null
@@ -1,133 +0,0 @@
-; mc88100 __mpn_add -- Add two limb vectors of the same length > 0 and store
-; sum in a third limb vector.
-
-; Copyright (C) 1992, 1994 Free Software Foundation, Inc.
-
-; This file is part of the GNU MP Library.
-
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU General Public License as published by
-; the Free Software Foundation; either version 2, or (at your option)
-; any later version.
-
-; The GNU MP Library is distributed in the hope that it will be useful,
-; but WITHOUT ANY WARRANTY; without even the implied warranty of
-; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-; GNU General Public License for more details.
-
-; You should have received a copy of the GNU General Public License
-; along with the GNU MP Library; see the file COPYING. If not, write to
-; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
-
-
-; INPUT PARAMETERS
-; res_ptr r2
-; s1_ptr r3
-; s2_ptr r4
-; size r5
-
-; This code has been optimized to run one instruction per clock, avoiding
-; load stalls and writeback contention. As a result, the instruction
-; order is not always natural.
-
-; The speed is approximately 4.3 clocks/limb + 18 clocks/limb-vector.
-
-#include "sysdep.h"
-
-ENTRY (__mpn_add_n)
- ld r6,r3,0 ; read first limb from s1_ptr
- extu r10,r5,4
- ld r7,r4,0 ; read first limb from s2_ptr
-
- subu.co r5,r0,r5 ; (clear carry as side effect)
- mak r5,r5,4<4>
- bcnd eq0,r5,Lzero
-
- or r12,r0,lo16(Lbase)
- or.u r12,r12,hi16(Lbase)
- addu r12,r12,r5 ; r12 is address for entering in loop
-
- extu r5,r5,2 ; divide by 4
- subu r2,r2,r5 ; adjust res_ptr
- subu r3,r3,r5 ; adjust s1_ptr
- subu r4,r4,r5 ; adjust s2_ptr
-
- or r8,r6,r0
-
- jmp.n r12
- or r9,r7,r0
-
-Loop: addu r3,r3,64
- st r8,r2,60
- addu r4,r4,64
- ld r6,r3,0
- addu r2,r2,64
- ld r7,r4,0
-Lzero: subu r10,r10,1 ; add 0 + 16r limbs (adjust loop counter)
-Lbase: ld r8,r3,4
- addu.cio r6,r6,r7
- ld r9,r4,4
- st r6,r2,0
- ld r6,r3,8 ; add 15 + 16r limbs
- addu.cio r8,r8,r9
- ld r7,r4,8
- st r8,r2,4
- ld r8,r3,12 ; add 14 + 16r limbs
- addu.cio r6,r6,r7
- ld r9,r4,12
- st r6,r2,8
- ld r6,r3,16 ; add 13 + 16r limbs
- addu.cio r8,r8,r9
- ld r7,r4,16
- st r8,r2,12
- ld r8,r3,20 ; add 12 + 16r limbs
- addu.cio r6,r6,r7
- ld r9,r4,20
- st r6,r2,16
- ld r6,r3,24 ; add 11 + 16r limbs
- addu.cio r8,r8,r9
- ld r7,r4,24
- st r8,r2,20
- ld r8,r3,28 ; add 10 + 16r limbs
- addu.cio r6,r6,r7
- ld r9,r4,28
- st r6,r2,24
- ld r6,r3,32 ; add 9 + 16r limbs
- addu.cio r8,r8,r9
- ld r7,r4,32
- st r8,r2,28
- ld r8,r3,36 ; add 8 + 16r limbs
- addu.cio r6,r6,r7
- ld r9,r4,36
- st r6,r2,32
- ld r6,r3,40 ; add 7 + 16r limbs
- addu.cio r8,r8,r9
- ld r7,r4,40
- st r8,r2,36
- ld r8,r3,44 ; add 6 + 16r limbs
- addu.cio r6,r6,r7
- ld r9,r4,44
- st r6,r2,40
- ld r6,r3,48 ; add 5 + 16r limbs
- addu.cio r8,r8,r9
- ld r7,r4,48
- st r8,r2,44
- ld r8,r3,52 ; add 4 + 16r limbs
- addu.cio r6,r6,r7
- ld r9,r4,52
- st r6,r2,48
- ld r6,r3,56 ; add 3 + 16r limbs
- addu.cio r8,r8,r9
- ld r7,r4,56
- st r8,r2,52
- ld r8,r3,60 ; add 2 + 16r limbs
- addu.cio r6,r6,r7
- ld r9,r4,60
- st r6,r2,56
- bcnd.n ne0,r10,Loop ; add 1 + 16r limbs
- addu.cio r8,r8,r9
-
- st r8,r2,60 ; store most significant limb
-
- jmp.n r1
- addu.ci r2,r0,r0 ; return carry-out from most sign. limb
diff --git a/sysdeps/m88k/m88100/add_n.s b/sysdeps/m88k/m88100/add_n.s
deleted file mode 100644
index 0741ec91de..0000000000
--- a/sysdeps/m88k/m88100/add_n.s
+++ /dev/null
@@ -1,103 +0,0 @@
-; mc88100 __mpn_add -- Add two limb vectors of the same length > 0 and store
-; sum in a third limb vector.
-
-; Copyright (C) 1992, 1994 Free Software Foundation, Inc.
-
-; This file is part of the GNU MP Library.
-
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Lesser General Public License as published by
-; the Free Software Foundation; either version 2.1 of the License, or (at your
-; option) any later version.
-
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-; License for more details.
-
-; You should have received a copy of the GNU Lesser General Public License
-; along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-
-; INPUT PARAMETERS
-; res_ptr r2
-; s1_ptr r3
-; s2_ptr r4
-; size r5
-
-; This code has been optimized to run one instruction per clock, avoiding
-; load stalls and writeback contention. As a result, the instruction
-; order is not always natural.
-
-; The speed is about 4.6 clocks/limb + 18 clocks/limb-vector on an 88100,
-; but on the 88110, it seems to run much slower, 6.6 clocks/limb.
-
- text
- align 16
- global ___mpn_add_n
-___mpn_add_n:
- ld r6,r3,0 ; read first limb from s1_ptr
- extu r10,r5,3
- ld r7,r4,0 ; read first limb from s2_ptr
-
- subu.co r5,r0,r5 ; (clear carry as side effect)
- mak r5,r5,3<4>
- bcnd eq0,r5,Lzero
-
- or r12,r0,lo16(Lbase)
- or.u r12,r12,hi16(Lbase)
- addu r12,r12,r5 ; r12 is address for entering in loop
-
- extu r5,r5,2 ; divide by 4
- subu r2,r2,r5 ; adjust res_ptr
- subu r3,r3,r5 ; adjust s1_ptr
- subu r4,r4,r5 ; adjust s2_ptr
-
- or r8,r6,r0
-
- jmp.n r12
- or r9,r7,r0
-
-Loop: addu r3,r3,32
- st r8,r2,28
- addu r4,r4,32
- ld r6,r3,0
- addu r2,r2,32
- ld r7,r4,0
-Lzero: subu r10,r10,1 ; add 0 + 8r limbs (adj loop cnt)
-Lbase: ld r8,r3,4
- addu.cio r6,r6,r7
- ld r9,r4,4
- st r6,r2,0
- ld r6,r3,8 ; add 7 + 8r limbs
- addu.cio r8,r8,r9
- ld r7,r4,8
- st r8,r2,4
- ld r8,r3,12 ; add 6 + 8r limbs
- addu.cio r6,r6,r7
- ld r9,r4,12
- st r6,r2,8
- ld r6,r3,16 ; add 5 + 8r limbs
- addu.cio r8,r8,r9
- ld r7,r4,16
- st r8,r2,12
- ld r8,r3,20 ; add 4 + 8r limbs
- addu.cio r6,r6,r7
- ld r9,r4,20
- st r6,r2,16
- ld r6,r3,24 ; add 3 + 8r limbs
- addu.cio r8,r8,r9
- ld r7,r4,24
- st r8,r2,20
- ld r8,r3,28 ; add 2 + 8r limbs
- addu.cio r6,r6,r7
- ld r9,r4,28
- st r6,r2,24
- bcnd.n ne0,r10,Loop ; add 1 + 8r limbs
- addu.cio r8,r8,r9
-
- st r8,r2,28 ; store most significant limb
-
- jmp.n r1
- addu.ci r2,r0,r0 ; return carry-out from most sign. limb
diff --git a/sysdeps/m88k/m88100/mul_1.S b/sysdeps/m88k/m88100/mul_1.S
deleted file mode 100644
index 503897b298..0000000000
--- a/sysdeps/m88k/m88100/mul_1.S
+++ /dev/null
@@ -1,127 +0,0 @@
-; mc88100 __mpn_mul_1 -- Multiply a limb vector with a single limb and
-; store the product in a second limb vector.
-
-; Copyright (C) 1992, 1994 Free Software Foundation, Inc.
-
-; This file is part of the GNU MP Library.
-
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU General Public License as published by
-; the Free Software Foundation; either version 2, or (at your option)
-; any later version.
-
-; The GNU MP Library is distributed in the hope that it will be useful,
-; but WITHOUT ANY WARRANTY; without even the implied warranty of
-; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-; GNU General Public License for more details.
-
-; You should have received a copy of the GNU General Public License
-; along with the GNU MP Library; see the file COPYING. If not, write to
-; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
-
-
-; INPUT PARAMETERS
-; res_ptr r2
-; s1_ptr r3
-; size r4
-; s2_limb r5
-
-; Common overhead is about 11 cycles/invocation.
-
-; The speed for S2_LIMB >= 0x10000 is approximately 21 cycles/limb. (The
-; pipeline stalls 2 cycles due to WB contention.)
-
-; The speed for S2_LIMB < 0x10000 is approximately 16 cycles/limb. (The
-; pipeline stalls 2 cycles due to WB contention and 1 cycle due to latency.)
-
-; To enhance speed:
-; 1. Unroll main loop 4-8 times.
-; 2. Schedule code to avoid WB contention. It might be tempting to move the
-; ld instruction in the loops down to save 2 cycles (less WB contention),
-; but that looses because the ultimate value will be read from outside
-; the allocated space. But if we handle the ultimate multiplication in
-; the tail, we can do this.
-; 3. Make the multiplication with less instructions. I think the code for
-; (S2_LIMB >= 0x10000) is not minimal.
-; With these techniques the (S2_LIMB >= 0x10000) case would run in 17 or
-; less cycles/limb; the (S2_LIMB < 0x10000) case would run in 11
-; cycles/limb. (Assuming infinite unrolling.)
-
-#include "sysdep.h"
-
-ENTRY (__mpn_mul_1)
-
- ; Make S1_PTR and RES_PTR point at the end of their blocks
- ; and negate SIZE.
- lda r3,r3[r4]
- lda r6,r2[r4] ; RES_PTR in r6 since r2 is retval
- subu r4,r0,r4
-
- addu.co r2,r0,r0 ; r2 = cy = 0
- ld r9,r3[r4]
- mask r7,r5,0xffff ; r7 = lo(S2_LIMB)
- extu r8,r5,16 ; r8 = hi(S2_LIMB)
- bcnd.n eq0,r8,Lsmall ; jump if (hi(S2_LIMB) == 0)
- subu r6,r6,4
-
-; General code for any value of S2_LIMB.
-
- ; Make a stack frame and save r25 and r26
- subu r31,r31,16
- st.d r25,r31,8
-
- ; Enter the loop in the middle
- br.n L1
- addu r4,r4,1
-
-Loop:
- ld r9,r3[r4]
- st r26,r6[r4]
-; bcnd ne0,r0,0 ; bubble
- addu r4,r4,1
-L1: mul r26,r9,r5 ; low word of product mul_1 WB ld
- mask r12,r9,0xffff ; r12 = lo(s1_limb) mask_1
- mul r11,r12,r7 ; r11 = prod_0 mul_2 WB mask_1
- mul r10,r12,r8 ; r10 = prod_1a mul_3
- extu r13,r9,16 ; r13 = hi(s1_limb) extu_1 WB mul_1
- mul r12,r13,r7 ; r12 = prod_1b mul_4 WB extu_1
- mul r25,r13,r8 ; r25 = prod_2 mul_5 WB mul_2
- extu r11,r11,16 ; r11 = hi(prod_0) extu_2 WB mul_3
- addu r10,r10,r11 ; addu_1 WB extu_2
-; bcnd ne0,r0,0 ; bubble WB addu_1
- addu.co r10,r10,r12 ; WB mul_4
- mask.u r10,r10,0xffff ; move the 16 most significant bits...
- addu.ci r10,r10,r0 ; ...to the low half of the word...
- rot r10,r10,16 ; ...and put carry in pos 16.
- addu.co r26,r26,r2 ; add old carry limb
- bcnd.n ne0,r4,Loop
- addu.ci r2,r25,r10 ; compute new carry limb
-
- st r26,r6[r4]
- ld.d r25,r31,8
- jmp.n r1
- addu r31,r31,16
-
-; Fast code for S2_LIMB < 0x10000
-Lsmall:
- ; Enter the loop in the middle
- br.n SL1
- addu r4,r4,1
-
-SLoop:
- ld r9,r3[r4] ;
- st r8,r6[r4] ;
- addu r4,r4,1 ;
-SL1: mul r8,r9,r5 ; low word of product
- mask r12,r9,0xffff ; r12 = lo(s1_limb)
- extu r13,r9,16 ; r13 = hi(s1_limb)
- mul r11,r12,r7 ; r11 = prod_0
- mul r12,r13,r7 ; r12 = prod_1b
- addu.cio r8,r8,r2 ; add old carry limb
- extu r10,r11,16 ; r11 = hi(prod_0)
- addu r10,r10,r12 ;
- bcnd.n ne0,r4,SLoop
- extu r2,r10,16 ; r2 = new carry limb
-
- jmp.n r1
- st r8,r6[r4]
diff --git a/sysdeps/m88k/m88100/mul_1.s b/sysdeps/m88k/m88100/mul_1.s
deleted file mode 100644
index 77242778d7..0000000000
--- a/sysdeps/m88k/m88100/mul_1.s
+++ /dev/null
@@ -1,128 +0,0 @@
-; mc88100 __mpn_mul_1 -- Multiply a limb vector with a single limb and
-; store the product in a second limb vector.
-
-; Copyright (C) 1992, 1994 Free Software Foundation, Inc.
-
-; This file is part of the GNU MP Library.
-
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Lesser General Public License as published by
-; the Free Software Foundation; either version 2.1 of the License, or (at your
-; option) any later version.
-
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-; License for more details.
-
-; You should have received a copy of the GNU Lesser General Public License
-; along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-
-; INPUT PARAMETERS
-; res_ptr r2
-; s1_ptr r3
-; size r4
-; s2_limb r5
-
-; Common overhead is about 11 cycles/invocation.
-
-; The speed for S2_LIMB >= 0x10000 is approximately 21 cycles/limb. (The
-; pipeline stalls 2 cycles due to WB contention.)
-
-; The speed for S2_LIMB < 0x10000 is approximately 16 cycles/limb. (The
-; pipeline stalls 2 cycles due to WB contention and 1 cycle due to latency.)
-
-; To enhance speed:
-; 1. Unroll main loop 4-8 times.
-; 2. Schedule code to avoid WB contention. It might be tempting to move the
-; ld instruction in the loops down to save 2 cycles (less WB contention),
-; but that looses because the ultimate value will be read from outside
-; the allocated space. But if we handle the ultimate multiplication in
-; the tail, we can do this.
-; 3. Make the multiplication with less instructions. I think the code for
-; (S2_LIMB >= 0x10000) is not minimal.
-; With these techniques the (S2_LIMB >= 0x10000) case would run in 17 or
-; less cycles/limb; the (S2_LIMB < 0x10000) case would run in 11
-; cycles/limb. (Assuming infinite unrolling.)
-
- text
- align 16
- global ___mpn_mul_1
-___mpn_mul_1:
-
- ; Make S1_PTR and RES_PTR point at the end of their blocks
- ; and negate SIZE.
- lda r3,r3[r4]
- lda r6,r2[r4] ; RES_PTR in r6 since r2 is retval
- subu r4,r0,r4
-
- addu.co r2,r0,r0 ; r2 = cy = 0
- ld r9,r3[r4]
- mask r7,r5,0xffff ; r7 = lo(S2_LIMB)
- extu r8,r5,16 ; r8 = hi(S2_LIMB)
- bcnd.n eq0,r8,Lsmall ; jump if (hi(S2_LIMB) == 0)
- subu r6,r6,4
-
-; General code for any value of S2_LIMB.
-
- ; Make a stack frame and save r25 and r26
- subu r31,r31,16
- st.d r25,r31,8
-
- ; Enter the loop in the middle
- br.n L1
- addu r4,r4,1
-
-Loop:
- ld r9,r3[r4]
- st r26,r6[r4]
-; bcnd ne0,r0,0 ; bubble
- addu r4,r4,1
-L1: mul r26,r9,r5 ; low word of product mul_1 WB ld
- mask r12,r9,0xffff ; r12 = lo(s1_limb) mask_1
- mul r11,r12,r7 ; r11 = prod_0 mul_2 WB mask_1
- mul r10,r12,r8 ; r10 = prod_1a mul_3
- extu r13,r9,16 ; r13 = hi(s1_limb) extu_1 WB mul_1
- mul r12,r13,r7 ; r12 = prod_1b mul_4 WB extu_1
- mul r25,r13,r8 ; r25 = prod_2 mul_5 WB mul_2
- extu r11,r11,16 ; r11 = hi(prod_0) extu_2 WB mul_3
- addu r10,r10,r11 ; addu_1 WB extu_2
-; bcnd ne0,r0,0 ; bubble WB addu_1
- addu.co r10,r10,r12 ; WB mul_4
- mask.u r10,r10,0xffff ; move the 16 most significant bits...
- addu.ci r10,r10,r0 ; ...to the low half of the word...
- rot r10,r10,16 ; ...and put carry in pos 16.
- addu.co r26,r26,r2 ; add old carry limb
- bcnd.n ne0,r4,Loop
- addu.ci r2,r25,r10 ; compute new carry limb
-
- st r26,r6[r4]
- ld.d r25,r31,8
- jmp.n r1
- addu r31,r31,16
-
-; Fast code for S2_LIMB < 0x10000
-Lsmall:
- ; Enter the loop in the middle
- br.n SL1
- addu r4,r4,1
-
-SLoop:
- ld r9,r3[r4] ;
- st r8,r6[r4] ;
- addu r4,r4,1 ;
-SL1: mul r8,r9,r5 ; low word of product
- mask r12,r9,0xffff ; r12 = lo(s1_limb)
- extu r13,r9,16 ; r13 = hi(s1_limb)
- mul r11,r12,r7 ; r11 = prod_0
- mul r12,r13,r7 ; r12 = prod_1b
- addu.cio r8,r8,r2 ; add old carry limb
- extu r10,r11,16 ; r11 = hi(prod_0)
- addu r10,r10,r12 ;
- bcnd.n ne0,r4,SLoop
- extu r2,r10,16 ; r2 = new carry limb
-
- jmp.n r1
- st r8,r6[r4]
diff --git a/sysdeps/m88k/m88100/sub_n.S b/sysdeps/m88k/m88100/sub_n.S
deleted file mode 100644
index 927ece4f15..0000000000
--- a/sysdeps/m88k/m88100/sub_n.S
+++ /dev/null
@@ -1,134 +0,0 @@
-; mc88100 __mpn_sub -- Subtract two limb vectors of the same length > 0 and
-; store difference in a third limb vector.
-
-; Copyright (C) 1992, 1994 Free Software Foundation, Inc.
-
-; This file is part of the GNU MP Library.
-
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU General Public License as published by
-; the Free Software Foundation; either version 2, or (at your option)
-; any later version.
-
-; The GNU MP Library is distributed in the hope that it will be useful,
-; but WITHOUT ANY WARRANTY; without even the implied warranty of
-; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-; GNU General Public License for more details.
-
-; You should have received a copy of the GNU General Public License
-; along with the GNU MP Library; see the file COPYING. If not, write to
-; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
-
-
-; INPUT PARAMETERS
-; res_ptr r2
-; s1_ptr r3
-; s2_ptr r4
-; size r5
-
-; This code has been optimized to run one instruction per clock, avoiding
-; load stalls and writeback contention. As a result, the instruction
-; order is not always natural.
-
-; The speed is approximately 4.3 clocks/limb + 18 clocks/limb-vector.
-
-#include "sysdep.h"
-
-ENTRY (__mpn_sub_n)
- ld r6,r3,0 ; read first limb from s1_ptr
- extu r10,r5,4
- ld r7,r4,0 ; read first limb from s2_ptr
-
- subu.co r5,r0,r5 ; (clear carry as side effect)
- mak r5,r5,4<4>
- bcnd eq0,r5,Lzero
-
- or r12,r0,lo16(Lbase)
- or.u r12,r12,hi16(Lbase)
- addu r12,r12,r5 ; r12 is address for entering in loop
-
- extu r5,r5,2 ; divide by 4
- subu r2,r2,r5 ; adjust res_ptr
- subu r3,r3,r5 ; adjust s1_ptr
- subu r4,r4,r5 ; adjust s2_ptr
-
- or r8,r6,r0
-
- jmp.n r12
- or r9,r7,r0
-
-Loop: addu r3,r3,64
- st r8,r2,60
- addu r4,r4,64
- ld r6,r3,0
- addu r2,r2,64
- ld r7,r4,0
-Lzero: subu r10,r10,1 ; subtract 0 + 16r limbs (adjust loop counter)
-Lbase: ld r8,r3,4
- subu.cio r6,r6,r7
- ld r9,r4,4
- st r6,r2,0
- ld r6,r3,8 ; subtract 15 + 16r limbs
- subu.cio r8,r8,r9
- ld r7,r4,8
- st r8,r2,4
- ld r8,r3,12 ; subtract 14 + 16r limbs
- subu.cio r6,r6,r7
- ld r9,r4,12
- st r6,r2,8
- ld r6,r3,16 ; subtract 13 + 16r limbs
- subu.cio r8,r8,r9
- ld r7,r4,16
- st r8,r2,12
- ld r8,r3,20 ; subtract 12 + 16r limbs
- subu.cio r6,r6,r7
- ld r9,r4,20
- st r6,r2,16
- ld r6,r3,24 ; subtract 11 + 16r limbs
- subu.cio r8,r8,r9
- ld r7,r4,24
- st r8,r2,20
- ld r8,r3,28 ; subtract 10 + 16r limbs
- subu.cio r6,r6,r7
- ld r9,r4,28
- st r6,r2,24
- ld r6,r3,32 ; subtract 9 + 16r limbs
- subu.cio r8,r8,r9
- ld r7,r4,32
- st r8,r2,28
- ld r8,r3,36 ; subtract 8 + 16r limbs
- subu.cio r6,r6,r7
- ld r9,r4,36
- st r6,r2,32
- ld r6,r3,40 ; subtract 7 + 16r limbs
- subu.cio r8,r8,r9
- ld r7,r4,40
- st r8,r2,36
- ld r8,r3,44 ; subtract 6 + 16r limbs
- subu.cio r6,r6,r7
- ld r9,r4,44
- st r6,r2,40
- ld r6,r3,48 ; subtract 5 + 16r limbs
- subu.cio r8,r8,r9
- ld r7,r4,48
- st r8,r2,44
- ld r8,r3,52 ; subtract 4 + 16r limbs
- subu.cio r6,r6,r7
- ld r9,r4,52
- st r6,r2,48
- ld r6,r3,56 ; subtract 3 + 16r limbs
- subu.cio r8,r8,r9
- ld r7,r4,56
- st r8,r2,52
- ld r8,r3,60 ; subtract 2 + 16r limbs
- subu.cio r6,r6,r7
- ld r9,r4,60
- st r6,r2,56
- bcnd.n ne0,r10,Loop ; subtract 1 + 16r limbs
- subu.cio r8,r8,r9
-
- st r8,r2,60 ; store most significant limb
-
- addu.ci r2,r0,r0 ; return carry-out from most sign. limb
- jmp.n r1
- xor r2,r2,1
diff --git a/sysdeps/m88k/m88100/sub_n.s b/sysdeps/m88k/m88100/sub_n.s
deleted file mode 100644
index a132c212a6..0000000000
--- a/sysdeps/m88k/m88100/sub_n.s
+++ /dev/null
@@ -1,104 +0,0 @@
-; mc88100 __mpn_sub -- Subtract two limb vectors of the same length > 0 and
-; store difference in a third limb vector.
-
-; Copyright (C) 1992, 1994 Free Software Foundation, Inc.
-
-; This file is part of the GNU MP Library.
-
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Lesser General Public License as published by
-; the Free Software Foundation; either version 2.1 of the License, or (at your
-; option) any later version.
-
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-; License for more details.
-
-; You should have received a copy of the GNU Lesser General Public License
-; along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-; the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-
-; INPUT PARAMETERS
-; res_ptr r2
-; s1_ptr r3
-; s2_ptr r4
-; size r5
-
-; This code has been optimized to run one instruction per clock, avoiding
-; load stalls and writeback contention. As a result, the instruction
-; order is not always natural.
-
-; The speed is about 4.6 clocks/limb + 18 clocks/limb-vector on an 88100,
-; but on the 88110, it seems to run much slower, 6.6 clocks/limb.
-
- text
- align 16
- global ___mpn_sub_n
-___mpn_sub_n:
- ld r6,r3,0 ; read first limb from s1_ptr
- extu r10,r5,3
- ld r7,r4,0 ; read first limb from s2_ptr
-
- subu.co r5,r0,r5 ; (clear carry as side effect)
- mak r5,r5,3<4>
- bcnd eq0,r5,Lzero
-
- or r12,r0,lo16(Lbase)
- or.u r12,r12,hi16(Lbase)
- addu r12,r12,r5 ; r12 is address for entering in loop
-
- extu r5,r5,2 ; divide by 4
- subu r2,r2,r5 ; adjust res_ptr
- subu r3,r3,r5 ; adjust s1_ptr
- subu r4,r4,r5 ; adjust s2_ptr
-
- or r8,r6,r0
-
- jmp.n r12
- or r9,r7,r0
-
-Loop: addu r3,r3,32
- st r8,r2,28
- addu r4,r4,32
- ld r6,r3,0
- addu r2,r2,32
- ld r7,r4,0
-Lzero: subu r10,r10,1 ; subtract 0 + 8r limbs (adj loop cnt)
-Lbase: ld r8,r3,4
- subu.cio r6,r6,r7
- ld r9,r4,4
- st r6,r2,0
- ld r6,r3,8 ; subtract 7 + 8r limbs
- subu.cio r8,r8,r9
- ld r7,r4,8
- st r8,r2,4
- ld r8,r3,12 ; subtract 6 + 8r limbs
- subu.cio r6,r6,r7
- ld r9,r4,12
- st r6,r2,8
- ld r6,r3,16 ; subtract 5 + 8r limbs
- subu.cio r8,r8,r9
- ld r7,r4,16
- st r8,r2,12
- ld r8,r3,20 ; subtract 4 + 8r limbs
- subu.cio r6,r6,r7
- ld r9,r4,20
- st r6,r2,16
- ld r6,r3,24 ; subtract 3 + 8r limbs
- subu.cio r8,r8,r9
- ld r7,r4,24
- st r8,r2,20
- ld r8,r3,28 ; subtract 2 + 8r limbs
- subu.cio r6,r6,r7
- ld r9,r4,28
- st r6,r2,24
- bcnd.n ne0,r10,Loop ; subtract 1 + 8r limbs
- subu.cio r8,r8,r9
-
- st r8,r2,28 ; store most significant limb
-
- addu.ci r2,r0,r0 ; return carry-out from most sign. limb
- jmp.n r1
- xor r2,r2,1
diff --git a/sysdeps/m88k/m88110/add_n.S b/sysdeps/m88k/m88110/add_n.S
deleted file mode 100644
index 3c90674483..0000000000
--- a/sysdeps/m88k/m88110/add_n.S
+++ /dev/null
@@ -1,200 +0,0 @@
-; mc88110 __mpn_add_n -- Add two limb vectors of the same length > 0 and store
-; sum in a third limb vector.
-
-; Copyright (C) 1995, 1996 Free Software Foundation, Inc.
-
-; This file is part of the GNU MP Library.
-
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Lesser General Public License as published by
-; the Free Software Foundation; either version 2.1 of the License, or (at your
-; option) any later version.
-
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-; License for more details.
-
-; You should have received a copy of the GNU Lesser General Public License
-; along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-; MA 02111-1307, USA.
-
-
-; INPUT PARAMETERS
-#define res_ptr r2
-#define s1_ptr r3
-#define s2_ptr r4
-#define size r5
-
-#include "sysdep.h"
-
- text
- align 16
- global C_SYMBOL_NAME(__mpn_add_n)
-C_SYMBOL_NAME(__mpn_add_n):
- addu.co r0,r0,r0 ; clear cy flag
- xor r12,s2_ptr,res_ptr
- bb1 2,r12,L1
-; ** V1a **
-L0: bb0 2,res_ptr,L_v1 ; branch if res_ptr is aligned?
-/* Add least significant limb separately to align res_ptr and s2_ptr */
- ld r10,s1_ptr,0
- addu s1_ptr,s1_ptr,4
- ld r8,s2_ptr,0
- addu s2_ptr,s2_ptr,4
- subu size,size,1
- addu.co r6,r10,r8
- st r6,res_ptr,0
- addu res_ptr,res_ptr,4
-L_v1: cmp r12,size,2
- bb1 lt,r12,Lend2
-
- ld r10,s1_ptr,0
- ld r12,s1_ptr,4
- ld.d r8,s2_ptr,0
- subu size,size,10
- bcnd lt0,size,Lfin1
-/* Add blocks of 8 limbs until less than 8 limbs remain */
- align 8
-Loop1: subu size,size,8
- addu.cio r6,r10,r8
- ld r10,s1_ptr,8
- addu.cio r7,r12,r9
- ld r12,s1_ptr,12
- ld.d r8,s2_ptr,8
- st.d r6,res_ptr,0
- addu.cio r6,r10,r8
- ld r10,s1_ptr,16
- addu.cio r7,r12,r9
- ld r12,s1_ptr,20
- ld.d r8,s2_ptr,16
- st.d r6,res_ptr,8
- addu.cio r6,r10,r8
- ld r10,s1_ptr,24
- addu.cio r7,r12,r9
- ld r12,s1_ptr,28
- ld.d r8,s2_ptr,24
- st.d r6,res_ptr,16
- addu.cio r6,r10,r8
- ld r10,s1_ptr,32
- addu.cio r7,r12,r9
- ld r12,s1_ptr,36
- addu s1_ptr,s1_ptr,32
- ld.d r8,s2_ptr,32
- addu s2_ptr,s2_ptr,32
- st.d r6,res_ptr,24
- addu res_ptr,res_ptr,32
- bcnd ge0,size,Loop1
-
-Lfin1: addu size,size,8-2
- bcnd lt0,size,Lend1
-/* Add blocks of 2 limbs until less than 2 limbs remain */
-Loope1: addu.cio r6,r10,r8
- ld r10,s1_ptr,8
- addu.cio r7,r12,r9
- ld r12,s1_ptr,12
- ld.d r8,s2_ptr,8
- st.d r6,res_ptr,0
- subu size,size,2
- addu s1_ptr,s1_ptr,8
- addu s2_ptr,s2_ptr,8
- addu res_ptr,res_ptr,8
- bcnd ge0,size,Loope1
-Lend1: addu.cio r6,r10,r8
- addu.cio r7,r12,r9
- st.d r6,res_ptr,0
-
- bb0 0,size,Lret1
-/* Add last limb */
- ld r10,s1_ptr,8
- ld r8,s2_ptr,8
- addu.cio r6,r10,r8
- st r6,res_ptr,8
-
-Lret1: jmp.n r1
- addu.ci r2,r0,r0 ; return carry-out from most sign. limb
-
-L1: xor r12,s1_ptr,res_ptr
- bb1 2,r12,L2
-; ** V1b **
- or r12,r0,s2_ptr
- or s2_ptr,r0,s1_ptr
- or s1_ptr,r0,r12
- br L0
-
-; ** V2 **
-/* If we come here, the alignment of s1_ptr and res_ptr as well as the
- alignment of s2_ptr and res_ptr differ. Since there are only two ways
- things can be aligned (that we care about) we now know that the alignment
- of s1_ptr and s2_ptr are the same. */
-
-L2: cmp r12,size,1
- bb1 eq,r12,Ljone
- bb0 2,s1_ptr,L_v2 ; branch if s1_ptr is aligned
-/* Add least significant limb separately to align res_ptr and s2_ptr */
- ld r10,s1_ptr,0
- addu s1_ptr,s1_ptr,4
- ld r8,s2_ptr,0
- addu s2_ptr,s2_ptr,4
- subu size,size,1
- addu.co r6,r10,r8
- st r6,res_ptr,0
- addu res_ptr,res_ptr,4
-
-L_v2: subu size,size,8
- bcnd lt0,size,Lfin2
-/* Add blocks of 8 limbs until less than 8 limbs remain */
- align 8
-Loop2: subu size,size,8
- ld.d r8,s1_ptr,0
- ld.d r6,s2_ptr,0
- addu.cio r8,r8,r6
- st r8,res_ptr,0
- addu.cio r9,r9,r7
- st r9,res_ptr,4
- ld.d r8,s1_ptr,8
- ld.d r6,s2_ptr,8
- addu.cio r8,r8,r6
- st r8,res_ptr,8
- addu.cio r9,r9,r7
- st r9,res_ptr,12
- ld.d r8,s1_ptr,16
- ld.d r6,s2_ptr,16
- addu.cio r8,r8,r6
- st r8,res_ptr,16
- addu.cio r9,r9,r7
- st r9,res_ptr,20
- ld.d r8,s1_ptr,24
- ld.d r6,s2_ptr,24
- addu.cio r8,r8,r6
- st r8,res_ptr,24
- addu.cio r9,r9,r7
- st r9,res_ptr,28
- addu s1_ptr,s1_ptr,32
- addu s2_ptr,s2_ptr,32
- addu res_ptr,res_ptr,32
- bcnd ge0,size,Loop2
-
-Lfin2: addu size,size,8-2
- bcnd lt0,size,Lend2
-Loope2: ld.d r8,s1_ptr,0
- ld.d r6,s2_ptr,0
- addu.cio r8,r8,r6
- st r8,res_ptr,0
- addu.cio r9,r9,r7
- st r9,res_ptr,4
- subu size,size,2
- addu s1_ptr,s1_ptr,8
- addu s2_ptr,s2_ptr,8
- addu res_ptr,res_ptr,8
- bcnd ge0,size,Loope2
-Lend2: bb0 0,size,Lret2
-/* Add last limb */
-Ljone: ld r10,s1_ptr,0
- ld r8,s2_ptr,0
- addu.cio r6,r10,r8
- st r6,res_ptr,0
-
-Lret2: jmp.n r1
- addu.ci r2,r0,r0 ; return carry-out from most sign. limb
diff --git a/sysdeps/m88k/m88110/addmul_1.s b/sysdeps/m88k/m88110/addmul_1.s
deleted file mode 100644
index a9845efa38..0000000000
--- a/sysdeps/m88k/m88110/addmul_1.s
+++ /dev/null
@@ -1,61 +0,0 @@
-; mc88110 __mpn_addmul_1 -- Multiply a limb vector with a single limb and
-; store the product in a second limb vector.
-
-; Copyright (C) 1996 Free Software Foundation, Inc.
-
-; This file is part of the GNU MP Library.
-
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Lesser General Public License as published by
-; the Free Software Foundation; either version 2.1 of the License, or (at your
-; option) any later version.
-
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-; License for more details.
-
-; You should have received a copy of the GNU Lesser General Public License
-; along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-; MA 02111-1307, USA.
-
-
-; INPUT PARAMETERS
-; res_ptr r2
-; s1_ptr r3
-; size r4
-; s2_limb r5
-
- text
- align 16
- global ___mpn_addmul_1
-___mpn_addmul_1:
- lda r3,r3[r4]
- lda r8,r2[r4] ; RES_PTR in r8 since r2 is retval
- subu r4,r0,r4
- addu.co r2,r0,r0 ; r2 = cy = 0
-
- ld r6,r3[r4]
- addu r4,r4,1
- subu r8,r8,4
- bcnd.n eq0,r4,Lend
- mulu.d r10,r6,r5
-
-Loop: ld r7,r8[r4]
- ld r6,r3[r4]
- addu.cio r9,r11,r2
- addu.ci r2,r10,r0
- addu.co r9,r9,r7
- st r9,r8[r4]
- addu r4,r4,1
- mulu.d r10,r6,r5
- bcnd ne0,r4,Loop
-
-Lend: ld r7,r8,0
- addu.cio r9,r11,r2
- addu.ci r2,r10,r0
- addu.co r9,r9,r7
- st r9,r8,0
- jmp.n r1
- addu.ci r2,r2,r0
diff --git a/sysdeps/m88k/m88110/mul_1.S b/sysdeps/m88k/m88110/mul_1.S
deleted file mode 100644
index 7a07623865..0000000000
--- a/sysdeps/m88k/m88110/mul_1.S
+++ /dev/null
@@ -1,80 +0,0 @@
-; mc88110 __mpn_mul_1 -- Multiply a limb vector with a single limb and
-; store the product in a second limb vector.
-
-; Copyright (C) 1992, 1994 Free Software Foundation, Inc.
-
-; This file is part of the GNU MP Library.
-
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU General Public License as published by
-; the Free Software Foundation; either version 2, or (at your option)
-; any later version.
-
-; The GNU MP Library is distributed in the hope that it will be useful,
-; but WITHOUT ANY WARRANTY; without even the implied warranty of
-; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-; GNU General Public License for more details.
-
-; You should have received a copy of the GNU General Public License
-; along with the GNU MP Library; see the file COPYING. If not, write to
-; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
-
-
-; INPUT PARAMETERS
-; res_ptr r2
-; s1_ptr r3
-; size r4
-; s2_limb r5
-
-#include "sysdep.h"
-
-ENTRY (__mpn_mul_1)
- ld r6,r3,0
- sub r4,r0,r4
- sub r3,r3,r4 ; r3 is offset s1_ptr
- sub r2,r2,r4
- sub r8,r2,8 ; r8 is offset res_ptr
- mulu.d r10,r6,r5
-
- addu r4,r4,1
- bcnd eq0,r4,Lend
- addu.co r2,r0,0 ; clear cy_limb
-
-Loop: ld r6,r3[r4]
- addu.cio r9,r11,r2
- or r2,r10,r0 ; could be avoided if unrolled
- addu r4,r4,1
- mulu.d r10,r6,r5
- bcnd ne0,r4,Loop
- st r9,r8[r4]
-
-Lend: addu.cio r9,r11,r2
- st r9,r8,4
- jmp.n r1
- addu.ci r2,r10,r0
-
-; This is the Right Way to do this on '110. 4 cycles / 64-bit limb.
-; ld.d r10,
-; mulu.d
-; addu.cio
-; addu.cio
-; st.d
-; mulu.d ,r11,r5
-; ld.d r12,
-; mulu.d ,r10,r5
-; addu.cio
-; addu.cio
-; st.d
-; mulu.d
-; ld.d r10,
-; mulu.d
-; addu.cio
-; addu.cio
-; st.d
-; mulu.d
-; ld.d r10,
-; mulu.d
-; addu.cio
-; addu.cio
-; st.d
-; mulu.d
diff --git a/sysdeps/m88k/m88110/mul_1.s b/sysdeps/m88k/m88110/mul_1.s
deleted file mode 100644
index 103869dc42..0000000000
--- a/sysdeps/m88k/m88110/mul_1.s
+++ /dev/null
@@ -1,59 +0,0 @@
-; mc88110 __mpn_mul_1 -- Multiply a limb vector with a single limb and
-; store the product in a second limb vector.
-
-; Copyright (C) 1992, 1994, 1995 Free Software Foundation, Inc.
-
-; This file is part of the GNU MP Library.
-
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Lesser General Public License as published by
-; the Free Software Foundation; either version 2.1 of the License, or (at your
-; option) any later version.
-
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-; License for more details.
-
-; You should have received a copy of the GNU Lesser General Public License
-; along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-; MA 02111-1307, USA.
-
-
-; INPUT PARAMETERS
-; res_ptr r2
-; s1_ptr r3
-; size r4
-; s2_limb r5
-
- text
- align 16
- global ___mpn_mul_1
-___mpn_mul_1:
- ; Make S1_PTR and RES_PTR point at the end of their blocks
- ; and negate SIZE.
- lda r3,r3[r4]
- lda r8,r2[r4] ; RES_PTR in r8 since r2 is retval
- subu r4,r0,r4
-
- addu.co r2,r0,r0 ; r2 = cy = 0
-
- ld r6,r3[r4]
- addu r4,r4,1
- mulu.d r10,r6,r5
- bcnd.n eq0,r4,Lend
- subu r8,r8,8
-
-Loop: ld r6,r3[r4]
- addu.cio r9,r11,r2
- or r2,r10,r0 ; could be avoided if unrolled
- addu r4,r4,1
- mulu.d r10,r6,r5
- bcnd.n ne0,r4,Loop
- st r9,r8[r4]
-
-Lend: addu.cio r9,r11,r2
- st r9,r8,4
- jmp.n r1
- addu.ci r2,r10,r0
diff --git a/sysdeps/m88k/m88110/sub_n.S b/sysdeps/m88k/m88110/sub_n.S
deleted file mode 100644
index a937882dbd..0000000000
--- a/sysdeps/m88k/m88110/sub_n.S
+++ /dev/null
@@ -1,276 +0,0 @@
-; mc88110 __mpn_sub_n -- Subtract two limb vectors of the same length > 0 and
-; store difference in a third limb vector.
-
-; Copyright (C) 1995, 1996 Free Software Foundation, Inc.
-
-; This file is part of the GNU MP Library.
-
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Lesser General Public License as published by
-; the Free Software Foundation; either version 2.1 of the License, or (at your
-; option) any later version.
-
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-; License for more details.
-
-; You should have received a copy of the GNU Lesser General Public License
-; along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-; MA 02111-1307, USA.
-
-
-; INPUT PARAMETERS
-#define res_ptr r2
-#define s1_ptr r3
-#define s2_ptr r4
-#define size r5
-
-#include "sysdep.h"
-
- text
- align 16
- global C_SYMBOL_NAME(__mpn_sub_n)
-C_SYMBOL_NAME(__mpn_sub_n):
- subu.co r0,r0,r0 ; set cy flag
- xor r12,s2_ptr,res_ptr
- bb1 2,r12,L1
-; ** V1a **
-L0: bb0 2,res_ptr,L_v1 ; branch if res_ptr is aligned
-/* Add least significant limb separately to align res_ptr and s2_ptr */
- ld r10,s1_ptr,0
- addu s1_ptr,s1_ptr,4
- ld r8,s2_ptr,0
- addu s2_ptr,s2_ptr,4
- subu size,size,1
- subu.co r6,r10,r8
- st r6,res_ptr,0
- addu res_ptr,res_ptr,4
-L_v1: cmp r12,size,2
- bb1 lt,r12,Lend2
-
- ld r10,s1_ptr,0
- ld r12,s1_ptr,4
- ld.d r8,s2_ptr,0
- subu size,size,10
- bcnd lt0,size,Lfin1
-/* Add blocks of 8 limbs until less than 8 limbs remain */
- align 8
-Loop1: subu size,size,8
- subu.cio r6,r10,r8
- ld r10,s1_ptr,8
- subu.cio r7,r12,r9
- ld r12,s1_ptr,12
- ld.d r8,s2_ptr,8
- st.d r6,res_ptr,0
- subu.cio r6,r10,r8
- ld r10,s1_ptr,16
- subu.cio r7,r12,r9
- ld r12,s1_ptr,20
- ld.d r8,s2_ptr,16
- st.d r6,res_ptr,8
- subu.cio r6,r10,r8
- ld r10,s1_ptr,24
- subu.cio r7,r12,r9
- ld r12,s1_ptr,28
- ld.d r8,s2_ptr,24
- st.d r6,res_ptr,16
- subu.cio r6,r10,r8
- ld r10,s1_ptr,32
- subu.cio r7,r12,r9
- ld r12,s1_ptr,36
- addu s1_ptr,s1_ptr,32
- ld.d r8,s2_ptr,32
- addu s2_ptr,s2_ptr,32
- st.d r6,res_ptr,24
- addu res_ptr,res_ptr,32
- bcnd ge0,size,Loop1
-
-Lfin1: addu size,size,8-2
- bcnd lt0,size,Lend1
-/* Add blocks of 2 limbs until less than 2 limbs remain */
-Loope1: subu.cio r6,r10,r8
- ld r10,s1_ptr,8
- subu.cio r7,r12,r9
- ld r12,s1_ptr,12
- ld.d r8,s2_ptr,8
- st.d r6,res_ptr,0
- subu size,size,2
- addu s1_ptr,s1_ptr,8
- addu s2_ptr,s2_ptr,8
- addu res_ptr,res_ptr,8
- bcnd ge0,size,Loope1
-Lend1: subu.cio r6,r10,r8
- subu.cio r7,r12,r9
- st.d r6,res_ptr,0
-
- bb0 0,size,Lret1
-/* Add last limb */
- ld r10,s1_ptr,8
- ld r8,s2_ptr,8
- subu.cio r6,r10,r8
- st r6,res_ptr,8
-
-Lret1: addu.ci r2,r0,r0 ; return carry-out from most sign. limb
- jmp.n r1
- xor r2,r2,1
-
-L1: xor r12,s1_ptr,res_ptr
- bb1 2,r12,L2
-; ** V1b **
- bb0 2,res_ptr,L_v1b ; branch if res_ptr is aligned
-/* Add least significant limb separately to align res_ptr and s1_ptr */
- ld r10,s2_ptr,0
- addu s2_ptr,s2_ptr,4
- ld r8,s1_ptr,0
- addu s1_ptr,s1_ptr,4
- subu size,size,1
- subu.co r6,r8,r10
- st r6,res_ptr,0
- addu res_ptr,res_ptr,4
-L_v1b: cmp r12,size,2
- bb1 lt,r12,Lend2
-
- ld r10,s2_ptr,0
- ld r12,s2_ptr,4
- ld.d r8,s1_ptr,0
- subu size,size,10
- bcnd lt0,size,Lfin1b
-/* Add blocks of 8 limbs until less than 8 limbs remain */
- align 8
-Loop1b: subu size,size,8
- subu.cio r6,r8,r10
- ld r10,s2_ptr,8
- subu.cio r7,r9,r12
- ld r12,s2_ptr,12
- ld.d r8,s1_ptr,8
- st.d r6,res_ptr,0
- subu.cio r6,r8,r10
- ld r10,s2_ptr,16
- subu.cio r7,r9,r12
- ld r12,s2_ptr,20
- ld.d r8,s1_ptr,16
- st.d r6,res_ptr,8
- subu.cio r6,r8,r10
- ld r10,s2_ptr,24
- subu.cio r7,r9,r12
- ld r12,s2_ptr,28
- ld.d r8,s1_ptr,24
- st.d r6,res_ptr,16
- subu.cio r6,r8,r10
- ld r10,s2_ptr,32
- subu.cio r7,r9,r12
- ld r12,s2_ptr,36
- addu s2_ptr,s2_ptr,32
- ld.d r8,s1_ptr,32
- addu s1_ptr,s1_ptr,32
- st.d r6,res_ptr,24
- addu res_ptr,res_ptr,32
- bcnd ge0,size,Loop1b
-
-Lfin1b: addu size,size,8-2
- bcnd lt0,size,Lend1b
-/* Add blocks of 2 limbs until less than 2 limbs remain */
-Loope1b:subu.cio r6,r8,r10
- ld r10,s2_ptr,8
- subu.cio r7,r9,r12
- ld r12,s2_ptr,12
- ld.d r8,s1_ptr,8
- st.d r6,res_ptr,0
- subu size,size,2
- addu s1_ptr,s1_ptr,8
- addu s2_ptr,s2_ptr,8
- addu res_ptr,res_ptr,8
- bcnd ge0,size,Loope1b
-Lend1b: subu.cio r6,r8,r10
- subu.cio r7,r9,r12
- st.d r6,res_ptr,0
-
- bb0 0,size,Lret1b
-/* Add last limb */
- ld r10,s2_ptr,8
- ld r8,s1_ptr,8
- subu.cio r6,r8,r10
- st r6,res_ptr,8
-
-Lret1b: addu.ci r2,r0,r0 ; return carry-out from most sign. limb
- jmp.n r1
- xor r2,r2,1
-
-; ** V2 **
-/* If we come here, the alignment of s1_ptr and res_ptr as well as the
- alignment of s2_ptr and res_ptr differ. Since there are only two ways
- things can be aligned (that we care about) we now know that the alignment
- of s1_ptr and s2_ptr are the same. */
-
-L2: cmp r12,size,1
- bb1 eq,r12,Ljone
- bb0 2,s1_ptr,L_v2 ; branch if s1_ptr is aligned
-/* Add least significant limb separately to align res_ptr and s2_ptr */
- ld r10,s1_ptr,0
- addu s1_ptr,s1_ptr,4
- ld r8,s2_ptr,0
- addu s2_ptr,s2_ptr,4
- subu size,size,1
- subu.co r6,r10,r8
- st r6,res_ptr,0
- addu res_ptr,res_ptr,4
-
-L_v2: subu size,size,8
- bcnd lt0,size,Lfin2
-/* Add blocks of 8 limbs until less than 8 limbs remain */
- align 8
-Loop2: subu size,size,8
- ld.d r8,s1_ptr,0
- ld.d r6,s2_ptr,0
- subu.cio r8,r8,r6
- st r8,res_ptr,0
- subu.cio r9,r9,r7
- st r9,res_ptr,4
- ld.d r8,s1_ptr,8
- ld.d r6,s2_ptr,8
- subu.cio r8,r8,r6
- st r8,res_ptr,8
- subu.cio r9,r9,r7
- st r9,res_ptr,12
- ld.d r8,s1_ptr,16
- ld.d r6,s2_ptr,16
- subu.cio r8,r8,r6
- st r8,res_ptr,16
- subu.cio r9,r9,r7
- st r9,res_ptr,20
- ld.d r8,s1_ptr,24
- ld.d r6,s2_ptr,24
- subu.cio r8,r8,r6
- st r8,res_ptr,24
- subu.cio r9,r9,r7
- st r9,res_ptr,28
- addu s1_ptr,s1_ptr,32
- addu s2_ptr,s2_ptr,32
- addu res_ptr,res_ptr,32
- bcnd ge0,size,Loop2
-
-Lfin2: addu size,size,8-2
- bcnd lt0,size,Lend2
-Loope2: ld.d r8,s1_ptr,0
- ld.d r6,s2_ptr,0
- subu.cio r8,r8,r6
- st r8,res_ptr,0
- subu.cio r9,r9,r7
- st r9,res_ptr,4
- subu size,size,2
- addu s1_ptr,s1_ptr,8
- addu s2_ptr,s2_ptr,8
- addu res_ptr,res_ptr,8
- bcnd ge0,size,Loope2
-Lend2: bb0 0,size,Lret2
-/* Add last limb */
-Ljone: ld r10,s1_ptr,0
- ld r8,s2_ptr,0
- subu.cio r6,r10,r8
- st r6,res_ptr,0
-
-Lret2: addu.ci r2,r0,r0 ; return carry-out from most sign. limb
- jmp.n r1
- xor r2,r2,1
diff --git a/sysdeps/m88k/mul_1.s b/sysdeps/m88k/mul_1.s
deleted file mode 100644
index 7aa6d64064..0000000000
--- a/sysdeps/m88k/mul_1.s
+++ /dev/null
@@ -1,127 +0,0 @@
-; mc88100 __mpn_mul_1 -- Multiply a limb vector with a single limb and
-; store the product in a second limb vector.
-
-; Copyright (C) 1992, 1994, 1995 Free Software Foundation, Inc.
-
-; This file is part of the GNU MP Library.
-
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Lesser General Public License as published by
-; the Free Software Foundation; either version 2.1 of the License, or (at your
-; option) any later version.
-
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-; License for more details.
-
-; You should have received a copy of the GNU Lesser General Public License
-; along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-; MA 02111-1307, USA.
-
-
-; INPUT PARAMETERS
-; res_ptr r2
-; s1_ptr r3
-; size r4
-; s2_limb r5
-
-; Common overhead is about 11 cycles/invocation.
-
-; The speed for S2_LIMB >= 0x10000 is approximately 21 cycles/limb. (The
-; pipeline stalls 2 cycles due to WB contention.)
-
-; The speed for S2_LIMB < 0x10000 is approximately 16 cycles/limb. (The
-; pipeline stalls 2 cycles due to WB contention and 1 cycle due to latency.)
-
-; To enhance speed:
-; 1. Unroll main loop 4-8 times.
-; 2. Schedule code to avoid WB contention. It might be tempting to move the
-; ld instruction in the loops down to save 2 cycles (less WB contention),
-; but that looses because the ultimate value will be read from outside
-; the allocated space. But if we handle the ultimate multiplication in
-; the tail, we can do this.
-; 3. Make the multiplication with less instructions. I think the code for
-; (S2_LIMB >= 0x10000) is not minimal.
-; With these techniques the (S2_LIMB >= 0x10000) case would run in 17 or
-; less cycles/limb; the (S2_LIMB < 0x10000) case would run in 11
-; cycles/limb. (Assuming infinite unrolling.)
-
- text
- align 16
- global ___mpn_mul_1
-___mpn_mul_1:
-
- ; Make S1_PTR and RES_PTR point at the end of their blocks
- ; and negate SIZE.
- lda r3,r3[r4]
- lda r6,r2[r4] ; RES_PTR in r6 since r2 is retval
- subu r4,r0,r4
-
- addu.co r2,r0,r0 ; r2 = cy = 0
- ld r9,r3[r4]
- mask r7,r5,0xffff ; r7 = lo(S2_LIMB)
- extu r8,r5,16 ; r8 = hi(S2_LIMB)
- bcnd.n eq0,r8,Lsmall ; jump if (hi(S2_LIMB) == 0)
- subu r6,r6,4
-
-; General code for any value of S2_LIMB.
-
- ; Make a stack frame and save r25 and r26
- subu r31,r31,16
- st.d r25,r31,8
-
- ; Enter the loop in the middle
- br.n L1
- addu r4,r4,1
-
-Loop: ld r9,r3[r4]
- st r26,r6[r4]
-; bcnd ne0,r0,0 ; bubble
- addu r4,r4,1
-L1: mul r26,r9,r5 ; low word of product mul_1 WB ld
- mask r12,r9,0xffff ; r12 = lo(s1_limb) mask_1
- mul r11,r12,r7 ; r11 = prod_0 mul_2 WB mask_1
- mul r10,r12,r8 ; r10 = prod_1a mul_3
- extu r13,r9,16 ; r13 = hi(s1_limb) extu_1 WB mul_1
- mul r12,r13,r7 ; r12 = prod_1b mul_4 WB extu_1
- mul r25,r13,r8 ; r25 = prod_2 mul_5 WB mul_2
- extu r11,r11,16 ; r11 = hi(prod_0) extu_2 WB mul_3
- addu r10,r10,r11 ; addu_1 WB extu_2
-; bcnd ne0,r0,0 ; bubble WB addu_1
- addu.co r10,r10,r12 ; WB mul_4
- mask.u r10,r10,0xffff ; move the 16 most significant bits...
- addu.ci r10,r10,r0 ; ...to the low half of the word...
- rot r10,r10,16 ; ...and put carry in pos 16.
- addu.co r26,r26,r2 ; add old carry limb
- bcnd.n ne0,r4,Loop
- addu.ci r2,r25,r10 ; compute new carry limb
-
- st r26,r6[r4]
- ld.d r25,r31,8
- jmp.n r1
- addu r31,r31,16
-
-; Fast code for S2_LIMB < 0x10000
-Lsmall:
- ; Enter the loop in the middle
- br.n SL1
- addu r4,r4,1
-
-SLoop: ld r9,r3[r4] ;
- st r8,r6[r4] ;
- addu r4,r4,1 ;
-SL1: mul r8,r9,r5 ; low word of product
- mask r12,r9,0xffff ; r12 = lo(s1_limb)
- extu r13,r9,16 ; r13 = hi(s1_limb)
- mul r11,r12,r7 ; r11 = prod_0
- mul r12,r13,r7 ; r12 = prod_1b
- addu.cio r8,r8,r2 ; add old carry limb
- extu r10,r11,16 ; r11 = hi(prod_0)
- addu r10,r10,r12 ;
- bcnd.n ne0,r4,SLoop
- extu r2,r10,16 ; r2 = new carry limb
-
- jmp.n r1
- st r8,r6[r4]
diff --git a/sysdeps/m88k/sub_n.s b/sysdeps/m88k/sub_n.s
deleted file mode 100644
index 7616dc46b4..0000000000
--- a/sysdeps/m88k/sub_n.s
+++ /dev/null
@@ -1,106 +0,0 @@
-; mc88100 __mpn_sub -- Subtract two limb vectors of the same length > 0 and
-; store difference in a third limb vector.
-
-; Copyright (C) 1992, 1994, 1996 Free Software Foundation, Inc.
-
-; This file is part of the GNU MP Library.
-
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Lesser General Public License as published by
-; the Free Software Foundation; either version 2.1 of the License, or (at your
-; option) any later version.
-
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-; License for more details.
-
-; You should have received a copy of the GNU Lesser General Public License
-; along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-; MA 02111-1307, USA.
-
-
-; INPUT PARAMETERS
-; res_ptr r2
-; s1_ptr r3
-; s2_ptr r4
-; size r5
-
-; This code has been optimized to run one instruction per clock, avoiding
-; load stalls and writeback contention. As a result, the instruction
-; order is not always natural.
-
-; The speed is about 4.6 clocks/limb + 18 clocks/limb-vector on an 88100,
-; but on the 88110, it seems to run much slower, 6.6 clocks/limb.
-
- text
- align 16
- global ___mpn_sub_n
-___mpn_sub_n:
- ld r6,r3,0 ; read first limb from s1_ptr
- extu r10,r5,3
- ld r7,r4,0 ; read first limb from s2_ptr
-
- subu r5,r0,r5
- mak r5,r5,3<4>
- bcnd.n eq0,r5,Lzero
- subu.co r0,r0,r0 ; initialize carry
-
- or r12,r0,lo16(Lbase)
- or.u r12,r12,hi16(Lbase)
- addu r12,r12,r5 ; r12 is address for entering in loop
-
- extu r5,r5,2 ; divide by 4
- subu r2,r2,r5 ; adjust res_ptr
- subu r3,r3,r5 ; adjust s1_ptr
- subu r4,r4,r5 ; adjust s2_ptr
-
- or r8,r6,r0
-
- jmp.n r12
- or r9,r7,r0
-
-Loop: addu r3,r3,32
- st r8,r2,28
- addu r4,r4,32
- ld r6,r3,0
- addu r2,r2,32
- ld r7,r4,0
-Lzero: subu r10,r10,1 ; subtract 0 + 8r limbs (adj loop cnt)
-Lbase: ld r8,r3,4
- subu.cio r6,r6,r7
- ld r9,r4,4
- st r6,r2,0
- ld r6,r3,8 ; subtract 7 + 8r limbs
- subu.cio r8,r8,r9
- ld r7,r4,8
- st r8,r2,4
- ld r8,r3,12 ; subtract 6 + 8r limbs
- subu.cio r6,r6,r7
- ld r9,r4,12
- st r6,r2,8
- ld r6,r3,16 ; subtract 5 + 8r limbs
- subu.cio r8,r8,r9
- ld r7,r4,16
- st r8,r2,12
- ld r8,r3,20 ; subtract 4 + 8r limbs
- subu.cio r6,r6,r7
- ld r9,r4,20
- st r6,r2,16
- ld r6,r3,24 ; subtract 3 + 8r limbs
- subu.cio r8,r8,r9
- ld r7,r4,24
- st r8,r2,20
- ld r8,r3,28 ; subtract 2 + 8r limbs
- subu.cio r6,r6,r7
- ld r9,r4,28
- st r6,r2,24
- bcnd.n ne0,r10,Loop ; subtract 1 + 8r limbs
- subu.cio r8,r8,r9
-
- st r8,r2,28 ; store most significant limb
-
- addu.ci r2,r0,r0 ; return carry-out from most sign. limb
- jmp.n r1
- xor r2,r2,1
diff --git a/sysdeps/mach/hurd/fork.c b/sysdeps/mach/hurd/fork.c
index c3f8a1a86b..8728596915 100644
--- a/sysdeps/mach/hurd/fork.c
+++ b/sysdeps/mach/hurd/fork.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1994,95,96,97,99,2001,02 Free Software Foundation, Inc.
+/* Copyright (C) 1994,95,96,97,99,2001,02, 04 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -26,6 +26,7 @@
#include "set-hooks.h"
#include <assert.h>
#include "hurdmalloc.h" /* XXX */
+#include <tls.h>
#undef __fork
@@ -529,6 +530,13 @@ __fork (void)
/* Set the child user thread up to return 1 from the setjmp above. */
_hurd_longjmp_thread_state (&state, env, 1);
+
+#if USE_TLS
+ /* Do special thread setup for TLS if needed. */
+ if (err = _hurd_tls_fork (thread, &state))
+ LOSE;
+#endif
+
if (err = __thread_set_state (thread, MACHINE_THREAD_STATE_FLAVOR,
(natural_t *) &state, statecount))
LOSE;
diff --git a/sysdeps/mach/hurd/i386/tls.h b/sysdeps/mach/hurd/i386/tls.h
index 8adbee98fc..ff849716e0 100644
--- a/sysdeps/mach/hurd/i386/tls.h
+++ b/sysdeps/mach/hurd/i386/tls.h
@@ -45,24 +45,31 @@
# include <errno.h>
# include <assert.h>
+#define HURD_TLS_DESC_DECL(desc, tcb) \
+ struct descriptor desc = \
+ { /* low word: */ \
+ 0xffff /* limit 0..15 */ \
+ | (((unsigned int) (tcb)) << 16) /* base 0..15 */ \
+ , /* high word: */ \
+ ((((unsigned int) (tcb)) >> 16) & 0xff) /* base 16..23 */ \
+ | ((0x12 | 0x60 | 0x80) << 8) /* access = ACC_DATA_W|ACC_PL_U|ACC_P */ \
+ | (0xf << 16) /* limit 16..19 */ \
+ | ((4 | 8) << 20) /* granularity = SZ_32|SZ_G */ \
+ | (((unsigned int) (tcb)) & 0xff000000) /* base 24..31 */ \
+ }
+
+
static inline const char * __attribute__ ((unused))
_hurd_tls_init (tcbhead_t *tcb, int secondcall)
{
- const unsigned int base = (unsigned int) tcb;
- struct descriptor desc =
- { /* low word: */
- 0xffff /* limit 0..15 */
- | (base << 16) /* base 0..15 */
- , /* high word: */
- ((base >> 16) & 0xff) /* base 16..23 */
- | ((0x12 | 0x60 | 0x80) << 8) /* access = ACC_DATA_W|ACC_PL_U|ACC_P */
- | (0xf << 16) /* limit 16..19 */
- | ((4 | 8) << 20) /* granularity = SZ_32|SZ_G */
- | (base & 0xff000000) /* base 24..31 */
- };
+ HURD_TLS_DESC_DECL (desc, tcb);
if (!secondcall)
{
+ /* This field is used by TLS accesses to get our "thread pointer"
+ from the TLS point of view. */
+ tcb->tcb = tcb;
+
/* Cache our thread port. */
tcb->self = __mach_thread_self ();
@@ -75,9 +82,10 @@ _hurd_tls_init (tcbhead_t *tcb, int secondcall)
sel = 0x27;
err = __i386_set_ldt (tcb->self, sel, &desc, 1);
assert_perror (err);
- return "i386_set_ldt failed";
+ if (err)
+ return "i386_set_ldt failed";
}
- else
+ else if (err)
{
assert_perror (err); /* Separate from above with different line #. */
return "i386_set_gdt failed";
@@ -95,13 +103,15 @@ _hurd_tls_init (tcbhead_t *tcb, int secondcall)
{
error_t err = __i386_set_ldt (tcb->self, sel, &desc, 1);
assert_perror (err);
- return "i386_set_ldt failed";
+ if (err)
+ return "i386_set_ldt failed";
}
else
{
error_t err = __i386_set_gdt (tcb->self, &sel, desc);
assert_perror (err);
- return "i386_set_gdt failed";
+ if (err)
+ return "i386_set_gdt failed";
}
}
@@ -133,6 +143,31 @@ _hurd_tls_init (tcbhead_t *tcb, int secondcall)
asm ("movl %%gs:%P1,%0" : "=q" (_dtv) : "i" (offsetof (tcbhead_t, dtv)));\
_dtv; })
+#include <mach/machine/thread_status.h>
+
+/* Set up TLS in the new thread of a fork child, copying from our own. */
+static inline error_t __attribute__ ((unused))
+_hurd_tls_fork (thread_t child, struct i386_thread_state *state)
+{
+ /* Fetch the selector set by _hurd_tls_init. */
+ int sel;
+ asm ("mov %%gs, %w0" : "=q" (sel));
+ if (sel == state->ds) /* _hurd_tls_init was never called. */
+ return 0;
+
+ tcbhead_t *const tcb = THREAD_SELF;
+ HURD_TLS_DESC_DECL (desc, tcb);
+ error_t err;
+
+ if (__builtin_expect (sel, 0x50) & 4) /* LDT selector */
+ err = __i386_set_ldt (child, sel, &desc, 1);
+ else
+ err = __i386_set_gdt (child, &sel, desc);
+
+ state->gs = sel;
+ return err;
+}
+
# endif /* !ASSEMBLER */
#endif /* HAVE_TLS_SUPPORT */
diff --git a/sysdeps/sh/dl-machine.h b/sysdeps/sh/dl-machine.h
index d3cd73762e..271666a2a3 100644
--- a/sysdeps/sh/dl-machine.h
+++ b/sysdeps/sh/dl-machine.h
@@ -26,7 +26,7 @@
#define ELF_MACHINE_NAME "SH"
#include <sys/param.h>
-
+#include <sysdep.h>
#include <assert.h>
/* Return nonzero iff ELF header is compatible with the running host. */
@@ -72,7 +72,7 @@ elf_machine_load_address (void)
/* Set up the loaded object described by L so its unrelocated PLT
entries will jump to the on-demand fixup code in dl-runtime.c. */
-static inline int __attribute__ ((unused))
+static inline int __attribute__ ((unused, always_inline))
elf_machine_runtime_setup (struct link_map *l, int lazy, int profile)
{
Elf32_Addr *got;
@@ -141,27 +141,45 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile)
#ifdef HAVE_FPU
#define FGR_SAVE "\
sts.l fpscr, @-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov #8,r3\n\
swap.w r3, r3\n\
lds r3, fpscr\n\
fmov.s fr11, @-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
fmov.s fr10, @-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
fmov.s fr9, @-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
fmov.s fr8, @-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
fmov.s fr7, @-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
fmov.s fr6, @-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
fmov.s fr5, @-r15\n\
- fmov.s fr4, @-r15"
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
+ fmov.s fr4, @-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4)
#define FGR_LOAD "\
fmov.s @r15+, fr4\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
fmov.s @r15+, fr5\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
fmov.s @r15+, fr6\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
fmov.s @r15+, fr7\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
fmov.s @r15+, fr8\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
fmov.s @r15+, fr9\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
fmov.s @r15+, fr10\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
fmov.s @r15+, fr11\n\
- lds.l @r15+, fpscr"
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
+ lds.l @r15+, fpscr\n\
+ " CFI_ADJUST_CFA_OFFSET (-4)
#else
#define FGR_SAVE ""
#define FGR_LOAD ""
@@ -172,19 +190,29 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile)
.text\n\
.globl _dl_runtime_resolve\n\
.type _dl_runtime_resolve, @function\n\
+ " CFI_STARTPROC "\n\
.align 5\n\
_dl_runtime_resolve:\n\
mov.l r2,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r3,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r4,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r5,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r6,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r7,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r12,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
movt r3 ! Save T flag.\n\
mov.l r3,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
" FGR_SAVE "\n\
sts.l pr,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
tst r0,r0\n\
bt 1f\n\
mov r0,r2\n\
@@ -195,37 +223,57 @@ _dl_runtime_resolve:\n\
jsr @r0 ! Call resolver.\n\
mov r1,r6 ! reloc offset\n\
lds.l @r15+,pr ! Get register content back.\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
" FGR_LOAD "\n\
mov.l @r15+,r3\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
shal r3 ! Lode T flag.\n\
mov.l @r15+,r12\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
mov.l @r15+,r7\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
mov.l @r15+,r6\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
mov.l @r15+,r5\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
mov.l @r15+,r4\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
mov.l @r15+,r3\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
jmp @r0 ! Jump to function address.\n\
mov.l @r15+,r2\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
.align 2\n\
3:\n\
.long " GOTJMP (fixup) "\n\
+ " CFI_ENDPROC "\n\
.size _dl_runtime_resolve, .-_dl_runtime_resolve\n\
\n\
.globl _dl_runtime_profile\n\
.type _dl_runtime_profile, @function\n\
+ " CFI_STARTPROC "\n\
.align 5\n\
_dl_runtime_profile:\n\
mov.l r2,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r3,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r4,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r5,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r6,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r7,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r12,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
movt r3 ! Save T flag.\n\
mov.l r3,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
" FGR_SAVE "\n\
sts.l pr,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
tst r0,r0\n\
bt 1f\n\
mov r0,r2\n\
@@ -237,20 +285,30 @@ _dl_runtime_profile:\n\
jsr @r0 ! Call resolver.\n\
mov r1,r6 ! reloc offset\n\
lds.l @r15+,pr ! Get register content back.\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
" FGR_LOAD "\n\
mov.l @r15+,r3\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
shal r3 ! Lode T flag.\n\
mov.l @r15+,r12\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
mov.l @r15+,r7\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
mov.l @r15+,r6\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
mov.l @r15+,r5\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
mov.l @r15+,r4\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
mov.l @r15+,r3\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
jmp @r0 ! Jump to function address.\n\
mov.l @r15+,r2\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
.align 2\n\
3:\n\
.long " GOTJMP (profile_fixup) "\n\
+ " CFI_ENDPROC "\n\
.size _dl_runtime_profile, .-_dl_runtime_profile\n\
.previous\n\
");
@@ -265,16 +323,25 @@ _dl_runtime_profile:\n\
_dl_runtime_resolve:\n\
_dl_runtime_profile:\n\
mov.l r2,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r3,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r4,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r5,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r6,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r7,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
mov.l r12,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
movt r3 ! Save T flag.\n\
mov.l r3,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
" FGR_SAVE "\n\
sts.l pr,@-r15\n\
+ " CFI_ADJUST_CFA_OFFSET (4) "\n\
tst r0,r0\n\
bt 1f\n\
mov r0,r2\n\
@@ -286,20 +353,30 @@ _dl_runtime_profile:\n\
jsr @r0 ! Call resolver.\n\
mov r1,r6 ! reloc offset\n\
lds.l @r15+,pr ! Get register content back.\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
" FGR_LOAD "\n\
mov.l @r15+,r3\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
shal r3 ! Lode T flag.\n\
mov.l @r15+,r12\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
mov.l @r15+,r7\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
mov.l @r15+,r6\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
mov.l @r15+,r5\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
mov.l @r15+,r4\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
mov.l @r15+,r3\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
jmp @r0 ! Jump to function address.\n\
mov.l @r15+,r2\n\
+ " CFI_ADJUST_CFA_OFFSET (-4) "\n\
.align 2\n\
3:\n\
.long " GOTJMP (fixup) "\n\
+ " CFI_ENDPROC "\n\
.size _dl_runtime_resolve, .-_dl_runtime_resolve\n\
.size _dl_runtime_profile, .-_dl_runtime_profile\n\
.previous\n\
@@ -355,6 +432,7 @@ _dl_start_user:\n\
mov r5,r7\n\
shll2 r7\n\
add r15,r7\n\
+ add #8,r7\n\
mov.l .L_dl_loaded,r0\n\
mov.l @(r0,r12),r0\n\
mov.l @r0,r4\n\
@@ -442,7 +520,8 @@ elf_machine_plt_value (struct link_map *map, const Elf32_Rela *reloc,
/* Perform the relocation specified by RELOC and SYM (which is fully resolved).
MAP is the object containing the reloc. */
-static inline void
+auto inline void
+__attribute ((always_inline))
elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc,
const Elf32_Sym *sym, const struct r_found_version *version,
void *const reloc_addr_arg)
@@ -618,7 +697,8 @@ elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc,
}
}
-static inline void
+auto inline void
+__attribute__ ((always_inline))
elf_machine_rela_relative (Elf32_Addr l_addr, const Elf32_Rela *reloc,
void *const reloc_addr_arg)
{
@@ -636,7 +716,8 @@ elf_machine_rela_relative (Elf32_Addr l_addr, const Elf32_Rela *reloc,
#undef COPY_UNALIGNED_WORD
}
-static inline void
+auto inline void
+__attribute__ ((always_inline))
elf_machine_lazy_rel (struct link_map *map,
Elf32_Addr l_addr, const Elf32_Rela *reloc)
{
diff --git a/sysdeps/standalone/Dist b/sysdeps/standalone/Dist
deleted file mode 100644
index b6b12b709a..0000000000
--- a/sysdeps/standalone/Dist
+++ /dev/null
@@ -1,2 +0,0 @@
-filedesc.h
-standalone.h
diff --git a/sysdeps/standalone/Subdirs b/sysdeps/standalone/Subdirs
deleted file mode 100644
index 4125ae86db..0000000000
--- a/sysdeps/standalone/Subdirs
+++ /dev/null
@@ -1,4 +0,0 @@
-# The `bare' subdirectory defines some structure for a target-specific
-# library of functions which are actually implemented in
-# sysdeps/standalone/CPU/TARGET.
-bare
diff --git a/sysdeps/standalone/arm/bits/errno.h b/sysdeps/standalone/arm/bits/errno.h
deleted file mode 100644
index 8e10754330..0000000000
--- a/sysdeps/standalone/arm/bits/errno.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/* Copyright (C) 1991,1994,1996,1997,1998,2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* This file defines the `errno' constants for standalone ARM machines.
- These constants are essentially arbitrary. */
-
-#if !defined __Emath_defined && (defined _ERRNO_H || defined __need_Emath)
-# undef __need_Emath
-# define __Emath_defined 1
-
-# define EDOM 1
-# define ERANGE 2
-#endif
-
-#ifdef _ERRNO_H
-# define ENOSYS 3
-# define EINVAL 4
-# define ESPIPE 5
-# define EBADF 6
-# define ENOMEM 7
-# define EACCES 8
-# define ENFILE 9
-# define EMFILE 10
-# define ENAMETOOLONG 11 /* File name too long */
-# define ELOOP 12 /* Too many symbolic links encountered */
-# define ENOMSG 13 /* No message of desired type */
-# define E2BIG 14 /* Arg list too long */
-# define EINTR 15
-# define EILSEQ 16
-# define ENOEXEC 17
-# define ENOENT 18
-# define EPROTOTYPE 19
-# define ESRCH 20
-# define EPERM 21
-# define ENOTDIR 22
-# define ESTALE 23
-# define EISDIR 24
-# define EOPNOTSUPP 25 /* Operation not supported. */
-# define ENOTTY 26
-# define EAGAIN 27
-# define EIO 28
-# define ENOSPC 29
-# define EEXIST 30
-# define EBUSY 31
-# define EOVERFLOW 32
-#endif
-
-
-/* Function to get address of global `errno' variable. */
-extern int *__errno_location (void) __THROW __attribute__ ((__const__));
diff --git a/sysdeps/standalone/arm/sysdep.c b/sysdeps/standalone/arm/sysdep.c
deleted file mode 100644
index 8c17234226..0000000000
--- a/sysdeps/standalone/arm/sysdep.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-/* errno has to be defined somewhere, and it might as well be here. */
-int errno = 0;
-
-/* The same goes for these magic signal functions. This is a standalone
- environment so we do nothing. */
-void _sig_dfl(int sig)
-{
-}
-
-void _sig_ign(int sig)
-{
-}
diff --git a/sysdeps/standalone/bits/errno.h b/sysdeps/standalone/bits/errno.h
deleted file mode 100644
index 217c6d5d82..0000000000
--- a/sysdeps/standalone/bits/errno.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Copyright (C) 1991, 1994, 1996, 1997, 1998 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* This file defines the `errno' constants. */
-
-#if !defined __Emath_defined && (defined _ERRNO_H || defined __need_Emath)
-#undef __need_Emath
-#define __Emath_defined 1
-
-# define EDOM 1
-# define EILSEQ 17
-# define ERANGE 2
-#endif
-
-#ifdef _ERRNO_H
-# define ENOSYS 3
-# define EINVAL 4
-# define ESPIPE 5
-# define EBADF 6
-# define ENOMEM 7
-# define EACCES 8
-# define ENFILE 9
-# define EMFILE 10
-# define ENOMSG 11
-# define ENAMETOOLONG 12
-# define ELOOP 13
-# define E2BIG 15
-# define EINTR 16
-# define ENOEXEC 18
-# define ENOENT 19
-# define EPROTOTYPE 20
-# define ESRCH 21
-# define EPERM 22
-# define EEXIST 23
-# define ENOTDIR 24
-# define ESTALE 25
-# define ENOTTY 26
-# define EISDIR 27
-# define EOPNOTSUPP 28
-# define EAGAIN 29
-# define EIO 30
-# define ENOSPC 31
-# define EBUSY 32
-#endif
diff --git a/sysdeps/standalone/brk.c b/sysdeps/standalone/brk.c
deleted file mode 100644
index 32e148edcc..0000000000
--- a/sysdeps/standalone/brk.c
+++ /dev/null
@@ -1,66 +0,0 @@
-/* Copyright (C) 1991, 1994, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Ported to standalone by Joel Sherrill jsherril@redstone-emh2.army.mil,
- On-Line Applications Research Corporation.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <stdlib.h>
-
-void *__curbrk;
-void *__rorig;
-void *__rlimit;
-
-int
-__brk (inaddr)
- void *inaddr;
-{
-
- if ( ( (void *)inaddr > (void *)__rlimit ) ||
- ( (void *)inaddr < (void *)__rorig ) )
- return -1;
-
- __curbrk = inaddr;
- return 0;
-}
-
-/* Initialization Code for Memory Allocation */
-
-void *__C_heap_start;
-int __C_heap_size;
-
-#ifdef HAVE_GNU_LD
-static
-#endif
-void
-__NONE_set_memvals (argc, argv, envp)
- int argc;
- char **argv;
- char **envp;
-{
-
- __rorig =
- __curbrk = __C_heap_start;
- __rlimit = __curbrk + __C_heap_size;
-
- (void) &__NONE_set_memvals; /* Avoid "defined but not used" warning. */
-}
-
-#ifdef HAVE_GNU_LD
-text_set_element (__libc_subinit, __NONE_set_memvals);
-#endif
-
-weak_alias (__brk, brk)
diff --git a/sysdeps/standalone/close.c b/sysdeps/standalone/close.c
deleted file mode 100644
index 8c2caf1975..0000000000
--- a/sysdeps/standalone/close.c
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Copyright (C) 1994, 1995, 1996, 1997, 2002 Free Software Foundation, Inc.
- Ported to standalone by Joel Sherrill jsherril@redstone-emh2.army.mil,
- On-Line Applications Research Corporation.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <unistd.h>
-
-#define _STDIO_H
-#include <bits/stdio_lim.h>
-#include "filedesc.h"
-
-/* Close the file descriptor FD. */
-int
-__close (fd)
- int fd;
-{
- if ( !__FD_Is_valid( fd ) || !__FD_Table[ fd ].in_use )
- {
- __set_errno (EBADF);
- return -1;
- }
-
- __FD_Table[ fd ].in_use = 0;
- return 0;
-}
-libc_hidden_def (__close)
-weak_alias (__close, close)
diff --git a/sysdeps/standalone/dirstream.h b/sysdeps/standalone/dirstream.h
deleted file mode 100644
index 6f58294b4c..0000000000
--- a/sysdeps/standalone/dirstream.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Copyright (C) 1993, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _DIRSTREAM_H
-
-#define _DIRSTREAM_H 1
-
-#define __need_size_t
-#include <stddef.h>
-
-/* Directory stream type.
-
- The miscellaneous Unix `readdir' implementations read directory data
- into a buffer and fill in a `struct dirent' copy in the `DIR' object. */
-
-struct __dirstream
- {
- int __fd; /* File descriptor. */
-
- char *__data; /* Directory block. */
- size_t __allocation; /* Space allocated for the block. */
- size_t __offset; /* Current offset into the block. */
- size_t __size; /* Total valid data in the block. */
-
- struct dirent __entry; /* Returned by `readdir'. */
- };
-
-#endif /* dirstream.h */
diff --git a/sysdeps/standalone/filedesc.h b/sysdeps/standalone/filedesc.h
deleted file mode 100644
index b7c15b5010..0000000000
--- a/sysdeps/standalone/filedesc.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Copyright (C) 1994, 1997, 1998 Free Software Foundation, Inc.
- Ported to standalone by Joel Sherrill jsherril@redstone-emh2.army.mil,
- On-Line Applications Research Corporation.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/*
- * This is the file descriptor used by the no OS implementation
- * of __open, __read, __write, and __close.
- */
-
-#ifndef __FILEDESC_h
-#define __FILEDESC_h
-
-#define __need_FOPEN_MAX
-#include <bits/stdio_lim.h>
-
-#ifndef __DECLARE_FILE_DESCRIPTORS__
-#define FILEDESC_EXTERN extern
-#else
-#define FILEDESC_EXTERN
-#endif
-
-typedef struct {
- int in_use; /* 1 if in use, 0 otherwise */
- int flags; /* Flags from open */
-} __no_os_file_descriptor;
-
-#define __FD_Is_valid( _fd ) \
- ( (_fd) >= 0 && (_fd) < FOPEN_MAX )
-
-FILEDESC_EXTERN __no_os_file_descriptor __FD_Table[ FOPEN_MAX ];
-
-#endif
diff --git a/sysdeps/standalone/i386/Dist b/sysdeps/standalone/i386/Dist
deleted file mode 100644
index 98d13be9af..0000000000
--- a/sysdeps/standalone/i386/Dist
+++ /dev/null
@@ -1 +0,0 @@
-i386.h
diff --git a/sysdeps/standalone/i386/force_cpu386/Dist b/sysdeps/standalone/i386/force_cpu386/Dist
deleted file mode 100644
index 8b7b09e10a..0000000000
--- a/sysdeps/standalone/i386/force_cpu386/Dist
+++ /dev/null
@@ -1 +0,0 @@
-target.ld
diff --git a/sysdeps/standalone/i386/force_cpu386/Makefile b/sysdeps/standalone/i386/force_cpu386/Makefile
deleted file mode 100644
index 5cb4f2819d..0000000000
--- a/sysdeps/standalone/i386/force_cpu386/Makefile
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright (C) 1994, 1997 Free Software Foundation, Inc.
-# This file is part of the GNU C Library.
-# Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
-# On-Line Applications Research Corporation.
-
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
-
-# You should have received a copy of the GNU Lesser General Public
-# License along with the GNU C Library; if not, write to the Free
-# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-# 02111-1307 USA.
-
-ifeq (bare,$(subdir))
-install-others += $(inst_libdir)/force_cpu386.ld
-$(inst_libdir)/force_cpu386.ld: $(sysdep_dir)/standalone/i386/target.ld \
- $(+force)
- $(do-install)
-endif
diff --git a/sysdeps/standalone/i386/force_cpu386/_exit.c b/sysdeps/standalone/i386/force_cpu386/_exit.c
deleted file mode 100644
index 2da822e99b..0000000000
--- a/sysdeps/standalone/i386/force_cpu386/_exit.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Copyright (C) 1991, 1997, 1999, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-#include <stdlib.h>
-
-/* This returns control to FORCEbug. */
-
-void Bsp_cleanup (void);
-
-/* The function `_exit' should take a status argument and simply
- terminate program execution, using the low-order 8 bits of the
- given integer as status. */
-
-__NORETURN void
-_exit (status)
- int status;
-{
- /* status is ignored */
- Bsp_cleanup();
-}
-weak_alias (_exit, _Exit)
-
-#ifdef HAVE_GNU_LD
-
-#include <gnu-stabs.h>
-
-stub_warning(_exit);
-
-#endif /* GNU stabs. */
diff --git a/sysdeps/standalone/i386/force_cpu386/brdinit.c b/sysdeps/standalone/i386/force_cpu386/brdinit.c
deleted file mode 100644
index 8392ce5857..0000000000
--- a/sysdeps/standalone/i386/force_cpu386/brdinit.c
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Copyright (C) 1994, 1997, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <standalone.h>
-#include "i386.h"
-
-/* _Board_Initialize()
-
-This routine initializes the FORCE CPU386 board. */
-
-void _Console_Initialize (void);
-
-void
-_Board_Initialize ()
-{
- /*
- * FORCE documentation incorrectly states that the bus request
- * level is initialized to 3. It is actually initialized by
- * FORCEbug to 0.
- */
-
- outport_byte (0x00, 0x3f); /* resets VMEbus request level */
-
- _Console_Initialize ();
-}
diff --git a/sysdeps/standalone/i386/force_cpu386/console.c b/sysdeps/standalone/i386/force_cpu386/console.c
deleted file mode 100644
index 4c7271b660..0000000000
--- a/sysdeps/standalone/i386/force_cpu386/console.c
+++ /dev/null
@@ -1,163 +0,0 @@
-/* Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <standalone.h>
-#include "i386.h"
-
-/* Console IO routines for a FORCE CPU386 board. */
-
-/* Force CPU/386 specific IO addressing
- *
- * The following determines whether Port B or the Console should
- * be used for console I/O. Setting ONE (and only ONE) of these to 1
- * enables I/O on that port.
- *
- * PORT A - DUSCC MC68562 Channel A (*** not supported here ***)
- * PORT B - DUSCC MC68562 Channel B
- * PORT C - MFP MC68901 Channel (*** FORCEbug console ***)
- */
-
-#define PORTB 1 /* use port b as console */
-#define PORTC 0 /* use console port as console */
-
-#if ( PORTB == 1 )
-#define TX_STATUS 0x1b6 /* DUSCC General Status Register */
-#define RX_STATUS 0x1b6 /* DUSCC General Status Register */
-#define TX_BUFFER 0x1e0 /* DUSCC Transmitter Channel B */
-#define RX_BUFFER 0x1e8 /* DUSCC Receiver Channel B */
-#define Is_tx_ready( _status ) ( (_status) & 0x20 )
-#define Is_rx_ready( _status ) ( (_status) & 0x10 )
-#endif
-
-#if ( PORTC == 1 )
-#define TX_STATUS 0x12c /* MFP Transmit Status Register */
-#define RX_STATUS 0x12a /* MFP Receive Status Register */
-#define TX_BUFFER 0x12e /* MFP Transmitter Channel */
-#define RX_BUFFER 0x12e /* MFP Receiver Channel */
-#define Is_tx_ready( _status ) ( (_status) & 0x80 )
-#define Is_rx_ready( _status ) ( (_status) & 0x80 )
-#endif
-
-/* _Console_Initialize
-
-On the Force board the console require some initialization. */
-
-void
-_Console_Initialize ()
-{
- register unsigned8 ignored;
-
- /* FORCE technical support mentioned that it may be necessary to
- read the DUSCC RX_BUFFER port four times to remove all junk.
- This code is a little more paranoid. */
-
- inport_byte( RX_BUFFER, ignored );
- inport_byte( RX_BUFFER, ignored );
- inport_byte( RX_BUFFER, ignored );
- inport_byte( RX_BUFFER, ignored );
- inport_byte( RX_BUFFER, ignored );
-}
-
-/* Miscellaneous support for console IO */
-
-static inline int _Force386_is_rx_ready ()
-{
- register unsigned8 status;
-
- inport_byte( RX_STATUS, status );
-
- if ( Is_rx_ready( status ) ) return 1;
- else return 0;
-}
-
-static inline int _Force386_is_tx_ready ()
-{
- register unsigned8 status;
-
- inport_byte( TX_STATUS, status );
-
- if ( Is_tx_ready( status ) ) return 1;
- else return 0;
-}
-
-
-static inline int _Force386_read_data ()
-{
- register unsigned8 ch;
-
-#if ( PORTB == 1 )
- /* Force example code resets the Channel B Receiver here.
- * It appears to cause XON's to be lost.
- */
-
- /* outport_byte( RX_STATUS, 0x10 ); */
-#endif
-
- inport_byte( RX_BUFFER, ch );
-
- return ch;
-}
-
-/* _Console_Putc
-
-This routine transmits a character. It supports XON/XOFF flow control. */
-
-#define XON 0x11 /* control-Q */
-#define XOFF 0x13 /* control-S */
-
-int
-_Console_Putc (ch)
- char ch;
-{
- register unsigned8 inch;
-
- while ( !_Force386_is_tx_ready() );
-
- while ( _Force386_is_rx_ready() == 1 ) { /* must be an XOFF */
- inch = _Force386_read_data();
- if ( inch == XOFF )
- do {
- while ( _Force386_is_rx_ready() == 0 );
- inch = _Force386_read_data();
- } while ( inch != XON );
- }
-
- outport_byte( TX_BUFFER, ch );
- return( 0 );
-}
-
-/* _Console_Getc
-
-This routine reads a character from the UART and returns it. */
-
-int
-_Console_Getc (poll)
- int poll;
-{
- if ( poll ) {
- if ( !_Force386_is_rx_ready() )
- return -1;
- else
- return _Force386_read_data();
- } else {
- while ( !_Force386_is_rx_ready() );
- return _Force386_read_data();
- }
-}
diff --git a/sysdeps/standalone/i386/force_cpu386/strtsupp.S b/sysdeps/standalone/i386/force_cpu386/strtsupp.S
deleted file mode 100644
index 5d9ac5c4a1..0000000000
--- a/sysdeps/standalone/i386/force_cpu386/strtsupp.S
+++ /dev/null
@@ -1,87 +0,0 @@
-/* Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* This file assists the board independent startup code by
- * loading the proper segment register values. The values
- * loaded are dependent on the FORCEBUG.
- *
- * NOTE: No stack has been established when this routine
- * is invoked. It returns by jumping back to the start code.
- *
- */
-
-/*
- * FORCEBUG loads us into a virtual address space which
- * really starts at PHYSICAL_ADDRESS_BASE.
- *
- */
-
-.set PHYSICAL_ADDRESS_BASE, 0x00002000
-
-/*
- * At reset time, FORCEBUG normally has the segment selectors preloaded.
- * If a human resets the instruction pointer, this will not have occurred.
- * However, no guarantee can be made of the other registers if cs:ip was
- * modified to restart the program. Because of this, the BSP reloads all
- * segment registers (except cs) with the values they have following
- * a reset.
- */
-
-
-.set RESET_SS, 0x40 # initial value of stack segment register
-.set RESET_DS, 0x40 # initial value of data segment register
-.set RESET_ES, 0x40 # initial value of extra segment register
-.set RESET_FS, 0x40 # initial value of "f" segment register
-.set RESET_GS, 0x30 # initial value of "g" segment register
-
-
-#define LOAD_SEGMENTS(_value,_segreg) \
- movw $_value##,%ax ; \
- movw %ax,##_segreg
-
-
- .global _load_segments
-
- .global _establish_stack
-
-_load_segments:
-
- LOAD_SEGMENTS( RESET_SS, %ss )
- LOAD_SEGMENTS( RESET_DS, %ds )
- LOAD_SEGMENTS( RESET_ES, %es )
- LOAD_SEGMENTS( RESET_FS, %fs )
- LOAD_SEGMENTS( RESET_GS, %gs )
-
- jmp _establish_stack # return to the bsp entry code
-
- .global _return_to_monitor
-_return_to_monitor:
-
- movb $0,%al
- int $0x20 # restart FORCEbug
- jmp start # FORCEbug does not reset PC
-
- .data
-
- .global _Do_Load_IDT
-_Do_Load_IDT: .byte 1
-
- .global _Do_Load_GDT
-_Do_Load_GDT: .byte 0
diff --git a/sysdeps/standalone/i386/force_cpu386/target.ld b/sysdeps/standalone/i386/force_cpu386/target.ld
deleted file mode 100644
index d040cf9784..0000000000
--- a/sysdeps/standalone/i386/force_cpu386/target.ld
+++ /dev/null
@@ -1,58 +0,0 @@
-/* Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* This file contains directives for the GNU linker which are specific
-to the FORCE CPU386 board. */
-
-MEMORY
- {
- ram : org = 0x0, l = 1M
- }
-
-/* This value is also when the space is allocated. If you change
-this one, change the other one!!! */
-
-heap_size = 0x20000;
-
-SECTIONS
-{
- .text 0x0 :
- {
- _text_start = ABSOLUTE(.) ;
- *(.text)
- _etext = ALIGN( 0x10 ) ;
- }
- .data ADDR( .text ) + SIZEOF( .text ):
- {
- _data_start = . ;
- *(.data)
- _edata = ALIGN( 0x10 ) ;
- }
- .bss ADDR( .data ) + SIZEOF( .data ):
- {
- _bss_start = . ;
- *(.bss)
- *(COMMON)
- heap_memory = .;
- . += 0x20000;
- _end = . ;
- __end = . ;
- }
-}
diff --git a/sysdeps/standalone/i386/i386.h b/sysdeps/standalone/i386/i386.h
deleted file mode 100644
index 364e8abb3d..0000000000
--- a/sysdeps/standalone/i386/i386.h
+++ /dev/null
@@ -1,326 +0,0 @@
-/* Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* i386.h
- *
- * This file contains macros which are used to access i80386
- * registers which are not addressable by C. This file contains
- * functions which are useful to those developing target
- * specific support routines.
- */
-
-#ifndef i386_h__
-#define i386_h__
-
-typedef unsigned char unsigned8;
-typedef unsigned short unsigned16;
-typedef unsigned int unsigned32;
-
-#define disable_intr( isrlevel ) \
- { (isrlevel) = 0; \
- asm volatile ( "pushf ; \
- pop %0 ; \
- cli " \
- : "=r" ((isrlevel)) : "0" ((isrlevel)) ); \
- }
-
-
-#define enable_intr( isrlevel ) \
- { asm volatile ( "push %0 ; \
- popf " \
- : "=r" ((isrlevel)) : "0" ((isrlevel)) ); \
- }
-
-#define delay( _microseconds ) \
- { \
- unsigned32 _counter; \
- \
- _counter = (_microseconds); \
- \
- asm volatile ( "0: nop;" \
- " mov %0,%0 ;" \
- " loop 0" : "=c" (_counter) \
- : "0" (_counter) \
- ); \
- \
- }
-
-/* segment access functions */
-
-static inline unsigned16 get_cs()
-{
- register unsigned16 segment = 0;
-
- asm volatile ( "movw %%cs,%0" : "=r" (segment) : "0" (segment) );
-
- return segment;
-}
-
-static inline unsigned16 get_ds()
-{
- register unsigned16 segment = 0;
-
- asm volatile ( "movw %%ds,%0" : "=r" (segment) : "0" (segment) );
-
- return segment;
-}
-
-static inline unsigned16 get_es()
-{
- register unsigned16 segment = 0;
-
- asm volatile ( "movw %%es,%0" : "=r" (segment) : "0" (segment) );
-
- return segment;
-}
-
-static inline unsigned16 get_ss()
-{
- register unsigned16 segment = 0;
-
- asm volatile ( "movw %%ss,%0" : "=r" (segment) : "0" (segment) );
-
- return segment;
-}
-
-static inline unsigned16 get_fs()
-{
- register unsigned16 segment = 0;
-
- asm volatile ( "movw %%fs,%0" : "=r" (segment) : "0" (segment) );
-
- return segment;
-}
-
-static inline unsigned16 get_gs()
-{
- register unsigned16 segment = 0;
-
- asm volatile ( "movw %%gs,%0" : "=r" (segment) : "0" (segment) );
-
- return segment;
-}
-
-/* i80x86 I/O instructions */
-
-#define outport_byte( _port, _value ) \
- { register unsigned16 __port = _port; \
- register unsigned8 __value = _value; \
- \
- asm volatile ( "outb %0,%1" : "=a" (__value), "=d" (__port) \
- : "0" (__value), "1" (__port) \
- ); \
- }
-
-#define outport_word( _port, _value ) \
- { register unsigned16 __port = _port; \
- register unsigned16 __value = _value; \
- \
- asm volatile ( "outw %0,%1" : "=a" (__value), "=d" (__port) \
- : "0" (__value), "1" (__port) \
- ); \
- }
-
-#define outport_long( _port, _value ) \
- { register unsigned16 __port = _port; \
- register unsigned32 __value = _value; \
- \
- asm volatile ( "outl %0,%1" : "=a" (__value), "=d" (__port) \
- : "0" (__value), "1" (__port) \
- ); \
- }
-
-#define inport_byte( _port, _value ) \
- { register unsigned16 __port = _port; \
- register unsigned8 __value = 0; \
- \
- asm volatile ( "inb %1,%0" : "=a" (__value), "=d" (__port) \
- : "0" (__value), "1" (__port) \
- ); \
- _value = __value; \
- }
-
-#define inport_word( _port, _value ) \
- { register unsigned16 __port = _port; \
- register unsigned16 __value = 0; \
- \
- asm volatile ( "inw %1,%0" : "=a" (__value), "=d" (__port) \
- : "0" (__value), "1" (__port) \
- ); \
- _value = __value; \
- }
-
-#define inport_long( _port, _value ) \
- { register unsigned16 __port = _port; \
- register unsigned32 __value = 0; \
- \
- asm volatile ( "inl %1,%0" : "=a" (__value), "=d" (__port) \
- : "0" (__value), "1" (__port) \
- ); \
- _value = __value; \
- }
-
-/* structures */
-
-/* See Chapter 5 - Memory Management in i386 manual */
-
-struct GDT_slot {
- unsigned16 limit_0_15;
- unsigned16 base_0_15;
- unsigned8 base_16_23;
- unsigned8 type_dt_dpl_p;
- unsigned8 limit_16_19_granularity;
- unsigned8 base_24_31;
-};
-
-/* See Chapter 9 - Exceptions and Interrupts in i386 manual
- *
- * NOTE: This is the IDT entry for interrupt gates ONLY.
- */
-
-struct IDT_slot {
- unsigned16 offset_0_15;
- unsigned16 segment_selector;
- unsigned8 reserved;
- unsigned8 p_dpl;
- unsigned16 offset_16_31;
-};
-
-struct DTR_load_save_format {
- unsigned16 limit;
- unsigned32 physical_address;
-};
-
-/* variables */
-
-extern struct IDT_slot Interrupt_descriptor_table[ 256 ];
-extern struct GDT_slot Global_descriptor_table[ 8192 ];
-
-/* functions */
-
-#ifdef CPU_INITIALIZE
-#define EXTERN
-#else
-#undef EXTERN
-#define EXTERN extern
-#endif
-
-void *Logical_to_physical(
- unsigned16 segment,
- void *address
-);
-
-void *Physical_to_logical(
- unsigned16 segment,
- void *address
-);
-
-/* complicated static inline functions */
-
-#define get_GDTR( _gdtr_address ) \
- { \
- void *_gdtr = (_gdtr_address); \
- \
- asm volatile( "sgdt (%0)" : "=r" (_gdtr) : "0" (_gdtr) ); \
- }
-
-#define get_GDT_slot( _gdtr_base, _segment, _slot_address ) \
- { \
- register unsigned32 _gdt_slot = (_gdtr_base) + (_segment); \
- register volatile void *_slot = (_slot_address); \
- register unsigned32 _temporary = 0; \
- \
- asm volatile( "movl %%gs:(%0),%1 ; \
- movl %1,(%2) ; \
- movl %%gs:4(%0),%1 ; \
- movl %1,4(%2)" \
- : "=r" (_gdt_slot), "=r" (_temporary), "=r" (_slot) \
- : "0" (_gdt_slot), "1" (_temporary), "2" (_slot) \
- ); \
- }
-
-#define set_GDT_slot( _gdtr_base, _segment, _slot_address ) \
- { \
- register unsigned32 _gdt_slot = (_gdtr_base) + (_segment); \
- register volatile void *_slot = (_slot_address); \
- register unsigned32 _temporary = 0; \
- \
- asm volatile( "movl (%2),%1 ; \
- movl %1,%%gs:(%0) ; \
- movl 4(%2),%1 ; \
- movl %1,%%gs:4(%0) \
- " \
- : "=r" (_gdt_slot), "=r" (_temporary), "=r" (_slot) \
- : "0" (_gdt_slot), "1" (_temporary), "2" (_slot) \
- ); \
- }
-
-static inline void set_segment(
- unsigned16 segment,
- unsigned32 base,
- unsigned32 limit
-)
-{
- struct DTR_load_save_format gdtr;
- volatile struct GDT_slot Gdt_slot;
- volatile struct GDT_slot *gdt_slot = &Gdt_slot;
- unsigned16 tmp_segment = 0;
- unsigned32 limit_adjusted;
-
-
- /* load physical address of the GDT */
-
- get_GDTR( &gdtr );
-
- gdt_slot->type_dt_dpl_p = 0x92; /* present, dpl=0, */
- /* application=1, */
- /* type=data read/write */
- gdt_slot->limit_16_19_granularity = 0x40; /* 32 bit segment */
-
- limit_adjusted = limit;
- if ( limit > 4095 ) {
- gdt_slot->limit_16_19_granularity |= 0x80; /* set granularity bit */
- limit_adjusted /= 4096;
- }
-
- gdt_slot->limit_16_19_granularity |= (limit_adjusted >> 16) & 0xff;
- gdt_slot->limit_0_15 = limit_adjusted & 0xffff;
-
- gdt_slot->base_0_15 = base & 0xffff;
- gdt_slot->base_16_23 = (base >> 16) & 0xff;
- gdt_slot->base_24_31 = (base >> 24);
-
- set_GDT_slot( gdtr.physical_address, segment, gdt_slot );
-
- /* Now, reload all segment registers so the limit takes effect. */
-
- asm volatile( "movw %%ds,%0 ; movw %0,%%ds\n"
- "movw %%es,%0 ; movw %0,%%es\n"
- "movw %%fs,%0 ; movw %0,%%fs\n"
- "movw %%gs,%0 ; movw %0,%%gs\n"
- "movw %%ss,%0 ; movw %0,%%ss"
- : "=r" (tmp_segment)
- : "0" (tmp_segment)
- );
-
-}
-
-#endif
-/* end of include file */
diff --git a/sysdeps/standalone/i386/start.S b/sysdeps/standalone/i386/start.S
deleted file mode 100644
index b3fd315e5a..0000000000
--- a/sysdeps/standalone/i386/start.S
+++ /dev/null
@@ -1,338 +0,0 @@
-/* Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- In addition to the permissions in the GNU Lesser General Public
- License, the Free Software Foundation gives you unlimited
- permission to link the compiled version of this file with other
- programs, and to distribute those programs without any restriction
- coming from the use of this file. (The GNU Lesser General Public
- License restrictions do apply in other respects; for example, they
- cover modification of the file, and distribution when not linked
- into another program.)
-
- Note that people who make modified versions of this file are not
- obligated to grant this special exception for their modified
- versions; it is their choice whether to do so. The GNU Lesser
- General Public License gives permission to release a modified
- version without this exception; this exception also makes it
- possible to release a modified version which carries forward this
- exception.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* entry.s
- *
- * This file contains the entry point for the application.
- * The name of this entry point is compiler dependent.
- * It jumps to the BSP which is responsible for performing
- * all initialization.
- *
- */
-
- .data
- .global _Do_Load_IDT
- .global _Do_Load_GDT
-
- .text
- .global start # GNU default entry point
- .global _establish_stack
-
- .global _bsp_start
- .global _load_segments
- .global __exit
-
-start:
- nop
- cli # DISABLE INTERRUPTS!!!
-#
-# Load the segment registers
-#
-# NOTE: Upon return, gs will contain the segment descriptor for
-# a segment which maps directly to all of physical memory.
-#
- jmp _load_segments # load board dependent segments
-
-#
-# Set up the stack
-#
-
-_establish_stack:
-
- movl $stack_end,%esp # set stack pointer
- movl $stack_end,%ebp # set base pointer
-
-#
-# Zero out the BSS segment
-#
-zero_bss:
- cld # make direction flag count up
- movl $_end,%ecx # find end of .bss
- movl $_bss_start,%edi # edi = beginning of .bss
- subl %edi,%ecx # ecx = size of .bss in bytes
- shrl $2,%ecx # size of .bss in longs
- xorl %eax,%eax # value to clear out memory
- repne # while ecx != 0
- stosl # clear a long in the bss
-
-#
-# Set the C heap information for malloc
-#
- movl $heap_size,___C_heap_size # set ___C_heap_size
- movl $heap_memory,___C_heap_start # set ___C_heap_start
-
-#
-# Copy the Global Descriptor Table to our space
-#
-
- sgdt _Original_GDTR # save original GDT
- movzwl _Original_GDTR_limit,%ecx # size of GDT in bytes; limit
- # is 8192 entries * 8 bytes per
-
- # make ds:esi point to the original GDT
-
- movl _Original_GDTR_base,%esi
- push %ds # save ds
- movw %gs,%ax
- movw %ax,%ds
-
- # make es:edi point to the new (our copy) GDT
- movl $_Global_descriptor_table,%edi
-
- rep
- movsb # copy the GDT (ds:esi -> es:edi)
-
- pop %ds # restore ds
-
- # Build and load new contents of GDTR
- movw _Original_GDTR_limit,%ecx # set new limit
- movw %cx,_New_GDTR_limit
-
- push $_Global_descriptor_table
- push %es
- call _Logical_to_physical
- addl $6,%esp
- movl %eax,_New_GDTR_base # set new base
-
- cmpb $0,_Do_Load_GDT # Should the new GDT be loaded?
- je no_gdt_load # NO, then branch
- lgdt _New_GDTR # load the new GDT
-no_gdt_load:
-
-#
-# Copy the Interrupt Descriptor Table to our space
-#
-
- sidt _Original_IDTR # save original IDT
- movzwl _Original_IDTR_limit,%ecx # size of IDT in bytes; limit
- # is 256 entries * 8 bytes per
-
-
- # make ds:esi point to the original IDT
- movl _Original_IDTR_base,%esi
-
- push %ds # save ds
- movw %gs,%ax
- movw %ax,%ds
-
- # make es:edi point to the new (our copy) IDT
- movl $_Interrupt_descriptor_table,%edi
-
- rep
- movsb # copy the IDT (ds:esi -> es:edi)
- pop %ds # restore ds
-
- # Build and load new contents of IDTR
- movw _Original_IDTR_limit,%ecx # set new limit
- movw %cx,_New_IDTR_limit
-
- push $_Interrupt_descriptor_table
- push %es
- call _Logical_to_physical
- addl $6,%esp
- movl %eax,_New_IDTR_base # set new base
-
- cmpb $0,_Do_Load_IDT # Should the new IDT be loaded?
- je no_idt_load # NO, then branch
- lidt _New_IDTR # load the new IDT
-no_idt_load:
-
-#
-# Initialize the i387.
-#
-# Using the NO WAIT form of the instruction insures that if
-# it is not present the board will not lock up or get an
-# exception.
-#
-
- fninit # MUST USE NO-WAIT FORM
-
- call __Board_Initialize # initialize the board
-
- pushl $0 # envp = NULL
- pushl $0 # argv = NULL
- pushl $0 # argc = NULL
- call ___libc_init # initialize the library and
- # call main
- addl $12,%esp
-
- pushl $0 # argc = NULL
- call __exit # call the Board specific exit
- addl $4,%esp
-
-#
-# Clean up
-#
-
-
- .global _Bsp_cleanup
-
- .global _return_to_monitor
-
-_Bsp_cleanup:
- cmpb $0,_Do_Load_IDT # Was the new IDT loaded?
- je no_idt_restore # NO, then branch
- lidt _Original_IDTR # restore the new IDT
-no_idt_restore:
-
- cmpb $0,_Do_Load_GDT # Was the new GDT loaded?
- je no_gdt_restore # NO, then branch
- lgdt _Original_GDTR # restore the new GDT
-no_gdt_restore:
- jmp _return_to_monitor
-
-#
-# void *Logical_to_physical(
-# rtems_unsigned16 segment,
-# void *address
-# );
-#
-# Returns thirty-two bit physical address for segment:address.
-#
-
- .global _Logical_to_physical
-
-.set SEGMENT_ARG, 4
-.set ADDRESS_ARG, 8
-
-_Logical_to_physical:
-
- xorl %eax,%eax # clear eax
- movzwl SEGMENT_ARG(%esp),%ecx # ecx = segment value
- movl $_Global_descriptor_table,%edx # edx = address of our GDT
- addl %ecx,%edx # edx = address of desired entry
- movb 7(%edx),%ah # ah = base 31:24
- movb 4(%edx),%al # al = base 23:16
- shll $16,%eax # move ax into correct bits
- movw 2(%edx),%ax # ax = base 0:15
- movl ADDRESS_ARG(%esp),%ecx # ecx = address to convert
- addl %eax,%ecx # ecx = physical address equivalent
- movl %ecx,%eax # eax = ecx
- ret
-
-#
-# void *Physical_to_logical(
-# rtems_unsigned16 segment,
-# void *address
-# );
-#
-# Returns thirty-two bit physical address for segment:address.
-#
-
- .global _Physical_to_logical
-
-#.set SEGMENT_ARG, 4
-#.set ADDRESS_ARG, 8 -- use sets from above
-
-_Physical_to_logical:
-
- xorl %eax,%eax # clear eax
- movzwl SEGMENT_ARG(%esp),%ecx # ecx = segment value
- movl $_Global_descriptor_table,%edx # edx = address of our GDT
- addl %ecx,%edx # edx = address of desired entry
- movb 7(%edx),%ah # ah = base 31:24
- movb 4(%edx),%al # al = base 23:16
- shll $16,%eax # move ax into correct bits
- movw 2(%edx),%ax # ax = base 0:15
- movl ADDRESS_ARG(%esp),%ecx # ecx = address to convert
- subl %eax,%ecx # ecx = logical address equivalent
- movl %ecx,%eax # eax = ecx
- ret
-
-
-/*
- * Data Declarations. Start with a macro which helps declare space.
- */
-
- .bss
-
-#define DECLARE_SPACE(_name,_space,_align) \
- .globl _name ; \
- .align _align ; \
-_name##: .space _space
-
-#define DECLARE_LABEL(_name) \
- .globl _name ; \
-_name##:
-
-#define DECLARE_PTR(_name) DECLARE_SPACE(_name,4,2)
-#define DECLARE_U32(_name) DECLARE_SPACE(_name,4,2)
-#define DECLARE_U16(_name) DECLARE_SPACE(_name,2,1)
-
-/*
- * Require environment stuff
- */
-
-DECLARE_LABEL(_environ)
-DECLARE_PTR(environ)
-
-DECLARE_LABEL(_errno)
-DECLARE_U32(errno)
-
-/*
- * Miscellaneous Variables used to restore the CPU state.
- *
- * Start with a macro to declare the space for the contents of
- * a Descriptor Table register.
- */
-
-#define DECLARE_DTR_SPACE(_name) \
- .global _name ; \
- .align 4 ; \
-_name##: ; \
-_name##_limit: .space 2 ; \
-_name##_base: .space 4
-
-DECLARE_SPACE(_Interrupt_descriptor_table,256*8,4)
-DECLARE_SPACE(_Global_descriptor_table,8192*8,4)
-
-DECLARE_DTR_SPACE(_Original_IDTR)
-DECLARE_DTR_SPACE(_New_IDTR)
-DECLARE_DTR_SPACE(_Original_GDTR)
-DECLARE_DTR_SPACE(_New_GDTR)
-
-DECLARE_SPACE(_Physical_base_of_ds,4,4)
-DECLARE_SPACE(_Physical_base_of_cs,4,4)
-
-/*
- * Stack Size and Space
- */
-
- .set stack_size, 0x20000
-
-DECLARE_SPACE(stack_memory,stack_size,4)
-DECLARE_LABEL(stack_end)
diff --git a/sysdeps/standalone/i960/Dist b/sysdeps/standalone/i960/Dist
deleted file mode 100644
index e1747ef91e..0000000000
--- a/sysdeps/standalone/i960/Dist
+++ /dev/null
@@ -1 +0,0 @@
-i960ca.h
diff --git a/sysdeps/standalone/i960/i960ca.h b/sysdeps/standalone/i960/i960ca.h
deleted file mode 100644
index 0dcf5c374a..0000000000
--- a/sysdeps/standalone/i960/i960ca.h
+++ /dev/null
@@ -1,206 +0,0 @@
-/* Copyright (C) 1994, 1996, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* i960ca.h
- *
- * This file contains macros which are used to access i80960CA
- * registers which are not addressable by C. The functions
- * in this file should be useful to the developer of target
- * specific code.
- */
-
-#ifndef i960ca_h__
-#define i960ca_h__
-
-typedef unsigned char unsigned8;
-typedef unsigned short unsigned16;
-typedef unsigned int unsigned32;
-
-/*
- * Intel i80960CA Processor Control Block
- */
-
-struct i80960ca_prcb {
- unsigned32 *fault_tbl; /* fault table base address */
- struct i80960ca_ctltbl
- *control_tbl; /* control table base address */
- unsigned32 initial_ac; /* AC register initial value */
- unsigned32 fault_config; /* fault configuration word */
- void *intr_tbl; /* interrupt table base address */
- void *sys_proc_tbl; /* system procedure table */
- /* base address */
- unsigned32 reserved; /* reserved */
- unsigned32 *intr_stack; /* interrupt stack pointer */
- unsigned32 ins_cache_cfg; /* instruction cache */
- /* configuration word */
- unsigned32 reg_cache_cfg; /* register cache */
- /* configuration word */
-};
-
-/*
- * Intel i80960CA Control Table
- */
-
-struct i80960ca_ctltbl {
- /* Control Group 0 */
- unsigned32 ipb0; /* IP breakpoint 0 */
- unsigned32 ipb1; /* IP breakpoint 1 */
- unsigned32 dab0; /* data address breakpoint 0 */
- unsigned32 dab1; /* data address breakpoint 1 */
- /* Control Group 1 */
- unsigned32 imap0; /* interrupt map 0 */
- unsigned32 imap1; /* interrupt map 1 */
- unsigned32 imap2; /* interrupt map 2 */
- unsigned32 icon; /* interrupt control */
- /* Control Group 2 */
- unsigned32 mcon0; /* memory region 0 configuration */
- unsigned32 mcon1; /* memory region 1 configuration */
- unsigned32 mcon2; /* memory region 2 configuration */
- unsigned32 mcon3; /* memory region 3 configuration */
- /* Control Group 3 */
- unsigned32 mcon4; /* memory region 4 configuration */
- unsigned32 mcon5; /* memory region 5 configuration */
- unsigned32 mcon6; /* memory region 6 configuration */
- unsigned32 mcon7; /* memory region 7 configuration */
- /* Control Group 4 */
- unsigned32 mcon8; /* memory region 8 configuration */
- unsigned32 mcon9; /* memory region 9 configuration */
- unsigned32 mcon10; /* memory region 10 configuration */
- unsigned32 mcon11; /* memory region 11 configuration */
- /* Control Group 5 */
- unsigned32 mcon12; /* memory region 12 configuration */
- unsigned32 mcon13; /* memory region 13 configuration */
- unsigned32 mcon14; /* memory region 14 configuration */
- unsigned32 mcon15; /* memory region 15 configuration */
- /* Control Group 6 */
- unsigned32 bpcon; /* breakpoint control */
- unsigned32 tc; /* trace control */
- unsigned32 bcon; /* bus configuration control */
- unsigned32 reserved; /* reserved */
-};
-
-#define disable_intr( oldlevel ) \
- { (oldlevel) = 0x1f0000; \
- asm volatile ( "modpc 0,%1,%1" \
- : "=d" ((oldlevel)) \
- : "0" ((oldlevel)) ); \
- }
-
-#define enable_intr( oldlevel ) \
- { unsigned32 _mask = 0x1f0000; \
- asm volatile ( "modpc 0,%0,%1" \
- : "=d" (_mask), "=d" ((oldlevel)) \
- : "0" (_mask), "1" ((oldlevel)) ); \
- }
-
-#define flash_intr( oldlevel ) \
- { unsigned32 _mask = 0x1f0000; \
- asm volatile ( "modpc 0,%0,%1 ; \
- mov %0,%1 ; \
- modpc 0,%0,%1" \
- : "=d" (_mask), "=d" ((oldlevel)) \
- : "0" (_mask), "1" ((oldlevel)) ); \
- }
-
-#define atomic_modify( mask, addr, prev ) \
- { register unsigned32 _mask = (mask); \
- register unsigned32 *_addr = (unsigned32 *)(addr); \
- asm volatile( "atmod %0,%1,%1" \
- : "=d" (_addr), "=d" (_mask) \
- : "0" (_addr), "1" (_mask) ); \
- (prev) = _mask; \
- }
-
-#define delay( microseconds ) \
- { register unsigned32 _delay=(microseconds); \
- register unsigned32 _tmp; \
- asm volatile( "delay0: \
- remo 3,31,%0 ; \
- cmpo 0,%0 ; \
- subo 1,%1,%1 ; \
- cmpobne.t 0,%1,delay0 " \
- : "=d" (_tmp), "=d" (_delay) \
- : "0" (_tmp), "1" (_delay) ); \
- }
-
-#define enable_tracing() \
- { register unsigned32 _pc = 0x1; \
- asm volatile( "modpc 0,%0,%0" : "=d" (_pc) : "0" (_pc) ); \
- }
-
-#define unmask_intr( xint ) \
- { register unsigned32 _mask= (1<<(xint)); \
- asm volatile( "or sf1,%0,sf1" : "=d" (_mask) : "0" (_mask) ); \
- }
-
-#define mask_intr( xint ) \
- { register unsigned32 _mask= (1<<(xint)); \
- asm volatile( "andnot %0,sf1,sf1" : "=d" (_mask) : "0" (_mask) ); \
- }
-
-#define clear_intr( xint ) \
- { register unsigned32 _xint=(xint); \
- asm volatile( "loop_til_cleared:" \
- " clrbit %0,sf0,sf0 ;" \
- " bbs %0,sf0,loop_til_cleared" \
- : "=d" (_xint) : "0" (_xint) ); \
- }
-
-#define reload_ctl_group( group ) \
- { register int _cmd = ((group)|0x400) ; \
- asm volatile( "sysctl %0,%0,%0" : "=d" (_cmd) : "0" (_cmd) ); \
- }
-
-#define cause_intr( intr ) \
- { register int _intr = (intr); \
- asm volatile( "sysctl %0,%0,%0" : "=d" (_intr) : "0" (_intr) ); \
- }
-
-#define soft_reset( prcb ) \
- { register struct i80960ca_prcb *_prcb = (prcb); \
- register unsigned32 *_next=0; \
- register unsigned32 _cmd = 0x30000; \
- asm volatile( "lda next,%1; \
- sysctl %0,%1,%2; \
- next: mov g0,g0" \
- : "=d" (_cmd), "=d" (_next), "=d" (_prcb) \
- : "0" (_cmd), "1" (_next), "2" (_prcb) ); \
- }
-
-static inline unsigned32 pend_intrs()
-{ register unsigned32 _intr=0;
- asm volatile( "mov sf0,%0" : "=d" (_intr) : "0" (_intr) );
- return ( _intr );
-}
-
-static inline unsigned32 mask_intrs()
-{ register unsigned32 _intr=0;
- asm volatile( "mov sf1,%0" : "=d" (_intr) : "0" (_intr) );
- return( _intr );
-}
-
-static inline unsigned32 get_fp()
-{ register unsigned32 _fp=0;
- asm volatile( "mov fp,%0" : "=d" (_fp) : "0" (_fp) );
- return ( _fp );
-}
-
-#endif
-/* end of include file */
diff --git a/sysdeps/standalone/i960/nindy960/Makefile b/sysdeps/standalone/i960/nindy960/Makefile
deleted file mode 100644
index 40ead970ad..0000000000
--- a/sysdeps/standalone/i960/nindy960/Makefile
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright (C) 1993, 1997 Free Software Foundation, Inc.
-# This file is part of the GNU C Library.
-# Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
-# On-Line Applications Research Corporation.
-
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
-
-# You should have received a copy of the GNU Lesser General Public
-# License along with the GNU C Library; if not, write to the Free
-# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-# 02111-1307 USA.
-
-
-# The nindy960 support has only been tested on the following boards:
-#
-# + Cyclone CVME961 VMEbus single board computer.
diff --git a/sysdeps/standalone/i960/nindy960/_exit.c b/sysdeps/standalone/i960/nindy960/_exit.c
deleted file mode 100644
index 9cd3f8519e..0000000000
--- a/sysdeps/standalone/i960/nindy960/_exit.c
+++ /dev/null
@@ -1,55 +0,0 @@
-/* Copyright (C) 1991, 1997, 1999 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-#include <stdlib.h>
-
-/* The function `_exit' should take a status argument and simply
- terminate program execution, using the low-order 8 bits of the
- given integer as status. */
-
-/* This returns control to Nindy. */
-/* XXX where is __NORETURN ? */
-__NORETURN void
-_exit (status)
- int status;
-{
- /* status is ignored */
-
- asm volatile( "mov 0,g0; \
- fmark ; \
- syncf ; \
- .word 0xfeedface ; \
- bx start" : : );
- /* The constant 0xfeedface is a magic word for break which
- * is defined by NINDY. The branch extended restarts the
- * application if the user types "go".
- */
-}
-weak_alias (_exit, _Exit)
-
-
-#ifdef HAVE_GNU_LD
-
-#include <gnu-stabs.h>
-
-stub_warning(_exit);
-
-#endif /* GNU stabs. */
diff --git a/sysdeps/standalone/i960/nindy960/brdinit.c b/sysdeps/standalone/i960/nindy960/brdinit.c
deleted file mode 100644
index 9985a9930e..0000000000
--- a/sysdeps/standalone/i960/nindy960/brdinit.c
+++ /dev/null
@@ -1,64 +0,0 @@
-/* Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <standalone.h>
-#include "i960ca.h"
-
-/* _Board_Initialize()
-
-This routine initializes the board.
-
-NOTE: Only tested on a Cyclone CVME961 but should be OK on any i960ca board. */
-
-void
-_Board_Initialize ()
-{
- struct i80960ca_prcb *prcb; /* ptr to processor control block */
- struct i80960ca_ctltbl *ctl_tbl; /* ptr to control table */
-
- static inline struct i80960ca_prcb *get_prcb()
- { register struct i80960ca_prcb *_prcb = 0;
- asm volatile( "calls 5; \
- mov g0,%0" \
- : "=d" (_prcb) \
- : "0" (_prcb) );
- return ( _prcb );
- }
-
- prcb = get_prcb ();
- ctl_tbl = prcb->control_tbl;
-
- /* The following configures the data breakpoint (which must be set
- * before this is executed) to break on writes only.
- */
-
- ctl_tbl->bpcon &= ~0x00cc0000;
- reload_ctl_group (6);
-
- /* bit 31 of the Register Cache Control can be set to
- * enable an alternative caching algorithm. It does
- * not appear to help our applications.
- */
-
- /* Configure Number of Register Caches */
-
- prcb->reg_cache_cfg = 8;
- soft_reset (prcb);
-}
diff --git a/sysdeps/standalone/i960/nindy960/console.c b/sysdeps/standalone/i960/nindy960/console.c
deleted file mode 100644
index b062d9215b..0000000000
--- a/sysdeps/standalone/i960/nindy960/console.c
+++ /dev/null
@@ -1,76 +0,0 @@
-/* Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <standalone.h>
-#include "i960ca.h"
-
-/* Console IO routines for a NINDY960 board. */
-
-/*
- * NINDY_IO( ... )
- *
- * Interface to NINDY.
- */
-
-#define NINDY_INPUT 0
-#define NINDY_OUTPUT 1
-
-void ___NINDY_IO_WRAPPER( void ) /* never called */
-{
- asm volatile ( " .text" );
- asm volatile ( " .align 4" );
- asm volatile ( " .globl _NINDY_IO" );
- asm volatile ( "_NINDY_IO:" );
- asm volatile ( " calls 0 /* call console routines */" );
- asm volatile ( " ret" );
-}
-
-/***** !!!! HOW DO I EXFUN NINDY_IO? !!!! *****/
-
-/* _Console_Putc
-
-This routine transmits a character using NINDY. */
-
-int
-_Console_Putc (ch)
- char ch;
-{
- NINDY_IO( NINDY_OUTPUT, ch );
- return( 0 );
-}
-
-/* _Console_Getc
-
-This routine reads a character from NINDY and returns it. */
-
-int
-_Console_Getc (poll)
- int poll;
-{
- char ch;
-
- if ( poll ) {
- /* I don't know how to poll with NINDY */
- return -1;
- } else {
- NINDY_IO( NINDY_INPUT, &ch );
- return ch;
- }
-}
diff --git a/sysdeps/standalone/i960/start.S b/sysdeps/standalone/i960/start.S
deleted file mode 100644
index 579beb77fb..0000000000
--- a/sysdeps/standalone/i960/start.S
+++ /dev/null
@@ -1,152 +0,0 @@
-/* Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- In addition to the permissions in the GNU Lesser General Public
- License, the Free Software Foundation gives you unlimited
- permission to link the compiled version of this file with other
- programs, and to distribute those programs without any restriction
- coming from the use of this file. (The GNU Lesser General Public
- License restrictions do apply in other respects; for example, they
- cover modification of the file, and distribution when not linked
- into another program.)
-
- Note that people who make modified versions of this file are not
- obligated to grant this special exception for their modified
- versions; it is their choice whether to do so. The GNU Lesser
- General Public License gives permission to release a modified
- version without this exception; this exception also makes it
- possible to release a modified version which carries forward this
- exception.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* entry.s
- *
- * This file contains the entry point for the application.
- * The name of this entry point is compiler dependent.
- * It jumps to the BSP which is responsible for performing
- * all initialization.
- *
- */
-
- .text
- .globl start # GNU960 default entry point
-
-start:
- mov 3, r12
- modpc r12, r12, r12 # enable tracing/trace faults
- mov g5, g5 # NOP
- mov 0, g14 # initialize constant for C
-
- /*
- * zero out uninitialized data area
- */
-zerobss:
- lda _end, r4 /* find end of .bss */
- lda _bss_start, r5 /* find beginning of .bss */
- ldconst 0, r6
-
-loop: st r6, (r5) /* to zero out uninitialized */
- addo 4, r5, r5 /* data area */
- cmpobl r5, r4, loop /* loop until _end reached */
-
-
- lda heap_memory, r12 /* tell C lib where heap is */
- st r12,___C_heap_start
- lda heap_size, r12 /* tell C lib how big heap is */
- st r12,___C_heap_size
- lda stack_memory,r12 /* set up stack pointer: */
- mov r12, sp
- mov 0, g14 /* initialize constant for C */
-
- call init_frames
- ret /* return to monitor */
-
-init_frames:
- ldconst 0x3b001000, g0
- ldconst 0x00009107, g1
- modac g1, g0, g0 /* set AC controls */
-
- /*
- * Call application mainline.
- * Someday, real values of argc and argv will be set up.
- * For now, they are set to 0.
- */
-
- callx __Board_Initialize /* Initialize the board */
-
- ldconst 0,g0
- ldconst 0,g1
- ldconst 0,g2
- callx ___libc_init /* initialize the library and */
- /* call main */
- /*
- * if we return from main, we have "fallen" off the end
- * of the program, therefore status is 0
- * so move 0 to g0 (exit parameter)
- */
-
- mov 0, g0
- callx __exit
- ret
-
-
-/*
- * Data Declarations. Start with a macro which helps declare space.
- */
-
-#define DECLARE_SPACE(_name,_space,_align) \
- .globl _name ; \
- .align _align ; \
-.comm _name##,_space
-
-#define DECLARE_LABEL(_name) \
- .globl _name ; \
-_name##:
-
-#define DECLARE_PTR(_name) DECLARE_SPACE(_name,4,2)
-#define DECLARE_U32(_name) DECLARE_SPACE(_name,4,2)
-#define DECLARE_U16(_name) DECLARE_SPACE(_name,2,1)
-
-/*
- * Require environment stuff
- */
-
-DECLARE_LABEL(_environ)
-DECLARE_PTR(environ)
-
-DECLARE_LABEL(_errno)
-DECLARE_U32(errno)
-
-/*
- * Stack Size and Space
- */
-
- .set stack_size, 0x20000
-
-DECLARE_SPACE(stack_memory,stack_size,4)
-DECLARE_LABEL(stack_end)
-
-/*
- * Heap Size and Space
- */
-
- .set heap_size, 0x20000
-
-DECLARE_SPACE(heap_memory,heap_size,4)
-DECLARE_LABEL(heap_end)
diff --git a/sysdeps/standalone/m68k/m68020/Dist b/sysdeps/standalone/m68k/m68020/Dist
deleted file mode 100644
index 90b37b40eb..0000000000
--- a/sysdeps/standalone/m68k/m68020/Dist
+++ /dev/null
@@ -1 +0,0 @@
-m68020.h
diff --git a/sysdeps/standalone/m68k/m68020/m68020.h b/sysdeps/standalone/m68k/m68020/m68020.h
deleted file mode 100644
index 8eee00753e..0000000000
--- a/sysdeps/standalone/m68k/m68020/m68020.h
+++ /dev/null
@@ -1,87 +0,0 @@
-/* Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* m68020.h
- *
- * This file contains macros which are used to access MC68020
- * registers which are not addressable by C. These are
- * useful when developing the board specific support.
- */
-
-#ifndef m68020_h__
-#define m68020_h__
-
-typedef void ( *mc68020_isr )( void );
-
-#define disable_intr( level ) \
- { (level) = 0; \
- asm volatile ( "movew %%sr,%0 ; \
- orw #0x0700,%%sr" \
- : "=d" ((level)) : "0" ((level)) ); \
- }
-
-#define enable_intr( level ) \
- { asm volatile ( "movew %0,%%sr " \
- : "=d" ((level)) : "0" ((level)) ); \
- }
-
-#define flash_intr( level ) \
- { asm volatile ( "movew %0,%%sr ; \
- orw #0x0700,%%sr" \
- : "=d" ((level)) : "0" ((level)) ); \
- }
-
-#define get_vbr( vbr ) \
- { (vbr) = 0; \
- asm volatile ( "movec %%vbr,%0 " \
- : "=a" (vbr) : "0" (vbr) ); \
- }
-
-#define set_vbr( vbr ) \
- { register mc68020_isr *_vbr= (mc68020_isr *)(vbr); \
- asm volatile ( "movec %0,%%vbr " \
- : "=a" (_vbr) : "0" (_vbr) ); \
- }
-
-#define enable_caching() \
- { register unsigned int _ctl=0x01; \
- asm volatile ( "movec %0,%%cacr" \
- : "=d" (_ctl) : "0" (_ctl) ); \
- }
-
-#define delay( microseconds ) \
- { register unsigned int _delay=(microseconds); \
- register unsigned int _tmp=123; \
- asm volatile( "0: \
- nbcd %0 ; \
- nbcd %0 ; \
- dbf %1,0 " \
- : "=d" (_tmp), "=d" (_delay) \
- : "0" (_tmp), "1" (_delay) ); \
- }
-
-#define enable_tracing()
-#define cause_intr( X )
-#define clear_intr( X )
-
-extern mc68020_isr M68Kvec[]; /* vector table address */
-
-#endif
-/* end of include file */
diff --git a/sysdeps/standalone/m68k/m68020/mvme135/Implies b/sysdeps/standalone/m68k/m68020/mvme135/Implies
deleted file mode 100644
index 7142fe2985..0000000000
--- a/sysdeps/standalone/m68k/m68020/mvme135/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-# Motorola MVME135 and MVME136 are compatible.
-standalone/m68k/m68020/mvme136
diff --git a/sysdeps/standalone/m68k/m68020/mvme136/Dist b/sysdeps/standalone/m68k/m68020/mvme136/Dist
deleted file mode 100644
index 97b90583eb..0000000000
--- a/sysdeps/standalone/m68k/m68020/mvme136/Dist
+++ /dev/null
@@ -1 +0,0 @@
-mvme136.ld
diff --git a/sysdeps/standalone/m68k/m68020/mvme136/Makefile b/sysdeps/standalone/m68k/m68020/mvme136/Makefile
deleted file mode 100644
index 122c1b183e..0000000000
--- a/sysdeps/standalone/m68k/m68020/mvme136/Makefile
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright (C) 1993, 1997 Free Software Foundation, Inc.
-# This file is part of the GNU C Library.
-# Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
-# On-Line Applications Research Corporation.
-
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
-
-# You should have received a copy of the GNU Lesser General Public
-# License along with the GNU C Library; if not, write to the Free
-# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-# 02111-1307 USA.
-
-ifeq (bare,$(subdir))
-install-lib += mvme136.ld
-endif
diff --git a/sysdeps/standalone/m68k/m68020/mvme136/_exit.c b/sysdeps/standalone/m68k/m68020/mvme136/_exit.c
deleted file mode 100644
index e5e078c198..0000000000
--- a/sysdeps/standalone/m68k/m68020/mvme136/_exit.c
+++ /dev/null
@@ -1,50 +0,0 @@
-/* Copyright (C) 1994, 1997, 1999 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-#include <stdlib.h>
-#include "m68020.h"
-
-/* Return control to 135Bug */
-
-void
-__exit_trap ()
-{
- set_vbr( 0 ); /* restore 135Bug vectors */
- asm volatile( "trap #15" ); /* trap to 135Bug */
- asm volatile( ".short 0x63" ); /* return to 135Bug (.RETURN) */
- asm volatile( "jmp main" ); /* restart program */
-}
-
-/* The function `_exit' should take a status argument and simply
- terminate program execution, using the low-order 8 bits of the
- given integer as status. */
-
-void
-__attribute__ ((noreturn))
-_exit (status)
- int status;
-{
- /* status is ignored */
-
- M68Kvec[ 45 ] = __exit_trap; /* install exit_trap handler */
- asm volatile( "trap #13" ); /* insures SUPV mode */
-}
-weak_alias (_exit, _Exit)
diff --git a/sysdeps/standalone/m68k/m68020/mvme136/brdinit.c b/sysdeps/standalone/m68k/m68020/mvme136/brdinit.c
deleted file mode 100644
index 95b81c1e1b..0000000000
--- a/sysdeps/standalone/m68k/m68020/mvme136/brdinit.c
+++ /dev/null
@@ -1,51 +0,0 @@
-/* Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <standalone.h>
-#include "m68020.h"
-
-/* _Board_Initialize()
-
-This routine initializes the Motorola MVME135/MVME136. */
-
-void
-_Board_Initialize ()
-{
- mc68020_isr *monitors_vector_table;
- int index;
-
- monitors_vector_table = (mc68020_isr *)0; /* 135Bug Vectors are at 0 */
- set_vbr( monitors_vector_table );
-
- for ( index=2 ; index<=255 ; index++ )
- M68Kvec[ index ] = monitors_vector_table[ 32 ];
-
- M68Kvec[ 2 ] = monitors_vector_table[ 2 ]; /* bus error vector */
- M68Kvec[ 4 ] = monitors_vector_table[ 4 ]; /* breakpoints vector */
- M68Kvec[ 9 ] = monitors_vector_table[ 9 ]; /* trace vector */
- M68Kvec[ 47 ] = monitors_vector_table[ 47 ]; /* system call vector */
-
- set_vbr( &M68Kvec );
-
- (*(unsigned char *)0xfffb0067) = 0x7f; /* make VME access round-robin */
-
- enable_caching ();
-
-}
diff --git a/sysdeps/standalone/m68k/m68020/mvme136/console.c b/sysdeps/standalone/m68k/m68020/mvme136/console.c
deleted file mode 100644
index 85dee983bf..0000000000
--- a/sysdeps/standalone/m68k/m68020/mvme136/console.c
+++ /dev/null
@@ -1,101 +0,0 @@
-/* Copyright (C) 1994, 1996 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <standalone.h>
-#include "m68020.h"
-
-/* Console IO routines for a Motorola MVME135/MVME136 board.
-
-They currently use the B port. It should be possible to
-use the A port by filling in the reset of the chip structure,
-adding an ifdef for PORTA/PORTB, and switching the addresses,
-and maybe the macros based on the macro. */
-
-/* M68681 DUART chip register structures and constants */
-
-typedef struct {
- volatile unsigned char fill1[ 5 ]; /* channel A regs ( not used ) */
- volatile unsigned char isr; /* interrupt status reg */
- volatile unsigned char fill2[ 2 ]; /* counter regs (not used) */
- volatile unsigned char mr1mr2b; /* MR1B and MR2B regs */
- volatile unsigned char srb; /* status reg channel B */
- volatile unsigned char fill3; /* do not access */
- volatile unsigned char rbb; /* receive buffer channel B */
- volatile unsigned char ivr; /* interrupt vector register */
-} r_m681_info;
-
-typedef struct {
- volatile unsigned char fill1[ 4 ]; /* channel A regs (not used) */
- volatile unsigned char acr; /* auxillary control reg */
- volatile unsigned char imr; /* interrupt mask reg */
- volatile unsigned char fill2[ 2 ]; /* counter regs (not used) */
- volatile unsigned char mr1mr2b; /* MR1B and MR2B regs */
- volatile unsigned char csrb; /* clock select reg */
- volatile unsigned char crb; /* command reg */
- volatile unsigned char tbb; /* transmit buffer channel B */
- volatile unsigned char ivr; /* interrupt vector register */
-} w_m681_info;
-
-#define RD_M68681 ((r_m681_info *)0xfffb0040) /* ptr to the M68681 */
-#define WR_M68681 ((w_m681_info *)0xfffb0040) /* ptr to the M68681 */
-#define RXRDYB 0x01 /* status reg recv ready mask */
-#define TXRDYB 0x04 /* status reg trans ready mask */
-
-/* _Console_Putc
-
-This routine transmits a character out the M68681. It supports
-XON/XOFF flow control. */
-
-#define XON 0x11 /* control-Q */
-#define XOFF 0x13 /* control-S */
-
-int
-_Console_Putc (ch)
- char ch;
-{
- while ( ! (RD_M68681->srb & TXRDYB) ) ;
- while ( RD_M68681->srb & RXRDYB ) /* must be an XOFF */
- if ( RD_M68681->rbb == XOFF )
- do {
- while ( ! (RD_M68681->srb & RXRDYB) ) ;
- } while ( RD_M68681->rbb != XON );
-
- WR_M68681->tbb = ch;
- return( 0 );
-}
-
-/* _Console_Getc
-
-This routine reads a character from the UART and returns it. */
-
-int
-_Console_Getc (poll)
- int poll;
-{
- if ( poll ) {
- if ( !(RD_M68681->srb & RXRDYB) )
- return -1;
- else
- return RD_M68681->rbb;
- } else {
- while ( !(RD_M68681->srb & RXRDYB) );
- return RD_M68681->rbb;
- }
-}
diff --git a/sysdeps/standalone/m68k/m68020/mvme136/mvme136.ld b/sysdeps/standalone/m68k/m68020/mvme136/mvme136.ld
deleted file mode 100644
index 9a352f0095..0000000000
--- a/sysdeps/standalone/m68k/m68020/mvme136/mvme136.ld
+++ /dev/null
@@ -1,61 +0,0 @@
-/* Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* This file contains directives for the GNU linker which are specific
-to the Motorola MVME136/MVME135 boards. */
-
-MEMORY
- {
- ram : org = 0x3000, l = 1M
- }
-
-/* This value is also when the space is allocated. If you change
-this one, change the other one!!! */
-
-heap_size = 0x20000;
-
-SECTIONS
-{
- .text 0x3000 :
- {
- text_start = ABSOLUTE(.) ;
- *(.text)
- etext = ALIGN( 0x10 ) ;
- }
-
- .data ADDR( .text ) + SIZEOF( .text ):
- {
- data_start = . ;
- *(.data)
- edata = ALIGN( 0x10 ) ;
- }
-
- .bss ADDR( .data ) + SIZEOF( .data ):
- {
- bss_start = . ;
- _bss_start = . ;
- *(.bss)
- *(COMMON)
- heap_memory = .;
- . += 0x20000;
- end = . ;
- _end = . ;
- }
-}
diff --git a/sysdeps/standalone/m68k/m68020/start.S b/sysdeps/standalone/m68k/m68020/start.S
deleted file mode 100644
index 166605fb4f..0000000000
--- a/sysdeps/standalone/m68k/m68020/start.S
+++ /dev/null
@@ -1,172 +0,0 @@
-/* Copyright (C) 1994, 1996, 1997 Free Software Foundation, Inc.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- In addition to the permissions in the GNU Lesser General Public
- License, the Free Software Foundation gives you unlimited
- permission to link the compiled version of this file with other
- programs, and to distribute those programs without any restriction
- coming from the use of this file. (The GNU Lesser General Public
- License restrictions do apply in other respects; for example, they
- cover modification of the file, and distribution when not linked
- into another program.)
-
- Note that people who make modified versions of this file are not
- obligated to grant this special exception for their modified
- versions; it is their choice whether to do so. The GNU Lesser
- General Public License gives permission to release a modified
- version without this exception; this exception also makes it
- possible to release a modified version which carries forward this
- exception.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* entry.s
- *
- * This file contains the entry point for the application.
- * The name of this entry point is compiler dependent.
- * It jumps to the BSP which is responsible for performing
- * all initialization.
- */
-
- .text
- .globl start | Default entry point
- .globl _start | Default entry point
- .globl M68Kvec | Vector Table
- .globl _M68Kvec | Vector Table
-
-start:
-_start:
-M68Kvec: | standard location for vectors
-_M68Kvec: | standard location for vectors
- nop | for linkers with problem
- | using location zero as entry
- jmp around
- .space 4088 | to avoid initial intr stack
- | from 135BUG on MVME13? as entry
- | and start code at 0x4000
-around:
- move.w %sr,initial_sr | save initial values
- movec %isp,%a0
- movel %a0,initial_isp
- movec %usp,%a0
- movel %a0,initial_usp
- movec %msp,%a0
- movel %a0,initial_msp
- oriw #0x0700,%sr | INTERRUPTS OFF!!!
-
-
-
- |
- | zero out uninitialized data area
- |
-zerobss:
- moveal #end,%a0 | find end of .bss
- moveal #_bss_start,%a1 | find beginning of .bss
- movel #0,%d0
-
-loop: movel #0,%a1@+ | to zero out uninitialized
- cmpal %a0,%a1
- jlt loop | loop until _end reached
-
- movel #heap_size,__C_heap_size | set ___C_heap_size
- movel #heap_memory,__C_heap_start | set ___C_heap_start
- moveal #interrupt_stack_end,%a0 | set interrupt stack pointer
- movec %a0,%isp
- moveal #stack_end,%a0 | set master stack pointer
- movec %a0,%msp
- moveal #stack_end,%a6 | set base pointer
- movw #0x3000,%sr | SUPV MODE,INTERRUPTS ON!!!
-
-#ifdef NEED_UNDERSCORES
- jsr __Board_Initialize | initialize the board
-#else
- jsr _Board_Initialize | initialize the board
-#endif
-
- move.l #0,%sp@- | envp = NULL
- move.l #0,%sp@- | argv = NULL
- move.l #0,%sp@- | argc = NULL
-#ifdef NEED_UNDERSCORES
- jsr ___libc_init | initialize the library and
- | call main
-#else
- jsr __libc_init | initialize the library and
- | call main
-#endif
- add.l #12,%sp
-
- move.l #0,%sp@- | argc = NULL
- jsr __exit | call the Board specific exit
- addq.l #4,%sp
-
- move.l initial_isp,%a0 | if __exit returns then we can
- movec %a0,%isp | restore the initial values
- move.l initial_usp,%a0
- movec %a0,%usp
- move.l initial_msp,%a0
- movec %a0,%msp
- move.w initial_sr,%sr
- rts
-
-
- .bss
-
-/*
- * So initial stack registers and status register can be saved.
- */
-
-#define DECLARE_SPACE(_name,_space,_align) \
- .globl _name ; \
- .align _align ; \
-_name##: .space _space
-
-#define DECLARE_LABEL(_name) \
- .globl _name ; \
-_name##:
-
-#define DECLARE_PTR(_name) DECLARE_SPACE(_name,4,2)
-#define DECLARE_U32(_name) DECLARE_SPACE(_name,4,2)
-#define DECLARE_U16(_name) DECLARE_SPACE(_name,2,1)
-
-DECLARE_U32(initial_isp)
-DECLARE_U32(initial_msp)
-DECLARE_U32(initial_usp)
-DECLARE_U16(initial_sr)
-
-/*
- * Require environment stuff
- */
-
-DECLARE_LABEL(_environ)
-DECLARE_PTR(environ)
-
-DECLARE_LABEL(__errno)
-DECLARE_LABEL(_errno)
-DECLARE_U32(errno)
-
-/*
- * Stack Size and Space
- */
-
- .set stack_size, 0x20000
-
-DECLARE_SPACE(stack_memory,stack_size,4)
-DECLARE_LABEL(stack_end)
-
-DECLARE_SPACE(interrupt_stack_memory,0x1000,4)
-DECLARE_LABEL(interrupt_stack_end)
diff --git a/sysdeps/standalone/open.c b/sysdeps/standalone/open.c
deleted file mode 100644
index e0a3432415..0000000000
--- a/sysdeps/standalone/open.c
+++ /dev/null
@@ -1,125 +0,0 @@
-/* Copyright (C) 1994, 1995, 1996, 1997, 2002 Free Software Foundation, Inc.
- Ported to standalone by Joel Sherrill jsherril@redstone-emh2.army.mil,
- On-Line Applications Research Corporation.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <fcntl.h>
-#include <stdarg.h>
-#include <stddef.h>
-
-#include <stdio.h>
-#include <bits/stdio_lim.h>
-#include <unistd.h>
-
-#define __DECLARE_FILE_DESCRIPTORS__
-
-#include "filedesc.h"
-
-/* Open FILE with access OFLAG. If OFLAG includes O_CREAT,
- a third argument is the file protection. */
-int
-__open (file, oflag)
- const char *file;
- int oflag;
-{
- int mode;
- int newfd;
- int index;
-
- if (file == NULL)
- {
- __set_errno (EINVAL);
- return -1;
- }
-
- if (oflag & O_CREAT)
- {
- va_list arg;
- va_start(arg, oflag);
- mode = va_arg(arg, int);
- va_end(arg);
- }
-
- /*
- * Find an open slot.
- */
-
- newfd = -1;
-
- for ( index=0 ; index< FOPEN_MAX ; index++ )
- if ( !__FD_Table[ index ].in_use ) {
- newfd = index;
- break;
- }
-
- if ( newfd == -1 ) {
- __set_errno (ENFILE);
- return -1;
- }
-
- /*
- * Initialize the open slot
- */
-
- __FD_Table[ newfd ].in_use = 1;
- __FD_Table[ newfd ].flags = oflag;
-
- return newfd;
-}
-libc_hidden_def (__open)
-
-/* Initialization Code for Console I/O */
-
-#ifdef HAVE_GNU_LD
-static
-#endif
-void
-__NONE_init_console_io (argc, argv, envp)
- int argc;
- char **argv;
- char **envp;
-{
- int index;
-
- for ( index=0 ; index< FOPEN_MAX ; index++ )
- __FD_Table[ index ].in_use = 0;
-
- stdin = fopen( "", "r" );
-
- stdout = fopen( "", "w" );
-
- stderr = fopen( "", "w" );
-
- /*
- * Line buffer the standard input and output and use no buffering for
- * standard error.
- */
-
- setvbuf( stdin, NULL, _IOLBF, BUFSIZ );
- setvbuf( stdout, NULL, _IOLBF, BUFSIZ );
- setvbuf( stderr, NULL, _IONBF, BUFSIZ );
-
- (void) &__NONE_init_console_io; /* Avoid "defined but not used" warning. */
-}
-
-#ifdef HAVE_GNU_LD
-text_set_element (__libc_subinit, __NONE_init_console_io);
-#endif
-
-weak_alias (__open, open)
diff --git a/sysdeps/standalone/read.c b/sysdeps/standalone/read.c
deleted file mode 100644
index 0fb9e7a1ec..0000000000
--- a/sysdeps/standalone/read.c
+++ /dev/null
@@ -1,86 +0,0 @@
-/* Copyright (C) 1994, 1995, 1996, 1997, 2002 Free Software Foundation, Inc.
- Ported to standalone by Joel Sherrill jsherril@redstone-emh2.army.mil,
- On-Line Applications Research Corporation.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <unistd.h>
-#include <stddef.h>
-
-#include "filedesc.h"
-#include <fcntl.h>
-#include <standalone.h>
-
-/* Read NBYTES into BUF from FD. Return the number read or -1. */
-ssize_t
-__libc_read (int fd, void *buf, size_t nbytes)
-{
- char *buffer = (char *) buf;
- int data;
- int poll;
-
- __set_errno (0);
-
- if (nbytes == 0)
- return 0;
-
- if ( !__FD_Is_valid( fd ) || !__FD_Table[ fd ].in_use )
- {
- __set_errno (EBADF);
- return -1;
- }
- if (buf == NULL)
- {
- __set_errno (EINVAL);
- return -1;
- }
-
- if ( __FD_Table[ fd ].flags & O_WRONLY ) /* is it write only? */
- {
- __set_errno (EBADF);
- return -1;
- }
-
- /* If this is a non-blocking fd, then we want to poll the console. */
-
- poll = ( __FD_Table[ fd ].flags & O_NONBLOCK ) ? 1 : 0;
-
- /* Read a single character. This is a cheap way to insure that the
- upper layers get every character because _Console_Getc can't timeout
- or otherwise know when to stop. */
-
-
- data = _Console_Getc(poll);
-
- if ( data == -1 ) /* if no data return */
- return -1;
-
- (void) _Console_Putc(data); /* echo the character */
-
- if ( data == '\r' ) { /* translate CR -> CR/LF */
- (void) _Console_Putc('\n');
- data = '\n';
- }
-
- *buffer = data;
- return 1;
-}
-libc_hidden_def (__libc_read)
-weak_alias (__libc_read, __read)
-libc_hidden_weak (__read)
-weak_alias (__libc_read, read)
diff --git a/sysdeps/standalone/standalone.h b/sysdeps/standalone/standalone.h
deleted file mode 100644
index 20a0c33806..0000000000
--- a/sysdeps/standalone/standalone.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright (C) 1994, 1997, 2004 Free Software Foundation, Inc.
- Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
- On-Line Applications Research Corporation.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _STANDALONE_H
-#define _STANDALONE_H
-
-#include <sys/cdefs.h>
-
-extern void _Board_Initialize (void);
-
-extern int _Console_Putc (char c);
-extern int _Console_Getc (int poll);
-
-#endif
diff --git a/sysdeps/standalone/write.c b/sysdeps/standalone/write.c
deleted file mode 100644
index 5d3823065f..0000000000
--- a/sysdeps/standalone/write.c
+++ /dev/null
@@ -1,73 +0,0 @@
-/* Copyright (C) 1994, 1995, 1996, 1997, 2002 Free Software Foundation, Inc.
- Ported to standalone by Joel Sherrill jsherril@redstone-emh2.army.mil,
- On-Line Applications Research Corporation.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-#include <errno.h>
-#include <unistd.h>
-#include <stddef.h>
-
-#include "filedesc.h"
-#include <fcntl.h>
-#include <standalone.h>
-
-/* Write NBYTES of BUF to FD. Return the number written, or -1. */
-ssize_t
-__libc_write (int fd, const void *buf, size_t nbytes)
-{
- int count;
- const char *data = buf;
-
- if (nbytes == 0)
- return 0;
- if ( !__FD_Is_valid( fd ) || !__FD_Table[ fd ].in_use )
- {
- __set_errno (EBADF);
- return -1;
- }
- if (buf == NULL)
- {
- __set_errno (EINVAL);
- return -1;
- }
-
- if ( !(__FD_Table[ fd ].flags & (O_WRONLY|O_RDWR)) ) /* is it writeable? */
- {
- __set_errno (EBADF);
- return -1;
- }
-
- /*
- * All open file descriptors are mapped to the console.
- */
-
- for ( count=0 ; count != nbytes ; count++ ) {
- if ( _Console_Putc(data[ count ]) == -1 )
- return -1;
- if ( data[count] == '\n' && _Console_Putc('\r') == -1 )
- return -1;
- }
-
- return count;
-}
-
-libc_hidden_def (__libc_write)
-weak_alias (__libc_write, __write)
-libc_hidden_weak (__write)
-weak_alias (__libc_write, write)
diff --git a/sysdeps/tahoe/Implies b/sysdeps/tahoe/Implies
deleted file mode 100644
index 5a3163701f..0000000000
--- a/sysdeps/tahoe/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-# A Tahoe is mostly just like a Vax.
-vax
diff --git a/sysdeps/unix/bsd/hp/Dist b/sysdeps/unix/bsd/hp/Dist
deleted file mode 100644
index ccd3a610ee..0000000000
--- a/sysdeps/unix/bsd/hp/Dist
+++ /dev/null
@@ -1 +0,0 @@
-m68k/dl-brk.S
diff --git a/sysdeps/unix/bsd/hp/m68k/brk.S b/sysdeps/unix/bsd/hp/m68k/brk.S
deleted file mode 100644
index 037d4d0d07..0000000000
--- a/sysdeps/unix/bsd/hp/m68k/brk.S
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Copyright (C) 1991, 1993, 1994, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-#ifndef SYS_brk
-#define SYS_brk 17
-#endif
-
-#ifndef HAVE_GNU_LD
-#define __end _end
-#endif
-
-.data
-.globl ___curbrk
-___curbrk:
- .long __end
-
-.text
-ENTRY (__brk)
- movel #__end, d0
- cmpl sp@(4), d0
- ble 0f
- movel d0, sp@(4)
-0: DO_CALL (#SYS_brk, 1)
- movel sp@(4), ___curbrk
- clrl d0
- rts
-error: jmp syscall_error
-
-weak_alias (__brk, brk)
diff --git a/sysdeps/unix/bsd/hp/m68k/dl-brk.S b/sysdeps/unix/bsd/hp/m68k/dl-brk.S
deleted file mode 100644
index eeb96544e3..0000000000
--- a/sysdeps/unix/bsd/hp/m68k/dl-brk.S
+++ /dev/null
@@ -1 +0,0 @@
-#include <brk.S>
diff --git a/sysdeps/unix/bsd/hp/m68k/start.c b/sysdeps/unix/bsd/hp/m68k/start.c
deleted file mode 100644
index e04ca0632d..0000000000
--- a/sysdeps/unix/bsd/hp/m68k/start.c
+++ /dev/null
@@ -1,10 +0,0 @@
-/* hp300 4.3 BSD starts at 4, rather than 0, when the start address is 0.
- Go figure. */
-asm(".globl __start");
-asm("__start: .long 0");
-
-#define _start __start0
-
-#define DUMMIES dummy0
-
-#include <sysdeps/unix/start.c>
diff --git a/sysdeps/unix/bsd/hp/m68k/sysdep.h b/sysdeps/unix/bsd/hp/m68k/sysdep.h
deleted file mode 100644
index 75aee674f5..0000000000
--- a/sysdeps/unix/bsd/hp/m68k/sysdep.h
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Copyright (C) 1991, 92, 93, 94, 95, 97 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* This code wants to be run through m4. */
-
-#include <sysdeps/unix/sysdep.h>
-
-#ifdef __ASSEMBLER__
-
-#define POUND #
-
-#ifdef __STDC__
-#define ENTRY(name) \
- .globl _##name; \
- .even; \
- _##name##:
-#else
-#define ENTRY(name) \
- .globl _/**/name; \
- .even; \
- _/**/name/**/:
-#endif
-
-#define PSEUDO(name, syscall_name, args) \
- .even; \
- .globl syscall_error; \
- error: jmp syscall_error; \
- ENTRY (name) \
- DO_CALL (POUND SYS_ify (syscall_name), args)
-
-#define DO_CALL(syscall, args) \
- movel syscall, d0; \
- trap POUND 0; \
- bcs error
-
-#define ret rts
-#define r0 d0
-#define r1 d1
-#define MOVE(x,y) movel x , y
-
-#endif /* __ASSEMBLER__ */
diff --git a/sysdeps/unix/bsd/hp/m68k/vfork.S b/sysdeps/unix/bsd/hp/m68k/vfork.S
deleted file mode 100644
index abcc1c3389..0000000000
--- a/sysdeps/unix/bsd/hp/m68k/vfork.S
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Copyright (C) 1991, 1994, 1995, 1997, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-#ifndef SYS_vfork
-#define SYS_vfork 66
-#endif
-
-/* Clone the calling process, but without copying the whole address space.
- The calling process is suspended until the new process exits or is
- replaced by a call to `execve'. Return -1 for errors, 0 to the new process,
- and the process ID of the new process to the old process. */
-.globl ___vfork
-___vfork:
- /* Pop the return PC value into A0. */
- moveal sp@+, a0
-
- /* Stuff the syscall number in D0 and trap into the kernel. */
- movel #SYS_vfork, d0
- trap #0
- bcs error /* Branch forward if it failed. */
-
- /* It succeeded. See which fork we're in. D1 is now 0 for the
- parent and 1 for the child. Decrement it to make it -1 (all
- bits set) for the parent, and 0 (no bits set) for the child.
- Then AND it with D0, so the parent gets D0&-1==R0, and the child
- gets D0&0==0. */
- subl #1, d1
- andl d1, d0
-
- /* Jump to the return PC. */
- jmp a0@
-
-error:
- movel d0, _errno
- moveq #-1, d0
- jmp a0@
-libc_hidden_def (__vfork)
-
-weak_alias (__vfork, vfork)
diff --git a/sysdeps/unix/bsd/hp/m68k/wait3.S b/sysdeps/unix/bsd/hp/m68k/wait3.S
deleted file mode 100644
index 5b63191827..0000000000
--- a/sysdeps/unix/bsd/hp/m68k/wait3.S
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright (C) 1991, 1992, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-ENTRY(__wait3)
- movel sp@(8), d1
- moveal sp@(12), a0
- movel #SYS_wait, d0
- /* Set all condition codes to tell the kernel this is wait3. */
- movew #31, ccr
- trap #0
- bcs error
-
- tstl sp@(4)
- beq 1f
- moveal sp@(4), a0
- movel d1, a0@
-1: rts
-
-.globl syscall_error
-error: jmp syscall_error
-
-weak_alias (__wait3, wait3)
diff --git a/sysdeps/unix/bsd/osf/Dist b/sysdeps/unix/bsd/osf/Dist
deleted file mode 100644
index e792f44bd5..0000000000
--- a/sysdeps/unix/bsd/osf/Dist
+++ /dev/null
@@ -1 +0,0 @@
-alpha/dl-brk.S
diff --git a/sysdeps/unix/bsd/osf/Implies b/sysdeps/unix/bsd/osf/Implies
deleted file mode 100644
index 82719f5a5d..0000000000
--- a/sysdeps/unix/bsd/osf/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-# OSF/1 has the canonical set of <sys/mman.h> system calls.
-unix/mman
diff --git a/sysdeps/unix/bsd/osf/Makefile b/sysdeps/unix/bsd/osf/Makefile
deleted file mode 100644
index 743788a41a..0000000000
--- a/sysdeps/unix/bsd/osf/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-# Without -non_shared (via the compiler's -static flag), we'll end up
-# with some unresolved symbols wrt exceptions.
-LDFLAGS := $(LDFLAGS) -static
diff --git a/sysdeps/unix/bsd/osf/alpha/bits/stat.h b/sysdeps/unix/bsd/osf/alpha/bits/stat.h
deleted file mode 100644
index 20f358f70a..0000000000
--- a/sysdeps/unix/bsd/osf/alpha/bits/stat.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/* Copyright (C) 1993, 1996, 1997, 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_STAT_H
-# error "Never include <bits/stat.h> directly; use <sys/stat.h> instead."
-#endif
-
-#include <bits/types.h>
-
-/* Structure describing file characteristics. */
-struct stat
- {
- int st_dev; /* Device. */
- unsigned int st_ino; /* File serial number. */
- unsigned int st_mode; /* File mode. */
- unsigned short st_nlink; /* Link count. */
- unsigned int st_uid; /* User ID of the file's owner. */
- unsigned int st_gid; /* Group ID of the file's group.*/
- int st_rdev; /* Device number, if device. */
-
- long st_size; /* Size of file, in bytes. */
-
- int st_atime; /* Time of last access. */
- int st_atime_usec;
- int st_mtime; /* Time of last modification. */
- int st_mtime_usec;
- int st_ctime; /* Time of last status change. */
- int st_ctime_usec;
-
- __blksize_t st_blksize; /* Optimal block size for I/O. */
-#define _STATBUF_ST_BLKSIZE /* Tell code we have this member. */
-
- __blkcnt_t st_blocks; /* Number of 512-byte blocks allocated. */
- unsigned int st_flags;
- unsigned int st_gen;
- };
-
-/* Encoding of the file mode. */
-
-#define __S_IFMT 0170000 /* These bits determine file type. */
-
-/* File types. */
-#define __S_IFDIR 0040000 /* Directory. */
-#define __S_IFCHR 0020000 /* Character device. */
-#define __S_IFBLK 0060000 /* Block device. */
-#define __S_IFREG 0100000 /* Regular file. */
-#define __S_IFIFO 0010000 /* FIFO. */
-
-#define __S_IFLNK 0120000 /* Symbolic link. */
-#define __S_IFSOCK 0140000 /* Socket. */
-
-/* POSIX.1b objects. */
-#define __S_TYPEISMQ(buf) (0)
-#define __S_TYPEISSEM(buf) (0)
-#define __S_TYPEISSHM(buf) (0)
-
-/* Protection bits. */
-
-#define __S_ISUID 04000 /* Set user ID on execution. */
-#define __S_ISGID 02000 /* Set group ID on execution. */
-#define __S_ISVTX 01000 /* Save swapped text after use (sticky). */
-#define __S_IREAD 0400 /* Read by owner. */
-#define __S_IWRITE 0200 /* Write by owner. */
-#define __S_IEXEC 0100 /* Execute by owner. */
diff --git a/sysdeps/unix/bsd/osf/alpha/brk.S b/sysdeps/unix/bsd/osf/alpha/brk.S
deleted file mode 100644
index 51abaa6c1b..0000000000
--- a/sysdeps/unix/bsd/osf/alpha/brk.S
+++ /dev/null
@@ -1,54 +0,0 @@
-/* Copyright (C) 1993, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-#ifndef SYS_brk
-#define SYS_brk 17
-#endif
-
-#ifndef HAVE_GNU_LD
-#define __end end
-#endif
-
-.data
- .extern __end,8
- .globl __curbrk
-__curbrk:
- .quad __end
-
-.text
-ENTRY(__brk)
- /* FIXME We do not check for asking for less than a page yet. */
- ldiq v0, SYS_brk
- call_pal PAL_callsys
- bne a3, error
-
- /* Update __curbrk and exit cleanly. */
-/* ldgp gp, 0(t12) */
- stq a0, __curbrk
-
- mov zero, v0
- ret
- /* What a horrible way to die. */
-error: ldgp gp,0(gp)
- jmp zero,syscall_error
- .end __brk
-
-weak_alias (__brk, brk)
diff --git a/sysdeps/unix/bsd/osf/alpha/dl-brk.S b/sysdeps/unix/bsd/osf/alpha/dl-brk.S
deleted file mode 100644
index eeb96544e3..0000000000
--- a/sysdeps/unix/bsd/osf/alpha/dl-brk.S
+++ /dev/null
@@ -1 +0,0 @@
-#include <brk.S>
diff --git a/sysdeps/unix/bsd/osf/alpha/fork.S b/sysdeps/unix/bsd/osf/alpha/fork.S
deleted file mode 100644
index a4ec14b56f..0000000000
--- a/sysdeps/unix/bsd/osf/alpha/fork.S
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright (C) 1993, 1995, 1997, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-SYSCALL__ (fork, 0)
- cmovne a4, 0, v0
- ret
- .end __fork
-libc_hidden_def (__fork)
-
-weak_alias (__fork, fork)
diff --git a/sysdeps/unix/bsd/osf/alpha/killpg.S b/sysdeps/unix/bsd/osf/alpha/killpg.S
deleted file mode 100644
index 741616bc76..0000000000
--- a/sysdeps/unix/bsd/osf/alpha/killpg.S
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright (C) 1993, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-#include <sys/ult_syscall.h>
-#define SYS_killpg SYS_ult_killpg
-
-SYSCALL (killpg, 2)
- ret
- .end killpg
diff --git a/sysdeps/unix/bsd/osf/alpha/recv.S b/sysdeps/unix/bsd/osf/alpha/recv.S
deleted file mode 100644
index 92a273d150..0000000000
--- a/sysdeps/unix/bsd/osf/alpha/recv.S
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright (C) 1991, 1992, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-#include <sys/ult_syscall.h>
-#define SYS_recv SYS_ult_recv
-
-SYSCALL (recv, 4)
- ret
- .end recv
diff --git a/sysdeps/unix/bsd/osf/alpha/send.S b/sysdeps/unix/bsd/osf/alpha/send.S
deleted file mode 100644
index 7d61d46a1b..0000000000
--- a/sysdeps/unix/bsd/osf/alpha/send.S
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright (C) 1991, 1992, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-#include <sys/ult_syscall.h>
-#define SYS_send SYS_ult_send
-
-SYSCALL (send, 4)
- ret
- .end send
diff --git a/sysdeps/unix/bsd/osf/alpha/sigblock.S b/sysdeps/unix/bsd/osf/alpha/sigblock.S
deleted file mode 100644
index 5db55f4474..0000000000
--- a/sysdeps/unix/bsd/osf/alpha/sigblock.S
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright (C) 1994, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-#include <sys/ult_syscall.h>
-#define SYS_sigblock SYS_ult_sigblock
-
-SYSCALL__ (sigblock, 1)
- ret
- .end __sigblock
-
-weak_alias (__sigblock, sigblock)
diff --git a/sysdeps/unix/bsd/osf/alpha/sigpause.S b/sysdeps/unix/bsd/osf/alpha/sigpause.S
deleted file mode 100644
index 7646366473..0000000000
--- a/sysdeps/unix/bsd/osf/alpha/sigpause.S
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright (C) 1993,95,97,2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-#include <sys/ult_syscall.h>
-#define SYS_sigpause SYS_ult_sigpause
-
-SYSCALL__ (sigpause, 1)
- ret
- .end __sigpause
-libc_hidden_def (__sigpause)
-
-weak_alias (__sigpause, sigpause)
diff --git a/sysdeps/unix/bsd/osf/alpha/sigsetmask.S b/sysdeps/unix/bsd/osf/alpha/sigsetmask.S
deleted file mode 100644
index 93333aa0b6..0000000000
--- a/sysdeps/unix/bsd/osf/alpha/sigsetmask.S
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright (C) 1993, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-#include <sys/ult_syscall.h>
-#define SYS_sigsetmask SYS_ult_sigsetmask
-
-SYSCALL__ (sigsetmask, 1)
- ret
- .end __sigsetmask
-
-weak_alias (__sigsetmask, sigsetmask)
diff --git a/sysdeps/unix/bsd/osf/alpha/sigvec.S b/sysdeps/unix/bsd/osf/alpha/sigvec.S
deleted file mode 100644
index 45fcc58a03..0000000000
--- a/sysdeps/unix/bsd/osf/alpha/sigvec.S
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright (C) 1993, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-#include <sys/ult_syscall.h>
-#define SYS_sigvec SYS_ult_sigvec
-
-SYSCALL__ (sigvec, 3)
- ret
- .end __sigvec
-
-weak_alias (__sigvec, sigvec)
diff --git a/sysdeps/unix/bsd/osf/alpha/start.S b/sysdeps/unix/bsd/osf/alpha/start.S
deleted file mode 100644
index 1fa52a6430..0000000000
--- a/sysdeps/unix/bsd/osf/alpha/start.S
+++ /dev/null
@@ -1,83 +0,0 @@
-/* Copyright (C) 1993, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- In addition to the permissions in the GNU Lesser General Public
- License, the Free Software Foundation gives you unlimited
- permission to link the compiled version of this file with other
- programs, and to distribute those programs without any restriction
- coming from the use of this file. (The GNU Lesser General Public
- License restrictions do apply in other respects; for example, they
- cover modification of the file, and distribution when not linked
- into another program.)
-
- Note that people who make modified versions of this file are not
- obligated to grant this special exception for their modified
- versions; it is their choice whether to do so. The GNU Lesser
- General Public License gives permission to release a modified
- version without this exception; this exception also makes it
- possible to release a modified version which carries forward this
- exception.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-#if 0
-.sdata
-.globl STARTFRM
-STARTFRM = 0
-#endif
-
-.text
-ENTRY(__start)
- lda sp, -16(sp)
- stq zero, 8(sp)
-
- /* This branch puts the address of the current insn in t0. */
- br t0, 10f
-10:
- /* We set the GP register by using the address of the ldgp */
- /* (what we just put into t0). */
- ldgp gp, 0(t0)
-
- /* get argc */
- ldl a0, 16(sp)
-
- /* get argv */
- lda a1, 24(sp)
-
- /* move ahead to envp */
- s8addq a0, a1, a2
- addq a2, 0x8, a2
-
- /* Store in environ. */
- stq a2, environ
-
- /* Clear out errno. */
-/* ldgp gp, 0(t12) */
- stl zero, errno
-
- /* Call main. */
- jsr ra, main
- ldgp gp, 0(ra)
-
- mov v0, a0
-
- jsr ra, exit
- ldgp gp, 0(ra)
-
- .end __start
diff --git a/sysdeps/unix/bsd/osf/alpha/syscalls.list b/sysdeps/unix/bsd/osf/alpha/syscalls.list
deleted file mode 100644
index ac883925e1..0000000000
--- a/sysdeps/unix/bsd/osf/alpha/syscalls.list
+++ /dev/null
@@ -1,3 +0,0 @@
-# File name Caller Syscall name # args Strong name Weak names
-
-wait4 - wait4 4 __wait4 wait4
diff --git a/sysdeps/unix/bsd/osf/alpha/sysdep.h b/sysdeps/unix/bsd/osf/alpha/sysdep.h
deleted file mode 100644
index 84ac541aa1..0000000000
--- a/sysdeps/unix/bsd/osf/alpha/sysdep.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright (C) 1993, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* OSF/1 does not precede the asm names of C symbols with a `_'. */
-#define NO_UNDERSCORES
-
-#include <sysdeps/unix/alpha/sysdep.h>
-
-#ifdef __ASSEMBLER__
-
-#include <machine/pal.h> /* get PAL_callsys */
-#include <regdef.h>
-
-#endif
diff --git a/sysdeps/unix/bsd/osf/alpha/vhangup.S b/sysdeps/unix/bsd/osf/alpha/vhangup.S
deleted file mode 100644
index 3c2b04af7d..0000000000
--- a/sysdeps/unix/bsd/osf/alpha/vhangup.S
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright (C) 1991, 1992, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-#include <sys/ult_syscall.h>
-#define SYS_vhangup SYS_ult_vhangup
-
-SYSCALL (vhangup, 1)
- ret
- .end vhangup
diff --git a/sysdeps/unix/bsd/osf/alpha/waitpid.c b/sysdeps/unix/bsd/osf/alpha/waitpid.c
deleted file mode 100644
index 8378982ac7..0000000000
--- a/sysdeps/unix/bsd/osf/alpha/waitpid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/bsd/bsd4.4/waitpid.c>
diff --git a/sysdeps/unix/bsd/osf/bits/mman.h b/sysdeps/unix/bsd/osf/bits/mman.h
deleted file mode 100644
index d4672cccab..0000000000
--- a/sysdeps/unix/bsd/osf/bits/mman.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/* Flags for BSD-style memory management. OSF/1 version.
- Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _BITS_MMAN_H
-#define _BITS_MMAN_H 1
-
-/* Protections are chosen from these bits, OR'd together. The
- implementation does not necessarily support PROT_EXEC or PROT_WRITE
- without PROT_READ. The only guarantees are that no writing will be
- allowed without PROT_WRITE and no access will be allowed for PROT_NONE. */
-
-#define PROT_NONE 0x00 /* No access. */
-#define PROT_READ 0x01 /* Pages can be read. */
-#define PROT_WRITE 0x02 /* Pages can be written. */
-#define PROT_EXEC 0x04 /* Pages can be executed. */
-
-/* Flags contain mapping type, sharing type and options. */
-
-/* Mapping type (must choose one and only one of these). */
-#ifdef __USE_BSD
-# define MAP_FILE 0x00 /* Mapped from a file or device. */
-# define MAP_ANON 0x10 /* Allocated from anonymous virtual memory. */
-# define MAP_ANONYMOUS MAP_ANON
-# define MAP_TYPE 0xf0 /* Mask for type field. */
-#endif
-
-/* Sharing types (must choose one and only one of these). */
-#define MAP_SHARED 0x01 /* Share changes. */
-#define MAP_PRIVATE 0x02 /* Changes private; copy pages on write. */
-
-/* Other flags. */
-#define MAP_FIXED 0x0100 /* Map address must be exactly as requested. */
-#ifdef __USE_BSD
-# define MAP_VARIABLE 0 /* Absence of MAP_FIXED. */
-# define MAP_HASSEMPHORE 0x0200 /* Region may contain semaphores. */
-# define MAP_INHERIT 0x0400 /* Region is retained after exec. */
-# define MAP_UNALIGNED 0x0800 /* File offset need not be page-aligned. */
-#endif
-
-/* Advice to `madvise'. */
-#ifdef __USE_BSD
-# define MADV_NORMAL 0 /* No further special treatment. */
-# define MADV_RANDOM 1 /* Expect random page references. */
-# define MADV_SEQUENTIAL 2 /* Expect sequential page references. */
-# define MADV_WILLNEED 3 /* Will need these pages. */
-# define MADV_DONTNEED 4 /* Don't need these pages. */
-# define MADV_SPACEAVAIL 5 /* Ensure that resources are available. */
-#endif
-
-/* Flags to `msync'. */
-#define MS_ASYNC 1 /* Asynchronous cache flush. */
-#define MS_SYNC 3 /* Synchronous cache flush. */
-#define MS_INVALIDATE 4 /* Invalidate cached pages. */
-
-#endif /* bits/mman.h */
diff --git a/sysdeps/unix/bsd/osf/bits/sigaction.h b/sysdeps/unix/bsd/osf/bits/sigaction.h
deleted file mode 100644
index 13f9144fa2..0000000000
--- a/sysdeps/unix/bsd/osf/bits/sigaction.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/* Structure and constant definitions for sigaction et al. OSF/1 version.
- Copyright (C) 1993, 1996, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SIGNAL_H
-# error "Never include <bits/sigaction.h> directly; use <signal.h> instead."
-#endif
-
-/* Structure describing the action to be taken when a signal arrives. */
-struct sigaction
- {
- /* Signal handler. */
- __sighandler_t sa_handler;
-
- /* Additional set of signals to be blocked. */
- __sigset_t sa_mask;
-
- /* Special flags. */
- int sa_flags;
- };
-
-/* Bits in `sa_flags'. */
-#ifdef __USE_BSD
-# define SA_ONSTACK 0x1 /* Take signal on signal stack. */
-# define SA_RESTART 0x2 /* Restart syscall on signal return. */
-# define SA_DISABLE 0x4 /* Disable alternate signal stack. */
-#endif
-#define SA_NOCLDSTOP 0x4 /* Don't send SIGCHLD when children stop. */
-
-
-/* Values for the HOW argument to `sigprocmask'. */
-#define SIG_BLOCK 1 /* Block signals. */
-#define SIG_UNBLOCK 2 /* Unblock signals. */
-#define SIG_SETMASK 3 /* Set the set of blocked signals. */
diff --git a/sysdeps/unix/bsd/osf/syscalls.list b/sysdeps/unix/bsd/osf/syscalls.list
deleted file mode 100644
index 731763b3eb..0000000000
--- a/sysdeps/unix/bsd/osf/syscalls.list
+++ /dev/null
@@ -1,3 +0,0 @@
-# File name Caller Syscall name # args Strong name Weak names
-
-msync - msync 3 msync
diff --git a/sysdeps/unix/bsd/osf/system.c b/sysdeps/unix/bsd/osf/system.c
deleted file mode 100644
index ef42ea2155..0000000000
--- a/sysdeps/unix/bsd/osf/system.c
+++ /dev/null
@@ -1,2 +0,0 @@
-/* OSF/1 does have `waitpid'. Avoid unix/system.c, which says we don't. */
-#include <sysdeps/posix/system.c>
diff --git a/sysdeps/unix/bsd/sequent/i386/getgroups.S b/sysdeps/unix/bsd/sequent/i386/getgroups.S
deleted file mode 100644
index 55fa7288d4..0000000000
--- a/sysdeps/unix/bsd/sequent/i386/getgroups.S
+++ /dev/null
@@ -1,44 +0,0 @@
-/* Copyright (C) 1994, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-#include <limits.h>
-
-/* Dynix erroneously reports `getgroups (0, 0)' as an error.
- We fix up for that case. */
-
-#define syscall_error myerror
-SYSCALL__ (getgroups, 2)
-#undef syscall_error
- ret
-myerror:
- tstl 4(%esp) /* Was the first arg 0? */
- jnz syscall_error /* If not, go to the normal error case. */
- /* When called with (0, 0), we want to return the number of groups
- without storing anything. The Dynix system call gives an error
- for this case, so we fix up by calling it with a local array we
- never use, and just use the return value. */
- subl %esp, $(NGROUPS_MAX * 4) /* Allocate a local array. */
- movl $NGROUPS_MAX, %ecx /* Pass NGROUPS_MAX for first arg. */
- movl %esp, %edx /* Pass local array for second arg. */
- DO_CALL (getgroups, 2) /* Do the system call. */
- addl %esp, $(NGROUPS_MAX * 4) /* Pop the local array. */
- jb syscall_error /* Check for error from the system call. */
- ret /* Return its value. */
-
-weak_alias (__getgroups, getgroups)
diff --git a/sysdeps/unix/bsd/sequent/i386/sigvec.S b/sysdeps/unix/bsd/sequent/i386/sigvec.S
deleted file mode 100644
index 62373e1315..0000000000
--- a/sysdeps/unix/bsd/sequent/i386/sigvec.S
+++ /dev/null
@@ -1,45 +0,0 @@
-/* Copyright (C) 1993, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-/* The Dynix `sigvec' system call takes an extra argument,
- which is the address of the trampoline function. */
-
-.text
-.align 4
-trampoline:
- cld /* Clear direction flag. */
- call %eax /* Call the handler, address in %eax. */
- addl $8, %esp /* Pop signum & code off the stack. */
- /* __sigreturn will restore the context, and never return here. */
- call C_SYMBOL_NAME (__sigreturn)
-
-.globl syscall_error
-ENTRY (__sigvec)
- pushl $trampoline /* Push fourth arg: trampoline address. */
- pushl 16(%esp) /* Push third arg: our third arg. */
- pushl 16(%esp) /* Push second arg: our second arg. */
- pushl 16(%esp) /* Push first arg: our first arg. */
- mov %esp, %ecx /* Point the syscall at the arguments. */
- addl $16, %esp /* Pop those four args. */
- DO_CALL (sigvec, 4) /* Do the system call. */
- jb syscall_error /* Check for error. */
- ret
-
-weak_alias (__sigvec, sigvec)
diff --git a/sysdeps/unix/bsd/sequent/i386/syscall.S b/sysdeps/unix/bsd/sequent/i386/syscall.S
deleted file mode 100644
index 9ff189885b..0000000000
--- a/sysdeps/unix/bsd/sequent/i386/syscall.S
+++ /dev/null
@@ -1,31 +0,0 @@
-/* `syscall' function for Sequent Symmetry running Dynix version 3.
- Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-.text
-.globl syscall_error
-.align 4
-ENTRY (syscall)
- leal 8(%esp), %ecx /* Load address of second argument. */
- movl $SYS_HANDLER, %eax /* Use BSD system calls. */
- movw 4(%esp), %ax /* Load system call number into low word. */
- int $T_SVC6 /* Pretend it takes six args. */
- jb syscall_error
- ret
diff --git a/sysdeps/unix/bsd/sequent/i386/sysdep.h b/sysdeps/unix/bsd/sequent/i386/sysdep.h
deleted file mode 100644
index c3d9d919b7..0000000000
--- a/sysdeps/unix/bsd/sequent/i386/sysdep.h
+++ /dev/null
@@ -1,82 +0,0 @@
-/* System call interface code for Sequent Symmetry running Dynix version 3.
- Copyright (C) 1993, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdeps/unix/i386/sysdep.h>
-
-#ifdef __ASSEMBLER__
-
-/* Get the symbols for system call interrupts. */
-#include <machine/trap.h>
-
-/* Use the BSD versions of system calls, by setting the high 16 bits
- of the syscall number (see /usr/include/syscall.h). */
-#define SYS_HANDLER (SYS_bsd << 16)
-
-/* Dynix uses an interrupt interface to system calls.
- "int $T_SVCn" are syscall interfaces for 0-6 arg functions.
- (see /usr/include/machine/trap.h). */
-
-#undef DO_CALL
-
-#ifdef __STDC__
-#define DO_CALL(syscall_name, args) \
- movl $(SYS_HANDLER | SYS_##syscall_name), %eax; \
- int $T_SVC##args;
-#else
-#define DO_CALL(syscall_name, args) \
- movl $(SYS_HANDLER | SYS_/**/syscall_name), %eax; \
- int $T_SVC/**/args;
-#endif
-
-#undef PSEUDO
-#define PSEUDO(name, syscall_name, args) \
- .text; \
- .globl syscall_error; \
- .align 4; \
- ENTRY (name) \
- ARGS (args) \
- DO_CALL (syscall_name, args) \
- jb syscall_error
-
-/* For one and two-argument calls, Dynix takes the arguments in %ecx and
- %edx. For 3-6 argument calls, Dynix takes the address of the first
- argument in %ecx. */
-
-#ifdef __STDC__
-#define ARGS(n) ARGS_##n
-#else
-#define ARGS(n) ARGS_/**/n
-#endif
-
-#define ARGS_0
-#define ARGS_1 movl 4(%esp), %ecx;
-#define ARGS_2 movl 4(%esp), %ecx; movl 8(%esp), %edx;
-#define ARGS_3 leal 4(%esp), %ecx;
-#define ARGS_4 ARGS_3
-#define ARGS_5 ARGS_3
-#define ARGS_6 ARGS_3
-
-/* Dynix reverses %ecx and %edx relative to most i386 Unices. */
-
-#undef r1
-#define r1 %ecx /* Secondary return-value register. */
-#undef scratch
-#define scratch %edx /* Call-clobbered register for random use. */
-
-#endif /* __ASSEMBLER__ */
diff --git a/sysdeps/unix/bsd/sony/newsos/m68k/Implies b/sysdeps/unix/bsd/sony/newsos/m68k/Implies
deleted file mode 100644
index 7b5f3cfc96..0000000000
--- a/sysdeps/unix/bsd/sony/newsos/m68k/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-# A news800 is almost exactly like an hp300
-unix/bsd/hp/m68k
diff --git a/sysdeps/unix/bsd/sony/newsos/m68k/sysdep.h b/sysdeps/unix/bsd/sony/newsos/m68k/sysdep.h
deleted file mode 100644
index db124fa15f..0000000000
--- a/sysdeps/unix/bsd/sony/newsos/m68k/sysdep.h
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Copyright (C) 1993, 1994, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdeps/unix/sysdep.h>
-
-#ifdef __ASSEMBLER__
-
-#define POUND #
-
-#ifdef __STDC__
-#define ENTRY(name) \
- .globl _##name; \
- .even; \
- _##name##:
-#else
-#define ENTRY(name) \
- .globl _/**/name; \
- .even; \
- _/**/name/**/:
-#endif
-
-#define PSEUDO(name, syscall_name, args) \
- .even; \
- .globl syscall_error; \
- error: jmp syscall_error; \
- ENTRY (name) \
- DO_CALL (POUND SYS_ify (syscall_name), args)
-
-#define DO_CALL(syscall, args) \
- movel syscall, d0; \
- linkw a6, POUND(0); \
- trap POUND(0); \
- unlk a6; \
- bcs error
-
-#define ret rts
-#define r0 d0
-#define r1 d1
-#define MOVE(x,y) movel x , y
-
-#endif
diff --git a/sysdeps/unix/bsd/sony/newsos4/Makefile b/sysdeps/unix/bsd/sony/newsos4/Makefile
deleted file mode 100644
index 053da568d8..0000000000
--- a/sysdeps/unix/bsd/sony/newsos4/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-ifeq ($(subdir),posix)
-sysdep_routines := $(sysdep_routines) sys_wait4
-endif
diff --git a/sysdeps/unix/bsd/sony/newsos4/syscalls.list b/sysdeps/unix/bsd/sony/newsos4/syscalls.list
deleted file mode 100644
index b90087f426..0000000000
--- a/sysdeps/unix/bsd/sony/newsos4/syscalls.list
+++ /dev/null
@@ -1,3 +0,0 @@
-# File name Caller Syscall name # args Strong name Weak names
-
-sys_wait4 wait4 wait4 4 __wait4_syscall
diff --git a/sysdeps/unix/bsd/sony/newsos4/wait.c b/sysdeps/unix/bsd/sony/newsos4/wait.c
deleted file mode 100644
index 79d54580fd..0000000000
--- a/sysdeps/unix/bsd/sony/newsos4/wait.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/bsd/bsd4.4/wait.c>
diff --git a/sysdeps/unix/bsd/sony/newsos4/wait3.c b/sysdeps/unix/bsd/sony/newsos4/wait3.c
deleted file mode 100644
index 0b3bdee771..0000000000
--- a/sysdeps/unix/bsd/sony/newsos4/wait3.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/bsd/bsd4.4/wait3.c>
diff --git a/sysdeps/unix/bsd/sony/newsos4/wait4.c b/sysdeps/unix/bsd/sony/newsos4/wait4.c
deleted file mode 100644
index 856c99fd61..0000000000
--- a/sysdeps/unix/bsd/sony/newsos4/wait4.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/bsd/sun/sunos4/wait4.c>
diff --git a/sysdeps/unix/bsd/tahoe/Implies b/sysdeps/unix/bsd/tahoe/Implies
deleted file mode 100644
index a7ecf58273..0000000000
--- a/sysdeps/unix/bsd/tahoe/Implies
+++ /dev/null
@@ -1 +0,0 @@
-unix/bsd/vax
diff --git a/sysdeps/unix/bsd/tahoe/sysdep.h b/sysdeps/unix/bsd/tahoe/sysdep.h
deleted file mode 100644
index b875906320..0000000000
--- a/sysdeps/unix/bsd/tahoe/sysdep.h
+++ /dev/null
@@ -1,5 +0,0 @@
-/* The Tahoe is just like the Vax, except the
- `chmk' instruction is called `kcall'. */
-
-#define chmk kcall
-#include <sysdeps/unix/bsd/vax/sysdep.h>
diff --git a/sysdeps/unix/bsd/ultrix4/Implies b/sysdeps/unix/bsd/ultrix4/Implies
deleted file mode 100644
index b0e08ef1db..0000000000
--- a/sysdeps/unix/bsd/ultrix4/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-# Ultrix 4 has the canonical set of <sys/mman.h> system calls.
-unix/mman
diff --git a/sysdeps/unix/bsd/ultrix4/Makefile b/sysdeps/unix/bsd/ultrix4/Makefile
deleted file mode 100644
index 26b90346ee..0000000000
--- a/sysdeps/unix/bsd/ultrix4/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-ifeq ($(subdir),posix)
-sysdep_routines := $(sysdep_routines) getsysinfo
-endif
diff --git a/sysdeps/unix/bsd/ultrix4/bits/fcntl.h b/sysdeps/unix/bsd/ultrix4/bits/fcntl.h
deleted file mode 100644
index 6392bc3415..0000000000
--- a/sysdeps/unix/bsd/ultrix4/bits/fcntl.h
+++ /dev/null
@@ -1,122 +0,0 @@
-/* O_*, F_*, FD_* bit values for Ultrix 4.
- Copyright (C) 1991, 1992, 1997, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _FCNTL_H
-#error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead."
-#endif
-
-
-/* File access modes for `open' and `fcntl'. */
-#define O_RDONLY 0 /* Open read-only. */
-#define O_WRONLY 1 /* Open write-only. */
-#define O_RDWR 2 /* Open read/write. */
-
-
-/* Bits OR'd into the second argument to open. */
-#define O_CREAT 0x0200 /* Create file if it doesn't exist. */
-#define O_EXCL 0x0800 /* Fail if file already exists. */
-#define O_TRUNC 0x0400 /* Truncate file to zero length. */
-#ifdef __USE_MISC
-#define O_ASYNC 0x0040 /* Send SIGIO to owner when data is ready. */
-#define O_FSYNC 0x8000 /* Synchronous writes. */
-#define O_SYNC O_FSYNC
-#define O_BLKINUSE 0x1000 /* Block if "in use". */
-#define O_BLKANDSET 0x3000 /* Block, test and set "in use" flag. */
-#define O_TERMIO 0x40000 /* "termio style program". */
-#endif
-#define O_NOCTTY 0x80000 /* Don't assign a controlling terminal. */
-
-/* File status flags for `open' and `fcntl'. */
-#define O_APPEND 0x0008 /* Writes append to the file. */
-#define O_NONBLOCK 0x20000 /* Non-blocking I/O. */
-
-#ifdef __USE_BSD
-#define O_NDELAY 0x0004
-#endif
-
-#ifdef __USE_BSD
-/* Bits in the file status flags returned by F_GETFL.
- These are all the O_* flags, plus FREAD and FWRITE, which are
- independent bits set by which of O_RDONLY, O_WRONLY, and O_RDWR, was
- given to `open'. */
-#define FREAD 1
-#define FWRITE 2
-
-/* Traditional BSD names the O_* bits. */
-#define FASYNC O_ASYNC
-#define FCREAT O_CREAT
-#define FEXCL O_EXCL
-#define FTRUNC O_TRUNC
-#define FNOCTTY O_NOCTTY
-#define FFSYNC O_FSYNC
-#define FSYNC O_SYNC
-#define FAPPEND O_APPEND
-#define FNONBLOCK O_NONBLOCK
-#define FNDELAY O_NDELAY
-#define FNBLOCK O_NONBLOCK
-#define FTERMIO O_TERMIO
-#define FNOCTTY O_NOCTTY
-#define FSYNCRON O_FSYNC
-#define FBLKINUSE O_BLKINUSE
-#define FBLKANDSET O_BLKANDSET
-#endif
-
-/* Mask for file access modes. This is system-dependent in case
- some system ever wants to define some other flavor of access. */
-#define O_ACCMODE (O_RDONLY|O_WRONLY|O_RDWR)
-
-/* Values for the second argument to `fcntl'. */
-#define F_DUPFD 0 /* Duplicate file descriptor. */
-#define F_GETFD 1 /* Get file descriptor flags. */
-#define F_SETFD 2 /* Set file descriptor flags. */
-#define F_GETFL 3 /* Get file status flags. */
-#define F_SETFL 4 /* Set file status flags. */
-#if defined __USE_BSD || defined __USE_UNIX98
-#define F_GETOWN 5 /* Get owner (receiver of SIGIO). */
-#define F_SETOWN 6 /* Set owner (receiver of SIGIO). */
-#endif
-#define F_GETLK 7 /* Get record locking info. */
-#define F_SETLK 8 /* Set record locking info (non-blocking). */
-#define F_SETLKW 9 /* Set record locking info (blocking). */
-#ifdef __USE_MISC
-#define F_SETSYN 10 /* Set synchronous writing. */
-#define F_CLRSYN 10 /* Clear synchronous writing. */
-#endif
-
-/* File descriptor flags used with F_GETFD and F_SETFD. */
-#define FD_CLOEXEC 1 /* Close on exec. */
-
-
-#include <bits/types.h>
-
-/* The structure describing an advisory lock. This is the type of the third
- argument to `fcntl' for the F_GETLK, F_SETLK, and F_SETLKW requests. */
-struct flock
- {
- short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */
- short int l_whence; /* Where `l_start' is relative to (like `lseek'). */
- __off_t l_start; /* Offset where the lock begins. */
- __off_t l_len; /* Size of the locked area; zero means until EOF. */
- __pid_t l_pid; /* Process holding the lock. */
- };
-
-/* Values for the `l_type' field of a `struct flock'. */
-#define F_RDLCK 1 /* Read lock. */
-#define F_WRLCK 2 /* Write lock. */
-#define F_UNLCK 3 /* Remove lock. */
diff --git a/sysdeps/unix/bsd/ultrix4/bits/mman.h b/sysdeps/unix/bsd/ultrix4/bits/mman.h
deleted file mode 100644
index 918b535634..0000000000
--- a/sysdeps/unix/bsd/ultrix4/bits/mman.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/* Definitions for BSD-style memory management. Ultrix 4 version.
- Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _BITS_MMAN_H
-#define _BITS_MMAN_H 1
-
-/* Protections are chosen from these bits, OR'd together. The
- implementation does not necessarily support PROT_EXEC or PROT_WRITE
- without PROT_READ. The only guarantees are that no writing will be
- allowed without PROT_WRITE and no access will be allowed for PROT_NONE. */
-
-#define PROT_NONE 0x00 /* No access. */
-#define PROT_READ 0x01 /* Pages can be read. */
-#define PROT_WRITE 0x02 /* Pages can be written. */
-#define PROT_EXEC 0x04 /* Pages can be executed. */
-/* Sharing types (must choose one and only one of these). */
-#define MAP_SHARED 0x01 /* Share changes. */
-#define MAP_PRIVATE 0x02 /* Changes private; copy pages on write. */
-#ifdef __USE_BSD
-# define MAP_TYPE 0x0f /* Mask for sharing type. */
-#endif
-
-/* Other flags. */
-#define MAP_FIXED 0x10 /* Map address must be exactly as requested. */
-
-/* Advice to `madvise'. */
-#ifdef __USE_BSD
-# define MADV_NORMAL 0 /* No further special treatment. */
-# define MADV_RANDOM 1 /* Expect random page references. */
-# define MADV_SEQUENTIAL 2 /* Expect sequential page references. */
-# define MADV_WILLNEED 3 /* Will need these pages. */
-# define MADV_DONTNEED 4 /* Don't need these pages. */
-#endif
-
-#endif /* bits/mman.h */
diff --git a/sysdeps/unix/bsd/ultrix4/bits/posix_opt.h b/sysdeps/unix/bsd/ultrix4/bits/posix_opt.h
deleted file mode 100644
index aba6852e1f..0000000000
--- a/sysdeps/unix/bsd/ultrix4/bits/posix_opt.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/* Copyright (C) 1992, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Ian Lance Taylor (ian@airs.com).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#define _POSIX_JOB_CONTROL 1
-#define _POSIX_SAVED_IDS 1
-#define _POSIX_CHOWN_RESTRICTED 1
-#define _POSIX_NO_TRUNC 1
-#define _POSIX_VDISABLE ((unsigned char) -1)
diff --git a/sysdeps/unix/bsd/ultrix4/bits/utsname.h b/sysdeps/unix/bsd/ultrix4/bits/utsname.h
deleted file mode 100644
index 57820471a2..0000000000
--- a/sysdeps/unix/bsd/ultrix4/bits/utsname.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Copyright (C) 1997, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_UTSNAME_H
-# error "Never include <bits/utsname.h> directly; use <sys/utsname.h> instead."
-#endif
-
-#define _UTSNAME_LENGTH 32
diff --git a/sysdeps/unix/bsd/ultrix4/mips/Dist b/sysdeps/unix/bsd/ultrix4/mips/Dist
deleted file mode 100644
index 06cf9cc2de..0000000000
--- a/sysdeps/unix/bsd/ultrix4/mips/Dist
+++ /dev/null
@@ -1 +0,0 @@
-__handler.S
diff --git a/sysdeps/unix/bsd/ultrix4/mips/Makefile b/sysdeps/unix/bsd/ultrix4/mips/Makefile
deleted file mode 100644
index 74e3b04f6c..0000000000
--- a/sysdeps/unix/bsd/ultrix4/mips/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-ifeq ($(subdir),signal)
-sysdep_routines := $(sysdep_routines) __handler
-endif
diff --git a/sysdeps/unix/bsd/ultrix4/mips/__handler.S b/sysdeps/unix/bsd/ultrix4/mips/__handler.S
deleted file mode 100644
index 2b815c46dd..0000000000
--- a/sysdeps/unix/bsd/ultrix4/mips/__handler.S
+++ /dev/null
@@ -1,115 +0,0 @@
-/* Copyright (C) 1992, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
- Also hacked by Ian Lance Taylor (ian@airs.com).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-/* This function saves all the registers, calls the
- user function, and then executes a sigreturn system call. The
- sigreturn call wants the address of a sigcontext structure. This
- is all hideously system dependent and, for all intents and
- purposes, undocumented.
-
- When we enter here, a3 holds the user's signal handler. We are
- supposed to fill in the context given in a2, and then pass it and
- the first two arguments to the user's function. If the user's
- function returns, we execute a sigreturn system call.
-
- The sc_onstack, sc_mask and sc_pc elements of the context are
- already set by the kernel. For some reason we don't have to save
- the floating point state or the coprocessor state; the kernel may
- have saved them for us, or it doesn't use them. */
-
-.set noat
-ENTRY (__handler)
- /* Store zero and the asm temp reg. */
- sw $0, 12(a2)
- sw AT, 16(a2)
-
- /* Put v1 in sc_regs[3]. */
- sw v1, 24(a2)
-
- /* Save the caller saved registers in sc_regs[8..15]. */
- sw t0, 44(a2)
- sw t1, 48(a2)
- sw t2, 52(a2)
- sw t3, 56(a2)
- sw t4, 60(a2)
- sw t5, 64(a2)
- sw t6, 68(a2)
- sw t7, 72(a2)
-
- /* Save the callee saved registers in sc_regs[16..23]. */
- sw s0, 76(a2)
- sw s1, 80(a2)
- sw s2, 84(a2)
- sw s3, 88(a2)
- sw s4, 92(a2)
- sw s5, 96(a2)
- sw s6, 100(a2)
- sw s7, 104(a2)
-
- /* Save the code generator registers in sc_regs[24] & sc_regs[25]. */
- sw t8, 108(a2)
- sw t9, 112(a2)
-
- /* Save the kernel temp regs in sc_regs[26] & sc_regs[27]. */
- sw k0, 116(a2)
- sw k1, 120(a2)
-
- /* Save the global pointer in sc_regs[28]. */
- sw gp, 124(a2)
-
- /* ... and also the return address in sc_regs[31]. */
- sw ra, 136(a2)
-
- /* Note: we don't save the stack pointer in sc_regs[29];
- instead, we use the one that was already there. */
-#if 0
- sw sp, 128(a2)
-#endif
-
- /* Save the floating pointer in sc_regs[30]. */
- sw $fp, 132(a2)
-
- /* Save the mul/div stuff in sc_mdlo and sc_mdhi. */
- mflo t0
- sw t0, 140(a2)
- mfhi t0
- sw t0, 144(a2)
-
- /* Move the stack up four. This will save the context. */
- addu sp, sp, -32
- sw a2, 16(sp)
-
- /* Call their handler with the signal, code, and context; note
- this will clobber the context. */
- .set noreorder
- jal ra, a3
- nop
- .set reorder
-
- /* When we come back, restore the context and pass it right
- on into sigreturn(). */
- lw a0, 16(sp)
-
- /* Do a sigreturn syscall; this doesn't return. */
- la v0, __sigreturn
- jal ra, v0
- .end __handler
diff --git a/sysdeps/unix/bsd/ultrix4/mips/bits/sigcontext.h b/sysdeps/unix/bsd/ultrix4/mips/bits/sigcontext.h
deleted file mode 100644
index 3674651372..0000000000
--- a/sysdeps/unix/bsd/ultrix4/mips/bits/sigcontext.h
+++ /dev/null
@@ -1,63 +0,0 @@
-/* Copyright (C) 1992, 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SIGNAL_H
-# error "Never use <bits/sigcontext.h> directly; include <signal.h> instead."
-#endif
-
-/* Note that ANY change to this instantly implies a change to __handler.S. */
-
-struct sigcontext
- {
- /* Nonzero if running on signal stack. */
- int sc_onstack;
-
- /* Signal mask to restore. */
- __sigset_t sc_mask;
-
- /* Program counter when the signal hit. */
- __ptr_t sc_pc;
-
- /* Registers 0 through 31. */
- int sc_regs[32];
-
- /* mul/div low and hi; these aren't part of a jmp_buf, but are part of the
- sigcontext and are referenced from the signal trampoline code. */
- int sc_mdlo;
- int sc_mdhi;
-
- /* Flag to see if the FP's been used. */
- int sc_ownedfp;
-
- /* Floating point registers 0 to 31. */
- int sc_fpregs[32];
- /* Control & status register for FP. */
- int sc_fpc_csr;
-
- /* Exception instruction register for FP. */
- int sc_fpc_eir;
-
- /* The coprocessor's cause register. */
- int sc_cause;
-
- /* CPU bad virtual address. */
- __ptr_t sc_badvaddr;
-
- /* CPU board bad physical address. */
- __ptr_t sc_badpaddr;
- };
diff --git a/sysdeps/unix/bsd/ultrix4/mips/sigvec.c b/sysdeps/unix/bsd/ultrix4/mips/sigvec.c
deleted file mode 100644
index 5775c9adb9..0000000000
--- a/sysdeps/unix/bsd/ultrix4/mips/sigvec.c
+++ /dev/null
@@ -1,55 +0,0 @@
-/* Copyright (C) 1992, 1996, 1997, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* The sigvec system call on MIPS Ultrix takes an additional
- parameter, which is the address that is actually called when the
- signal occurs.
-
- When a signal occurs, we arrange for the kernel to call __handler.
- That will save the frame and stack pointers into the context, and
- then jump to this routine. See __handler.S.
-
- This code is based on sysdeps/unix/bsd/sun4/sigtramp.c, but it's
- different because since we get passed the user signal handler we
- don't actually need a trampoline. */
-
-#include <signal.h>
-#include <stddef.h>
-#include <errno.h>
-
-/* The user's signal handler is called with three arguments. */
-typedef void (*handler_type) (int sig, int code, struct sigcontext *);
-
-extern int __raw_sigvec (int sig, CONST struct sigvec *vec,
- struct sigvec *ovec,
- void (*)(int sig, int code,
- struct sigcontext *,
- handler_type));
-
-extern void __handler (int sig, int code,
- struct sigcontext *,
- handler_type);
-
-int
-__sigvec (sig, vec, ovec)
- int sig;
- const struct sigvec *vec;
- struct sigvec *ovec;
-{
- return __raw_sigvec (sig, vec, ovec, __handler);
-}
diff --git a/sysdeps/unix/bsd/ultrix4/mips/start.S b/sysdeps/unix/bsd/ultrix4/mips/start.S
deleted file mode 100644
index a88268af45..0000000000
--- a/sysdeps/unix/bsd/ultrix4/mips/start.S
+++ /dev/null
@@ -1,87 +0,0 @@
-/* Copyright (C) 1993, 1995, 1996, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- In addition to the permissions in the GNU Lesser General Public
- License, the Free Software Foundation gives you unlimited
- permission to link the compiled version of this file with other
- programs, and to distribute those programs without any restriction
- coming from the use of this file. (The GNU Lesser General Public
- License restrictions do apply in other respects; for example, they
- cover modification of the file, and distribution when not linked
- into another program.)
-
- Note that people who make modified versions of this file are not
- obligated to grant this special exception for their modified
- versions; it is their choice whether to do so. The GNU Lesser
- General Public License gives permission to release a modified
- version without this exception; this exception also makes it
- possible to release a modified version which carries forward this
- exception.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-ENTRY(__start)
- .set noreorder
-
- /* The first thing on the stack is argc. */
- lw s0, 0(sp)
- nop
-
- /* Set up the global pointer. */
- la gp, _gp
-
- /* Then set up argv. */
- addiu s1, sp, 4
-
- /* To compute where envp is, first we have to jump ahead four
- bytes from what argv was. This will bring us ahead, so we don't
- need to compute the NULL at the end of argv later. */
- addiu v1, s1, 4
-
- /* Now, compute the space to skip given the number of arguments
- we've got. We do this by multiplying argc by 4. */
- sll v0, s0, 2
-
- /* Now, add (argv+4) with the space to skip...that's envp. */
- addu s2, v1, v0
-
- /* __environ = envp; */
- sw s2, __environ
-
- addiu sp, sp, -24
-
- /* __libc_init (argc, argv, envp); */
- move a0, s0
- move a1, s1
- jal __libc_init
- move a2, s2
-
- /* errno = 0; */
- sw zero, errno
-
- /* exit (main (argc, argv, envp)); */
- move a0, s0
- move a1, s1
- jal main
- move a2, s2
-
- /* Make the value returned by main be the argument to exit. */
- jal exit
- move a0, v0
- .end __start
diff --git a/sysdeps/unix/bsd/ultrix4/mips/syscalls.list b/sysdeps/unix/bsd/ultrix4/mips/syscalls.list
deleted file mode 100644
index f7d0bba6a8..0000000000
--- a/sysdeps/unix/bsd/ultrix4/mips/syscalls.list
+++ /dev/null
@@ -1,3 +0,0 @@
-# File name Caller Syscall name # args Strong name Weak names
-
-raw-sigvec sigvec sigvec 4 __raw_sigvec
diff --git a/sysdeps/unix/bsd/ultrix4/mips/sysdep.h b/sysdeps/unix/bsd/ultrix4/mips/sysdep.h
deleted file mode 100644
index 09b69ff854..0000000000
--- a/sysdeps/unix/bsd/ultrix4/mips/sysdep.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#define NO_UNDERSCORES
-
-#include <sysdeps/unix/mips/sysdep.h>
diff --git a/sysdeps/unix/bsd/ultrix4/mips/vfork.S b/sysdeps/unix/bsd/ultrix4/mips/vfork.S
deleted file mode 100644
index d413e45dc1..0000000000
--- a/sysdeps/unix/bsd/ultrix4/mips/vfork.S
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright (C) 1992, 1995, 1997, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-#ifndef SYS_vfork
-#define SYS_vfork 66
-#endif
-
-SYSCALL__ (vfork, 0)
- beq v1, zero, parent /* Branch if parent. */
- nop
- move v0, zero
-parent:
- ret
- nop
- .end __vfork
-libc_hidden_def (__vfork)
-
-weak_alias (__vfork, vfork)
diff --git a/sysdeps/unix/bsd/ultrix4/syscalls.list b/sysdeps/unix/bsd/ultrix4/syscalls.list
deleted file mode 100644
index 68df0a766a..0000000000
--- a/sysdeps/unix/bsd/ultrix4/syscalls.list
+++ /dev/null
@@ -1,3 +0,0 @@
-# File name Caller Syscall name # args Strong name Weak names
-
-getsysinfo sysconf getsysinfo 5 __getsysinfo
diff --git a/sysdeps/unix/bsd/ultrix4/sysconf.c b/sysdeps/unix/bsd/ultrix4/sysconf.c
deleted file mode 100644
index 0982fc832d..0000000000
--- a/sysdeps/unix/bsd/ultrix4/sysconf.c
+++ /dev/null
@@ -1,61 +0,0 @@
-/* Copyright (C) 1992, 1995, 1996, 1997, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Ian Lance Taylor (ian@airs.com).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* On Ultrix we can use the getsysinfo call to get the right return
- value for _SC_CHILD_MAX. Everything else is from <sys/param.h>,
- which the default sysconf already knows how to handle. */
-
-#include <unistd.h>
-#include <errno.h>
-
-/* This is an Ultrix header file. */
-#include <sys/sysinfo.h>
-
-extern int __getsysinfo (unsigned int op, void *buffer,
- size_t nbytes, int *start, void *arg);
-extern long int __default_sysconf (int name);
-
-long int
-__sysconf (name)
- int name;
-{
- if (name == _SC_CHILD_MAX)
- {
- int save = errno;
- int start = 0;
- int ret;
-
- /* getsysinfo returns the number of values it put into the
- buffer, or 0 if not available, or -1 on error. */
- if (__getsysinfo (GSI_MAX_UPROCS, &ret, sizeof (ret), &start,
- (void *) 0) > 0)
- {
- __set_errno (save);
- return ret;
- }
-
- __set_errno (save);
- }
-
- return __default_sysconf (name);
-}
-
-#define __sysconf __default_sysconf
-
-#include <sysdeps/posix/sysconf.c>
diff --git a/sysdeps/unix/bsd/ultrix4/system.c b/sysdeps/unix/bsd/ultrix4/system.c
deleted file mode 100644
index b133fe77c0..0000000000
--- a/sysdeps/unix/bsd/ultrix4/system.c
+++ /dev/null
@@ -1,2 +0,0 @@
-/* Ultrix 4 does have `waitpid'. Avoid unix/system.c, which says we don't. */
-#include <sysdeps/posix/system.c>
diff --git a/sysdeps/unix/bsd/ultrix4/wait3.S b/sysdeps/unix/bsd/ultrix4/wait3.S
deleted file mode 100644
index b20ecfa242..0000000000
--- a/sysdeps/unix/bsd/ultrix4/wait3.S
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright (C) 1992, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-SYSCALL__ (wait3, 3)
- ret
- .end __wait3
-
-weak_alias (__wait3, wait3)
diff --git a/sysdeps/unix/bsd/vax/brk.S b/sysdeps/unix/bsd/vax/brk.S
deleted file mode 100644
index 52377bc43e..0000000000
--- a/sysdeps/unix/bsd/vax/brk.S
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Copyright (C) 1991, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-#ifndef SYS_brk
-#define SYS_brk 17
-#endif
-
-#ifndef HAVE_GNU_LD
-#define __end _end
-#endif
-
-.data
-.globl ___curbrk
-___curbrk:
- .long __end
-
-.text
-ENTRY (__brk)
- cmpl 4(ap), __end
- bgeq 0f
- movl __env, 4(ap)
-0: chmk $SYS_brk
- bcs 1f
- movl 4(ap), ___curbrk
- clrl r0
- ret
-1:
- jmp syscall_error
-
-weak_alias (__brk, brk)
diff --git a/sysdeps/unix/bsd/vax/dl-brk.S b/sysdeps/unix/bsd/vax/dl-brk.S
deleted file mode 100644
index eeb96544e3..0000000000
--- a/sysdeps/unix/bsd/vax/dl-brk.S
+++ /dev/null
@@ -1 +0,0 @@
-#include <brk.S>
diff --git a/sysdeps/unix/bsd/vax/pipe.S b/sysdeps/unix/bsd/vax/pipe.S
deleted file mode 100644
index 3ed784264c..0000000000
--- a/sysdeps/unix/bsd/vax/pipe.S
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright (C) 1991, 1992, 1995, 1997, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-SYSCALL__ (pipe, 1)
- movl 4(ap), r2
- movl r0, (r2)+
- movl r1, (r2)
- clrl r0
- ret
-
-libc_hidden_def (__pipe)
-weak_alias (__pipe, pipe)
diff --git a/sysdeps/unix/bsd/vax/sysdep.S b/sysdeps/unix/bsd/vax/sysdep.S
deleted file mode 100644
index 786aed2d1a..0000000000
--- a/sysdeps/unix/bsd/vax/sysdep.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Copyright (C) 1991, 1992, 1993, 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#define _ERRNO_H
-#include <bits/errno.h>
-
-.globl _errno
-.globl syscall_error
-syscall_error:
-#if defined (EWOULDBLOCK_sys) && EWOULDBLOCK_sys != EAGAIN
- /* We translate the system's EWOULDBLOCK error into EAGAIN.
- The GNU C library always defines EWOULDBLOCK==EAGAIN.
- EWOULDBLOCK_sys is the original number. */
- cmpl r0, $EWOULDBLOCK_sys
- bne 0f
- movl $EAGAIN, r0
-#endif
-0: movl r0, _errno
- mnegl $1, r0
- ret
diff --git a/sysdeps/unix/bsd/vax/sysdep.h b/sysdeps/unix/bsd/vax/sysdep.h
deleted file mode 100644
index 563ad26c18..0000000000
--- a/sysdeps/unix/bsd/vax/sysdep.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/* Copyright (C) 1991, 1992, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdeps/unix/sysdep.h>
-
-#ifdef __ASSEMBLER__
-
-#ifdef __STDC__
-#define ENTRY(name) \
- .globl _##name; \
- .even; \
- _##name##:
-#else
-#define ENTRY(name) \
- .globl _/**/name; \
- .even; \
- _/**/name/**/:
-#endif
-
-#ifdef __STDC__
-#define PSEUDO(name, syscall_name, args) \
- .even; \
- .globl syscall_error \
- error: jmp syscall_error; \
- ENTRY (name) \
- chmk $SYS_##syscall_name \
- bcs error
-#else
-#define PSEUDO(name, syscall_name, args) \
- .even; \
- .globl syscall_error \
- error: jmp syscall_error; \
- ENTRY (name) \
- chmk $SYS_/**/syscall_name \
- bcs error
-#endif
-
-#define MOVE(x,y) movl x , y
-
-#endif /* __ASSEMBLER__ */
diff --git a/sysdeps/unix/bsd/vax/vfork.S b/sysdeps/unix/bsd/vax/vfork.S
deleted file mode 100644
index 6c7e754ac7..0000000000
--- a/sysdeps/unix/bsd/vax/vfork.S
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Copyright (C) 1991, 1992, 1995, 1997, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-#ifndef SYS_vfork
-#define SYS_vfork 66
-#endif
-
-/* Clone the calling process, but without copying the whole address space.
- The calling process is suspended until the new process exits or is
- replaced by a call to `execve'. Return -1 for errors, 0 to the new process,
- and the process ID of the new process to the old process. */
-.globl ___vfork
-___vfork:
- .word 0
- /* Save our return address in R2, and return to code below. */
- movl 16(fp), r2
- movab unwind, 16(fp)
- ret
-unwind:
- /* Do the system call. */
- chmk $SYS_vfork
- bcs error
-
- tstl r1
- beq parent
-
- /* We are the child. Return zero. */
- clrl r0
-
- /* Return to the saved address. */
-parent: jmp (r2)
-
-.globl _errno
-error:
- movl r0, _errno
- mnegl $1, r0
- jmp (r2)
-libc_hidden_def (__vfork)
-
-weak_alias (__vfork, vfork)
diff --git a/sysdeps/unix/bsd/vax/wait.S b/sysdeps/unix/bsd/vax/wait.S
deleted file mode 100644
index 19396f06e8..0000000000
--- a/sysdeps/unix/bsd/vax/wait.S
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright (C) 1991, 1992, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-SYSCALL__ (wait, 1)
- movl 4(ap), r2
- beq 1f
- movl r1, (r2)
-1: ret
-
-weak_alias (__wait, wait)
diff --git a/sysdeps/unix/bsd/vax/wait3.S b/sysdeps/unix/bsd/vax/wait3.S
deleted file mode 100644
index e0ceec1de0..0000000000
--- a/sysdeps/unix/bsd/vax/wait3.S
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright (C) 1991, 1992, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-ENTRY(___wait3)
- movel 8(ap), r1
- movel 12(ap), r0
- /* Set all condition codes to tell the kernel this is wait3. */
- bispsw $15
- chmk $SYS_wait
- bcs error
-
- movl 4(ap), r2
- beq 1f
- movl r1, (r2)
-1: ret
-
-.globl syscall_error
-error: jmp syscall_error
-
-weak_alias (__wait3, wait3)
diff --git a/sysdeps/unix/sysv/aix/Dist b/sysdeps/unix/sysv/aix/Dist
deleted file mode 100644
index 609fd778e9..0000000000
--- a/sysdeps/unix/sysv/aix/Dist
+++ /dev/null
@@ -1,15 +0,0 @@
-dl-support.c
-dl-error.c
-dl-addr.c
-dl-sym.c
-dl-open.c
-dl-close.c
-dl-libc.c
-dlldr.h
-kernel_proto.h
-start-libc.c
-sysv_termio.h
-bits/utmpx.h
-gnu/lib-names.h
-uitrunc.c
-utmpx.h
diff --git a/sysdeps/unix/sysv/aix/Implies b/sysdeps/unix/sysv/aix/Implies
deleted file mode 100644
index 279438d433..0000000000
--- a/sysdeps/unix/sysv/aix/Implies
+++ /dev/null
@@ -1,8 +0,0 @@
-# AIX shares most of the syscalls which are also common to BSD and SVR4.
-unix/common
-
-# AIX has all functions of the mmap family which are described in POSIX.4.
-unix/mman
-
-# AIX has network support in the kernel.
-unix/inet
diff --git a/sysdeps/unix/sysv/aix/Makefile b/sysdeps/unix/sysv/aix/Makefile
deleted file mode 100644
index 2da5311091..0000000000
--- a/sysdeps/unix/sysv/aix/Makefile
+++ /dev/null
@@ -1,41 +0,0 @@
-# XXX For now always link against the syscalls export file.
-# This is a hack until the import/export stuff is worked out.
-+postctor += /lib/syscalls.exp
-
-ifeq ($(subdir),csu)
-
-sysdep_routines += aix-syscalls
-
-#
-# The foo.c is a workaround for the linker complaining about no input files.
-$(objpfx)aix-syscalls.o : /lib/syscalls.exp
- echo "static int a;" > foo.c
- $(CC) -c foo.c
- ld -bM:SRE -bpT:0x00000000 -bpD:0x00000000 -bnoentry -bI:/lib/syscalls.exp -bE:/lib/syscalls.exp foo.o -o $@
- rm foo.c foo.o
-
-
-endif
-
-ifeq ($(subdir),misc)
-sysdep_routines += dl-error dl-support dl-libc dl-open dl-sym \
- dl-close dl-addr uitrunc
-
-static-only-routines = gprsave0 gprrest0 gprsave1 gprrest1 fprsave fprrest
-endif
-
-ifeq ($(subdir),login)
-sysdep_routines += setutxent getutxent endutxent getutxid getutxline \
- pututxline utmpxname
-
-#sysdep_headers += utmpx.h bits/utmpx.h
-#sysdep_headers += bits/utmp.h bits/utmpx.h
-endif
-
-# Don't compile the ctype glue code, since there is no old non-GNU C library.
-inhibit-glue = yes
-
-# XXX Don't know yet why this is needed in the moment.
-ifeq ($(subdir),timezone)
-CPPFLAGS-zic.c = -Dunix
-endif
diff --git a/sysdeps/unix/sysv/aix/Versions b/sysdeps/unix/sysv/aix/Versions
deleted file mode 100644
index 4c32bbbe77..0000000000
--- a/sysdeps/unix/sysv/aix/Versions
+++ /dev/null
@@ -1,6 +0,0 @@
-libc {
- GLIBC_2.2 {
- # u*
- umount;
- }
-}
diff --git a/sysdeps/unix/sysv/aix/_exit.c b/sysdeps/unix/sysv/aix/_exit.c
deleted file mode 100644
index 510f3ae88b..0000000000
--- a/sysdeps/unix/sysv/aix/_exit.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright (C) 1999 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <stdlib.h>
-
-
-/* We define only thr alias introduced in ISO C99 because _exit itself
- is a system call. */
-void
-_Exit (status)
- int status;
-{
- _exit (status);
-}
diff --git a/sysdeps/unix/sysv/aix/accept.c b/sysdeps/unix/sysv/aix/accept.c
deleted file mode 100644
index 73f11499f2..0000000000
--- a/sysdeps/unix/sysv/aix/accept.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright (C) 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <assert.h>
-#include <sys/socket.h>
-
-extern int naccept (int s, void *uap_name, int *uap_anamelen);
-
-int
-accept (int fd, __SOCKADDR_ARG addr, socklen_t *addr_len)
-{
- assert (sizeof (socklen_t) == sizeof (int));
- return naccept (fd, addr.__sockaddr__, addr_len);
-}
-libc_hidden_def (accept)
diff --git a/sysdeps/unix/sysv/aix/access.c b/sysdeps/unix/sysv/aix/access.c
deleted file mode 100644
index 97f8e68799..0000000000
--- a/sysdeps/unix/sysv/aix/access.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-#define ACC_INVOKER 0x01
-
-extern int accessx (const char *name, int type, int who);
-
-int
-__access (const char *name, int type)
-{
- return accessx (name, type, ACC_INVOKER);
-}
-strong_alias (__access, access)
diff --git a/sysdeps/unix/sysv/aix/bind.c b/sysdeps/unix/sysv/aix/bind.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/bind.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/bits/dirent.h b/sysdeps/unix/sysv/aix/bits/dirent.h
deleted file mode 100644
index 48eeb32887..0000000000
--- a/sysdeps/unix/sysv/aix/bits/dirent.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/* Directory entry structure `struct dirent'. Old System V version.
- Copyright (C) 1996, 1997, 1999 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _DIRENT_H
-# error "Never use <bits/dirent.h> directly; include <dirent.h> instead."
-#endif
-
-struct dirent
- {
-#ifndef __USE_FILE_OFFSET64
- __off_t d_off;
- __ino_t d_ino;
-#else
- __off64_t d_off;
- __ino64_t d_ino;
-#endif
- unsigned short int d_reclen;
- unsigned short int d_namlen;
- char d_name[256];
- };
-
-#ifdef __USE_LARGEFILE64
-struct dirent64
- {
- __off64_t d_off;
- __ino64_t d_ino;
- unsigned short int d_reclen;
- unsigned short int d_namlen;
- char d_name[256];
- };
-#endif
-
-#define d_fileno d_ino /* Backwards compatibility. */
-#define d_offset d_off
-
-#define _DIRENT_HAVE_D_NAMLEN
-#define _DIRENT_HAVE_D_RECLEN
-#define _DIRENT_HAVE_D_OFF
-#undef _DIRENT_HAVE_D_TYPE
diff --git a/sysdeps/unix/sysv/aix/bits/dlfcn.h b/sysdeps/unix/sysv/aix/bits/dlfcn.h
deleted file mode 100644
index e184175275..0000000000
--- a/sysdeps/unix/sysv/aix/bits/dlfcn.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/* AIX dependent definitions for run-time dynamic loading.
- Copyright (C) 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _DLFCN_H
-# error "Never use <bits/dlfcn.h> directly; include <dlfcn.h> instead."
-#endif
-
-/* The MODE argument to `dlopen' contains one of the following: */
-#define RTLD_LAZY 0x004 /* Lazy function call binding. */
-#define RTLD_NOW 0x002 /* Immediate function call binding. */
-#define RTLD_BINDING_MASK 0x6 /* Mask of binding time value. */
-
-/* If the following bit is set in the MODE argument to `dlopen',
- the symbols of the loaded object and its dependencies are made
- visible as if the object were linked directly into the program. */
-#define RTLD_GLOBAL 0x10000
-
-/* Unix98 demands the following flag which is the inverse to RTLD_GLOBAL.
- The implementation does this by default and so we can define the
- value to zero. */
-#define RTLD_LOCAL 0x800000
-
-#ifdef __USE_GNU
-/* These are extensions of the AIX kernel. */
-# define RTLD_NOAUTODEFER 0x020000
-# define RTLD_MEMBER 0x040000
-# define RTLD_UNIX_LATEST 0x100000
-#endif
-
-/* No support to profile shared libraries available. */
-# define DL_CALL_FCT(fctp, args) fctp args
diff --git a/sysdeps/unix/sysv/aix/bits/endian.h b/sysdeps/unix/sysv/aix/bits/endian.h
deleted file mode 100644
index 8e9b98ef78..0000000000
--- a/sysdeps/unix/sysv/aix/bits/endian.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _ENDIAN_H
-# error "Never use <bits/endian.h> directly; include <endian.h> instead."
-#endif
-
-#define __BYTE_ORDER __BIG_ENDIAN
diff --git a/sysdeps/unix/sysv/aix/bits/errno.h b/sysdeps/unix/sysv/aix/bits/errno.h
deleted file mode 100644
index 9f22a965e1..0000000000
--- a/sysdeps/unix/sysv/aix/bits/errno.h
+++ /dev/null
@@ -1,153 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* This file defines the `errno' constants. */
-
-#if !defined __Emath_defined && (defined _ERRNO_H || defined __need_Emath)
-#undef __need_Emath
-#define __Emath_defined 1
-
-#endif
-
-#ifdef _ERRNO_H
-# undef EDOM
-# undef EILSEQ
-# undef ERANGE
-
-# define EPERM 1 /* Operation not permitted. */
-# define ENOENT 2 /* No such file or directory. */
-# define ESRCH 3 /* No such process. */
-# define EINTR 4 /* interrupted system call. */
-# define EIO 5 /* I/O error. */
-# define ENXIO 6 /* No such device or address. */
-# define E2BIG 7 /* Arg list too long. */
-# define ENOEXEC 8 /* Exec format error. */
-# define EBADF 9 /* Bad file descriptor. */
-# define ECHILD 10 /* No child processes. */
-# define EAGAIN 11 /* Resource temporarily unavailable. */
-# define ENOMEM 12 /* Not enough space. */
-# define EACCES 13 /* Permission denied. */
-# define EFAULT 14 /* Bad address. */
-# define ENOTBLK 15 /* Block device required. */
-# define EBUSY 16 /* Resource busy. */
-# define EEXIST 17 /* File exists. */
-# define EXDEV 18 /* Improper link. */
-# define ENODEV 19 /* No such device. */
-# define ENOTDIR 20 /* Not a directory. */
-# define EISDIR 21 /* Is a directory. */
-# define EINVAL 22 /* Invalid argument. */
-# define ENFILE 23 /* Too many open files in system. */
-# define EMFILE 24 /* Too many open files. */
-# define ENOTTY 25 /* Inappropriate I/O control operation. */
-# define ETXTBSY 26 /* Text file busy. */
-# define EFBIG 27 /* File too large. */
-# define ENOSPC 28 /* No space left on device. */
-# define ESPIPE 29 /* Invalid seek. */
-# define EROFS 30 /* Read only file system. */
-# define EMLINK 31 /* Too many links. */
-# define EPIPE 32 /* Broken pipe. */
-# define EDOM 33 /* Domain error within math function. */
-# define ERANGE 34 /* Result too large. */
-# define ENOMSG 35 /* No message of desired type. */
-# define EIDRM 36 /* Identifier removed. */
-# define ECHRNG 37 /* Channel number out of range. */
-# define EL2NSYNC 38 /* Level 2 not synchronized. */
-# define EL3HLT 39 /* Level 3 halted. */
-# define EL3RST 40 /* Level 3 reset. */
-# define ELNRNG 41 /* Link number out of range. */
-# define EUNATCH 42 /* Protocol driver not attached. */
-# define ENOCSI 43 /* No CSI structure available. */
-# define EL2HLT 44 /* Level 2 halted. */
-# define EDEADLK 45 /* Resource deadlock avoided. */
-# define ENOTREADY 46 /* Device not ready. */
-# define EWRPROTECT 47 /* Write-protected media. */
-# define EFORMAT 48 /* Unformatted media. */
-# define ENOLCK 49 /* No locks available. */
-# define ENOCONNECT 50 /* No connection. */
-# define ESTALE 52 /* No filesystem. */
-# define EDIST 53 /* Old, currently unused AIX errno. */
-# if __USE_XOPEN_EXTENDED
-# define EWOULDBLOCK EAGAIN /* Operation would block. */
-# else /* __USE_XOPEN_EXTENDED */
-# define EWOULDBLOCK 54
-# endif /* __USE_XOPEN_EXTENDED */
-# define EINPROGRESS 55 /* Operation now in progress. */
-# define EALREADY 56 /* Operation already in progress. */
-# define ENOTSOCK 57 /* Socket operation on non-socket. */
-# define EDESTADDRREQ 58 /* Destination address required. */
-# define EDESTADDREQ EDESTADDRREQ /* Destination address required. */
-# define EMSGSIZE 59 /* Message too long. */
-# define EPROTOTYPE 60 /* Protocol wrong type for socket. */
-# define ENOPROTOOPT 61 /* Protocol not available. */
-# define EPROTONOSUPPORT 62 /* Protocol not supported. */
-# define ESOCKTNOSUPPORT 63 /* Socket type not supported. */
-# define EOPNOTSUPP 64 /* Operation not supported on socket. */
-# define EPFNOSUPPORT 65 /* Protocol family not supported. */
-# define EAFNOSUPPORT 66 /* Address family not supported by protocol
- family. */
-# define EADDRINUSE 67 /* Address already in use. */
-# define EADDRNOTAVAIL 68 /* Can't assign requested address. */
-# define ENETDOWN 69 /* Network is down. */
-# define ENETUNREACH 70 /* Network is unreachable. */
-# define ENETRESET 71 /* Network dropped connection on reset. */
-# define ECONNABORTED 72 /* Software caused connection abort. */
-# define ECONNRESET 73 /* Connection reset by peer. */
-# define ENOBUFS 74 /* No buffer space available. */
-# define EISCONN 75 /* Socket is already connected. */
-# define ENOTCONN 76 /* Socket is not connected. */
-# define ESHUTDOWN 77 /* Can't send after socket shutdown. */
-# define ETIMEDOUT 78 /* Connection timed out. */
-# define ECONNREFUSED 79 /* Connection refused. */
-# define EHOSTDOWN 80 /* Host is down. */
-# define EHOSTUNREACH 81 /* No route to host. */
-# define ERESTART 82 /* Restart the system call. */
-# define EPROCLIM 83 /* Too many processes. */
-# define EUSERS 84 /* Too many users. */
-# define ELOOP 85 /* Too many levels of symbolic links. */
-# define ENAMETOOLONG 86 /* File name too long. */
-# define ENOTEMPTY EEXIST /* Directory not empty. */
-# define EDQUOT 88 /* Disc quota exceeded. */
-# define ECORRUPT 89 /* Invalid file system control data. */
-# define EREMOTE 93 /* Item is not local to host. */
-# define ENOSYS 109 /* Function not implemented POSIX. */
-# define EMEDIA 110 /* Media surface error. */
-# define ESOFT 111 /* I/O completed, but needs relocation. */
-# define ENOATTR 112 /* No attribute found. */
-# define ESAD 113 /* Security authentication denied. */
-# define ENOTRUST 114 /* Not a trusted program. */
-# define ETOOMANYREFS 115 /* Too many references: can't splice. */
-# define EILSEQ 116 /* Invalid wide character. */
-# define ECANCELED 117 /* Asynchronous i/o cancelled. */
-# define ENOSR 118 /* Temp out of streams resources. */
-# define ETIME 119 /* I_STR ioctl timed out. */
-# define EBADMSG 120 /* Wrong message type at stream head. */
-# define EPROTO 121 /* STREAMS protocol error. */
-# define ENODATA 122 /* No message ready at stream head. */
-# define ENOSTR 123 /* Fd is not a stream. */
-# define ECLONEME ERESTART /* This is the way we clone a stream. */
-# define ENOTSUP 124 /* POSIX threads unsupported value. */
-# define EMULTIHOP 125 /* Multihop is not allowed. */
-# define ENOLINK 126 /* The link has been severed. */
-# define EOVERFLOW 127 /* Value too large to be stored in data type.*/
-#endif
-
-#if !defined _ERRNO_H && defined __need_Emath
-# define EDOM 33 /* Math argument out of domain of function. */
-# define EILSEQ 116 /* Illegal byte sequence. */
-# define ERANGE 34 /* Math result not representable. */
-#endif /* !_ERRNO_H && __need_Emath */
diff --git a/sysdeps/unix/sysv/aix/bits/fcntl.h b/sysdeps/unix/sysv/aix/bits/fcntl.h
deleted file mode 100644
index c65b8beeb4..0000000000
--- a/sysdeps/unix/sysv/aix/bits/fcntl.h
+++ /dev/null
@@ -1,137 +0,0 @@
-/* O_*, F_*, FD_* bit values for Linux.
- Copyright (C) 1995-1999, 2000, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _FCNTL_H
-# error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead."
-#endif
-
-
-#include <sys/types.h>
-
-/* open/fcntl. */
-#define O_ACCMODE 0003
-#define O_RDONLY 00
-#define O_WRONLY 01
-#define O_RDWR 02
-#define O_NONBLOCK 04
-#define O_NDELAY O_NONBLOCK
-#define O_APPEND 010
-#define O_SYNC 020
-#define O_FSYNC O_SYNC
-#define O_CREAT 0400 /* not fcntl */
-#define O_TRUNC 01000 /* not fcntl */
-#define O_EXCL 02000 /* not fcntl */
-#define O_NOCTTY 04000 /* not fcntl */
-#define O_ASYNC 0400000
-
-#ifdef __USE_LARGEFILE64
-# define O_LARGEFILE 0400000000
-#endif
-
-/* For now Linux has synchronisity options for data and read operations.
- We define the symbols here but let them do the same as O_SYNC since
- this is a superset. */
-#if defined __USE_POSIX199309 || defined __USE_UNIX98
-# define O_DSYNC 020000000 /* Synchronize data. */
-# define O_RSYNC 010000000 /* Synchronize read operations. */
-#endif
-
-/* Values for the second argument to `fcntl'. */
-#define F_DUPFD 0 /* Duplicate file descriptor. */
-#define F_GETFD 1 /* Get file descriptor flags. */
-#define F_SETFD 2 /* Set file descriptor flags. */
-#define F_GETFL 3 /* Get file status flags. */
-#define F_SETFL 4 /* Set file status flags. */
-#ifndef __USE_FILE_OFFSET64
-# define F_GETLK 5 /* Get record locking info. */
-# define F_SETLK 6 /* Set record locking info (non-blocking). */
-# define F_SETLKW 7 /* Set record locking info (blocking). */
-#else
-# define F_GETLK 11 /* Get record locking info. */
-# define F_SETLK 12 /* Set record locking info (non-blocking). */
-# define F_SETLKW 13 /* Set record locking info (blocking). */
-#endif
-
-#ifdef __USE_LARGEFILE64
-# define F_GETLK64 11 /* Get record locking info. */
-# define F_SETLK64 12 /* Set record locking info (non-blocking). */
-# define F_SETLKW64 13 /* Set record locking info (blocking). */
-#endif
-
-#if defined __USE_BSD || defined __USE_UNIX98
-# define F_SETOWN 8 /* Get owner of socket (receiver of SIGIO). */
-# define F_GETOWN 9 /* Set owner of socket (receiver of SIGIO). */
-#endif
-
-/* For F_[GET|SET]FL. */
-#define FD_CLOEXEC 1 /* actually anything with low bit set goes */
-
-/* For posix fcntl() and `l_type' field of a `struct flock' for lockf(). */
-#define F_RDLCK 1 /* Read lock. */
-#define F_WRLCK 2 /* Write lock. */
-#define F_UNLCK 3 /* Remove lock. */
-
-#ifdef __USE_BSD
-/* Operations for bsd flock(), also used by the kernel implementation */
-# define LOCK_SH 1 /* shared lock */
-# define LOCK_EX 2 /* exclusive lock */
-# define LOCK_NB 4 /* or'd with one of the above to prevent
- blocking */
-# define LOCK_UN 8 /* remove lock */
-#endif
-
-struct flock
- {
- short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */
- short int l_whence; /* Where `l_start' is relative to (like `lseek'). */
-#ifndef __USE_FILE_OFFSET64
- __off_t l_start; /* Offset where the lock begins. */
- __off_t l_len; /* Size of the locked area; zero means until EOF. */
-#endif
- unsigned int l_sysid;
- __pid_t l_pid; /* Process holding the lock. */
- int l_vfs;
-#ifdef __USE_FILE_OFFSET64
- __off64_t l_start; /* Offset where the lock begins. */
- __off64_t l_len; /* Size of the locked area; zero means until EOF. */
-#endif
- };
-
-#ifdef __USE_LARGEFILE64
-struct flock64
- {
- short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */
- short int l_whence; /* Where `l_start' is relative to (like `lseek'). */
- unsigned int l_sysid;
- __pid_t l_pid; /* Process holding the lock. */
- int l_vfs;
- __off64_t l_start; /* Offset where the lock begins. */
- __off64_t l_len; /* Size of the locked area; zero means until EOF. */
- };
-#endif
-
-/* Define some more compatibility macros to be backward compatible with
- BSD systems which did not managed to hide these kernel macros. */
-#ifdef __USE_BSD
-# define FAPPEND O_APPEND
-# define FFSYNC O_FSYNC
-# define FASYNC O_ASYNC
-# define FNONBLOCK O_NONBLOCK
-# define FNDELAY O_NDELAY
-#endif /* Use BSD. */
diff --git a/sysdeps/unix/sysv/aix/bits/ioctl-types.h b/sysdeps/unix/sysv/aix/bits/ioctl-types.h
deleted file mode 100644
index d8fe8c8d5b..0000000000
--- a/sysdeps/unix/sysv/aix/bits/ioctl-types.h
+++ /dev/null
@@ -1,91 +0,0 @@
-/* Structure types for pre-termios terminal ioctls. AIX version.
- Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_IOCTL_H
-# error "Never use <bits/ioctl-types.h> directly; include <sys/ioctl.h> instead."
-#endif
-
-/* Constants for use with `ioctl'. */
-#define TIOC ('T' << 8)
-#define TCGETS (TIOC | 1)
-#define TCSETS (TIOC | 2)
-#define TCSETSW (TIOC | 3)
-#define TCSETSF (TIOC | 4)
-#define TCGETA (TIOC | 5)
-#define TCSETA (TIOC | 6)
-#define TCSETAW (TIOC | 7)
-#define TCSETAF (TIOC | 8)
-#define TCSBRK (TIOC | 9)
-#define TCSBREAK (TIOC | 10)
-#define TCXONC (TIOC | 11)
-#define TCFLSH (TIOC | 12)
-#define TCGLEN (TIOC | 13)
-#define TCSLEN (TIOC | 14)
-#define TCSAK (TIOC | 15)
-#define TCQSAK (TIOC | 16)
-#define TCTRUST (TIOC | 17)
-#define TCQTRUST (TIOC | 18)
-#define TCSMAP (TIOC | 19)
-#define TCGMAP (TIOC | 20)
-#define TCKEP (TIOC | 21)
-#define TCGSAK (TIOC | 22)
-#define TCLOOP (TIOC | 23)
-#define TCVPD (TIOC | 24)
-#define TCREG (TIOC | 25)
-#define TCGSTATUS (TIOC | 26)
-#define TCSCONTROL (TIOC | 27)
-#define TCSCSMAP (TIOC | 28)
-#define TCGCSMAP (TIOC | 29)
-#define TCMGR TCSAK
-#define TCQMGR TCQSAK
-#define TIONREAD FIONREAD
-
-
-
-struct winsize
-{
- unsigned short int ws_row;
- unsigned short int ws_col;
- unsigned short int ws_xpixel;
- unsigned short int ws_ypixel;
-};
-
-#define NCC 8
-struct termio
-{
- unsigned short int c_iflag; /* input mode flags */
- unsigned short int c_oflag; /* output mode flags */
- unsigned short int c_cflag; /* control mode flags */
- unsigned short int c_lflag; /* local mode flags */
- char c_line; /* line discipline */
- unsigned char c_cc[NCC]; /* control characters */
-};
-
-/* modem lines */
-#define TIOCM_LE 0x001
-#define TIOCM_DTR 0x002
-#define TIOCM_RTS 0x004
-#define TIOCM_ST 0x008
-#define TIOCM_SR 0x010
-#define TIOCM_CTS 0x020
-#define TIOCM_CAR 0x040
-#define TIOCM_RNG 0x080
-#define TIOCM_DSR 0x100
-#define TIOCM_CD TIOCM_CAR
-#define TIOCM_RI TIOCM_RNG
diff --git a/sysdeps/unix/sysv/aix/bits/ioctls.h b/sysdeps/unix/sysv/aix/bits/ioctls.h
deleted file mode 100644
index 8023c144df..0000000000
--- a/sysdeps/unix/sysv/aix/bits/ioctls.h
+++ /dev/null
@@ -1,248 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_IOCTL_H
-# error "Never use <bits/ioctls.h> directly; include <sys/ioctl.h> instead."
-#endif
-
-
-#define IOCPARM_MASK 0x7f /* parameters must be < 128 bytes */
-#define IOC_VOID 0x20000000 /* no parameters */
-#define IOC_OUT 0x40000000 /* copy out parameters */
-#define IOC_IN (0x40000000<<1) /* copy in parameters */
-#define IOC_INOUT (IOC_IN|IOC_OUT)
-#define _IO(x,y) (IOC_VOID|(x<<8)|y)
-#define _IOR(x,y,t) (IOC_OUT|((sizeof(t)&IOCPARM_MASK)<<16)|(x<<8)|y)
-#define _IOW(x,y,t) (IOC_IN|((sizeof(t)&IOCPARM_MASK)<<16)|(x<<8)|y)
-#define _IOWR(x,y,t) (IOC_INOUT|((sizeof(t)&IOCPARM_MASK)<<16)|(x<<8)|y)
-
-#define TIOCGETD _IOR('t', 0, int) /* get line discipline */
-#define TIOCSETD _IOW('t', 1, int) /* set line discipline */
-#define TIOCHPCL _IO('t', 2) /* hang up on last close */
-#define TIOCMODG _IOR('t', 3, int) /* get modem control state */
-#define TIOCMODS _IOW('t', 4, int) /* set modem control state */
-#define TIOCGETP _IOR('t', 8,struct sgttyb)/* get parameters -- gtty */
-#define TIOCSETP _IOW('t', 9,struct sgttyb)/* set parameters -- stty */
-#define TIOCSETN _IOW('t',10,struct sgttyb)/* as above, but no flushtty */
-#define TIOCEXCL _IO('t', 13) /* set exclusive use of tty */
-#define TIOCNXCL _IO('t', 14) /* reset exclusive use of tty */
-#define TIOCFLUSH _IOW('t', 16, int) /* flush buffers */
-#define TIOCSETC _IOW('t',17,struct tchars)/* set special characters */
-#define TIOCGETC _IOR('t',18,struct tchars)/* get special characters */
-#define TANDEM 0x00000001 /* send stopc on out q full */
-#define CBREAK 0x00000002 /* half-cooked mode */
-#define LCASE 0x00000004 /* simulate lower case */
-#define CRMOD 0x00000010 /* map \r to \r\n on output */
-#define RAW 0x00000020 /* no i/o processing */
-#define ODDP 0x00000040 /* get/send odd parity */
-#define EVENP 0x00000080 /* get/send even parity */
-#define ANYP 0x000000c0 /* get any parity/send none */
-#define CRDELAY 0x00000300 /* \r delay */
-#define TBDELAY 0x00000c00 /* horizontal tab delay */
-#define XTABS 0x00000c00 /* expand tabs on output */
-#define BSDELAY 0x00001000 /* \b delay */
-#define VTDELAY 0x00002000 /* vertical tab delay */
-#define NLDELAY 0x0000c000 /* \n delay */
-#define NL2 0x00008000 /* vt05 */
-#define NL3 0x0000c000
-#define ALLDELAY (NLDELAY|TBDELAY|CRDELAY|VTDELAY|BSDELAY)
-#define PRTERA 0x00020000 /* \ ... / erase */
-#define CRTERA 0x00040000 /* " \b " to wipe out char */
-#define TILDE 0x00080000 /* hazeltine tilde kludge */
-#define LITOUT 0x00200000 /* literal output */
-#define CRTBS 0x00400000 /* do backspacing for crt */
-#define MDMBUF 0x00800000 /* dtr pacing */
-#define NOHANG 0x01000000 /* no SIGHUP on carrier drop */
-#define L001000 0x02000000
-#define CRTKIL 0x04000000 /* kill line with " \b " */
-#define PASS8 0x08000000
-#define CTLECH 0x10000000 /* echo control chars as ^X */
-#define DECCTQ 0x40000000 /* only ^Q starts after ^S */
-#define NOFLUSH 0x80000000 /* no output flush on signal */
-
-
-/* SYS V REL. 4 PTY IOCTLs */
-#define UNLKPT _IO('t',70) /* unlock slave pty */
-#define ISPTM _IO('t',71) /* ret. maj+min of pty master */
-#define ISPTS _IO('t',73) /* return maj+min of slave */
-#define GRTPT _IO('t',74) /* grantpt slave pty*/
-#define RLOGIND _IO('t',75) /* for rlogind protocol in ptydd */
-#define TELNETDP _IO('t',76) /* for telnetd protocol in ptydd */
-
-#define TIOCCONS _IOW('t', 98, int) /* become virtual console */
-#define TIOCGSID _IOR('t', 72, int) /* get the tty session id */
-
- /* locals, from 127 down */
-#define TIOCLBIS _IOW('t', 127, int) /* bis local mode bits */
-#define TIOCLBIC _IOW('t', 126, int) /* bic local mode bits */
-#define TIOCLSET _IOW('t', 125, int) /* set entire mode word */
-#define TIOCLGET _IOR('t', 124, int) /* get local modes */
-#define LCRTBS (CRTBS>>16)
-#define LPRTERA (PRTERA>>16)
-#define LCRTERA (CRTERA>>16)
-#define LTILDE (TILDE>>16)
-#define LMDMBUF (MDMBUF>>16)
-#define LLITOUT (LITOUT>>16)
-#define LTOSTOP (TOSTOP>>16)
-#define LFLUSHO (FLUSHO>>16)
-#define LNOHANG (NOHANG>>16)
-#define LCRTKIL (CRTKIL>>16)
-#define LPASS8 (PASS8>>16)
-#define LCTLECH (CTLECH>>16)
-#define LPENDIN (PENDIN>>16)
-#define LDECCTQ (DECCTQ>>16)
-#define LNOFLSH (NOFLUSH>>16)
-#define TIOCSBRK _IO('t', 123) /* set break bit */
-#define TIOCCBRK _IO('t', 122) /* clear break bit */
-#define TIOCSDTR _IO('t', 121) /* set data terminal ready */
-#define TIOCCDTR _IO('t', 120) /* clear data terminal ready */
-#define TIOCGPGRP _IOR('t', 119, int) /* get process group */
-#define TIOCSPGRP _IOW('t', 118, int) /* set process gorup */
-#define TIOCSLTC _IOW('t',117,struct ltchars)/* set local special chars */
-#define TIOCGLTC _IOR('t',116,struct ltchars)/* get local special chars */
-#define TIOCOUTQ _IOR('t', 115, int) /* output queue size */
-#define TIOCSTI _IOW('t', 114, char) /* simulate terminal input */
-#define TIOCNOTTY _IO('t', 113) /* void tty association */
-#define TIOCPKT _IOW('t', 112, int) /* pty: set/clear packet mode */
-#define TIOCPKT_DATA 0x00 /* data packet */
-#define TIOCPKT_FLUSHREAD 0x01 /* flush packet */
-#define TIOCPKT_FLUSHWRITE 0x02 /* flush packet */
-#define TIOCPKT_STOP 0x04 /* stop output */
-#define TIOCPKT_START 0x08 /* start output */
-#define TIOCPKT_NOSTOP 0x10 /* no more ^S, ^Q */
-#define TIOCPKT_DOSTOP 0x20 /* now do ^S ^Q */
-#define TIOCSTOP _IO('t', 111) /* stop output, like ^S */
-#define TIOCSTART _IO('t', 110) /* start output, like ^Q */
-#define TIOCMSET _IOW('t', 109, int) /* set all modem bits */
-#define TIOCMBIS _IOW('t', 108, int) /* bis modem bits */
-#define TIOCMBIC _IOW('t', 107, int) /* bic modem bits */
-#define TIOCMGET _IOR('t', 106, int) /* get all modem bits */
-#define TIOCREMOTE _IOW('t', 105, int) /* remote input editing */
-#define TIOCGWINSZ _IOR('t', 104, struct winsize) /* get window size */
-#define TIOCSWINSZ _IOW('t', 103, struct winsize) /* set window size */
-#define TIOCUCNTL _IOW('t', 102, int) /* pty: set/clr usr cntl mode */
-/* SLIP (Serial Line IP) ioctl's */
-#define SLIOCGUNIT _IOR('t', 101, int) /* get slip unit number */
-#define SLIOCSFLAGS _IOW('t', 89, int) /* set configuration flags */
-#define SLIOCGFLAGS _IOR('t', 90, int) /* get configuration flags */
-#define SLIOCSATTACH _IOWR('t', 91, int) /* Attach slip i.f. to tty */
-#define UIOCCMD(n) _IO('u', n) /* usr cntl op "n" */
-
-#define OTTYDISC 0 /* old, v7 std tty driver */
-#define NETLDISC 1 /* line discip for berk net */
-#define NTTYDISC 2 /* new tty discipline */
-#define TABLDISC 3 /* tablet discipline */
-#define SLIPDISC 4 /* serial IP discipline */
-
-#define FIOCLEX _IO('f', 1) /* set close on exec */
-#define FIONCLEX _IO('f', 2) /* clear close on exec */
-/* another local */
-
-#define FIONREAD _IOR('f', 127, int) /* get # bytes to read */
-#define FIONBIO _IOW('f', 126, int) /* set/clear non-blocking i/o */
-#define FIOASYNC _IOW('f', 125, int) /* set/clear async i/o */
-
-#define FIOSETOWN _IOW('f', 124, int) /* set owner */
-#define FIOGETOWN _IOR('f', 123, int) /* get owner */
-#define FIOASYNCQX _IOW('f', 122, int) /* set/clear async queueing */
-
-/* socket i/o controls */
-#define SIOCSHIWAT _IOW('s', 0, int) /* set high watermark */
-#define SIOCGHIWAT _IOR('s', 1, int) /* get high watermark */
-#define SIOCSLOWAT _IOW('s', 2, int) /* set low watermark */
-#define SIOCGLOWAT _IOR('s', 3, int) /* get low watermark */
-#define SIOCATMARK _IOR('s', 7, int) /* at oob mark? */
-#define SIOCSPGRP _IOW('s', 8, int) /* set process group */
-#define SIOCGPGRP _IOR('s', 9, int) /* get process group */
-
-#define SIOCADDRT (int)_IOW('r', 10, struct ortentry) /* add route */
-#define SIOCDELRT (int)_IOW('r', 11, struct ortentry) /* delete route */
-
-#define SIOCSIFADDR (int)_IOW('i', 12, struct oifreq) /* set ifnet address */
-#define OSIOCGIFADDR (int)_IOWR('i',13, struct oifreq) /* get ifnet address */
-#define SIOCGIFADDR (int)_IOWR('i',33, struct oifreq) /* get ifnet address */
-#define SIOCSIFDSTADDR (int)_IOW('i', 14, struct oifreq) /* set p-p address */
-#define OSIOCGIFDSTADDR (int)_IOWR('i',15, struct oifreq) /* get p-p address */
-#define SIOCGIFDSTADDR (int)_IOWR('i',34, struct oifreq) /* get p-p address */
-#define SIOCSIFFLAGS (int)_IOW('i', 16, struct oifreq) /* set ifnet flags */
-#define SIOCGIFFLAGS (int)_IOWR('i',17, struct oifreq) /* get ifnet flags */
-#define OSIOCGIFBRDADDR (int)_IOWR('i',18, struct oifreq) /* get broadcast addr */
-#define SIOCGIFBRDADDR (int)_IOWR('i',35, struct oifreq) /* get broadcast addr */
-#define SIOCSIFBRDADDR (int)_IOW('i',19, struct oifreq) /* set broadcast addr */
-#define OSIOCGIFCONF (int)_IOWR('i',20, struct ifconf) /* get ifnet list */
-#define CSIOCGIFCONF (int)_IOWR('i',36, struct ifconf) /* get ifnet list */
-#define SIOCGIFCONF (int)_IOWR('i',69, struct ifconf) /* get ifnet list */
-#define OSIOCGIFNETMASK (int)_IOWR('i',21, struct oifreq) /* get net addr mask */
-#define SIOCGIFNETMASK (int)_IOWR('i',37, struct oifreq) /* get net addr mask */
-#define SIOCSIFNETMASK (int)_IOW('i',22, struct oifreq) /* set net addr mask */
-#define SIOCGIFMETRIC (int)_IOWR('i',23, struct oifreq) /* get IF metric */
-#define SIOCSIFMETRIC (int)_IOW('i',24, struct oifreq) /* set IF metric */
-#define SIOCDIFADDR (int)_IOW('i',25, struct oifreq) /* delete IF addr */
-#define SIOCAIFADDR (int)_IOW('i',26, struct ifaliasreq) /* add/chg IF alias */
-#define SIOCSIFSUBCHAN (int)_IOW('i',27, struct oifreq) /* set subchannel adr.*/
-#define SIOCSIFNETDUMP (int)_IOW('i',28, struct oifreq) /* set netdump fastwrt*/
-
-#define SIOCSARP (int)_IOW('i', 30, struct arpreq) /* set arp entry */
-#define OSIOCGARP (int)_IOWR('i',31, struct arpreq) /* get arp entry */
-#define SIOCGARP (int)_IOWR('i',38, struct arpreq) /* get arp entry */
-#define SIOCDARP (int)_IOW('i', 32, struct arpreq) /* delete arp entry */
-
-#define SIOCSIFOPTIONS (int)_IOW('i', 41, struct oifreq) /* set ifnet options */
-#define SIOCGIFOPTIONS (int)_IOWR('i',42, struct oifreq) /* get ifnet options */
-#define SIOCADDMULTI (int)_IOW('i', 49, struct ifreq) /* add multicast addr */
-#define SIOCDELMULTI (int)_IOW('i', 50, struct ifreq) /* del multicast addr */
-#define SIOCGETVIFCNT (int)_IOWR('u', 51, struct sioc_vif_req)/* vif pkt cnt */
-#define SIOCGETSGCNT (int)_IOWR('u', 52, struct sioc_sg_req) /* s,g pkt cnt */
-
-#define SIOCADDNETID (int)_IOW('i',87, struct oifreq) /* set netids */
-#define SIOCSIFMTU (int)_IOW('i',88, struct oifreq) /* set mtu */
-#define SIOCGIFMTU (int)_IOWR('i',86, struct oifreq) /* get mtu */
-
-#define SIOCSNETOPT (int)_IOW('i', 90, struct optreq) /* set network option */
-#define SIOCGNETOPT (int)_IOWR('i', 91, struct optreq) /* get network option */
-#define SIOCDNETOPT (int)_IOWR('i', 92, struct optreq) /* set default */
-
-#define SIOCSX25XLATE (int)_IOW('i', 99, struct oifreq) /* set xlate tab */
-#define SIOCGX25XLATE (int)_IOWR('i',100, struct oifreq) /* get xlate tab */
-#define SIOCDX25XLATE (int)_IOW('i', 101, struct oifreq) /* delete xlate tab */
-
-#define SIOCIFDETACH (int)_IOW('i', 102, struct ifreq) /* detach an ifnet */
-#define SIOCIFATTACH (int)_IOW('i', 103, struct ifreq) /* attach an ifnet */
-
-#define SIOCGNMTUS (int)_IO('i',110) /* get NMTUs */
-#define SIOCGETMTUS (int)_IO('i',111) /* get common_mtus */
-#define SIOCADDMTU (int)_IOW('i',112, int) /* add mtu */
-#define SIOCDELMTU (int)_IOW('i',113, int) /* delete mtu */
-
-#define SIOCGIFGIDLIST (int)_IO('i', 104) /* get gidlist */
-#define SIOCSIFGIDLIST (int)_IO('i', 105) /* set gidlist */
-
-#define SIOCGSIZIFCONF (int)_IOR('i', 106, int) /* get size for SIOCGIFCONF */
-
-#define SIOCIF_ATM_UBR (int)_IOW('i',120,struct ifreq) /* set ubr rate */
-#define SIOCIF_ATM_SNMPARP (int)_IOW('i',121,struct ifreq) /* atm snmp arp */
-#define SIOCIF_ATM_IDLE (int)_IOW('i',122,struct ifreq) /* set idle time */
-#define SIOCIF_ATM_DUMPARP (int)_IOW('i',123,struct ifreq) /* atm dump arp */
-#define SIOCIF_ATM_SVC (int)_IOW('i',124,struct ifreq) /* atmif init */
-#define SIOCIF_ATM_DARP (int)_IOW('i',125,struct ifreq) /* del atmarp */
-#define SIOCIF_ATM_GARP (int)_IOW('i',126,struct ifreq) /* get atmarp */
-#define SIOCIF_ATM_SARP (int)_IOW('i',127,struct ifreq) /* set atmarp */
-
-#define SIOCGISNO (int)_IOWR('i',107, struct oifreq) /* get IF network options */
-#define SIOCSISNO (int)_IOW('i', 108, struct oifreq) /* set IF network options */
-#define SIOCGIFBAUDRATE (int)_IOWR('i', 109, struct oifreq) /* get ifnet's if_baudrate */
diff --git a/sysdeps/unix/sysv/aix/bits/poll.h b/sysdeps/unix/sysv/aix/bits/poll.h
deleted file mode 100644
index b9f2f71558..0000000000
--- a/sysdeps/unix/sysv/aix/bits/poll.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Copyright (C) 1997, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_POLL_H
-# error "Never use <bits/poll.h> directly; include <sys/poll.h> instead."
-#endif
-
-/* Event types that can be polled for. These bits may be set in `events'
- to indicate the interesting event types; they will appear in `revents'
- to indicate the status of the file descriptor. */
-#define POLLIN 0x0001 /* There is data to read. */
-#define POLLPRI 0x0002 /* There is urgent data to read. */
-#define POLLOUT 0x0004 /* Writing now will not block. */
-
-#ifdef __USE_XOPEN
-/* These values are defined in XPG4.2. */
-# define POLLRDNORM 0x0010 /* Normal data may be read. */
-# define POLLRDBAND 0x0020 /* Priority data may be read. */
-# define POLLWRNORM POLLOUT /* Writing now will not block. */
-# define POLLWRBAND 0x0040 /* Priority data may be written. */
-#endif
-
-/* Event types always implicitly polled for. These bits need not be set in
- `events', but they will appear in `revents' to indicate the status of
- the file descriptor. */
-#define POLLERR 0x4000 /* Error condition. */
-#define POLLHUP 0x2000 /* Hung up. */
-#define POLLNVAL 0x8000 /* Invalid polling request. */
diff --git a/sysdeps/unix/sysv/aix/bits/resource.h b/sysdeps/unix/sysv/aix/bits/resource.h
deleted file mode 100644
index cc851e8a06..0000000000
--- a/sysdeps/unix/sysv/aix/bits/resource.h
+++ /dev/null
@@ -1,191 +0,0 @@
-/* Bit values & structures for resource limits. AIX version.
- Copyright (C) 1994, 1996-1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_RESOURCE_H
-# error "Never use <bits/resource.h> directly; include <sys/resource.h> instead."
-#endif
-
-#include <bits/types.h>
-
-/* Transmute defines to enumerations. The macro re-definitions are
- necessary because some programs want to test for operating system
- features with #ifdef RUSAGE_SELF. In ISO C the reflexive
- definition is a no-op. */
-
-/* Kinds of resource limit. */
-enum __rlimit_resource
-{
- /* Per-process CPU limit, in seconds. */
- RLIMIT_CPU = 0,
-#define RLIMIT_CPU RLIMIT_CPU
-
- /* Largest file that can be created, in bytes. */
- RLIMIT_FSIZE = 1,
-#define RLIMIT_FSIZE RLIMIT_FSIZE
-
- /* Maximum size of data segment, in bytes. */
- RLIMIT_DATA = 2,
-#define RLIMIT_DATA RLIMIT_DATA
-
- /* Maximum size of stack segment, in bytes. */
- RLIMIT_STACK = 3,
-#define RLIMIT_STACK RLIMIT_STACK
-
- /* Largest core file that can be created, in bytes. */
- RLIMIT_CORE = 4,
-#define RLIMIT_CORE RLIMIT_CORE
-
- /* Largest resident set size, in bytes.
- This affects swapping; processes that are exceeding their
- resident set size will be more likely to have physical memory
- taken from them. */
- RLIMIT_RSS = 5,
-#define RLIMIT_RSS RLIMIT_RSS
-
- /* Address space limit (?) */
- RLIMIT_AS = 6,
-#define RLIMIT_AS RLIMIT_AS
-
- /* Number of open files. */
- RLIMIT_NOFILE = 7,
- RLIMIT_OFILE = RLIMIT_NOFILE, /* BSD name for same. */
-#define RLIMIT_NOFILE RLIMIT_NOFILE
-#define RLIMIT_OFILE RLIMIT_OFILE
-
- RLIM_NLIMITS = 10
-#define RLIMIT_NLIMITS RLIMIT_NLIMITS
-#define RLIM_NLIMITS RLIM_NLIMITS
-};
-
-/* Value to indicate that there is no limit. */
-#ifndef __USE_FILE_OFFSET64
-# define RLIM_INFINITY ((long int)(~0UL >> 1))
-#else
-# define RLIM_INFINITY 0x7fffffffffffffffLL
-#endif
-
-#ifdef __USE_LARGEFILE64
-# define RLIM64_INFINITY 0x7fffffffffffffffLL
-#endif
-
-#define RLIM_SAVED_MAX (RLIM_INFINITY - 1)
-#define RLIM_SAVED_CUR (RLIM_INFINITY - 2)
-
-
-/* Type for resource quantity measurement. */
-#ifndef __USE_FILE_OFFSET64
-typedef __rlim_t rlim_t;
-#else
-typedef __rlim64_t rlim_t;
-#endif
-#ifdef __USE_LARGEFILE64
-typedef __rlim64_t rlim64_t;
-#endif
-
-struct rlimit
- {
- /* The current (soft) limit. */
- rlim_t rlim_cur;
- /* The hard limit. */
- rlim_t rlim_max;
- };
-
-#ifdef __USE_LARGEFILE64
-struct rlimit64
- {
- /* The current (soft) limit. */
- rlim64_t rlim_cur;
- /* The hard limit. */
- rlim64_t rlim_max;
- };
-#endif
-
-/* Whose usage statistics do you want? */
-enum __rusage_who
-{
- /* The calling process. */
- RUSAGE_SELF = 0,
-#define RUSAGE_SELF RUSAGE_SELF
-
- /* All of its terminated child processes. */
- RUSAGE_CHILDREN = -1
-#define RUSAGE_CHILDREN RUSAGE_CHILDREN
-};
-
-#define __need_timeval
-#include <bits/time.h> /* For `struct timeval'. */
-
-/* Structure which says how much of each resource has been used. */
-struct rusage
- {
- /* Total amount of user time used. */
- struct timeval ru_utime;
- /* Total amount of system time used. */
- struct timeval ru_stime;
- /* Maximum resident set size (in kilobytes). */
- long int ru_maxrss;
- /* Amount of sharing of text segment memory
- with other processes (kilobyte-seconds). */
- long int ru_ixrss;
- /* Amount of data segment memory used (kilobyte-seconds). */
- long int ru_idrss;
- /* Amount of stack memory used (kilobyte-seconds). */
- long int ru_isrss;
- /* Number of soft page faults (i.e. those serviced by reclaiming
- a page from the list of pages awaiting reallocation. */
- long int ru_minflt;
- /* Number of hard page faults (i.e. those that required I/O). */
- long int ru_majflt;
- /* Number of times a process was swapped out of physical memory. */
- long int ru_nswap;
- /* Number of input operations via the file system. Note: This
- and `ru_oublock' do not include operations with the cache. */
- long int ru_inblock;
- /* Number of output operations via the file system. */
- long int ru_oublock;
- /* Number of IPC messages sent. */
- long int ru_msgsnd;
- /* Number of IPC messages received. */
- long int ru_msgrcv;
- /* Number of signals delivered. */
- long int ru_nsignals;
- /* Number of voluntary context switches, i.e. because the process
- gave up the process before it had to (usually to wait for some
- resource to be available). */
- long int ru_nvcsw;
- /* Number of involuntary context switches, i.e. a higher priority process
- became runnable or the current process used up its time slice. */
- long int ru_nivcsw;
- };
-
-/* Priority limits. */
-#define PRIO_MIN -20 /* Minimum priority a process can have. */
-#define PRIO_MAX 20 /* Maximum priority a process can have. */
-
-/* The type of the WHICH argument to `getpriority' and `setpriority',
- indicating what flavor of entity the WHO argument specifies. */
-enum __priority_which
-{
- PRIO_PROCESS = 0, /* WHO is a process ID. */
-#define PRIO_PROCESS PRIO_PROCESS
- PRIO_PGRP = 1, /* WHO is a process group ID. */
-#define PRIO_PGRP PRIO_PGRP
- PRIO_USER = 2 /* WHO is a user ID. */
-#define PRIO_USER PRIO_USER
-};
diff --git a/sysdeps/unix/sysv/aix/bits/setjmp.h b/sysdeps/unix/sysv/aix/bits/setjmp.h
deleted file mode 100644
index 82a58ae069..0000000000
--- a/sysdeps/unix/sysv/aix/bits/setjmp.h
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* Define the machine-dependent type `jmp_buf'. PowerPC version. */
-
-#ifndef _SETJMP_H
-# error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead."
-#endif
-
-/* The previous bits/setjmp.h had __jmp_buf defined as a structure.
- We use an array of 'long int' instead, to make writing the
- assembler easier. Naturally, user code should not depend on
- either representation. */
-
-#if defined __USE_MISC || defined _ASM
-# define JB_GPR1 0 /* Also known as the stack pointer */
-# define JB_GPR2 1
-# define JB_LR 2 /* The address we will return to */
-# define JB_GPRS 3 /* GPRs 14 through 31 are saved, 18 in total */
-# define JB_CR 21 /* Condition code registers. */
-# define JB_FPRS 22 /* FPRs 14 through 31 are saved, 18*2 words total */
-#endif
-
-#ifndef _ASM
-typedef long int __jmp_buf[64];
-#endif
-
-/* Test if longjmp to JMPBUF would unwind the frame
- containing a local variable at ADDRESS. */
-#define _JMPBUF_UNWINDS(jmpbuf, address) \
- ((void *) (address) < (void *) (jmpbuf)[JB_GPR1])
diff --git a/sysdeps/unix/sysv/aix/bits/sigaction.h b/sysdeps/unix/sysv/aix/bits/sigaction.h
deleted file mode 100644
index 55414b8f1f..0000000000
--- a/sysdeps/unix/sysv/aix/bits/sigaction.h
+++ /dev/null
@@ -1,72 +0,0 @@
-/* The proper definitions for AIX's sigaction.
- Copyright (C) 1993-1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SIGNAL_H
-# error "Never include <bits/sigaction.h> directly; use <signal.h> instead."
-#endif
-
-/* Structure describing the action to be taken when a signal arrives. */
-struct sigaction
- {
- /* Signal handler. */
-#ifdef __USE_POSIX199309
- union
- {
- /* Used if SA_SIGINFO is not set. */
- __sighandler_t sa_handler;
- /* Used if SA_SIGINFO is set. */
- void (*sa_sigaction) (int, siginfo_t *, void *);
- }
- __sigaction_handler;
-# define sa_handler __sigaction_handler.sa_handler
-# define sa_sigaction __sigaction_handler.sa_sigaction
-#else
- __sighandler_t sa_handler;
-#endif
-
- /* Additional set of signals to be blocked. */
- __sigset_t sa_mask;
-
- /* Special flags. */
- int sa_flags;
- };
-
-/* Bits in `sa_flags'. */
-#define SA_NOCLDSTOP 4 /* Don't send SIGCHLD when children stop. */
-#define SA_NOCLDWAIT 0x400 /* Don't create on death of child. */
-#define SA_SIGINFO 0x100 /* Invoke signal-catching function with
- three arguments instead of one. */
-#if defined __USE_UNIX98 || defined __USE_MISC
-# define SA_ONSTACK 0x00000001 /* Use signal stack by using `sa_restorer'. */
-# define SA_RESTART 0x00000008 /* Restart syscall on signal return. */
-# define SA_NODEFER 0x00000200 /* Don't automatically block the signal when
- its handler is being executed. */
-# define SA_RESETHAND 0x00000002 /* Reset to SIG_DFL on entry to handler. */
-#endif
-#ifdef __USE_MISC
-/* Some aliases for the SA_ constants. */
-# define SA_NOMASK SA_NODEFER
-# define SA_ONESHOT SA_RESETHAND
-# define SA_STACK SA_ONSTACK
-#endif
-
-/* Values for the HOW argument to `sigprocmask'. */
-#define SIG_BLOCK 0 /* Block signals. */
-#define SIG_UNBLOCK 1 /* Unblock signals. */
-#define SIG_SETMASK 2 /* Set the set of blocked signals. */
diff --git a/sysdeps/unix/sysv/aix/bits/sigcontext.h b/sysdeps/unix/sysv/aix/bits/sigcontext.h
deleted file mode 100644
index 40bec1b710..0000000000
--- a/sysdeps/unix/sysv/aix/bits/sigcontext.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Copyright (C) 1996, 1997, 1998, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H
-# error "Never use <bits/sigcontext.h> directly; include <signal.h> instead."
-#endif
-
-#include <sys/ucontext.h>
-
-
-struct sigcontext
-{
- int sc_onstack; /* Sigstack state to restore. */
- sigset_t sc_mask; /* Signal mask to restore. */
- int sc_uerror; /* u_error to restore. */
- struct mcontext_t sc_jmpbuf; /* Process context to restore. */
-};
diff --git a/sysdeps/unix/sysv/aix/bits/signum.h b/sysdeps/unix/sysv/aix/bits/signum.h
deleted file mode 100644
index 67eb949600..0000000000
--- a/sysdeps/unix/sysv/aix/bits/signum.h
+++ /dev/null
@@ -1,96 +0,0 @@
-/* Signal number definitions. AIX version.
- Copyright (C) 1995-1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifdef _SIGNAL_H
-
-/* Fake signal functions. */
-#define SIG_ERR ((__sighandler_t) -1) /* Error return. */
-#define SIG_DFL ((__sighandler_t) 0) /* Default action. */
-#define SIG_IGN ((__sighandler_t) 1) /* Ignore signal. */
-
-#ifdef __USE_UNIX98
-# define SIG_HOLD ((__sighandler_t) 2) /* Add signal to hold mask. */
-# define SIG_CATCHE ((__sighandler_t) 3)
-#endif
-
-
-/* Signals. */
-#define SIGHUP 1 /* Hangup (POSIX). */
-#define SIGINT 2 /* Interrupt (ANSI). */
-#define SIGQUIT 3 /* Quit (POSIX). */
-#define SIGILL 4 /* Illegal instruction (ANSI). */
-#define SIGTRAP 5 /* Trace trap (POSIX). */
-#define SIGABRT 6 /* Abort (ANSI). */
-#define SIGIOT SIGABRT /* Abort (terminal) process. */
-#define SIGEMT 7 /* EMT instruction. */
-#define SIGFPE 8 /* Floating-point exception (ANSI). */
-#define SIGKILL 9 /* Kill, unblockable (POSIX). */
-#define SIGBUS 10 /* BUS error (4.2 BSD). */
-#define SIGSEGV 11 /* Segmentation violation (ANSI). */
-#define SIGSYS 12 /* Bad system call. */
-#define SIGPIPE 13 /* Broken pipe (POSIX). */
-#define SIGALRM 14 /* Alarm clock (POSIX). */
-#define SIGTERM 15 /* Termination (ANSI). */
-#define SIGURG 16 /* Urgent condition on socket (4.2 BSD). */
-#define SIGIOINT SIGURG /* Printer to backend error signal. */
-#define SIGSTOP 17 /* Stop, unblockable (POSIX). */
-#define SIGTSTP 18 /* Keyboard stop (POSIX). */
-#define SIGCONT 19 /* Continue (POSIX). */
-#define SIGCLD SIGCHLD /* Same as SIGCHLD (System V). */
-#define SIGCHLD 20 /* Child status has changed (POSIX). */
-#define SIGTTIN 21 /* Background read from tty (POSIX). */
-#define SIGTTOU 22 /* Background write to tty (POSIX). */
-#define SIGIO 23 /* I/O now possible (4.2 BSD). */
-#define SIGAIO SIGIO /* Base LAN I/O. */
-#define SIGPTY SIGIO /* PTY I/O. */
-#define SIGPOLL SIGIO /* ANother I/O event. */
-#define SIGXCPU 24 /* CPU limit exceeded (4.2 BSD). */
-#define SIGXFSZ 25 /* File size limit exceeded (4.2 BSD). */
-#define SIGMSG 27 /* Input data is in the ring buffer. */
-#define SIGWINCH 28 /* Window size change (4.3 BSD, Sun). */
-#define SIGPWR 29 /* Power failure restart (System V). */
-#define SIGUSR1 30 /* User-defined signal 1 (POSIX). */
-#define SIGUSR2 31 /* User-defined signal 2 (POSIX). */
-#define SIGPROF 32 /* Profiling alarm clock (4.2 BSD). */
-#define SIGDANGER 33 /* System crash imminent. */
-#define SIGVTALRM 34 /* Virtual alarm clock (4.2 BSD). */
-#define SIGMIGRATE 35 /* Migrate process. */
-#define SIGPRE 36 /* Programming exception. */
-#define SIGVIRT 37 /* AIX virtual time alarm. */
-#define SIGARLM1 38 /* Reserved, don't use. */
-#define SIGWAITING 39 /* Reserved, don't use. */
-#define SIGCPUFAIL 59 /* Predictive de-configuration of processors.*/
-#define SIGKAP 60 /* Keep alive poll from native keyboard. */
-#define SIGGRANT SIGKAP /* Monitor mode granted. */
-#define SIGRETRACT 61 /* Monitor mode should be relinguished. */
-#define SIGSOUND 62 /* Sound control has completed. */
-#define SIGSAK 63 /* Secure attentation key. */
-
-#define _NSIG 64 /* Biggest signal number + 1
- (including real-time signals). */
-
-#define SIGRTMIN (__libc_current_sigrtmin ())
-#define SIGRTMAX (__libc_current_sigrtmax ())
-
-/* These are the hard limits of the kernel. These values should not be
- used directly at user level. */
-#define __SIGRTMIN 888
-#define __SIGRTMAX 999
-
-#endif /* <signal.h> included. */
diff --git a/sysdeps/unix/sysv/aix/bits/sigset.h b/sysdeps/unix/sysv/aix/bits/sigset.h
deleted file mode 100644
index 0dc6b40a7c..0000000000
--- a/sysdeps/unix/sysv/aix/bits/sigset.h
+++ /dev/null
@@ -1,125 +0,0 @@
-/* __sig_atomic_t, __sigset_t, and related definitions. AIX version.
- Copyright (C) 1991,1992,1994,1996,1997,2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SIGSET_H_types
-# define _SIGSET_H_types 1
-
-typedef int __sig_atomic_t;
-
-/* A `sigset_t' has a bit for each signal. */
-
-typedef struct
- {
- unsigned int __losigs;
- unsigned int __hisigs;
- } __sigset_t;
-
-#endif
-
-
-/* We only want to define these functions if <signal.h> was actually
- included; otherwise we were included just to define the types. Since we
- are namespace-clean, it wouldn't hurt to define extra macros. But
- trouble can be caused by functions being defined (e.g., any global
- register vars declared later will cause compilation errors). */
-
-#if !defined _SIGSET_H_fns && defined _SIGNAL_H
-# define _SIGSET_H_fns 1
-
-# ifndef _EXTERN_INLINE
-# define _EXTERN_INLINE extern __inline
-# endif
-
-/* Return a mask that includes the bit for SIG only. */
-# define __sigmask(sig) \
- (((unsigned long int) 1) << (((sig) - 1) % (8 * sizeof (unsigned int))))
-
-# if defined __GNUC__ && __GNUC__ >= 2
-# define __sigemptyset(set) \
- (__extension__ ({ sigset_t *__set = (set); \
- __set->__losigs = __set->__hisigs = 0; \
- 0; }))
-# define __sigfillset(set) \
- (__extension__ ({ sigset_t *__set = (set); \
- __set->__losigs = __set->__hisigs = ~0u; \
- 0; }))
-
-# ifdef __USE_GNU
-/* The POSIX does not specify for handling the whole signal set in one
- command. This is often wanted and so we define three more functions
- here. */
-# define __sigisemptyset(set) \
- (__extension__ ({ const sigset_t *__set = (set); \
- (__set->__losigs | __set->__hisigs) == 0; }))
-# define __sigandset(dest, left, right) \
- (__extension__ ({ sigset_t *__dest = (dest); \
- const sigset_t *__left = (left); \
- const sigset_t *__right = (right); \
- __dest->__losigs = __left->__losigs & __right->__losigs; \
- __dest->__hisigs = __left->__hisigs & __right->__hisigs; \
- 0; }))
-# define __sigorset(dest, left, right) \
- (__extension__ ({ sigset_t *__dest = (dest); \
- const sigset_t *__left = (left); \
- const sigset_t *__right = (right); \
- __dest->__losigs = __left->__losigs | __right->__losigs; \
- __dest->__hisigs = __left->__hisigs | __right->__hisigs; \
- 0; }))
-# endif
-# endif
-
-/* These functions needn't check for a bogus signal number -- error
- checking is done in the non __ versions. */
-
-extern int __sigismember (__const __sigset_t *, int);
-extern int __sigaddset (__sigset_t *, int);
-extern int __sigdelset (__sigset_t *, int);
-
-# ifdef __USE_EXTERN_INLINES
-_EXTERN_INLINE int
-__sigismember (__const __sigset_t *__set, int __sig)
-{
- unsigned int __mask = __sigmask (__sig);
-
- return ((__sig < 33 ? __set->__losigs : __set->__hisigs) & __mask ) ? 1 : 0;
-}
-
-_EXTERN_INLINE int
-__sigaddset (__sigset_t *__set, int __sig)
-{
- unsigned int __mask = __sigmask (__sig);
-
- (__sig < 33 ? __set->__losigs : __set->__hisigs) |= __mask;
-
- return 0;
-}
-
-_EXTERN_INLINE int
-__sigdelset (__sigset_t *__set, int __sig)
-{
- unsigned int __mask = __sigmask (__sig);
-
- (__sig < 33 ? __set->__losigs : __set->__hisigs) &= ~__mask;
-
- return 0;
-}
-# endif
-
-
-#endif /* ! _SIGSET_H_fns. */
diff --git a/sysdeps/unix/sysv/aix/bits/sigstack.h b/sysdeps/unix/sysv/aix/bits/sigstack.h
deleted file mode 100644
index cefd33c231..0000000000
--- a/sysdeps/unix/sysv/aix/bits/sigstack.h
+++ /dev/null
@@ -1,46 +0,0 @@
-/* sigstack, sigaltstack definitions.
- Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SIGNAL_H
-# error "Never include this file directly. Use <signal.h> instead"
-#endif
-
-
-/* Structure describing a signal stack (obsolete). */
-struct sigstack
- {
- void *ss_sp; /* Signal stack pointer. */
- int ss_onstack; /* Nonzero if executing on this stack. */
- };
-
-
-/* Possible values for `ss_flags.'. */
-enum
-{
- SS_ONSTACK = 1,
-#define SS_ONSTACK SS_ONSTACK
- SS_DISABLE
-#define SS_DISABLE SS_DISABLE
-};
-
-/* Minimum stack size for a signal handler. */
-#define MINSIGSTKSZ 1024
-
-/* System default stack size. */
-#define SIGSTKSZ 4096
diff --git a/sysdeps/unix/sysv/aix/bits/socket.h b/sysdeps/unix/sysv/aix/bits/socket.h
deleted file mode 100644
index 1fdadfe082..0000000000
--- a/sysdeps/unix/sysv/aix/bits/socket.h
+++ /dev/null
@@ -1,293 +0,0 @@
-/* System-specific socket constants and types. AIX version.
- Copyright (C) 1991,92,1994-1999,2000,2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef __BITS_SOCKET_H
-#define __BITS_SOCKET_H
-
-#if !defined _SYS_SOCKET_H && !defined _NETINET_IN_H
-# error "Never include <bits/socket.h> directly; use <sys/socket.h> instead."
-#endif
-
-#define __need_size_t
-#define __need_NULL
-#include <stddef.h>
-
-#include <limits.h>
-#include <sys/types.h>
-
-/* Type for length arguments in socket calls. */
-#ifndef __socklen_t_defined
-typedef __socklen_t socklen_t;
-# define __socklen_t_defined
-#endif
-
-/* Types of sockets. */
-enum __socket_type
-{
- SOCK_STREAM = 1, /* Sequenced, reliable, connection-based
- byte streams. */
-#define SOCK_STREAM SOCK_STREAM
- SOCK_DGRAM = 2, /* Connectionless, unreliable datagrams
- of fixed maximum length. */
-#define SOCK_DGRAM SOCK_DGRAM
- SOCK_RAW = 3, /* Raw protocol interface. */
-#define SOCK_RAW SOCK_RAW
- SOCK_RDM = 4, /* Reliably-delivered messages. */
-#define SOCK_RDM SOCK_RDM
- SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based,
- datagrams of fixed maximum length. */
-#define SOCK_SEQPACKET SOCK_SEQPACKET
- SOCK_CONN_DGRAM = 6 /* Conneciton datagram. */
-#define SOCK_CONN_DGRAM SOCK_CONN_DGRAM
-};
-
-/* Protocol families. */
-#define PF_UNSPEC 0 /* Unspecified. */
-#define PF_LOCAL 1 /* Local to host (pipes and file-domain). */
-#define PF_UNIX PF_LOCAL /* Old BSD name for PF_LOCAL. */
-#define PF_FILE PF_LOCAL /* Another non-standard name for PF_LOCAL. */
-#define PF_INET 2 /* IP protocol family. */
-#define PF_IMPLINK 3 /* ARPAnet IMP addresses. */
-#define PF_PUP 4 /* PUP protocols (e.g., BSP). */
-#define PF_CHAOS 5 /* MIT CHAOS protocols. */
-#define PF_NS 6 /* XEROX NS protocols. */
-#define PF_ISO 7 /* ISO protocols. */
-#define PF_OSI PF_ISO
-#define PF_ECMA 8 /* European Computer Manufacturers. */
-#define PF_DATAKIT 9 /* Datakit protocols. */
-#define PF_CCITT 10 /* CCITT protocols, X.25 etc. */
-#define PF_SNA 11 /* IBM SNA. */
-#define PF_DECnet 12 /* DECnet. */
-#define PF_DLI 13 /* DEC Direct data link interface. */
-#define PF_LAT 14 /* LAT. */
-#define PF_HYLINK 15 /* NSC Hyperchannel. */
-#define PF_APPLETALK 16 /* Apple Talk. */
-#define PF_NETLINK 17 /* Internet Routing Protocol. */
-#define PF_ROUTE PF_NETLINK /* Alias to emulate 4.4BSD. */
-#define PF_LINK 18 /* Link layer interface. */
-#define PF_XTP 19 /* eXpress Transfer Protocol (no AF). */
-#define PF_INTF 20 /* Debugging use only. */
-#define PF_RIF 21 /* Raw interface. */
-#define PF_NETWARE 22
-#define PF_NDD 23
-#define PF_INET6 24 /* IPv6. */
-#define PF_MAX 30 /* For now.. */
-
-/* Address families. */
-#define AF_UNSPEC PF_UNSPEC
-#define AF_LOCAL PF_LOCAL
-#define AF_UNIX PF_UNIX
-#define AF_FILE PF_FILE
-#define AF_INET PF_INET
-#define AF_IMPLINK PF_IMPLINK
-#define AF_PUP PF_PUP
-#define AF_CHAOS PF_CHAOS
-#define AF_NS PF_NS
-#define AF_ISO PF_ISO
-#define AF_OSI PF_OSI
-#define AF_ECMA PF_ECMA
-#define AF_DATAKIT PF_DATAKIT
-#define AF_CCITT PF_CCITT
-#define AF_SNA PF_SNA
-#define AF_DECnet PF_DECnet
-#define AF_DLI PF_DLI
-#define AF_LAT PF_LAT
-#define AF_HYLINK PF_HYLINK
-#define AF_APPLETALK PF_APPLETALK
-#define AF_NETLINK PF_NETLINK
-#define AF_ROUTE PF_ROUTE
-#define AF_LINK PF_LINK
-#define AF_INTF PF_INTF
-#define AF_RIF PF_RIF
-#define AF_NETWARE PF_NETWARE
-#define AF_NDD PF_NDD
-#define AF_INET6 PF_INET6
-#define AF_MAX PF_MAX
-
-/* Socket level values. Others are defined in the appropriate headers.
-
- XXX These definitions also should go into the appropriate headers as
- far as they are available. */
-#define SOL_SOCKET 0xffff
-
-/* Maximum queue length specifiable by listen. */
-#define SOMAXCONN 1024
-
-/* Get the definition of the macro to define the common sockaddr members. */
-#include <bits/sockaddr.h>
-
-/* Structure describing a generic socket address. */
-struct sockaddr
- {
- __SOCKADDR_COMMON (sa_); /* Common data: address family and length. */
- char sa_data[14]; /* Address data. */
- };
-
-
-/* Structure large enough to hold any socket address (with the historical
- exception of AF_UNIX). We reserve 128 bytes. */
-#if ULONG_MAX > 0xffffffff
-# define __ss_aligntype __uint64_t
-#else
-# define __ss_aligntype __uint32_t
-#endif
-#define _SS_SIZE 128
-#define _SS_PADSIZE (_SS_SIZE - (2 * sizeof (__ss_aligntype)))
-
-struct sockaddr_storage
- {
- __SOCKADDR_COMMON (ss_); /* Address family, etc. */
- __ss_aligntype __ss_align; /* Force desired alignment. */
- char __ss_padding[_SS_PADSIZE];
- };
-
-
-/* Bits in the FLAGS argument to `send', `recv', et al. */
-enum
- {
- MSG_OOB = 0x01, /* Process out-of-band data. */
-#define MSG_OOB MSG_OOB
- MSG_PEEK = 0x02, /* Peek at incoming messages. */
-#define MSG_PEEK MSG_PEEK
- MSG_DONTROUTE = 0x04, /* Don't use local routing. */
-#define MSG_DONTROUTE MSG_DONTROUTE
- MSG_EOR = 0x08, /* End of record. */
-#define MSG_EOR MSG_EOR
- MSG_TRUNC = 0x10,
-#define MSG_TRUNC MSG_TRUNC
- MSG_CTRUNC = 0x20, /* Control data lost before delivery. */
-#define MSG_CTRUNC MSG_CTRUNC
- MSG_WAITALL = 0x40, /* Wait for a full request. */
-#define MSG_WAITALL MSG_WAITALL
- MSG_MPEG2 = 0x80, /* Message contain MPEG2 data. */
-#define MSG_MPEG2 MSG_MPEG2
- };
-
-
-/* Structure describing messages sent by
- `sendmsg' and received by `recvmsg'. */
-struct msghdr
- {
- void *msg_name; /* Address to send to/receive from. */
- socklen_t msg_namelen; /* Length of address data. */
-
- struct iovec *msg_iov; /* Vector of data to send/receive into. */
- int msg_iovlen; /* Number of elements in the vector. */
-
- void *msg_control; /* Ancillary data (eg BSD filedesc passing). */
- socklen_t msg_controllen; /* Ancillary data buffer length. */
-
- int msg_flags; /* Flags on received message. */
- };
-
-/* Structure used for storage of ancillary data object information. */
-struct cmsghdr
- {
- socklen_t cmsg_len; /* Length of data in cmsg_data plus length
- of cmsghdr structure. */
- int cmsg_level; /* Originating protocol. */
- int cmsg_type; /* Protocol specific type. */
-#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
- __extension__ unsigned char __cmsg_data __flexarr; /* Ancillary data. */
-#endif
- };
-
-/* Ancillary data object manipulation macros. */
-#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
-# define CMSG_DATA(cmsg) ((cmsg)->__cmsg_data)
-#else
-# define CMSG_DATA(cmsg) ((unsigned char *) ((struct cmsghdr *) (cmsg) + 1))
-#endif
-#define CMSG_NXTHDR(mhdr, cmsg) __cmsg_nxthdr (mhdr, cmsg)
-#define CMSG_FIRSTHDR(mhdr) \
- ((size_t) (mhdr)->msg_controllen >= sizeof (struct cmsghdr) \
- ? (struct cmsghdr *) (mhdr)->msg_control : (struct cmsghdr *) NULL)
-#define CMSG_ALIGN(len) (((len) + sizeof (size_t) - 1) \
- & ~(sizeof (size_t) - 1))
-#define CMSG_SPACE(len) (CMSG_ALIGN (len) \
- + CMSG_ALIGN (sizeof (struct cmsghdr)))
-#define CMSG_LEN(len) (CMSG_ALIGN (sizeof (struct cmsghdr)) + (len))
-
-extern struct cmsghdr *__cmsg_nxthdr (struct msghdr *__mhdr,
- struct cmsghdr *__cmsg) __THROW;
-#ifdef __USE_EXTERN_INLINES
-# ifndef _EXTERN_INLINE
-# define _EXTERN_INLINE extern __inline
-# endif
-_EXTERN_INLINE struct cmsghdr *
-__cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg) __THROW
-{
- if ((size_t) __cmsg->cmsg_len < sizeof (struct cmsghdr))
- /* The kernel header does this so there may be a reason. */
- return 0;
-
- __cmsg = (struct cmsghdr *) ((unsigned char *) __cmsg
- + CMSG_ALIGN (__cmsg->cmsg_len));
- if ((unsigned char *) (__cmsg + 1) >= ((unsigned char *) __mhdr->msg_control
- + __mhdr->msg_controllen)
- || ((unsigned char *) __cmsg + CMSG_ALIGN (__cmsg->cmsg_len)
- > ((unsigned char *) __mhdr->msg_control + __mhdr->msg_controllen)))
- /* No more entries. */
- return 0;
- return __cmsg;
-}
-#endif /* Use `extern inline'. */
-
-/* Socket level message types. This must match the definitions in
- <linux/socket.h>. */
-enum
- {
- SCM_RIGHTS = 0x01 /* Transfer file descriptors. */
-#define SCM_RIGHTS SCM_RIGHTS
- };
-
-/* Options flags per socket. */
-#define SO_DEBUG 0x0001 /* Turn on debugging info recording. */
-#define SO_ACCEPTCONN 0x0002 /* Socket has had listen(). */
-#define SO_REUSEADDR 0x0004 /* Allow local address reuse. */
-#define SO_KEEPALIVE 0x0008 /* Keep connections alive. */
-#define SO_DONTROUTE 0x0010 /* Just use interface addresses. */
-#define SO_BROADCAST 0x0020 /* Permit sending of broadcast msgs. */
-#define SO_USELOOPBACK 0x0040 /* Bypass hardware when possible. */
-#define SO_LINGER 0x0080 /* Linger on close if data present. */
-#define SO_OOBINLINE 0x0100 /* Leave received OOB data in line. */
-#define SO_REUSEPORT 0x0200 /* Allow local address & port reuse. */
-#define SO_USE_IFBUFS 0x0400 /* Interface will supply buffers. */
-#define SO_CKSUMRECV 0x0800 /* Defer checksum until receive. */
-#define SO_NOREUSEADDR 0x1000 /* Prevent local address reuse. */
-#define SO_SNDBUF 0x1001 /* Send buffer size. */
-#define SO_RCVBUF 0x1002 /* Receive buffer size. */
-#define SO_SNDLOWAT 0x1003 /* Send low-water mark. */
-#define SO_RCVLOWAT 0x1004 /* Receive low-water mark. */
-#define SO_SNDTIMEO 0x1005 /* Send timeout. */
-#define SO_RCVTIMEO 0x1006 /* Receive timeout. */
-#define SO_ERROR 0x1007 /* Get error status and clear. */
-#define SO_TYPE 0x1008 /* Get socket type. */
-#define SO_KERNACCEPT 0x2000 /* Derive a in-kernel only socket. */
-#define SO_AUDIT 0x8000 /* Turn on socket auditing. */
-
-
-/* Structure used to manipulate the SO_LINGER option. */
-struct linger
- {
- int l_onoff; /* Nonzero to linger on close. */
- int l_linger; /* Time to linger. */
- };
-
-#endif /* bits/socket.h */
diff --git a/sysdeps/unix/sysv/aix/bits/stat.h b/sysdeps/unix/sysv/aix/bits/stat.h
deleted file mode 100644
index adcb1d1019..0000000000
--- a/sysdeps/unix/sysv/aix/bits/stat.h
+++ /dev/null
@@ -1,119 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_STAT_H
-# error "Never include <bits/stat.h> directly; use <sys/stat.h> instead."
-#endif
-
-struct stat
- {
- __dev_t st_dev; /* Device. */
- __ino_t st_ino; /* File serial number. */
- __mode_t st_mode; /* File mode. */
- __nlink_t st_nlink; /* Link count. */
- unsigned short int st_flag; /* Flag word. */
- __uid_t st_uid; /* User ID of the file's owner. */
- __gid_t st_gid; /* Group ID of the file's group.*/
- __dev_t st_rdev; /* Device number, if device. */
-#ifndef __USE_FILE_OFFSET64
- __off_t st_size; /* Size of file, in bytes. */
-#else
- int st_ssize; /* Size of file, in bytes. */
-#endif
- __time_t st_atime; /* Time of last access. */
- unsigned long int __unused1;
- __time_t st_mtime; /* Time of last modification. */
- unsigned long int __unused2;
- __time_t st_ctime; /* Time of last status change. */
- unsigned long int __unused3;
- __blksize_t st_blksize; /* Optimal block size for I/O. */
- __blkcnt_t st_blocks; /* Number 512-byte blocks allocated. */
- int st_vfstype; /* Type of the filesystem. */
- unsigned int st_vfs; /* Vfs number. */
- unsigned int st_type; /* Vnode type. */
- unsigned int st_gen; /* Inode generation number. */
-
-#define _STATBUF_RESERVED_SPACE 9
- unsigned int st_reserved[_STATBUF_RESERVED_SPACE];
-
-#ifdef __USE_FILE_OFFSET64
- unsigned int st_padto_ll;
- __off64_t st_size; /* 64 bit file size in bytes. */
-#endif
- };
-
-#ifdef __USE_LARGEFILE64
-struct stat64
- {
- __dev_t st_dev; /* Device. */
- __ino_t st_ino; /* File serial number. */
- __mode_t st_mode; /* File mode. */
- __nlink_t st_nlink; /* Link count. */
- unsigned short int st_flag; /* Flag word. */
- __uid_t st_uid; /* User ID of the file's owner. */
- __gid_t st_gid; /* Group ID of the file's group.*/
- __dev_t st_rdev; /* Device number, if device. */
- int st_ssize; /* Size of file, in bytes. */
- __time_t st_atime; /* Time of last access. */
- unsigned long int __unused1;
- __time_t st_mtime; /* Time of last modification. */
- unsigned long int __unused2;
- __time_t st_ctime; /* Time of last status change. */
- unsigned long int __unused3;
- __blksize_t st_blksize; /* Optimal block size for I/O. */
- __blkcnt_t st_blocks; /* Number 512-byte blocks allocated. */
- int st_vfstype; /* Type of the filesystem. */
- unsigned int st_vfs; /* Vfs number. */
- unsigned int st_type; /* Vnode type. */
- unsigned int st_gen; /* Inode generation number. */
- unsigned int st_reserved[_STATBUF_RESERVED_SPACE];
- unsigned int st_padto_ll;
- __off64_t st_size; /* 64 bit file size in bytes. */
- };
-#endif
-
-/* Tell code we have these members. */
-#define _STATBUF_ST_BLKSIZE
-#define _STATBUF_ST_RDEV
-
-/* Encoding of the file mode. */
-
-#define __S_IFMT 0170000 /* These bits determine file type. */
-
-/* File types. */
-#define __S_IFDIR 0040000 /* Directory. */
-#define __S_IFCHR 0020000 /* Character device. */
-#define __S_IFBLK 0060000 /* Block device. */
-#define __S_IFREG 0100000 /* Regular file. */
-#define __S_IFIFO 0010000 /* FIFO. */
-#define __S_IFLNK 0120000 /* Symbolic link. */
-#define __S_IFSOCK 0140000 /* Socket. */
-
-/* POSIX.1b objects. */
-#define __S_TYPEISMQ(buf) (0)
-#define __S_TYPEISSEM(buf) (0)
-#define __S_TYPEISSHM(buf) (0)
-
-/* Protection bits. */
-
-#define __S_ISUID 04000 /* Set user ID on execution. */
-#define __S_ISGID 02000 /* Set group ID on execution. */
-#define __S_ISVTX 01000 /* Save swapped text after use (sticky). */
-#define __S_IREAD 0400 /* Read by owner. */
-#define __S_IWRITE 0200 /* Write by owner. */
-#define __S_IEXEC 0100 /* Execute by owner. */
diff --git a/sysdeps/unix/sysv/aix/bits/statfs.h b/sysdeps/unix/sysv/aix/bits/statfs.h
deleted file mode 100644
index 0a1c0a5e65..0000000000
--- a/sysdeps/unix/sysv/aix/bits/statfs.h
+++ /dev/null
@@ -1,77 +0,0 @@
-/* Copyright (C) 1997, 1998, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_STATFS_H
-# error "Never include <bits/statfs.h> directly; use <sys/statfs.h> instead."
-#endif
-
-#include <bits/types.h> /* for __fsid_t and __fsblkcnt_t*/
-
-struct statfs
- {
- int f_version;
- int f_type;
- int f_bsize;
- /* The following five elements have type `int' since AIX's fsfilcnt_t
- and fsblkcnt_t types do not fit. */
- int f_blocks;
- int f_bfree;
- int f_bavail;
- int f_files;
- int f_ffree;
- __fsid_t f_fsid;
- int f_vfstype;
- int f_fsize;
- int f_vfsnumber;
- int f_vfsoff;
- int f_vfslen;
- int f_vfsvers;
- char f_fname[32];
- char f_fpack[32];
- int f_name_max;
- };
-
-#ifdef __USE_LARGEFILE64
-/* XXX There seems to be no 64-bit versio of this structure. */
-struct statfs64
- {
- int f_version;
- int f_type;
- int f_bsize;
- /* The following five elements have type `int' since AIX's fsfilcnt_t
- and fsblkcnt_t types do not fit. */
- int f_blocks;
- int f_bfree;
- int f_bavail;
- int f_files;
- int f_ffree;
- __fsid_t f_fsid;
- int f_vfstype;
- int f_fsize;
- int f_vfsnumber;
- int f_vfsoff;
- int f_vfslen;
- int f_vfsvers;
- char f_fname[32];
- char f_fpack[32];
- int f_name_max;
- };
-#endif
-
-/* Tell code we have these members. */
-#define _STATFS_F_NAME_MAX
diff --git a/sysdeps/unix/sysv/aix/bits/termios.h b/sysdeps/unix/sysv/aix/bits/termios.h
deleted file mode 100644
index b178d9c1b3..0000000000
--- a/sysdeps/unix/sysv/aix/bits/termios.h
+++ /dev/null
@@ -1,189 +0,0 @@
-/* termios type and macro definitions. AIX version.
- Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _TERMIOS_H
-# error "Never include <bits/termios.h> directly; use <termios.h> instead."
-#endif
-
-typedef unsigned char cc_t;
-typedef unsigned int speed_t;
-typedef unsigned int tcflag_t;
-
-#define NCCS 16
-struct termios
- {
- tcflag_t c_iflag; /* input mode flags */
- tcflag_t c_oflag; /* output mode flags */
- tcflag_t c_cflag; /* control mode flags */
- tcflag_t c_lflag; /* local mode flags */
- cc_t c_cc[NCCS]; /* control characters */
- };
-
-/* c_cc characters */
-#define VINTR 0
-#define VQUIT 1
-#define VERASE 2
-#define VKILL 3
-#define VEOF 4
-#define VEOL 5
-#define VSTART 7
-#define VSTOP 8
-#define VSUSP 9
-#define VMIN 4
-#define VTIME 5
-#define VEOL2 6
-#define VDSUSP 10
-#define VREPRINT 11
-#define VDISCARD 12
-#define VWERSE 13
-#define VWERASE VWERSE
-#define VLNEXT 14
-#define VSTRT VSTART
-
-/* c_iflag bits */
-#define IGNBRK 0000001
-#define BRKINT 0000002
-#define IGNPAR 0000004
-#define PARMRK 0000010
-#define INPCK 0000020
-#define ISTRIP 0000040
-#define INLCR 0000100
-#define IGNCR 0000200
-#define ICRNL 0000400
-#define IXON 0001000
-#define IXOFF 0002000
-#define IUCLC 0004000
-#define IXANY 0010000
-#define IMAXBEL 0200000
-
-/* c_oflag bits */
-#define OPOST 0000001
-#define OLCUC 0000002
-#define ONLCR 0000004
-#define OCRNL 0000010
-#define ONOCR 0000020
-#define ONLRET 0000040
-#define OFILL 0000100
-#define OFDEL 0000200
-#if defined __USE_MISC || defined __USE_XOPEN
-# define CRDLY 0001400
-# define CR0 0000000
-# define CR1 0000400
-# define CR2 0001000
-# define CR3 0001400
-# define TABDLY 0006000
-# define TAB0 0000000
-# define TAB1 0002000
-# define TAB2 0004000
-# define TAB3 0006000
-# define BSDLY 0010000
-# define BS0 0000000
-# define BS1 0010000
-# define FFDLY 0020000
-# define FF0 0000000
-# define FF1 0020000
-# define NLDLY 0040000
-# define NL0 0000000
-# define NL1 0040000
-#endif
-
-#define VTDLY 0100000
-#define VT0 0000000
-#define VT1 0100000
-
-/* c_cflag bit meaning */
-#ifdef __USE_MISC
-# define CBAUD 0000017
-#endif
-#define B0 0000000 /* hang up */
-#define B50 0000001
-#define B75 0000002
-#define B110 0000003
-#define B134 0000004
-#define B150 0000005
-#define B200 0000006
-#define B300 0000007
-#define B600 0000010
-#define B1200 0000011
-#define B1800 0000012
-#define B2400 0000013
-#define B4800 0000014
-#define B9600 0000015
-#define B19200 0000016
-#define B38400 0000017
-#ifdef __USE_MISC
-# define EXTA B19200
-# define EXTB B38400
-#endif
-#define CSIZE 0000060
-#define CS5 0000000
-#define CS6 0000020
-#define CS7 0000040
-#define CS8 0000060
-#define CSTOPB 0000100
-#define CREAD 0000200
-#define PARENB 0000400
-#define PARODD 0001000
-#define HUPCL 0002000
-#define CLOCAL 0004000
-#ifdef __USE_MISC
-# define CIBAUD 000003600000 /* input baud rate (not used) */
-# define CRTSCTS 020000000000 /* flow control */
-#endif
-
-/* c_lflag bits */
-#define ISIG 0000001
-#define ICANON 0000002
-#if defined __USE_MISC || defined __USE_XOPEN
-# define XCASE 0000004
-#endif
-#define ECHO 0000010
-#define ECHOE 0000020
-#define ECHOK 0000040
-#define ECHONL 0000100
-#define NOFLSH 0000200
-#define TOSTOP 0200000
-#ifdef __USE_MISC
-# define ECHOCTL 0400000
-# define ECHOPRT 01000000
-# define ECHOKE 02000000
-# define FLUSHO 004000000
-# define PENDIN 04000000000
-#endif
-#define IEXTEN 010000000
-
-/* tcflow() and TCXONC use these */
-#define TCOOFF 0
-#define TCOON 1
-#define TCIOFF 2
-#define TCION 3
-
-/* tcflush() and TCFLSH use these */
-#define TCIFLUSH 0
-#define TCOFLUSH 1
-#define TCIOFLUSH 2
-
-/* tcsetattr uses these */
-#define TCSANOW 0
-#define TCSADRAIN 1
-#define TCSAFLUSH 2
-
-
-#define _IOT_termios /* Hurd ioctl type field. */ \
- _IOT (_IOTS (cflag_t), 4, _IOTS (cc_t), NCCS, _IOTS (speed_t), 2)
diff --git a/sysdeps/unix/sysv/aix/bits/types.h b/sysdeps/unix/sysv/aix/bits/types.h
deleted file mode 100644
index 12c3be730e..0000000000
--- a/sysdeps/unix/sysv/aix/bits/types.h
+++ /dev/null
@@ -1,136 +0,0 @@
-/* Copyright (C) 1991,92,1994-1999,2000,2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/*
- * Never include this file directly; use <sys/types.h> instead.
- */
-
-#ifndef _BITS_TYPES_H
-#define _BITS_TYPES_H 1
-
-#include <features.h>
-
-#define __need_NULL
-#define __need_size_t
-#include <stddef.h>
-
-/* Convenience types. */
-typedef unsigned char __u_char;
-typedef unsigned short __u_short;
-typedef unsigned int __u_int;
-typedef unsigned long __u_long;
-#ifdef __GNUC__
-__extension__ typedef unsigned long long int __u_quad_t;
-__extension__ typedef long long int __quad_t;
-#else
-typedef struct
- {
- long int __val[2];
- } __quad_t;
-typedef struct
- {
- __u_long __val[2];
- } __u_quad_t;
-#endif
-typedef signed char __int8_t;
-typedef unsigned char __uint8_t;
-typedef signed short int __int16_t;
-typedef unsigned short int __uint16_t;
-typedef signed int __int32_t;
-typedef unsigned int __uint32_t;
-#ifdef __GNUC__
-__extension__ typedef signed long long int __int64_t;
-__extension__ typedef unsigned long long int __uint64_t;
-#endif
-typedef __quad_t *__qaddr_t;
-
-typedef __u_long __dev_t; /* Type of device numbers. */
-typedef __u_int __uid_t; /* Type of user identifications. */
-typedef __u_int __gid_t; /* Type of group identifications. */
-typedef __u_long __ino_t; /* Type of file serial numbers. */
-typedef __u_int __mode_t; /* Type of file attribute bitmasks. */
-typedef short int __nlink_t; /* Type of file link counts. */
-typedef long int __off_t; /* Type of file sizes and offsets. */
-typedef __quad_t __loff_t; /* Type of file sizes and offsets. */
-typedef int __pid_t; /* Type of process identifications. */
-typedef long int __ssize_t; /* Type of a byte count, or error. */
-typedef __u_long __rlim_t; /* Type of resource counts. */
-typedef __u_quad_t __rlim64_t; /* Type of resource counts (LFS). */
-typedef unsigned int __id_t; /* General type for ID. */
-
-typedef struct
- {
- unsigned long int __val[2];
- } __fsid_t; /* Type of file system IDs. */
-
-/* Everythin' else. */
-typedef long int __daddr_t; /* The type of a disk address. */
-typedef char *__caddr_t;
-typedef long int __time_t;
-typedef unsigned int __useconds_t;
-typedef int __suseconds_t;
-typedef long int __swblk_t; /* Type of a swap block maybe? */
-
-typedef int __clock_t;
-
-/* Clock ID used in clock and timer functions. */
-typedef int __clockid_t;
-
-/* Timer ID returned by `timer_create'. */
-typedef int __timer_t;
-
-/* Number of descriptors that can fit in an `fd_set'. */
-#define __FD_SETSIZE 1024
-
-
-typedef long int __key_t;
-
-/* Type to represent block size. */
-typedef int __blksize_t;
-
-/* Types from the Large File Support interface. */
-
-/* Type to count number os disk blocks. */
-typedef int __blkcnt_t;
-typedef __quad_t __blkcnt64_t;
-
-/* Type to count file system blocks. */
-typedef __u_long __fsblkcnt_t;
-typedef __u_quad_t __fsblkcnt64_t;
-
-/* Type to count file system inodes. */
-typedef __u_long __fsfilcnt_t;
-typedef __u_quad_t __fsfilcnt64_t;
-
-/* Type of file serial numbers. */
-typedef __u_quad_t __ino64_t;
-
-/* Type of file sizes and offsets. */
-typedef __loff_t __off64_t;
-
-/* Used in XTI. */
-typedef int __t_scalar_t;
-typedef unsigned int __t_uscalar_t;
-
-/* Duplicates info from stdint.h but this is used in unistd.h. */
-typedef signed long __intptr_t;
-
-/* Duplicate info from sys/socket.h. */
-typedef unsigned int __socklen_t;
-
-#endif /* bits/types.h */
diff --git a/sysdeps/unix/sysv/aix/bits/uio.h b/sysdeps/unix/sysv/aix/bits/uio.h
deleted file mode 100644
index 60781532ab..0000000000
--- a/sysdeps/unix/sysv/aix/bits/uio.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Copyright (C) 1996, 1997, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_UIO_H
-# error "Never include <bits/uio.h> directly; use <sys/uio.h> instead."
-#endif
-
-
-#include <sys/types.h>
-
-
-/* Size of object which can be written atomically.
-
- This macro has different values in different kernel versions. The
- latest versions of ther kernel use 1024 and this is good choice. Since
- the C library implementation of readv/writev is able to emulate the
- functionality even if the currently running kernel does not support
- this large value the readv/writev call will not fail because of this. */
-#define UIO_MAXIOV 16
-
-
-/* Structure for scatter/gather I/O. */
-struct iovec
- {
- void *iov_base; /* Pointer to data. */
- size_t iov_len; /* Length of data. */
- };
diff --git a/sysdeps/unix/sysv/aix/bits/utmp.h b/sysdeps/unix/sysv/aix/bits/utmp.h
deleted file mode 100644
index b78a2afdaf..0000000000
--- a/sysdeps/unix/sysv/aix/bits/utmp.h
+++ /dev/null
@@ -1,73 +0,0 @@
-/* The `struct utmp' type, describing entries in the utmp file. AIX.
- Copyright (C) 1996, 1997, 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _UTMP_H
-# error "Never include <bits/utmp.h> directly; use <utmp.h> instead."
-#endif
-
-#include <paths.h>
-#include <sys/time.h>
-#include <sys/types.h>
-
-
-#define UT_LINESIZE 12
-#define UT_NAMESIZE 8
-#define UT_HOSTSIZE 16
-
-
-struct utmp
- {
-#define ut_name ut_user
- char ut_user[UT_NAMESIZE];
- char ut_id[14];
- char ut_line[UT_LINESIZE];
- short int ut_type;
- short int ut_pid;
- struct exit_status
- {
- short int e_termination;
- short int e_exit;
- } ut_exit;
- __time_t ut_time;
- char ut_host[UT_HOSTSIZE];
- };
-
-
-/* Values for the `ut_type' field of a `struct utmp'. */
-#define EMPTY 0 /* No valid user accounting information. */
-
-#define RUN_LVL 1 /* The system's runlevel. */
-#define BOOT_TIME 2 /* Time of system boot. */
-#define OLD_TIME 3 /* Time when system clock changed. */
-#define NEW_TIME 4 /* Time after system clock changed. */
-
-#define INIT_PROCESS 5 /* Process spawned by the init process. */
-#define LOGIN_PROCESS 6 /* Session leader of a logged in user. */
-#define USER_PROCESS 7 /* Normal process. */
-#define DEAD_PROCESS 8 /* Terminated process. */
-
-#define ACCOUNTING 9
-
-
-/* Tell the user that we have a modern system with UT_HOST, UT_TYPE, and
- UT_ID fields. */
-#define _HAVE_UT_TYPE 1
-#define _HAVE_UT_PID 1
-#define _HAVE_UT_ID 1
-#define _HAVE_UT_HOST 1
diff --git a/sysdeps/unix/sysv/aix/bits/utmpx.h b/sysdeps/unix/sysv/aix/bits/utmpx.h
deleted file mode 100644
index 438b5f3a51..0000000000
--- a/sysdeps/unix/sysv/aix/bits/utmpx.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/* Structures and defenitions for the user accounting database. AIX.
- Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _UTMPX_H
-# error "Never include <bits/utmpx.h> directly; use <utmpx.h> instead."
-#endif
-
-#include <bits/types.h>
-#include <sys/time.h>
-
-
-#ifdef __USE_GNU
-# include <paths.h>
-# define _PATH_UTMPX _PATH_UTMP
-# define _PATH_WTMPX _PATH_WTMP
-#endif
-
-
-#define __UT_LINESIZE 12
-#define __UT_NAMESIZE 8
-#define __UT_HOSTSIZE 16
-
-
-/* The structure describing an entry in the user accounting database. */
-struct utmpx
-{
- char ut_user[__UT_NAMESIZE]; /* Username. */
- char ut_id[14]; /* Inittab ID. */
- char ut_line[__UT_LINESIZE]; /* Devicename. */
- short int ut_type; /* Type of login. */
- __pid_t ut_pid; /* Process ID of login process. */
- struct timeval ut_tv; /* Time entry was made. */
- char ut_host[__UT_HOSTSIZE]; /* Hostname for remote login. */
-};
-
-
-/* Values for the `ut_type' field of a `struct utmpx'. */
-#define EMPTY 0 /* No valid user accounting information. */
-
-#define RUN_LVL 1 /* The system's runlevel. */
-#define BOOT_TIME 2 /* Time of system boot. */
-#define NEW_TIME 3 /* Time after system clock changed. */
-#define OLD_TIME 4 /* Time when system clock changed. */
-
-#define INIT_PROCESS 5 /* Process spawned by the init process. */
-#define LOGIN_PROCESS 6 /* Session leader of a logged in user. */
-#define USER_PROCESS 7 /* Normal process. */
-#define DEAD_PROCESS 8 /* Terminated process. */
-
-#ifdef __USE_GNU
-# define ACCOUNTING 9 /* System accounting. */
-#endif
-
-#define _HAVE_UT_TYPE 1
-#define _HAVE_UT_PID 1
-#define _HAVE_UT_ID 1
-#define _HAVE_UT_TV 1
-#define _HAVE_UT_HOST 1
-
diff --git a/sysdeps/unix/sysv/aix/bits/utsname.h b/sysdeps/unix/sysv/aix/bits/utsname.h
deleted file mode 100644
index d238f5efda..0000000000
--- a/sysdeps/unix/sysv/aix/bits/utsname.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Copyright (C) 1997, 1999 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_UTSNAME_H
-# error "Never include <bits/utsname.h> directly; use <sys/utsname.h> instead."
-#endif
-
-#define _UTSNAME_LENGTH 32
diff --git a/sysdeps/unix/sysv/aix/brk.c b/sysdeps/unix/sysv/aix/brk.c
deleted file mode 100644
index 66707fe60f..0000000000
--- a/sysdeps/unix/sysv/aix/brk.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__brk (void *addr)
-{
- return brk (addr);
-}
diff --git a/sysdeps/unix/sysv/aix/chdir.c b/sysdeps/unix/sysv/aix/chdir.c
deleted file mode 100644
index 153084eb60..0000000000
--- a/sysdeps/unix/sysv/aix/chdir.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__chdir (const char *path)
-{
- return chdir (path);
-}
diff --git a/sysdeps/unix/sysv/aix/chmod.c b/sysdeps/unix/sysv/aix/chmod.c
deleted file mode 100644
index 628d09cceb..0000000000
--- a/sysdeps/unix/sysv/aix/chmod.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/stat.h>
-
-int
-__chmod (const char *path, mode_t mode)
-{
- return chmod (path, mode);
-}
diff --git a/sysdeps/unix/sysv/aix/chown.c b/sysdeps/unix/sysv/aix/chown.c
deleted file mode 100644
index 2b6e82e739..0000000000
--- a/sysdeps/unix/sysv/aix/chown.c
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__chown (const char *file, uid_t owner, gid_t group)
-{
- return chown (file, owner, group);
-}
-libc_hidden_def (__chown)
diff --git a/sysdeps/unix/sysv/aix/chroot.c b/sysdeps/unix/sysv/aix/chroot.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/chroot.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/close.c b/sysdeps/unix/sysv/aix/close.c
deleted file mode 100644
index 7be595643f..0000000000
--- a/sysdeps/unix/sysv/aix/close.c
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__close (int fd)
-{
- return close (fd);
-}
-libc_hidden_def (__close)
diff --git a/sysdeps/unix/sysv/aix/configure b/sysdeps/unix/sysv/aix/configure
deleted file mode 100644
index 2c07b415f6..0000000000
--- a/sysdeps/unix/sysv/aix/configure
+++ /dev/null
@@ -1,6 +0,0 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
- # Local configure fragment for sysdeps/unix/sysv/aix.
-
-# Don't bother trying to generate any glue code to be compatible with the
-# existing system library, because we are the only system library.
-inhibit_glue=yes
diff --git a/sysdeps/unix/sysv/aix/configure.in b/sysdeps/unix/sysv/aix/configure.in
deleted file mode 100644
index bb783fc0ce..0000000000
--- a/sysdeps/unix/sysv/aix/configure.in
+++ /dev/null
@@ -1,6 +0,0 @@
-GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
-# Local configure fragment for sysdeps/unix/sysv/aix.
-
-# Don't bother trying to generate any glue code to be compatible with the
-# existing system library, because we are the only system library.
-inhibit_glue=yes
diff --git a/sysdeps/unix/sysv/aix/connect.c b/sysdeps/unix/sysv/aix/connect.c
deleted file mode 100644
index 2f58be1ede..0000000000
--- a/sysdeps/unix/sysv/aix/connect.c
+++ /dev/null
@@ -1,11 +0,0 @@
-/* This is a system call. We only have to provide the wrapper. */
-#include <sys/socket.h>
-
-#undef __connect
-
-int
-__connect (int fd, __CONST_SOCKADDR_ARG addr, socklen_t len)
-{
- return connect (fd, addr, len);
-}
-INTDEF(__connect)
diff --git a/sysdeps/unix/sysv/aix/creat.c b/sysdeps/unix/sysv/aix/creat.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/creat.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/dl-addr.c b/sysdeps/unix/sysv/aix/dl-addr.c
deleted file mode 100644
index b8dbddfe41..0000000000
--- a/sysdeps/unix/sysv/aix/dl-addr.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- Copyright (C) 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <dlfcn.h>
-#include <stdlib.h>
-#include <ldsodefs.h>
-
-int
-internal_function
-_dl_addr (const void *address, Dl_info *info)
-{
- return 0;
-}
-
diff --git a/sysdeps/unix/sysv/aix/dl-close.c b/sysdeps/unix/sysv/aix/dl-close.c
deleted file mode 100644
index edd45851f6..0000000000
--- a/sysdeps/unix/sysv/aix/dl-close.c
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <stdarg.h>
-#include <stdlib.h>
-#include <sys/types.h>
-#include <errno.h>
-#include <dlfcn.h>
-#include <dlldr.h>
-
-extern int _dl_numso;
-extern DL_SODATA *_dl_sotable;
-
-void
-_dl_close (void *handle)
-{
- if ((int) handle < 0 || (int) handle >= _dl_numso || _dl_sotable == NULL)
- {
- errno = EINVAL;
- return;
- }
-
- if (_dl_sotable[(int) handle].handle != 0)
- __unload (_dl_sotable[(int) handle].handle);
-
- _dl_sotable[(int) handle].index = 0;
- _dl_sotable[(int) handle].dataorg = 0;
- _dl_sotable[(int) handle].handle = 0;
- _dl_sotable[(int) handle].type = 0;
-}
-
diff --git a/sysdeps/unix/sysv/aix/dl-error.c b/sysdeps/unix/sysv/aix/dl-error.c
deleted file mode 100644
index 9c6335b591..0000000000
--- a/sysdeps/unix/sysv/aix/dl-error.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-
-#include <elf/dl-error.c>
diff --git a/sysdeps/unix/sysv/aix/dl-libc.c b/sysdeps/unix/sysv/aix/dl-libc.c
deleted file mode 100644
index 69c627c19c..0000000000
--- a/sysdeps/unix/sysv/aix/dl-libc.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Handle loading and unloading shared objects for internal libc purposes.
- Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <dlfcn.h>
-#include <stdlib.h>
-#include <ldsodefs.h>
-
-void *
-__libc_dlopen (const char *name)
-{
- return _dl_open (name, RTLD_LAZY, NULL);
-}
-
-void *
-__libc_dlsym (void *map, const char *name)
-{
- return _dl_sym (map, name, NULL);
-}
-
-int
-__libc_dlclose (void *map)
-{
- _dl_close (map);
- return 0;
-}
diff --git a/sysdeps/unix/sysv/aix/dl-open.c b/sysdeps/unix/sysv/aix/dl-open.c
deleted file mode 100644
index 070471d513..0000000000
--- a/sysdeps/unix/sysv/aix/dl-open.c
+++ /dev/null
@@ -1,133 +0,0 @@
-/* Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <malloc.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <sys/types.h>
-#include <errno.h>
-#include <dlfcn.h>
-#include <dlldr.h>
-
-#define NUM_SHARED_OBJECTS 32
-
-int _dl_numso = NUM_SHARED_OBJECTS;
-DL_SODATA *_dl_sotable = NULL;
-
-void *
-_dl_open (const char *file, int mode, const void *caller)
-{
- DL_SODATA *new_so;
- void *handle;
- int entry;
- int bsize = _dl_numso * sizeof (DL_INFO);
- DL_INFO *dl_info = malloc (bsize);
-
- if (dl_info == NULL)
- return NULL;
-
- /* 1st time thru initial shared object data table. */
- if (_dl_sotable == NULL)
- {
- _dl_sotable = (DL_SODATA *) calloc (_dl_numso, sizeof (DL_SODATA));
- if (_dl_sotable == NULL)
- return NULL;
-
- __loadx (DL_POSTLOADQ, dl_info, bsize, NULL);
- while (!(dl_info[0].dlinfo_xflags & DL_INFO_OK)
- || dl_info[0].dlinfo_arraylen == 0)
- {
- bsize *= 2;
- dl_info = realloc (dl_info, bsize);
- if (dl_info == NULL)
- return NULL;
-
- __loadx (DL_POSTLOADQ, dl_info, bsize, NULL);
- }
- }
-
- /* Validate mode bits. */
- if (!(mode & RTLD_NOW) && !(mode & RTLD_LAZY))
- {
- free (dl_info);
- errno = EINVAL;
- return NULL;
- }
-
- /* Load the module. */
- handle = (void *) __loadx (DL_LOAD | DL_LOAD_RTL | DL_LOAD_LDX1,
- dl_info, bsize, file, NULL);
- if (handle == NULL)
- {
- free (dl_info);
- errno = EINVAL;
- return NULL;
- }
-
- /* Was dl_info buffer to small to get info. */
- while (!(dl_info[0].dlinfo_xflags & DL_INFO_OK)
- || dl_info[0].dlinfo_arraylen == 0)
- {
- bsize *= 2;
- dl_info = realloc (dl_info, bsize);
- if (dl_info == NULL)
- {
- (void) __unload ((void *) handle);
- errno = ENOMEM;
- return NULL;
- }
- __loadx (DL_POSTLOADQ | DL_LOAD_RTL, dl_info, bsize, handle);
- }
-
- /* Get an empty entry in the shared object table. */
- for (entry = 0; entry < _dl_numso; ++entry)
- if (_dl_sotable[entry].type == 0)
- break;
-
- /* See if the table needs to be increased. */
- if (entry == _dl_numso)
- {
- new_so = (DL_SODATA *) realloc (_dl_sotable,
- _dl_numso * 2 * sizeof (DL_SODATA));
- if (new_so == NULL)
- return NULL;
-
- memset (new_so + _dl_numso, '\0', _dl_numso * sizeof (DL_SODATA));
- _dl_numso *= 2;
- _dl_sotable = new_so;
- }
-
- /* See if this is syscall (look for /unix in file). */
- if (strcmp ("/unix", file) == 0)
- {
- _dl_sotable[entry].index = dl_info[1].dlinfo_index;
- _dl_sotable[entry].dataorg = dl_info[1].dlinfo_dataorg;
- _dl_sotable[entry].handle = handle;
- _dl_sotable[entry].type = DL_UNIX_SYSCALL;
- }
- else
- {
- _dl_sotable[entry].index = dl_info[1].dlinfo_index;
- _dl_sotable[entry].dataorg = dl_info[1].dlinfo_dataorg;
- _dl_sotable[entry].handle = handle;
- _dl_sotable[entry].type = DL_GETSYM;
- }
-
- free (dl_info);
- return (void *) entry;
-}
diff --git a/sysdeps/unix/sysv/aix/dl-support.c b/sysdeps/unix/sysv/aix/dl-support.c
deleted file mode 100644
index 6172c853d4..0000000000
--- a/sysdeps/unix/sysv/aix/dl-support.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-
-#include <elf/dl-support.c>
diff --git a/sysdeps/unix/sysv/aix/dl-sym.c b/sysdeps/unix/sysv/aix/dl-sym.c
deleted file mode 100644
index 3f48b12cd9..0000000000
--- a/sysdeps/unix/sysv/aix/dl-sym.c
+++ /dev/null
@@ -1,58 +0,0 @@
-/* Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <stdarg.h>
-#include <stdlib.h>
-#include <sys/types.h>
-#include <errno.h>
-#include <dlfcn.h>
-#include <dlldr.h>
-
-extern int _dl_numso;
-extern DL_SODATA *_dl_sotable;
-
-void *
-_dl_sym (void *handle, const char *symbol, void *who)
-{
- void *rt_function;
-
- if ((int) handle < 0 || (int) handle >= _dl_numso || _dl_sotable == NULL)
- {
- errno = EINVAL;
- return NULL;
- }
-
- switch (_dl_sotable[(int) handle].type)
- {
- case DL_UNIX_SYSCALL:
- rt_function = (void *) __loadx (DL_UNIX_SYSCALL, (void *) symbol);
- break;
-
- case DL_GETSYM:
- rt_function = (void *) __loadx (DL_GETSYM, (void *) symbol,
- _dl_sotable[(int) handle].index,
- _dl_sotable[(int) handle].dataorg);
- break;
-
- default:
- errno = EINVAL;
- return NULL;
- }
-
- return rt_function;
-}
diff --git a/sysdeps/unix/sysv/aix/dlldr.h b/sysdeps/unix/sysv/aix/dlldr.h
deleted file mode 100644
index e0f3740d26..0000000000
--- a/sysdeps/unix/sysv/aix/dlldr.h
+++ /dev/null
@@ -1,111 +0,0 @@
-/* Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-
-/*
-
- int __loadx(flag, module, arg1, arg2, arg3)
-
- The __loadx() is a call to ld_loadutil() kernel function, which
- does the real work. Note ld_loadutil() is not exported an cannot be
- called directly from user space.
-
- void *ld_loadutil() call is a utility function used for loader extensions
- supporting run-time linking and dl*() functions.
-
- void * - will return the modules entry point if it succeds of NULL
- on failure.
-
- int flag - the flag field performas a dual role: the top 8 bits specify
- the work for __loadx() to perform, the bottom 8 bits are
- used to pass flags to the work routines, all other bits are
- reserved.
-
-*/
-
-#define DL_LOAD 0x1000000 /* __loadx(flag,buf, buf_len, filename, libr_path) */
-#define DL_POSTLOADQ 0x2000000 /* __loadx(flag,buf, buf_len, module_handle) */
-#define DL_EXECQ 0x3000000 /* __loadx(flag,buf, buf_len) */
-#define DL_EXITQ 0x4000000 /* __loadx(flag,buf, buf_len) */
-#define DL_PREUNLOADQ 0x5000000 /* __loadx(flag,buf, buf_len, module_handle) */
-#define DL_INIT 0x6000000 /* __loadx(flag,NULL) */
-#define DL_GETSYM 0x7000000 /* __loadx(flag,symbol, index, modules_data_origin) */
-#define DL_SETDEPEND 0x8000000 /* __loadx(flag,import_data_org, import_index, */
- /* export_data_org, export_index) */
-#define DL_DELDEPEND 0x9000000 /* __loadx(flag,import_data_org, import_index, */
- /* export_data_org, export_index) */
-#define DL_GLOBALSYM 0xA000000 /* __loadx(flag,symbol_name, ptr_to_rec_index, */
- /* ptr_to_rec_data_org) */
-#define DL_UNIX_SYSCALL 0xB000000 /* __loadx(flag,syscall_symbol_name) */
-
-#define DL_FUNCTION_MASK 0xFF000000
-#define DL_SRCHDEPENDS 0x00100000
-#define DL_SRCHMODULE 0x00080000
-#define DL_SRCHLOADLIST 0x00040000
-#define DL_LOAD_LDX1 0x00040000
-#define DL_LOAD_RTL 0x00020000
-#define DL_HASHSTRING 0x00020000
-#define DL_INFO_OK 0x00010000
-#define DL_LOAD_DLINFO 0x00010000
-#define DL_UNLOADED 0x00020000
-
-typedef union _dl_info
-{
- struct {
- uint _xflags; /* flag bits in the array */
- uint _size; /* size of this structure */
- uint _arraylen; /* number of following elements */
- } _dl_stat;
- struct {
- caddr_t _textorg; /* start of loaded program image */
- caddr_t _dataorg; /* start of data instance */
- uint _datasize; /* size of data instance */
- ushort _index; /* index of this le in la_dynlist */
- ushort _mflags; /* info about module from load() */
- } _dl_array;
-} DL_INFO;
-
-#define dlinfo_xflags _dl_stat._xflags
-#define dlinfo_arraylen _dl_stat._arraylen
-#define dlinfo_size _dl_stat._size
-
-#define dlinfo_textorg _dl_array._textorg
-#define dlinfo_datasize _dl_array._datasize
-#define dlinfo_dataorg _dl_array._dataorg
-#define dlinfo_index _dl_array._index
-#define dlinfo_flags _dl_array._mflags
-
-#define DL_HAS_RTINIT 0x1 /* indicates the module __rtinit symbols */
-#define DL_IS_NEW 0x2 /* indicates that the module is newly loaded */
-
-struct _xArgs
-{
- char *libpath;
- DL_INFO *info;
- uint infosize;
-};
-
-/* Shared Object DATA used for dl-open,dl-sym & dl-close support */
-typedef struct
-{
- void *handle; /* handle for __loadx */
- uint type; /* type of __loadx flag */
- ushort index; /* dlinfo_index */
- caddr_t dataorg; /* dlinfo_dataorg */
-} DL_SODATA;
-
diff --git a/sysdeps/unix/sysv/aix/environ.c b/sysdeps/unix/sysv/aix/environ.c
deleted file mode 100644
index 01e7ba8281..0000000000
--- a/sysdeps/unix/sysv/aix/environ.c
+++ /dev/null
@@ -1 +0,0 @@
-/* We don't need to define environ, the kernel does it. */
diff --git a/sysdeps/unix/sysv/aix/euidaccess.c b/sysdeps/unix/sysv/aix/euidaccess.c
deleted file mode 100644
index c666af5fd0..0000000000
--- a/sysdeps/unix/sysv/aix/euidaccess.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#define ACC_SELF 0
-
-int
-euidaccess (const char *name, int type)
-{
- return accessx (name, type, ACC_SELF);
-}
diff --git a/sysdeps/unix/sysv/aix/execve.c b/sysdeps/unix/sysv/aix/execve.c
deleted file mode 100644
index f8cc07d556..0000000000
--- a/sysdeps/unix/sysv/aix/execve.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__execve (const char *path, char *const argv[], char *const envp[])
-{
- return execve (path, argv, envp);
-}
diff --git a/sysdeps/unix/sysv/aix/fchdir.c b/sysdeps/unix/sysv/aix/fchdir.c
deleted file mode 100644
index 9fe7e8bec9..0000000000
--- a/sysdeps/unix/sysv/aix/fchdir.c
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__fchdir (fd)
- int fd;
-{
- return fchdir (fd);
-}
diff --git a/sysdeps/unix/sysv/aix/fchmod.c b/sysdeps/unix/sysv/aix/fchmod.c
deleted file mode 100644
index d4f0ac9580..0000000000
--- a/sysdeps/unix/sysv/aix/fchmod.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/stat.h>
-
-int
-__fchmod (int fd, mode_t mode)
-{
- return fchmod (fd, mode);
-}
diff --git a/sysdeps/unix/sysv/aix/fchown.c b/sysdeps/unix/sysv/aix/fchown.c
deleted file mode 100644
index 64252c038b..0000000000
--- a/sysdeps/unix/sysv/aix/fchown.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__fchown (int fds, uid_t owner, gid_t group)
-{
- return fchown (fds, owner, group);
-}
diff --git a/sysdeps/unix/sysv/aix/fcntl.c b/sysdeps/unix/sysv/aix/fcntl.c
deleted file mode 100644
index 7f16cbe013..0000000000
--- a/sysdeps/unix/sysv/aix/fcntl.c
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <fcntl.h>
-#include <stdarg.h>
-
-extern int kfcntl (int fdes, int cmd, unsigned long int arg);
-
-int
-__fcntl (int fdes, int cmd, ...)
-{
- va_list va;
- int res;
- unsigned long int arg;
-
- va_start (va, cmd);
- arg = va_arg (va, unsigned long int);
-
- res = kfcntl (fdes, cmd, arg);
-
- va_end (va);
-
- return res;
-}
-libc_hidden_def (__fcntl)
-strong_alias (__fcntl, fcntl)
-strong_alias (__fcntl, __libc_fcntl)
-libc_hidden_def (__libc_fcntl)
diff --git a/sysdeps/unix/sysv/aix/fdatasync.c b/sysdeps/unix/sysv/aix/fdatasync.c
deleted file mode 100644
index 851f2e5701..0000000000
--- a/sysdeps/unix/sysv/aix/fdatasync.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-#define _FDATASYNC 0x00400000
-#define FDATASYNC _FDATASYNC
-
-extern int kfsync_range (int fd, int how, long long int off,
- long long int len);
-
-int
-fdatasync (int fd)
-{
- return kfsync_range (fd, FDATASYNC, 0, 0);
-}
diff --git a/sysdeps/unix/sysv/aix/fork.c b/sysdeps/unix/sysv/aix/fork.c
deleted file mode 100644
index 478d4afad1..0000000000
--- a/sysdeps/unix/sysv/aix/fork.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-#undef __fork
-
-pid_t
-__fork (void)
-{
- return kfork ();
-}
-libc_hidden_def (__fork)
-strong_alias (__fork, fork)
diff --git a/sysdeps/unix/sysv/aix/fstatfs.c b/sysdeps/unix/sysv/aix/fstatfs.c
deleted file mode 100644
index 3f531f2a84..0000000000
--- a/sysdeps/unix/sysv/aix/fstatfs.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/statfs.h>
-
-extern int fstatfs (int fd, struct statfs *buf);
-
-int
-__fstatfs (int fd, struct statfs *buf)
-{
- return fstatfs (fd, buf);
-}
diff --git a/sysdeps/unix/sysv/aix/fsync.c b/sysdeps/unix/sysv/aix/fsync.c
deleted file mode 100644
index 58734b6e89..0000000000
--- a/sysdeps/unix/sysv/aix/fsync.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-#define _FSYNC 0x00000010
-#define FFILESYNC _FSYNC
-
-extern int kfsync_range (int fd, int how, long long int off,
- long long int len);
-
-int
-fsync (int fd)
-{
- return kfsync_range (fd, FFILESYNC, 0, 0);
-}
diff --git a/sysdeps/unix/sysv/aix/ftruncate.c b/sysdeps/unix/sysv/aix/ftruncate.c
deleted file mode 100644
index 758f2a423b..0000000000
--- a/sysdeps/unix/sysv/aix/ftruncate.c
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-extern int kftruncate (int fd, long long int length);
-
-int
-__ftruncate (int fd, off_t length)
-{
- return kftruncate (fd, length);
-}
-strong_alias (__ftruncate, ftruncate)
diff --git a/sysdeps/unix/sysv/aix/ftruncate64.c b/sysdeps/unix/sysv/aix/ftruncate64.c
deleted file mode 100644
index 5e7e4be4ca..0000000000
--- a/sysdeps/unix/sysv/aix/ftruncate64.c
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-extern int kftruncate (int fd, long long int length);
-
-int
-__ftruncate64 (int fd, off64_t length)
-{
- return kftruncate (fd, length);
-}
-weak_alias (__ftruncate64, ftruncate64)
diff --git a/sysdeps/unix/sysv/aix/fxstat.c b/sysdeps/unix/sysv/aix/fxstat.c
deleted file mode 100644
index 1ba56f690f..0000000000
--- a/sysdeps/unix/sysv/aix/fxstat.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <assert.h>
-#include <sys/stat.h>
-
-#define STX_NORMAL 0x00
-
-extern int fstatx (int fd, struct stat *st, int len, int cmd);
-
-int
-__fxstat (int ver, int fd, struct stat *st)
-{
- assert (ver == 0);
- return fstatx (fd, st, sizeof (*st), STX_NORMAL);
-}
-hidden_def (__fxstat)
diff --git a/sysdeps/unix/sysv/aix/fxstat64.c b/sysdeps/unix/sysv/aix/fxstat64.c
deleted file mode 100644
index 5f75e070c4..0000000000
--- a/sysdeps/unix/sysv/aix/fxstat64.c
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <assert.h>
-#include <sys/stat.h>
-
-#define STX_NORMAL 0x00
-#define STX_64 0x08
-
-extern int fstatx (int fd, struct stat64 *st, int len, int cmd);
-
-int
-__fxstat64 (int ver, int fd, struct stat64 *st)
-{
- assert (ver == 0);
- return fstatx (fd, st, sizeof (*st), STX_NORMAL | STX_64);
-}
-hidden_def (__fxstat64)
diff --git a/sysdeps/unix/sysv/aix/getdents.c b/sysdeps/unix/sysv/aix/getdents.c
deleted file mode 100644
index ca896c3323..0000000000
--- a/sysdeps/unix/sysv/aix/getdents.c
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <dirent.h>
-#include <sys/types.h>
-
-extern int getdirent (int fd, char *buf, size_t count);
-
-ssize_t
-__getdents (int fd, char *buf, size_t count)
-{
- return getdirent (fd, buf, count);
-}
diff --git a/sysdeps/unix/sysv/aix/getegid.c b/sysdeps/unix/sysv/aix/getegid.c
deleted file mode 100644
index c24692502c..0000000000
--- a/sysdeps/unix/sysv/aix/getegid.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-#define ID_EFFECTIVE 0x01
-
-
-gid_t
-__getegid (void)
-{
- return getgidx (ID_EFFECTIVE);
-}
-strong_alias (__getegid, getegid)
diff --git a/sysdeps/unix/sysv/aix/geteuid.c b/sysdeps/unix/sysv/aix/geteuid.c
deleted file mode 100644
index b0722134b4..0000000000
--- a/sysdeps/unix/sysv/aix/geteuid.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-#define ID_EFFECTIVE 0x01
-
-
-uid_t
-__geteuid (void)
-{
- return getuidx (ID_EFFECTIVE);
-}
-strong_alias (__geteuid, geteuid)
diff --git a/sysdeps/unix/sysv/aix/getgid.c b/sysdeps/unix/sysv/aix/getgid.c
deleted file mode 100644
index 8b102b137f..0000000000
--- a/sysdeps/unix/sysv/aix/getgid.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-#define ID_REAL 2
-
-extern gid_t getgidx (int which);
-
-gid_t
-__getgid (void)
-{
- return getgidx (ID_REAL);
-}
-strong_alias (__getgid, getgid)
diff --git a/sysdeps/unix/sysv/aix/getgroups.c b/sysdeps/unix/sysv/aix/getgroups.c
deleted file mode 100644
index f7c813b190..0000000000
--- a/sysdeps/unix/sysv/aix/getgroups.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__getgroups (int size, gid_t list[])
-{
- return getgroups (size, list);
-}
diff --git a/sysdeps/unix/sysv/aix/gethostname.c b/sysdeps/unix/sysv/aix/gethostname.c
deleted file mode 100644
index a42384059c..0000000000
--- a/sysdeps/unix/sysv/aix/gethostname.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__gethostname (name, len)
- char *name;
- size_t len;
-{
- return gethostname (name, len);
-}
diff --git a/sysdeps/unix/sysv/aix/getpeername.c b/sysdeps/unix/sysv/aix/getpeername.c
deleted file mode 100644
index bec9bac2ae..0000000000
--- a/sysdeps/unix/sysv/aix/getpeername.c
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright (C) 2000, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/socket.h>
-
-extern int ngetpeername (int s, void *uap_asa, int *uap_alen);
-
-int
-getpeername (int fd, __SOCKADDR_ARG addr, socklen_t *len)
-{
- return ngetpeername (fd, addr.__sockaddr__, len);
-}
-weak_alias (getpeername,__getpeername)
diff --git a/sysdeps/unix/sysv/aix/getpgid.c b/sysdeps/unix/sysv/aix/getpgid.c
deleted file mode 100644
index a6e75f3f9c..0000000000
--- a/sysdeps/unix/sysv/aix/getpgid.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-extern int kgetpgidx (pid_t pid);
-
-int
-__getgpid (pid_t pid)
-{
- return kgetpgidx (pid);
-}
-libc_hidden_def (__getgpid)
-strong_alias (__getpgid, getpgid)
diff --git a/sysdeps/unix/sysv/aix/getpgrp.c b/sysdeps/unix/sysv/aix/getpgrp.c
deleted file mode 100644
index ce37738beb..0000000000
--- a/sysdeps/unix/sysv/aix/getpgrp.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This function is available as a system call. */
diff --git a/sysdeps/unix/sysv/aix/getpid.c b/sysdeps/unix/sysv/aix/getpid.c
deleted file mode 100644
index 8a74e22da7..0000000000
--- a/sysdeps/unix/sysv/aix/getpid.c
+++ /dev/null
@@ -1,9 +0,0 @@
-/* This is a system call. We only have to provide the wrapper. */
-#include <unistd.h>
-
-int
-__getpid (void)
-{
- return getpid ();
-}
-libc_hidden_def (__getpid)
diff --git a/sysdeps/unix/sysv/aix/getppid.c b/sysdeps/unix/sysv/aix/getppid.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/getppid.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/getpriority.c b/sysdeps/unix/sysv/aix/getpriority.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/getpriority.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/getrlimit.c b/sysdeps/unix/sysv/aix/getrlimit.c
deleted file mode 100644
index 0699cec644..0000000000
--- a/sysdeps/unix/sysv/aix/getrlimit.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/resource.h>
-
-int
-__getrlimit (enum __rlimit_resource resource, struct rlimit *rlimits)
-{
- return getrlimit (resource, rlimits);
-}
diff --git a/sysdeps/unix/sysv/aix/getrlimit64.c b/sysdeps/unix/sysv/aix/getrlimit64.c
deleted file mode 100644
index dd33ca9c73..0000000000
--- a/sysdeps/unix/sysv/aix/getrlimit64.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/resource.h>
-
-int
-__getrlimit64 (enum __rlimit_resource resource, struct rlimit64 *rlimits)
-{
- return getrlimit64 (resource, rlimits);
-}
diff --git a/sysdeps/unix/sysv/aix/getrusage.c b/sysdeps/unix/sysv/aix/getrusage.c
deleted file mode 100644
index b578b75aa7..0000000000
--- a/sysdeps/unix/sysv/aix/getrusage.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/resource.h>
-
-int
-__getrusage (who, usage)
- enum __rusage_who who;
- struct rusage *usage;
-{
- return getrusage (who, usage);
-}
diff --git a/sysdeps/unix/sysv/aix/getsid.c b/sysdeps/unix/sysv/aix/getsid.c
deleted file mode 100644
index 6994eb8dda..0000000000
--- a/sysdeps/unix/sysv/aix/getsid.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-extern int kgetsid (pid_t pid);
-
-int
-getsid (pid_t pid)
-{
- return kgetsid (pid);
-}
diff --git a/sysdeps/unix/sysv/aix/getsockname.c b/sysdeps/unix/sysv/aix/getsockname.c
deleted file mode 100644
index ac1bf34fcb..0000000000
--- a/sysdeps/unix/sysv/aix/getsockname.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright (C) 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/socket.h>
-
-extern int ngetsockname (int s, void *uap_asa, int *uap_alen);
-
-int
-__getsockname (int fd, __SOCKADDR_ARG addr, socklen_t *len)
-{
- return ngetsockname (fd, addr.__sockaddr__, len);
-}
-
-weak_alias (__getsockname, getsockname)
diff --git a/sysdeps/unix/sysv/aix/gettimeofday.c b/sysdeps/unix/sysv/aix/gettimeofday.c
deleted file mode 100644
index 34a92eb391..0000000000
--- a/sysdeps/unix/sysv/aix/gettimeofday.c
+++ /dev/null
@@ -1,98 +0,0 @@
-/* Copyright (C) 1991,92,94,95,96,97,2001,2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <time.h>
-#include <sys/time.h>
-
-#ifndef HAVE_GNU_LD
-# define __daylight daylight
-# define __timezone timezone
-# define __tzname tzname
-#endif
-
-#undef __gettimeofday
-
-extern int rtc_upper (void);
-extern int rtc_lower (void);
-
-/* Assembler Routines to access the timer registers */
-asm("\n\
-.rtc_upper: mfspr 3,4 # copy RTCU to return register\n\
- blr\n\
-\n\
-.rtc_lower: mfspr 3,5 # copy RTCL to return register\n\
- blr\n\
-");
-
-/* Get the current time of day and timezone information,
- putting it into *TV and *TZ. If TZ is NULL, *TZ is not filled.
- Returns 0 on success, -1 on errors. */
-int
-__gettimeofday (tv, tz)
- struct timeval *tv;
- struct timezone *tz;
-{
- int ts, tl, tu;
-
- if (tv == NULL)
- {
- __set_errno (EINVAL);
- return -1;
- }
-
- ts = rtc_upper (); /* Seconds. */
- tl = rtc_lower (); /* Nanoseconds. */
- tu = rtc_upper (); /* Check for a carry from. */
- if (ts != tu) /* The lower reg to the upper. */
- tl = rtc_lower (); /* Recover from the race condition. */
-
- tv->tv_sec = (long int) (tu + (double) tl / 1000000000);
- tv->tv_usec = (long int) ((double) tl / 1000);
-
- if (tz != NULL)
- {
- const time_t timer = tv->tv_sec;
- struct tm tm;
- const struct tm *tmp;
-
- const long int save_timezone = __timezone;
- const long int save_daylight = __daylight;
- char *save_tzname[2];
- save_tzname[0] = __tzname[0];
- save_tzname[1] = __tzname[1];
-
- tmp = localtime_r (&timer, &tm);
-
- tz->tz_minuteswest = __timezone / 60;
- tz->tz_dsttime = __daylight;
-
- __timezone = save_timezone;
- __daylight = save_daylight;
- __tzname[0] = save_tzname[0];
- __tzname[1] = save_tzname[1];
-
- if (tmp == NULL)
- return -1;
- }
-
- return 0;
-}
-
-INTDEF(__gettimeofday)
-weak_alias (__gettimeofday, gettimeofday)
diff --git a/sysdeps/unix/sysv/aix/getuid.c b/sysdeps/unix/sysv/aix/getuid.c
deleted file mode 100644
index e042666fe9..0000000000
--- a/sysdeps/unix/sysv/aix/getuid.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-#define ID_REAL 2
-
-extern uid_t getuidx (int which);
-
-uid_t
-__getuid (void)
-{
- return getuidx (ID_REAL);
-}
-strong_alias (__getuid, getuid)
diff --git a/sysdeps/unix/sysv/aix/gnu/lib-names.h b/sysdeps/unix/sysv/aix/gnu/lib-names.h
deleted file mode 100644
index d41f822f16..0000000000
--- a/sysdeps/unix/sysv/aix/gnu/lib-names.h
+++ /dev/null
@@ -1,31 +0,0 @@
-#ifndef __GNU_LIB_NAMES_H
-#define __GNU_LIB_NAMES_H 1
-
-#define LIBBROKENLOCALE_SO "libBrokenLocale.a"
-#define LIBCRYPT_SO "libcrypt.a"
-#define LIBC_SO "libc.a"
-#define LIBDB1_SO "libdb1.a"
-#define LIBDB_SO "libdb.a"
-#define LIBDL_SO "libdl.a"
-#define LIBM_SO "libm.a"
-#define LIBNOVERSION_SO "libNoVersion.a"
-#define LIBNSL_SO "libnsl.a"
-#define LIBNSS1_COMPAT_SO "libnss1_compat.a"
-#define LIBNSS1_DB_SO "libnss1_db.a"
-#define LIBNSS1_DNS_SO "libnss1_dns.a"
-#define LIBNSS1_FILES_SO "libnss1_files.a"
-#define LIBNSS1_NIS_SO "libnss1_nis.a"
-#define LIBNSS_COMPAT_SO "libnss_compat.a"
-#define LIBNSS_DB_SO "libnss_db.a"
-#define LIBNSS_DNS_SO "libnss_dns.a"
-#define LIBNSS_FILES_SO "libnss_files.a"
-#define LIBNSS_HESIOD_SO "libnss_hesiod.a"
-#define LIBNSS_LDAP_SO "libnss_ldap.a"
-#define LIBNSS_NISPLUS_SO "libnss_nisplus.a"
-#define LIBNSS_NIS_SO "libnss_nis.a"
-#define LIBPTHREAD_SO "libpthread.a"
-#define LIBRESOLV_SO "libresolv.a"
-#define LIBRT_SO "librt.a"
-#define LIBUTIL_SO "libutil.a"
-
-#endif /* gnu/lib-names.h */
diff --git a/sysdeps/unix/sysv/aix/init-first.c b/sysdeps/unix/sysv/aix/init-first.c
deleted file mode 100644
index 24ef109dd2..0000000000
--- a/sysdeps/unix/sysv/aix/init-first.c
+++ /dev/null
@@ -1,103 +0,0 @@
-/* Initialization code run first thing by the XCOFF startup code. AIX version.
- Copyright (C) 2001, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <sysdep.h>
-#include <fpu_control.h>
-#include <sys/param.h>
-#include <sys/types.h>
-#include <libc-internal.h>
-
-#ifndef SHARED
-# include <ldsodefs.h>
-# include "dl-osinfo.h"
-#endif
-
-extern void __libc_init (int, char **, char **);
-
-/* The function is called from assembly stubs the compiler can't see. */
-static void init (int, char **, char **) __attribute__ ((unused));
-
-/* Set nonzero if we have to be prepared for more then one libc being
- used in the process. Safe assumption if initializer never runs. */
-int __libc_multiple_libcs attribute_hidden = 1;
-
-/* Remember the command line argument and enviroment contents for
- later calls of initializers for dynamic libraries. */
-int __libc_argc attribute_hidden;
-char **__libc_argv attribute_hidden;
-
-
-static void
-init (int argc, char **argv, char **envp)
-{
-#ifdef USE_NONOPTION_FLAGS
- extern void __getopt_clean_environment (char **);
-#endif
- /* The next variable is only here to work around a bug in gcc <= 2.7.2.2.
- If the address would be taken inside the expression the optimizer
- would try to be too smart and throws it away. Grrr. */
-
- /* XXX disable dl for now
- __libc_multiple_libcs = &_dl_starting_up && !_dl_starting_up; */
-
- /* Save the command-line arguments. */
- __libc_argc = argc;
- __libc_argv = argv;
- __environ = envp;
-
-#ifndef SHARED
- __libc_init_secure ();
-#endif
-
- __libc_init (argc, argv, envp);
-
-#ifdef USE_NONOPTION_FLAGS
- /* This is a hack to make the special getopt in GNU libc working. */
- __getopt_clean_environment (envp);
-#endif
-
-#ifdef SHARED
- __libc_global_ctors ();
-#endif
-}
-
-#ifdef SHARED
-
-strong_alias (init, _init);
-
-extern void __libc_init_first (void);
-
-void
-__libc_init_first (void)
-{
-}
-
-#else
-extern void __libc_init_first (int argc, char **argv, char **envp);
-
-void
-__libc_init_first (int argc, char **argv, char **envp)
-{
- init (argc, argv, envp);
-}
-#endif
diff --git a/sysdeps/unix/sysv/aix/ioctl.c b/sysdeps/unix/sysv/aix/ioctl.c
deleted file mode 100644
index f47b699be4..0000000000
--- a/sysdeps/unix/sysv/aix/ioctl.c
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <stdarg.h>
-#include <sys/ioctl.h>
-
-extern int kioctl (int fdes, int cmd, unsigned long int arg,
- unsigned long int ext);
-
-int
-__ioctl (int fdes, unsigned long int cmd, ...)
-{
- va_list va;
- int res;
- unsigned long int arg;
- unsigned long int ext;
-
- va_start (va, cmd);
- arg = va_arg (va, unsigned long int);
- ext = va_arg (va, unsigned long int);
-
- res = kioctl (fdes, cmd, arg, ext);
-
- va_end (va);
-
- return res;
-}
-strong_alias (__ioctl, ioctl)
diff --git a/sysdeps/unix/sysv/aix/kernel_proto.h b/sysdeps/unix/sysv/aix/kernel_proto.h
deleted file mode 100644
index e9ad06dc3a..0000000000
--- a/sysdeps/unix/sysv/aix/kernel_proto.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Ulrich Drepper <drepper@cygnus.com>, 1999.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* This file contains prototypes for the "functions" exported by /unix
- on AIX. */
-#include <sys/types.h>
-
-
-extern ssize_t kwrite (int, const void *, size_t);
diff --git a/sysdeps/unix/sysv/aix/kill.c b/sysdeps/unix/sysv/aix/kill.c
deleted file mode 100644
index 8538e29f81..0000000000
--- a/sysdeps/unix/sysv/aix/kill.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__kill (pid_t pid, int sig)
-{
- return kill (pid, sig);
-}
diff --git a/sysdeps/unix/sysv/aix/lchown.c b/sysdeps/unix/sysv/aix/lchown.c
deleted file mode 100644
index 44e3b749e4..0000000000
--- a/sysdeps/unix/sysv/aix/lchown.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__lchown (const char *file, uid_t owner, gid_t group)
-{
- return lchown (file, owner, group);
-}
diff --git a/sysdeps/unix/sysv/aix/libc-start.c b/sysdeps/unix/sysv/aix/libc-start.c
deleted file mode 100644
index 813e28d09b..0000000000
--- a/sysdeps/unix/sysv/aix/libc-start.c
+++ /dev/null
@@ -1,290 +0,0 @@
-/* Initialization code run first thing by the XCOFF startup code. AIX version.
- Copyright (C) 2001, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <stdlib.h>
-#include <unistd.h>
-#include <sys/types.h>
-
-/* hack to use uchar's */
-typedef unsigned char uchar;
-#include <xcoff.h>
-#include <rtinit.h>
-#include <dlldr.h>
-#include <bits/libc-lock.h>
-
-extern void __libc_init_first (int argc, char **argv, char **envp);
-
-/* XXX disable for now
-extern int __libc_multiple_libcs; */
-
-/* XXX normally defined in generic/dl-sydep.c, hack it into existance
-extern void *__libc_stack_end; */
-void *__libc_stack_end;
-
- struct __libc_start_data_rec {
- void *stack;
- void *toc;
- int argc;
- char **argv;
- char **envp;
- char *data;
- char *text;
- unsigned mcount;
- unsigned special;
- int (*main)(int, char **, char **);
- void (*init)(void);
- void (*fini)(void);
- void (*rtld_fini)(void);
- };
-
-extern struct __libc_start_data_rec __libc_start_data;
-extern int errno;
-
-/* The first piece of initialized data. */
-int __data_start = 0;
-
-#ifndef HAVE_ELF
-/* Since gcc/crtstuff.c won't define it unless the ELF format is used
- we will need to define it here. */
-void *__dso_handle = NULL;
-#endif
-
-/* AIX kernel function */
-extern int __loadx (int flag, void *module, void *arg1, void *arg2,
- void *arg3);
-/* Needed by setenv */
-char **__environ;
-
-/*
- * Find __rtinit symbol
- *
- * __RTINIT *find_rtinit()
- *
- * __RTINIT *rti - pointer to __rtinit data structure
- */
-
-static __RTINIT *
-find_rtinit (void)
-{
- struct xcoffhdr *xcoff_hdr;
- SCNHDR *sec_hdr;
- SCNHDR *ldr_sec_hdr;
- SCNHDR *data_sec_hdr;
- LDSYM *ldsym_hdr;
- __RTINIT *rtl;
-
- xcoff_hdr = (struct xcoffhdr *) __libc_start_data.text;
- sec_hdr = (SCNHDR *) ((caddr_t) &xcoff_hdr->aouthdr
- + xcoff_hdr->filehdr.f_opthdr);
- ldr_sec_hdr = (SCNHDR *) (sec_hdr + (xcoff_hdr->aouthdr.o_snloader - 1));
- ldsym_hdr = (LDSYM *) ((caddr_t) xcoff_hdr + ldr_sec_hdr->s_scnptr
- + LDHDRSZ);
-
- if (__libc_start_data.mcount <= 0)
- {
- if (!ldr_sec_hdr->s_scnptr)
- return NULL;
-
- if (memcmp (ldsym_hdr, RTINIT_NAME, sizeof(RTINIT_NAME) - 1) != 0)
- return NULL;
- }
-
- data_sec_hdr = (SCNHDR *) (sec_hdr + (xcoff_hdr->aouthdr.o_sndata - 1));
- rtl = (__RTINIT *) (ldsym_hdr->l_value
- + (__libc_start_data.data - data_sec_hdr->s_vaddr));
- return rtl;
-}
-
-/* The mod_init1 calls every initialization function
- for a given module.
-
- void mod_init1(handler, rti)
-
- void *handler - if NULL init funtions for modules loaded at exec time
- are being executed. Otherwise, the handler points to the
- module loaded.
-
- __RTINIT *rti - pointer to __rtinit data structure (with rti->init_offset
- not equal to zero)
- */
-
-static void
-mod_init1 (void *handler,__RTINIT *rtl)
-{
- __RTINIT_DESCRIPTOR *descriptor;
-
- descriptor = (__RTINIT_DESCRIPTOR *) ((caddr_t) &rtl->rtl
- + rtl->init_offset);
- while (descriptor->f != NULL)
- {
- if (!(descriptor->flags & _RT_CALLED))
- {
- descriptor->flags |= _RT_CALLED;
- /* Execute init/fini. */
- descriptor->f (handler, rtl, descriptor);
- }
- descriptor = (__RTINIT_DESCRIPTOR *) ((caddr_t) descriptor
- + rtl->__rtinit_descriptor_size);
- }
-}
-
-/* The modinit() function performs run-time linking, if enabled, and calling
- the init() function for all loaded modules.
-
- int modinit()
- */
-
-#define DL_BUFFER_SIZE 1000
-
-static int
-modinit (void)
-{
- int *handler = NULL;
- __RTINIT *rtinit_info = NULL;
- int flag;
- DL_INFO dl_buffer[DL_BUFFER_SIZE];
- DL_INFO *dl_info = dl_buffer;
- int i;
-
- /* Find __rtinit symbols */
- rtinit_info = find_rtinit ();
-
- flag = DL_EXECQ;
- if (rtinit_info && rtinit_info->rtl)
- flag |= DL_LOAD_RTL;
-
- /* Get a list of modules that have __rtinit. */
- if (__loadx (flag, dl_info, (void *) sizeof (dl_buffer), NULL, NULL))
- exit (0x90);
-
- if (( dl_info[0].dlinfo_xflags & DL_INFO_OK))
- {
- rtinit_info = find_rtinit ();
- if ((rtinit_info != NULL) & (rtinit_info->rtl != NULL))
- {
- if ((*rtinit_info->rtl) (dl_info, 0))
- exit (0x90);
- }
- }
-
- /* Initialization each module loaded that has __rtinit. */
- if (dl_info[0].dlinfo_xflags & DL_INFO_OK)
- {
- for (i = 1; i < dl_info[0].dlinfo_arraylen + 1; ++i)
- if (dl_info[i].dlinfo_flags & DL_HAS_RTINIT)
- {
- rtinit_info = find_rtinit ();
- if (rtinit_info)
- mod_init1 (handler, rtinit_info);
- }
- }
-
- return 0;
-}
-
-
-void
-__libc_start_init (void)
-{
- /* Do run-time linking, if enabled and call the init()
- for all loaded modules. */
- if (__libc_start_data.mcount != __libc_start_data.special)
- modinit ();
-}
-
-/* For now these are just stubs. */
-void
-__libc_start_fini (void)
-{
-}
-
-void
-__libc_start_rtld_fini (void)
-{
-}
-
-void
-__libc_start_main (void)
-{
-#ifndef SHARED
-
- /* The next variable is only here to work around a bug in gcc <= 2.7.2.2.
- If the address would be taken inside the expression the optimizer
- would try to be too smart and throws it away. Grrr. */
-
- /* XXX disable for now
- int *dummy_addr = &_dl_starting_up;
-
- __libc_multiple_libcs = dummy_addr && !_dl_starting_up; */
-#endif
-
- /* Store the lowest stack address. */
- __libc_stack_end = __libc_start_data.stack;
-
- /* Used by setenv */
- __environ = __libc_start_data.envp;
-
-#ifndef SHARED
- /* Clear errno. */
- errno = 0;
-
- /* Some security at this point. Prevent starting a SUID binary where
- the standard file descriptors are not opened. We have to do this
- only for statically linked applications since otherwise the dynamic
- loader did the work already. */
- if (__builtin_expect (__libc_enable_secure, 0))
- __libc_check_standard_fds ();
-
-#endif
-
- /* Register the destructor of the dynamic linker if there is any. */
- if (__builtin_expect (__libc_start_data.rtld_fini != NULL, 1))
- __cxa_atexit ((void (*) (void *)) __libc_start_data.rtld_fini, NULL, NULL);
-
- /* Call the initializer of the libc. This is only needed here if we
- are compiling for the static library in which case we haven't
- run the constructors in `_dl_start_user'. */
-#ifndef SHARED
- __libc_init_first (__libc_start_data.argc, __libc_start_data.argv,
- __libc_start_data.envp);
-#endif
-
- /* Register the destructor of the program, if any. */
- if (__libc_start_data.fini)
- __cxa_atexit ((void (*) (void *)) __libc_start_data.fini, NULL, NULL);
-
- /* Call the initializer of the program, if any. */
-#ifdef SHARED
- if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_IMPCALLS, 0))
- _dl_debug_printf ("\ninitialize program: %s\n\n",
- __libc_start_data.argv[0]);
-#endif
- if (__libc_start_data.init)
- (*__libc_start_data.init) ();
-
-#ifdef SHARED
- if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_IMPCALLS, 0))
- _dl_debug_printf ("\ntransferring control: %s\n\n",
- __libc_start_data.argv[0]);
-#endif
-
- exit ((*__libc_start_data.main) (__libc_start_data.argc,
- __libc_start_data.argv,
- __libc_start_data.envp));
-}
diff --git a/sysdeps/unix/sysv/aix/link.c b/sysdeps/unix/sysv/aix/link.c
deleted file mode 100644
index 2cacbebc37..0000000000
--- a/sysdeps/unix/sysv/aix/link.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright (C) 1997, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__link (from, to)
- const char *from;
- const char *to;
-{
- return link (from, to);
-}
diff --git a/sysdeps/unix/sysv/aix/lockf.c b/sysdeps/unix/sysv/aix/lockf.c
deleted file mode 100644
index 4a8c14fd6e..0000000000
--- a/sysdeps/unix/sysv/aix/lockf.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-extern int klockf (int fd, int function, long long int size);
-
-int
-lockf (int fd, int cmd, off_t len)
-{
- return klockf (fd, cmd, len);
-}
diff --git a/sysdeps/unix/sysv/aix/lockf64.c b/sysdeps/unix/sysv/aix/lockf64.c
deleted file mode 100644
index 529c2b4473..0000000000
--- a/sysdeps/unix/sysv/aix/lockf64.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-extern int klockf (int fd, int function, long long int size);
-
-int
-lockf64 (int fd, int cmd, off64_t len)
-{
- return klockf (fd, cmd, len);
-}
diff --git a/sysdeps/unix/sysv/aix/lseek.c b/sysdeps/unix/sysv/aix/lseek.c
deleted file mode 100644
index d4cbdbe702..0000000000
--- a/sysdeps/unix/sysv/aix/lseek.c
+++ /dev/null
@@ -1,10 +0,0 @@
-/* This is a system call. We only have to provide the wrapper. */
-#include <unistd.h>
-
-off_t
-__lseek (int fd, off_t offset, int whence)
-{
- return lseek (fd, offset, whence);
-}
-strong_alias (__lseek, __libc_lseek)
-libc_hidden_def (__lseek)
diff --git a/sysdeps/unix/sysv/aix/lseek64.c b/sysdeps/unix/sysv/aix/lseek64.c
deleted file mode 100644
index 5892663d8f..0000000000
--- a/sysdeps/unix/sysv/aix/lseek64.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-extern int klseek (int fd, long long int offset, int sbase,
- long long int *new_offp);
-
-off64_t
-__libc_lseek64 (int fd, off64_t offset, int whence)
-{
- long long int res;
-
- if (klseek (fd, offset, whence, &res) < 0)
- res = -1ll;
-
- return res;
-}
-strong_alias (__libc_lseek64, __lseek64)
-strong_alias (__libc_lseek64, lseek64)
diff --git a/sysdeps/unix/sysv/aix/lxstat.c b/sysdeps/unix/sysv/aix/lxstat.c
deleted file mode 100644
index 879e80cbe8..0000000000
--- a/sysdeps/unix/sysv/aix/lxstat.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <assert.h>
-#include <sys/stat.h>
-
-#define STX_LINK 0x01
-
-extern int statx (const char *pathname, struct stat *st, int len, int cmd);
-
-int
-__lxstat (int ver, const char *pathname, struct stat *st)
-{
- assert (ver == 0);
- return statx (pathname, st, sizeof (*st), STX_LINK);
-}
-hidden_def (__lxstat)
diff --git a/sysdeps/unix/sysv/aix/lxstat64.c b/sysdeps/unix/sysv/aix/lxstat64.c
deleted file mode 100644
index 73324fe55b..0000000000
--- a/sysdeps/unix/sysv/aix/lxstat64.c
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <assert.h>
-#include <sys/stat.h>
-
-#define STX_LINK 0x01
-#define STX_64 0x08
-
-extern int statx (const char *pathname, struct stat64 *st, int len, int cmd);
-
-int
-__lxstat64 (int ver, const char *pathname, struct stat64 *st)
-{
- assert (ver == 0);
- return statx (pathname, st, sizeof (*st), STX_LINK | STX_64);
-}
-hidden_def (__lxstat64)
diff --git a/sysdeps/unix/sysv/aix/madvise.c b/sysdeps/unix/sysv/aix/madvise.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/madvise.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/mkdir.c b/sysdeps/unix/sysv/aix/mkdir.c
deleted file mode 100644
index 4a4e5ceefe..0000000000
--- a/sysdeps/unix/sysv/aix/mkdir.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/stat.h>
-
-int
-__mkdir (const char *name, mode_t mode)
-{
- return mkdir (name, mode);
-}
diff --git a/sysdeps/unix/sysv/aix/mknod.c b/sysdeps/unix/sysv/aix/mknod.c
deleted file mode 100644
index 8ed3d6b53e..0000000000
--- a/sysdeps/unix/sysv/aix/mknod.c
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/stat.h>
-
-int
-__mknod (path, mode, device)
- const char *path;
- mode_t mode;
- dev_t device;
-{
- return mknod (path, mode, device);
-}
diff --git a/sysdeps/unix/sysv/aix/mmap.c b/sysdeps/unix/sysv/aix/mmap.c
deleted file mode 100644
index cd967d36bc..0000000000
--- a/sysdeps/unix/sysv/aix/mmap.c
+++ /dev/null
@@ -1,9 +0,0 @@
-/* This is a system call. We only have to provide the wrapper. */
-#include <sys/mman.h>
-#include <sys/types.h>
-
-void *
-__mmap (void *addr, size_t len, int prot, int flags, int fd, off_t offset)
-{
- return mmap (addr, len, prot, flags, fd, offset);
-}
diff --git a/sysdeps/unix/sysv/aix/mmap64.c b/sysdeps/unix/sysv/aix/mmap64.c
deleted file mode 100644
index ae70ef4acb..0000000000
--- a/sysdeps/unix/sysv/aix/mmap64.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/mman.h>
-#include <sys/types.h>
-
-extern int kmmap (void *addr, size_t len, int prot, int flags, int fd,
- long long int offset);
-
-void *
-__mmap64 (void *addr, size_t len, int prot, int flags, int fd, off64_t offset)
-{
- return kmmap (addr, len, prot, flags, fd, offset);
-}
-strong_alias (__mmap64, mmap64)
diff --git a/sysdeps/unix/sysv/aix/mprotect.c b/sysdeps/unix/sysv/aix/mprotect.c
deleted file mode 100644
index 8bf95abb0e..0000000000
--- a/sysdeps/unix/sysv/aix/mprotect.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/mman.h>
-
-int
-__mprotect (void *addr, size_t len, int prot)
-{
- return mprotect (addr, len, prot);
-}
diff --git a/sysdeps/unix/sysv/aix/msgctl.c b/sysdeps/unix/sysv/aix/msgctl.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/msgctl.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/msgget.c b/sysdeps/unix/sysv/aix/msgget.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/msgget.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/msgrcv.c b/sysdeps/unix/sysv/aix/msgrcv.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/msgrcv.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/msgsnd.c b/sysdeps/unix/sysv/aix/msgsnd.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/msgsnd.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/msync.c b/sysdeps/unix/sysv/aix/msync.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/msync.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/munmap.c b/sysdeps/unix/sysv/aix/munmap.c
deleted file mode 100644
index 7f583be358..0000000000
--- a/sysdeps/unix/sysv/aix/munmap.c
+++ /dev/null
@@ -1,8 +0,0 @@
-/* This is a system call. We only have to provide the wrapper. */
-#include <sys/mman.h>
-
-int
-__munmap (void *addr, size_t len)
-{
- return munmap (addr, len);
-}
diff --git a/sysdeps/unix/sysv/aix/nanosleep.c b/sysdeps/unix/sysv/aix/nanosleep.c
deleted file mode 100644
index 842275f77a..0000000000
--- a/sysdeps/unix/sysv/aix/nanosleep.c
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Copyright (C) 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <assert.h>
-#include <sys/time.h>
-#include <sys/types.h>
-
-struct timestruc_t
-{
- time_t tv_sec; /* seconds. */
- suseconds_t tv_nsec; /* and nanoseconds. */
-};
-
-
-extern int _nsleep (struct timestruc_t *rqtp, struct timestruc_t *rmtp);
-
-int
-__libc_nanosleep (const struct timespec *req, struct timespec *rem)
-{
- assert (sizeof (struct timestruc_t) == sizeof (*req));
- return _nsleep ((struct timestruc_t *) req, (struct timestruc_t *) rem);
-}
-strong_alias (__libc_nanosleep, __nanosleep)
-libc_hidden_def (__nanosleep)
-strong_alias (__libc_nanosleep, nanosleep)
diff --git a/sysdeps/unix/sysv/aix/net/if.h b/sysdeps/unix/sysv/aix/net/if.h
deleted file mode 100644
index 20256d3adb..0000000000
--- a/sysdeps/unix/sysv/aix/net/if.h
+++ /dev/null
@@ -1,196 +0,0 @@
-/* Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _NET_IF_H
-
-#define _NET_IF_H 1
-#include <features.h>
-
-#include <sys/types.h>
-#include <sys/socket.h>
-
-/* Standard interface flags. */
-enum
- {
- IFF_UP = 0x1, /* Interface is up. */
-#define IFF_UP IFF_UP
- IFF_BROADCAST = 0x2, /* Broadcast address valid. */
-#define IFF_BROADCAST IFF_BROADCAST
- IFF_DEBUG = 0x4, /* Turn on debugging. */
-#define IFF_DEBUG IFF_DEBUG
- IFF_LOOPBACK = 0x8, /* Is a loopback net. */
-#define IFF_LOOPBACK IFF_LOOPBACK
- IFF_POINTOPOINT = 0x10, /* Interface is point-to-point link. */
-#define IFF_POINTOPOINT IFF_POINTOPOINT
- IFF_NOTRAILERS = 0x20, /* Avoid use of trailers. */
-#define IFF_NOTRAILERS IFF_NOTRAILERS
- IFF_RUNNING = 0x40, /* Resources allocated. */
-#define IFF_RUNNING IFF_RUNNING
- IFF_NOARP = 0x80, /* No address resolution protocol. */
-#define IFF_NOARP IFF_NOARP
- IFF_PROMISC = 0x100, /* Receive all packets. */
-#define IFF_PROMISC IFF_PROMISC
-
- /* Not supported */
- IFF_ALLMULTI = 0x200, /* Receive all multicast packets. */
-#define IFF_ALLMULTI IFF_ALLMULTI
-
- IFF_OACTIVE = 0x400, /* Transmission in progress. */
-#define IFF_OACTIVE IFF_OACTIVE
- IFF_SIMPLEX = 0x800, /* Cannot hear own transmissions. */
-#define IFF_SIMPLEX IFF_SIMPLEX
- IFF_DO_HW_LOOPBACK = 0x10000, /* Force loopback through hardware. */
-#define IFF_DO_HW_LOOPBACK IFF_DO_HW_LOOPBACK
- IFF_ALLCAST = 0x20000, /* Global broadcast. */
-#define IFF_ALLCAST IFF_ALLCAST
- IFF_BRIDGE = 0x40000, /* Receive all bridge packets. */
-#define IFF_BRIDGE IFF_BRIDGE
- IFF_NOECHO = IFF_SIMPLEX, /* Reeives echo packets. */
-#define IFF_NOECHO IFF_NOECHO
- };
-
-/* The ifaddr structure contains information about one address of an
- interface. They are maintained by the different address families,
- are allocated and attached when an address is set, and are linked
- together so all addresses for an interface can be located. */
-
-struct ifaddr
- {
- struct sockaddr ifa_addr; /* Address of interface. */
- union
- {
- struct sockaddr ifu_broadaddr;
- struct sockaddr ifu_dstaddr;
- } ifa_ifu;
- struct sockaddr *ifa_netmask; /* Used to determine subnet. */
- struct iface *ifa_ifp; /* Back-pointer to interface. */
- struct ifaddr *ifa_next; /* Next address for interface. */
- void (*ifa_rtrequest) (void);
- struct rtentry *ifa_rt;
- unsigned short int ifa_flags;
- short int ifa_refcnt;
- };
-
-#define ifa_broadaddr ifa_ifu.ifu_broadaddr /* broadcast address */
-#define ifa_dstaddr ifa_ifu.ifu_dstaddr /* other end of link */
-
-/* Interface request structure used for socket ioctl's. All interface
- ioctl's must have parameter definitions which begin with ifr_name.
- The remainder may be interface specific. */
-
-struct ifreq
- {
-#define IFHWADDRLEN 6
-#define IFNAMSIZ 16
- union
- {
- char ifrn_name[IFNAMSIZ]; /* Interface name, e.g. "en0". */
- } ifr_ifrn;
-
- union
- {
- struct sockaddr ifru_addr;
- struct sockaddr ifru_dstaddr;
- struct sockaddr ifru_broadaddr;
- struct sockaddr ifru_netmask;
- struct sockaddr ifru_hwaddr;
- short int ifru_flags;
- int ifru_ivalue;
- unsigned int ifru_mtu;
- char ifru_slave[IFNAMSIZ]; /* Just fits the size */
- __caddr_t ifru_data;
- unsigned short int ifru_site6;
- } ifr_ifru;
- };
-
-/* Old AIX 3.1 version. */
-struct oifreq
-{
- char ifr_name[IFNAMSIZ]; /* if name, e.g. "en0" */
- union
- {
- struct sockaddr ifru_addr;
- struct sockaddr ifru_dstaddr;
- struct sockaddr ifru_broadaddr;
- int ifru_flags;
- int ifru_metric;
- caddr_t ifru_data;
- unsigned int ifru_mtu;
- } ifr_ifru;
- unsigned char reserved[8];
-};
-
-
-#define ifr_name ifr_ifrn.ifrn_name /* interface name */
-#define ifr_hwaddr ifr_ifru.ifru_hwaddr /* MAC address */
-#define ifr_addr ifr_ifru.ifru_addr /* address */
-#define ifr_dstaddr ifr_ifru.ifru_dstaddr /* other end of p-p lnk */
-#define ifr_broadaddr ifr_ifru.ifru_broadaddr /* broadcast address */
-#define ifr_netmask ifr_ifru.ifru_netmask /* interface net mask */
-#define ifr_flags ifr_ifru.ifru_flags /* flags */
-#define ifr_metric ifr_ifru.ifru_ivalue /* metric */
-#define ifr_mtu ifr_ifru.ifru_mtu /* mtu */
-#define ifr_slave ifr_ifru.ifru_slave /* slave device */
-#define ifr_data ifr_ifru.ifru_data /* for use by interface */
-#define ifr_ifindex ifr_ifru.ifru_ivalue /* interface index */
-#define ifr_bandwidth ifr_ifru.ifru_ivalue /* link bandwidth */
-#define ifr_baudrate ifr_ifru.ifru_ivalue /* link bandwidth */
-#define ifr_qlen ifr_ifru.ifru_ivalue /* queue length */
-#define ifr_site6 ifr_ifru.ifru_site6 /* IPv6 site index */
-
-
-/* Structure used in SIOCGIFCONF request. Used to retrieve interface
- configuration for machine (useful for programs which must know all
- networks accessible). */
-
-struct ifconf
- {
- int ifc_len; /* Size of buffer. */
- union
- {
- __caddr_t ifcu_buf;
- struct ifreq *ifcu_req;
- } ifc_ifcu;
- };
-#define ifc_buf ifc_ifcu.ifcu_buf /* Buffer address. */
-#define ifc_req ifc_ifcu.ifcu_req /* Array of structures. */
-
-__BEGIN_DECLS
-
-/* Convert an interface name to an index, and vice versa. */
-
-extern unsigned int if_nametoindex (__const char *__ifname) __THROW;
-extern char *if_indextoname (unsigned int __ifindex, char *__ifname) __THROW;
-
-/* Return a list of all interfaces and their indices. */
-
-struct if_nameindex
- {
- unsigned int if_index; /* 1, 2, ... */
- char *if_name; /* null terminated name: "eth0", ... */
- };
-
-extern struct if_nameindex *if_nameindex (void) __THROW;
-
-/* Free the data returned from if_nameindex. */
-
-extern void if_freenameindex (struct if_nameindex *__ptr) __THROW;
-
-__END_DECLS
-
-#endif /* net/if.h */
diff --git a/sysdeps/unix/sysv/aix/open.c b/sysdeps/unix/sysv/aix/open.c
deleted file mode 100644
index 2b42f8e81b..0000000000
--- a/sysdeps/unix/sysv/aix/open.c
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <fcntl.h>
-#include <stdarg.h>
-#include <unistd.h>
-
-int
-__open (const char *file, int oflag, ...)
-{
- int mode = 0;
-
- if (oflag & O_CREAT)
- {
- va_list arg;
- va_start (arg, oflag);
- mode = va_arg (arg, int);
- va_end (arg);
- }
-
- return open (file, oflag, mode);
-}
-libc_hidden_def (__open)
-strong_alias (__open, __libc_open)
-libc_hidden_def (__libc_open)
diff --git a/sysdeps/unix/sysv/aix/pipe.c b/sysdeps/unix/sysv/aix/pipe.c
deleted file mode 100644
index 4a3ba1c041..0000000000
--- a/sysdeps/unix/sysv/aix/pipe.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__pipe (pipedes)
- int pipedes[2];
-{
- return pipe (pipedes);
-}
-libc_hidden_def (__pipe)
diff --git a/sysdeps/unix/sysv/aix/poll.c b/sysdeps/unix/sysv/aix/poll.c
deleted file mode 100644
index 5ce5409914..0000000000
--- a/sysdeps/unix/sysv/aix/poll.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/poll.h>
-
-int
-__poll (fds, nfds, timeout)
- struct pollfd *fds;
- nfds_t nfds;
- int timeout;
-{
- return poll (fds, nfds, timeout);
-}
-libc_hidden_def (__poll)
diff --git a/sysdeps/unix/sysv/aix/posix_madvise.c b/sysdeps/unix/sysv/aix/posix_madvise.c
deleted file mode 100644
index 7ab4bed8e0..0000000000
--- a/sysdeps/unix/sysv/aix/posix_madvise.c
+++ /dev/null
@@ -1,8 +0,0 @@
-#include <errno.h>
-#include <sys/mman.h>
-
-int
-posix_madvise (void *addr, size_t len, int advise)
-{
- return madvise (addr, len, advise) ? errno : 0;
-}
diff --git a/sysdeps/unix/sysv/aix/powerpc/memset.c b/sysdeps/unix/sysv/aix/powerpc/memset.c
deleted file mode 100644
index 6955ef5e91..0000000000
--- a/sysdeps/unix/sysv/aix/powerpc/memset.c
+++ /dev/null
@@ -1,21 +0,0 @@
-/* Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-
-/* Until the cache line issues are resolved use the generic implementation. */
-#include <sysdeps/generic/memset.c>
diff --git a/sysdeps/unix/sysv/aix/powerpc/register-dump.h b/sysdeps/unix/sysv/aix/powerpc/register-dump.h
deleted file mode 100644
index f0d8b99837..0000000000
--- a/sysdeps/unix/sysv/aix/powerpc/register-dump.h
+++ /dev/null
@@ -1,281 +0,0 @@
-/* Dump registers.
- Copyright (C) 1998 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/uio.h>
-#include <stdio-common/_itoa.h>
-#include <sys/ucontext.h>
-
-/* We will print the register dump in this format:
-
-Register dump:
-fp0-3: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
-fp4-7: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
-fp8-11: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
-fp12-15: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
-fp16-19: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
-fp20-23: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
-fp24-27: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
-fp28-31: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
-
-r00-07 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
-r08-15 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
-r16-23 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
-r24-31 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
-
- trap 00000000 iar 00000000 msr 00000000 cr 00000000
- lr 00000000 ctr 00000000 xer 00000000 mq 00000000
- tid 00000000 fpscr 00000000
-
-*/
-
-
-static void
-hexvalue (unsigned long int value, char *buf, size_t len)
-{
- char *cp = _itoa_word (value, buf + len, 16, 0);
- while (cp > buf)
- *--cp = '0';
-}
-
-
-static void
-register_dump (int fd, struct sigcontext *ctx)
-{
- char regs[108][8];
- struct iovec iov[38];
- struct __mstsafe *reg_state;
- int i;
- int ii;
- size_t nr = 0;
-
-#define ADD_STRING(str) \
- iov[nr].iov_base = (char *) str; \
- iov[nr].iov_len = strlen (str); \
- ++nr
-#define ADD_MEM(str, len) \
- iov[nr].iov_base = str; \
- iov[nr].iov_len = len; \
- ++nr
-
- reg_state = (struct __mstsafe *)&ctx->sc_jmpbuf.__jmp_context;
-
- hexvalue (reg_state->__excp_type, regs[0], 8);
- hexvalue (reg_state->__iar, regs[1], 8);
- hexvalue (reg_state->__msr, regs[2], 8);
- hexvalue (reg_state->__cr, regs[3], 8);
- hexvalue (reg_state->__lr, regs[4], 8);
- hexvalue (reg_state->__ctr, regs[5], 8);
- hexvalue (reg_state->__xer, regs[6], 8);
- hexvalue (reg_state->__mq, regs[7], 8);
- hexvalue (reg_state->__tid, regs[8], 8);
- hexvalue (reg_state->__fpscr, regs[9], 8);
-
- ii=10;
- for (i = 0; i <= 96; i++,ii++)
- hexvalue (reg_state->__gpr[i], regs[ii], 8);
-
- /* Generate the output. */
- ADD_STRING ("Register dump:\n\nfp0-3: ");
- ADD_MEM (regs[42], 8);
- ADD_MEM (regs[43], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[44], 8);
- ADD_MEM (regs[45], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[46], 8);
- ADD_MEM (regs[47], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[48], 8);
- ADD_MEM (regs[49], 8);
- ADD_STRING ("\nfp4-7: ");
- ADD_MEM (regs[50], 8);
- ADD_MEM (regs[51], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[52], 8);
- ADD_MEM (regs[53], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[54], 8);
- ADD_MEM (regs[55], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[56], 8);
- ADD_MEM (regs[57], 8);
- ADD_STRING ("\nfp8-11: ");
- ADD_MEM (regs[58], 8);
- ADD_MEM (regs[59], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[60], 8);
- ADD_MEM (regs[61], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[62], 8);
- ADD_MEM (regs[63], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[64], 8);
- ADD_MEM (regs[65], 8);
- ADD_STRING ("\nfp12-15: ");
- ADD_MEM (regs[66], 8);
- ADD_MEM (regs[67], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[68], 8);
- ADD_MEM (regs[69], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[70], 8);
- ADD_MEM (regs[71], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[72], 8);
- ADD_MEM (regs[73], 8);
- ADD_STRING ("\nfp16-19: ");
- ADD_MEM (regs[74], 8);
- ADD_MEM (regs[75], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[76], 8);
- ADD_MEM (regs[78], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[79], 8);
- ADD_MEM (regs[80], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[81], 8);
- ADD_MEM (regs[82], 8);
- ADD_STRING ("\nfp20-23: ");
- ADD_MEM (regs[83], 8);
- ADD_MEM (regs[84], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[85], 8);
- ADD_MEM (regs[86], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[87], 8);
- ADD_MEM (regs[88], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[89], 8);
- ADD_MEM (regs[90], 8);
- ADD_STRING ("\nfp24-27: ");
- ADD_MEM (regs[91], 8);
- ADD_MEM (regs[92], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[93], 8);
- ADD_MEM (regs[94], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[95], 8);
- ADD_MEM (regs[96], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[97], 8);
- ADD_MEM (regs[98], 8);
- ADD_STRING ("\nfp28-31: ");
- ADD_MEM (regs[99], 8);
- ADD_MEM (regs[100], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[101], 8);
- ADD_MEM (regs[102], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[103], 8);
- ADD_MEM (regs[104], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[105], 8);
- ADD_MEM (regs[106], 8);
- ADD_STRING ("\n\nr00-07 ");
- ADD_MEM (regs[10], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[11], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[12], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[13], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[14], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[15], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[16], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[17], 8);
- ADD_STRING ("\nr08-15 ");
- ADD_MEM (regs[18], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[19], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[20], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[21], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[22], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[23], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[24], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[25], 8);
- ADD_STRING ("\nr16-23 ");
- ADD_MEM (regs[26], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[27], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[28], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[29], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[30], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[31], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[32], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[33], 8);
- ADD_STRING ("\nr24-31 ");
- ADD_MEM (regs[34], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[35], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[36], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[37], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[38], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[39], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[40], 8);
- ADD_STRING (" ");
- ADD_MEM (regs[41], 8);
- ADD_STRING ("\n\n trap ");
- ADD_MEM (regs[0], 8);
- ADD_STRING (" iar ");
- ADD_MEM (regs[1], 8);
- ADD_STRING (" msr ");
- ADD_MEM (regs[2], 8);
- ADD_STRING (" cr ");
- ADD_MEM (regs[3], 8);
- ADD_STRING ("\n lr ");
- ADD_MEM (regs[4], 8);
- ADD_STRING (" ctr ");
- ADD_MEM (regs[5], 8);
- ADD_STRING (" xer ");
- ADD_MEM (regs[6], 8);
- ADD_STRING (" mq ");
- ADD_MEM (regs[7], 8);
- ADD_STRING ("\n tid ");
- ADD_MEM (regs[8], 8);
- ADD_STRING (" fpscr ");
- ADD_MEM (regs[9], 8);
- ADD_STRING ("\n");
-
- /* Write the stuff out. */
- writev (fd, iov, nr);
-}
-
-#define REGISTER_DUMP register_dump (fd, ctx)
-
diff --git a/sysdeps/unix/sysv/aix/powerpc/s_lrint.c b/sysdeps/unix/sysv/aix/powerpc/s_lrint.c
deleted file mode 100644
index 1a8b590d23..0000000000
--- a/sysdeps/unix/sysv/aix/powerpc/s_lrint.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Round floating-point to integer. AIX/PowerPC version.
- Copyright (C) 1997, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdeps/powerpc/fpu/s_lrint.c>
-
-/* This code will also work for a 'float' argument. */
-asm ("\
- .globl .__lrintf
- .globl .lrintf
- .weak .lrintf
- .set .__lrintf,.__lrint
- .set .lrintf,.__lrint
-");
diff --git a/sysdeps/unix/sysv/aix/pread.c b/sysdeps/unix/sysv/aix/pread.c
deleted file mode 100644
index 8d8bfd741e..0000000000
--- a/sysdeps/unix/sysv/aix/pread.c
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-extern int kpread (int fd, void *buf, size_t len, long long int off);
-
-ssize_t
-__pread (int fd, void *buf, size_t len, off_t off)
-{
- return kpread (fd, buf, len, off);
-}
-weak_alias (__pread, pread)
diff --git a/sysdeps/unix/sysv/aix/pread64.c b/sysdeps/unix/sysv/aix/pread64.c
deleted file mode 100644
index 0d4df22634..0000000000
--- a/sysdeps/unix/sysv/aix/pread64.c
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-extern int kpread (int fd, void *buf, size_t len, long long int off);
-
-ssize_t
-__pread64 (int fd, void *buf, size_t len, off64_t off)
-{
- return kpread (fd, buf, len, off);
-}
-weak_alias (__pread64, pread64)
diff --git a/sysdeps/unix/sysv/aix/profil-counter.h b/sysdeps/unix/sysv/aix/profil-counter.h
deleted file mode 100644
index 2492a63ba3..0000000000
--- a/sysdeps/unix/sysv/aix/profil-counter.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Machine-dependent SIGPROF signal handler. AIX version.
- Copyright (C) 1996, 1997, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* In many Unix systems signal handlers are called like this
- and the interrupted PC is easily findable in the `struct sigcontext'. */
-
-static void
-profil_counter (int signr, int code, struct sigcontext *scp)
-{
- profil_count ((void *) scp->sc_jmpbuf.__jmp_context.__gpr[0]);
-}
diff --git a/sysdeps/unix/sysv/aix/read.c b/sysdeps/unix/sysv/aix/read.c
deleted file mode 100644
index ca0edb30d5..0000000000
--- a/sysdeps/unix/sysv/aix/read.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-extern int kread (int fd, void *buf, size_t len);
-
-ssize_t
-__libc_read (int fd, void *buf, size_t len)
-{
- return kread (fd, buf, len);
-}
-libc_hidden_def (__libc_read)
-strong_alias (__libc_read, __read)
-libc_hidden_def (__read)
-strong_alias (__libc_read, read)
diff --git a/sysdeps/unix/sysv/aix/readlink.c b/sysdeps/unix/sysv/aix/readlink.c
deleted file mode 100644
index 2770358b98..0000000000
--- a/sysdeps/unix/sysv/aix/readlink.c
+++ /dev/null
@@ -1,8 +0,0 @@
-/* This is a system call. We only have to provide the wrapper. */
-#include <unistd.h>
-
-int
-__readlink (const char *path, char *buf, size_t len)
-{
- return readlink (path, buf, len);
-}
diff --git a/sysdeps/unix/sysv/aix/readv.c b/sysdeps/unix/sysv/aix/readv.c
deleted file mode 100644
index eddca0fc87..0000000000
--- a/sysdeps/unix/sysv/aix/readv.c
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Copyright (C) 1991, 1995-1998, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/uio.h>
-
-extern ssize_t kreadv (int fd, const struct iovec *iovp, size_t iovcnt,
- long int ext);
-
-/* Read data from file descriptor FD, and put the result in the
- buffers described by VECTOR, which is a vector of COUNT `struct iovec's.
- The buffers are filled in the order specified.
- Operates just like `read' (see <unistd.h>) except that data are
- put in VECTOR instead of a contiguous buffer. */
-ssize_t
-__libc_readv (fd, vector, count)
- int fd;
- const struct iovec *vector;
- int count;
-{
- return kreadv (fd, vector, count, 0);
-}
-strong_alias (__libc_readv, __readv)
-weak_alias (__libc_readv, readv)
diff --git a/sysdeps/unix/sysv/aix/recv.c b/sysdeps/unix/sysv/aix/recv.c
deleted file mode 100644
index b8ae73e200..0000000000
--- a/sysdeps/unix/sysv/aix/recv.c
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright (C) 2000, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/socket.h>
-
-extern ssize_t recv (int fd, void *buf, size_t n, int flags);
-
-
-ssize_t
-__recv (int fd, void *buf, size_t n, int flags)
-{
- return recv (fd, buf, n, flags);
-}
diff --git a/sysdeps/unix/sysv/aix/recvfrom.c b/sysdeps/unix/sysv/aix/recvfrom.c
deleted file mode 100644
index 08ff1113f4..0000000000
--- a/sysdeps/unix/sysv/aix/recvfrom.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/socket.h>
-
-extern ssize_t nrecvfrom (int s, void *uap_buf, size_t len, int flags,
- void *uap_from, socklen_t *uap_fromlenaddr);
-
-ssize_t
-__recvfrom (int fd, void *buf, size_t n, int flags, __SOCKADDR_ARG addr,
- socklen_t *addr_len)
-{
- return nrecvfrom (fd, buf, n, flags, addr.__sockaddr__, addr_len);
-}
-
-weak_alias (__recvfrom, recvfrom)
diff --git a/sysdeps/unix/sysv/aix/recvmsg.c b/sysdeps/unix/sysv/aix/recvmsg.c
deleted file mode 100644
index 201c26741c..0000000000
--- a/sysdeps/unix/sysv/aix/recvmsg.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/socket.h>
-
-extern ssize_t nrecvmsg (int s, struct msghdr *uap_msg, int flags);
-
-ssize_t
-__recvmsg (int fd, struct msghdr *message, int flags)
-{
- return nrecvmsg (fd, message, flags);
-}
-
-weak_alias (__recvmsg, recvmsg)
diff --git a/sysdeps/unix/sysv/aix/rename.c b/sysdeps/unix/sysv/aix/rename.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/rename.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/revoke.c b/sysdeps/unix/sysv/aix/revoke.c
deleted file mode 100644
index 8f6a4848d5..0000000000
--- a/sysdeps/unix/sysv/aix/revoke.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Revoke the access of all descriptors currently open on a file. AIX version.
- Copyright (C) 1995, 1996, 1997, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <fcntl.h>
-#include <unistd.h>
-#include <errno.h>
-
-extern int frevoke (int fdes);
-
-int
-revoke (file)
- const char *file;
-{
- int fd;
- int res;
-
- fd = open (file, O_RDONLY);
- if (fd < 0)
- return -1;
-
- res = frevoke (fd);
- (void) close (fd);
-
- return res;
-}
diff --git a/sysdeps/unix/sysv/aix/rmdir.c b/sysdeps/unix/sysv/aix/rmdir.c
deleted file mode 100644
index 91c600694b..0000000000
--- a/sysdeps/unix/sysv/aix/rmdir.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__rmdir (const char *name)
-{
- return rmdir (name);
-}
diff --git a/sysdeps/unix/sysv/aix/sbrk.c b/sysdeps/unix/sysv/aix/sbrk.c
deleted file mode 100644
index 0a590ee8c6..0000000000
--- a/sysdeps/unix/sysv/aix/sbrk.c
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-void *
-__sbrk (intptr_t delta)
-{
- return sbrk (delta);
-}
-libc_hidden_def (__sbrk)
diff --git a/sysdeps/unix/sysv/aix/sched_yield.c b/sysdeps/unix/sysv/aix/sched_yield.c
deleted file mode 100644
index b5fbc07535..0000000000
--- a/sysdeps/unix/sysv/aix/sched_yield.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright (C) 1996, 1997, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sched.h>
-
-extern void yield (void);
-
-
-/* Yield the processor. */
-int
-__sched_yield (void)
-{
- yield ();
- return 0;
-}
-strong_alias (__sched_yield, sched_yield)
diff --git a/sysdeps/unix/sysv/aix/select.c b/sysdeps/unix/sysv/aix/select.c
deleted file mode 100644
index 9bf5bae47c..0000000000
--- a/sysdeps/unix/sysv/aix/select.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/time.h>
-
-int
-__select (nfds, readfds, writefds, exceptfds, timeout)
- int nfds;
- fd_set *readfds;
- fd_set *writefds;
- fd_set *exceptfds;
- struct timeval *timeout;
-{
- return select (nfds, readfds, writefds, exceptfds, timeout);
-}
-libc_hidden_def (__select)
diff --git a/sysdeps/unix/sysv/aix/semctl.c b/sysdeps/unix/sysv/aix/semctl.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/semctl.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/semget.c b/sysdeps/unix/sysv/aix/semget.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/semget.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/semop.c b/sysdeps/unix/sysv/aix/semop.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/semop.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/sendmsg.c b/sysdeps/unix/sysv/aix/sendmsg.c
deleted file mode 100644
index 5b1baf63a5..0000000000
--- a/sysdeps/unix/sysv/aix/sendmsg.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/socket.h>
-
-extern int nsendmsg (int s, const void *uap_msg, int flags);
-
-ssize_t
-__sendmsg (int fd, const struct msghdr *message, int flags)
-{
- return nsendmsg (fd, message, flags);
-}
-
-weak_alias (__sendmsg, sendmsg)
-
diff --git a/sysdeps/unix/sysv/aix/sendto.c b/sysdeps/unix/sysv/aix/sendto.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/sendto.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/setegid.c b/sysdeps/unix/sysv/aix/setegid.c
deleted file mode 100644
index 75123cedfd..0000000000
--- a/sysdeps/unix/sysv/aix/setegid.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Copyright (C) 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-#define ID_EFFECTIVE 0x01
-
-
-extern int setgidx (int mask, gid_t gid);
-
-int
-__setegid (gid_t gid)
-{
- return setgidx (ID_EFFECTIVE, gid);
-}
-strong_alias (__setegid, setegid)
-libc_hidden_def (setegid)
diff --git a/sysdeps/unix/sysv/aix/seteuid.c b/sysdeps/unix/sysv/aix/seteuid.c
deleted file mode 100644
index 6ea7e7ba03..0000000000
--- a/sysdeps/unix/sysv/aix/seteuid.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Copyright (C) 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-#define ID_EFFECTIVE 0x01
-
-
-extern int setuidx (int mask, uid_t uid);
-
-int
-__seteuid (uid_t uid)
-{
- return setuidx (ID_EFFECTIVE, uid);
-}
-strong_alias (__seteuid, seteuid)
-libc_hidden_def (seteuid)
diff --git a/sysdeps/unix/sysv/aix/setgid.c b/sysdeps/unix/sysv/aix/setgid.c
deleted file mode 100644
index 5b8038110b..0000000000
--- a/sysdeps/unix/sysv/aix/setgid.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright (C) 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-#define ID_REAL 0x02
-
-
-extern int setgidx (int mask, gid_t gid);
-
-int
-__setgid (gid_t gid)
-{
- return setgidx (ID_REAL, gid);
-}
-strong_alias (__setgid, setgid)
diff --git a/sysdeps/unix/sysv/aix/setgroups.c b/sysdeps/unix/sysv/aix/setgroups.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/setgroups.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/setitimer.c b/sysdeps/unix/sysv/aix/setitimer.c
deleted file mode 100644
index d7e741abe7..0000000000
--- a/sysdeps/unix/sysv/aix/setitimer.c
+++ /dev/null
@@ -1,68 +0,0 @@
-/* Copyright (C) 1991, 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <stddef.h>
-#include <errno.h>
-#include <sys/time.h>
-#include <unistd.h>
-#include <signal.h>
-
-extern int __libc_nanosleep (const struct timespec *requested_time,
- struct timespec *remaining);
-int
-__setitimer (which, new, old)
- enum __itimer_which which;
- const struct itimerval *new;
- struct itimerval *old;
-{
- if (new == NULL)
- {
- __set_errno (EINVAL);
- return -1;
- }
-
- switch (which)
- {
- default:
- __set_errno (EINVAL);
- return -1;
-
- case ITIMER_VIRTUAL:
- case ITIMER_PROF:
- __set_errno (ENOSYS);
- return -1;
-
- case ITIMER_REAL:
- break;
- }
-
- switch (__fork())
- {
- case -1: exit(-1);
- case 0:
- {
- struct timespec ts ={.tv_sec = (long int)new->it_value.tv_sec, .tv_nsec = 0};
- __libc_nanosleep(&ts,&ts);
- __kill(getppid(), SIGALRM);
- exit(0);
- }
- default:
- }
- return 0;
-}
-weak_alias (__setitimer, setitimer)
diff --git a/sysdeps/unix/sysv/aix/setpgid.c b/sysdeps/unix/sysv/aix/setpgid.c
deleted file mode 100644
index b076f28ed6..0000000000
--- a/sysdeps/unix/sysv/aix/setpgid.c
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__setpgid (pid, pgid)
- int pid;
- int pgid;
-{
- return setpgid (pid, pgid);
-}
-libc_hidden_def (__setpgid)
diff --git a/sysdeps/unix/sysv/aix/setpgrp.c b/sysdeps/unix/sysv/aix/setpgrp.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/setpgrp.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/setpriority.c b/sysdeps/unix/sysv/aix/setpriority.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/setpriority.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/setregid.c b/sysdeps/unix/sysv/aix/setregid.c
deleted file mode 100644
index 35812300b9..0000000000
--- a/sysdeps/unix/sysv/aix/setregid.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Copyright (C) 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-#define ID_EFFECTIVE 0x01
-#define ID_REAL 0x02
-
-
-extern int setgidx (int mask, gid_t gid);
-
-int
-__setregid (gid_t rgid, gid_t egid)
-{
- int res;
-
- if (rgid == egid)
- return setgidx (ID_EFFECTIVE | ID_REAL, egid);
-
- res = setgidx (ID_REAL, rgid);
- if (res == 0)
- res = setgidx (ID_EFFECTIVE, egid);
-
- return res;
-}
-strong_alias (__setregid, setregid)
diff --git a/sysdeps/unix/sysv/aix/setreuid.c b/sysdeps/unix/sysv/aix/setreuid.c
deleted file mode 100644
index 430d2fedc7..0000000000
--- a/sysdeps/unix/sysv/aix/setreuid.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Copyright (C) 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-#define ID_EFFECTIVE 0x01
-#define ID_REAL 0x02
-
-
-extern int setuidx (int mask, uid_t uid);
-
-int
-__setreuid (uid_t ruid, uid_t euid)
-{
- int res;
-
- if (ruid == euid)
- return setuidx (ID_EFFECTIVE | ID_REAL, euid);
-
- res = setuidx (ID_REAL, ruid);
- if (res == 0)
- res = setuidx (ID_EFFECTIVE, euid);
-
- return res;
-}
-strong_alias (__setreuid, setreuid)
diff --git a/sysdeps/unix/sysv/aix/setrlimit.c b/sysdeps/unix/sysv/aix/setrlimit.c
deleted file mode 100644
index 818819d8ec..0000000000
--- a/sysdeps/unix/sysv/aix/setrlimit.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/resource.h>
-
-int
-__setrlimit (enum __rlimit_resource resource, const struct rlimit *rlimits)
-{
- return setrlimit (resource, rlimits);
-}
diff --git a/sysdeps/unix/sysv/aix/setrlimit64.c b/sysdeps/unix/sysv/aix/setrlimit64.c
deleted file mode 100644
index f305c6f82f..0000000000
--- a/sysdeps/unix/sysv/aix/setrlimit64.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/resource.h>
-
-int
-__setrlimit64 (enum __rlimit_resource resource, const struct rlimit64 *rlimits)
-{
- return setrlimit64 (resource, rlimits);
-}
diff --git a/sysdeps/unix/sysv/aix/setsid.c b/sysdeps/unix/sysv/aix/setsid.c
deleted file mode 100644
index c017c122bf..0000000000
--- a/sysdeps/unix/sysv/aix/setsid.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__setsid ()
-{
- return setsid ();
-}
diff --git a/sysdeps/unix/sysv/aix/setsockopt.c b/sysdeps/unix/sysv/aix/setsockopt.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/setsockopt.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/setuid.c b/sysdeps/unix/sysv/aix/setuid.c
deleted file mode 100644
index 1772fc797a..0000000000
--- a/sysdeps/unix/sysv/aix/setuid.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright (C) 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-#define ID_REAL 0x02
-
-
-extern int setuidx (int mask, uid_t uid);
-
-int
-__setuid (uid_t uid)
-{
- return setuidx (ID_REAL, uid);
-}
-strong_alias (__setuid, setuid)
diff --git a/sysdeps/unix/sysv/aix/shmat.c b/sysdeps/unix/sysv/aix/shmat.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/shmat.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/shmctl.c b/sysdeps/unix/sysv/aix/shmctl.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/shmctl.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/shmdt.c b/sysdeps/unix/sysv/aix/shmdt.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/shmdt.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/shmget.c b/sysdeps/unix/sysv/aix/shmget.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/shmget.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/sigaction.c b/sysdeps/unix/sysv/aix/sigaction.c
deleted file mode 100644
index 6b48a505c0..0000000000
--- a/sysdeps/unix/sysv/aix/sigaction.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright (C) 1991,1995,1996,1997,2000,2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <signal.h>
-
-extern int _sigaction (int sig, const struct sigaction *act,
- struct sigaction *oact);
-
-/* If ACT is not NULL, change the action for SIG to *ACT.
- If OACT is not NULL, put the old action for SIG in *OACT. */
-int
-__sigaction (sig, act, oact)
- int sig;
- const struct sigaction *act;
- struct sigaction *oact;
-{
- return _sigaction (sig, act, oact);
-}
-libc_hidden_def (__sigaction)
-strong_alias (__sigaction, sigaction)
diff --git a/sysdeps/unix/sysv/aix/sigaltstack.c b/sysdeps/unix/sysv/aix/sigaltstack.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/sigaltstack.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/sigpending.c b/sysdeps/unix/sysv/aix/sigpending.c
deleted file mode 100644
index 729b75a3be..0000000000
--- a/sysdeps/unix/sysv/aix/sigpending.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright (C) 1991, 1995, 1996, 1997, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <signal.h>
-
-extern int _sigpending (sigset_t *set);
-
-
-/* Store in SET all signals that are blocked and pending. */
-int
-sigpending (set)
- sigset_t *set;
-{
- return _sigpending (set);
-}
diff --git a/sysdeps/unix/sysv/aix/sigprocmask.c b/sysdeps/unix/sysv/aix/sigprocmask.c
deleted file mode 100644
index 1046903b9c..0000000000
--- a/sysdeps/unix/sysv/aix/sigprocmask.c
+++ /dev/null
@@ -1,8 +0,0 @@
-/* This is a system call. We only have to provide the wrapper. */
-#include <signal.h>
-
-int
-__sigprocmask (int how, const sigset_t *set, sigset_t *oset)
-{
- return sigprocmask (how, set, oset);
-}
diff --git a/sysdeps/unix/sysv/aix/sigset-cvt-mask.h b/sysdeps/unix/sysv/aix/sigset-cvt-mask.h
deleted file mode 100644
index cc05fb70fa..0000000000
--- a/sysdeps/unix/sysv/aix/sigset-cvt-mask.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Convert between lowlevel sigmask and libc representation of sigset_t.
- AIX version.
- Copyright (C) 1998,2000,02 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-static inline int __attribute__ ((unused))
-sigset_set_old_mask (sigset_t *set, int mask)
-{
- set->__losigs = (unsigned int) mask;
- set->__hisigs = 0;
- return 0;
-}
-
-static inline int __attribute__ ((unused))
-sigset_get_old_mask (const sigset_t *set)
-{
- return (unsigned int) set->__losigs;
-}
diff --git a/sysdeps/unix/sysv/aix/sigstack.c b/sysdeps/unix/sysv/aix/sigstack.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/sigstack.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/sigsuspend.c b/sysdeps/unix/sysv/aix/sigsuspend.c
deleted file mode 100644
index c9120d6e97..0000000000
--- a/sysdeps/unix/sysv/aix/sigsuspend.c
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright (C) 1991, 1995-1998, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <signal.h>
-
-extern int _sigsuspend (const sigset_t *sigmask);
-
-
-/* Change the set of blocked signals to SET,
- wait until a signal arrives, and restore the set of blocked signals. */
-int
-__sigsuspend (set)
- const sigset_t *set;
-{
- return _sigsuspend (set);
-}
-libc_hidden_def (__sigsuspend)
-weak_alias (__sigsuspend, sigsuspend)
diff --git a/sysdeps/unix/sysv/aix/sleep.c b/sysdeps/unix/sysv/aix/sleep.c
deleted file mode 100644
index aa8d76d3d2..0000000000
--- a/sysdeps/unix/sysv/aix/sleep.c
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Copyright (C) 1991, 1992, 1995, 1996, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <time.h>
-#include <unistd.h>
-#include <errno.h>
-
-extern int __libc_nanosleep (const struct timespec *requested_time,
- struct timespec *remaining);
-
-unsigned int
-__sleep (seconds)
- unsigned int seconds;
-{
- struct timespec ts ={.tv_sec = (long int)seconds, .tv_nsec = 0};
- __libc_nanosleep(&ts,&ts);
- return 0;
-}
-weak_alias (__sleep, sleep)
diff --git a/sysdeps/unix/sysv/aix/socket.c b/sysdeps/unix/sysv/aix/socket.c
deleted file mode 100644
index 236b1b1686..0000000000
--- a/sysdeps/unix/sysv/aix/socket.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/socket.h>
-
-int
-__socket (int domain, int type, int protocol)
-{
- return socket (domain, type, protocol);
-}
diff --git a/sysdeps/unix/sysv/aix/socketpair.c b/sysdeps/unix/sysv/aix/socketpair.c
deleted file mode 100644
index 8adeac97ff..0000000000
--- a/sysdeps/unix/sysv/aix/socketpair.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/socket.h>
-
-int
-__socketpair (int domain, int type, int protocol, int fds[2])
-{
- return socketpair (domain, type, protocol, fds);
-}
diff --git a/sysdeps/unix/sysv/aix/speed.c b/sysdeps/unix/sysv/aix/speed.c
deleted file mode 100644
index 3a453a7bef..0000000000
--- a/sysdeps/unix/sysv/aix/speed.c
+++ /dev/null
@@ -1,75 +0,0 @@
-/* `struct termios' speed frobnication functions. AIX version.
- Copyright (C) 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <stddef.h>
-#include <errno.h>
-#include <termios.h>
-
-/* Return the output baud rate stored in *TERMIOS_P. */
-speed_t
-cfgetospeed (termios_p)
- const struct termios *termios_p;
-{
- return termios_p->c_cflag & 0x0000000f;
-}
-
-/* Return the input baud rate stored in *TERMIOS_P. */
-speed_t
-cfgetispeed (termios_p)
- const struct termios *termios_p;
-{
- return (termios_p->c_cflag & 0x000f0000) >> 16;
-}
-
-/* Set the output baud rate stored in *TERMIOS_P to SPEED. */
-int
-cfsetospeed (termios_p, speed)
- struct termios *termios_p;
- speed_t speed;
-{
- if (termios_p == NULL)
- {
- __set_errno (EINVAL);
- return -1;
- }
-
- termios_p->c_cflag &= ~0x0000000f;
- termios_p->c_cflag |= speed & 0x0000000f;
- return 0;
-}
-libc_hidden_def (cfsetospeed)
-
-
-/* Set the input baud rate stored in *TERMIOS_P to SPEED. */
-int
-cfsetispeed (termios_p, speed)
- struct termios *termios_p;
- speed_t speed;
-{
- if (termios_p == NULL)
- {
- __set_errno (EINVAL);
- return -1;
- }
-
- termios_p->c_cflag &= ~0x000f0000;
- termios_p->c_cflag |= (speed << 16) & ~0x000f0000;
- return 0;
-}
-libc_hidden_def (cfsetispeed)
diff --git a/sysdeps/unix/sysv/aix/start-libc.c b/sysdeps/unix/sysv/aix/start-libc.c
deleted file mode 100644
index 0cbe79d0b1..0000000000
--- a/sysdeps/unix/sysv/aix/start-libc.c
+++ /dev/null
@@ -1,265 +0,0 @@
-/* Initialization code run first thing by the XCOFF startup code. AIX version.
- Copyright (C) 2001, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <stdlib.h>
-#include <unistd.h>
-#include <sys/types.h>
-
-/* hack to use uchar's */
-typedef unsigned char uchar;
-#include <xcoff.h>
-#include <rtinit.h>
-#include <dlldr.h>
-#include <bits/libc-lock.h>
-
-extern void __libc_init_first (int argc, char **argv, char **envp);
-
-/* XXX disable for now
-extern int __libc_multiple_libcs; */
-
-/* XXX normally defined in generic/dl-sydep.c, hack it into existance
-extern void *__libc_stack_end; */
-void *__libc_stack_end;
-
-struct __libc_start_data_rec
-{
- void *stack;
- void *toc;
- int argc;
- char **argv;
- char **envp;
- char *data;
- char *text;
- unsigned int mcount;
- unsigned int special;
- int (*main) (int, char **, char **);
- void (*init) (void);
- void (*fini) (void);
- void (*rtld_fini) (void);
-};
-
-extern struct __libc_start_data_rec __libc_start_data;
-extern int errno;
-
-/* The first piece of initialized data. */
-int __data_start = 0;
-
-#ifndef HAVE_ELF
-/* Since gcc/crtstuff.c won't define it unless the ELF format is used
- we will need to define it here. */
-void *__dso_handle = NULL;
-#endif
-
-/* AIX kernel function */
-extern int __loadx (int flag, void *module, void *arg1, void *arg2,
- void *arg3);
-/* Needed by setenv */
-char **__environ;
-
-/*
- Find __rtinit symbol
-
- __RTINIT *find_rtinit()
-
- __RTINIT *rti - pointer to __rtinit data structure
- */
-
-static __RTINIT *
-find_rtinit (void)
-{
- struct xcoffhdr *xcoff_hdr;
- SCNHDR *sec_hdr;
- SCNHDR *ldr_sec_hdr;
- SCNHDR *data_sec_hdr;
- LDSYM *ldsym_hdr;
- __RTINIT *rtl;
-
- xcoff_hdr = (struct xcoffhdr *) __libc_start_data.text;
- sec_hdr = (SCNHDR *) ((caddr_t) &xcoff_hdr->aouthdr
- + xcoff_hdr->filehdr.f_opthdr);
- ldr_sec_hdr = (SCNHDR *) (sec_hdr + (xcoff_hdr->aouthdr.o_snloader - 1));
- ldsym_hdr = (LDSYM *) ((caddr_t)xcoff_hdr + ldr_sec_hdr->s_scnptr
- + LDHDRSZ);
-
- if ( __libc_start_data.mcount <= 0)
- {
- if (!ldr_sec_hdr->s_scnptr)
- return (__RTINIT *) 0;
-
- if (memcmp (ldsym_hdr, RTINIT_NAME, sizeof (RTINIT_NAME) - 1))
- return (__RTINIT *) 0;
- }
-
- data_sec_hdr = (SCNHDR *) (sec_hdr + (xcoff_hdr->aouthdr.o_sndata - 1));
- rtl = (__RTINIT *) (ldsym_hdr->l_value
- + (__libc_start_data.data - data_sec_hdr->s_vaddr));
- return rtl;
-}
-
-/*
- The mod_init1 calls every initialization function for a given module.
-
- void mod_init1(handler, rti)
-
- void *handler - if NULL init funtions for modules loaded at exec time
- are being executed. Otherwise, the handler points to the
- module loaded.
-
- __RTINIT *rti - pointer to __rtinit data structure (with rti->init_offset
- not equal to zero)
- */
-
-static void
-mod_init1 (void *handler,__RTINIT *rtl)
-{
- __RTINIT_DESCRIPTOR *descriptor;
-
- descriptor = (__RTINIT_DESCRIPTOR *) ((caddr_t) &rtl->rtl
- + rtl->init_offset);
- while (descriptor->f != NULL)
- {
- if (!(descriptor->flags & _RT_CALLED))
- {
- descriptor->flags |= _RT_CALLED;
- (descriptor->f) (handler, rtl, descriptor); /* execute init/fini */
- }
- descriptor = (__RTINIT_DESCRIPTOR *) ((caddr_t) descriptor
- + rtl->__rtinit_descriptor_size);
- }
-}
-
-/* The modinit() function performs run-time linking, if enabled, and calling
- the init() function for all loaded modules. */
-
-#define DL_BUFFER_SIZE 1000
-
-static int
-modinit (void)
-{
- int *handler = 0;
- __RTINIT *rtinit_info = 0;
- int flag;
- DL_INFO dl_buffer[DL_BUFFER_SIZE];
- DL_INFO *dl_info = dl_buffer;
- int i;
-
- /* Find __rtinit symbols */
- rtinit_info = find_rtinit ();
-
- flag = DL_EXECQ;
- if (rtinit_info && rtinit_info->rtl)
- flag |= DL_LOAD_RTL;
-
- /* Get a list of modules that have __rtinit */
- if (__loadx (flag, dl_info, (void *) sizeof (dl_buffer), NULL, NULL))
- exit (0x90);
-
- if (dl_info[0].dlinfo_xflags & DL_INFO_OK)
- {
- rtinit_info = find_rtinit ();
- if ((rtinit_info != NULL) & (rtinit_info->rtl != NULL))
- {
- if ((*rtinit_info->rtl) (dl_info, 0))
- exit (0x90);
- }
- }
-
- /* Initialization each module loaded that has __rtinit. */
- if (dl_info[0].dlinfo_xflags & DL_INFO_OK)
- {
- for (i = 1; i < dl_info[0].dlinfo_arraylen + 1; ++i)
- if (dl_info[i].dlinfo_flags & DL_HAS_RTINIT)
- {
- rtinit_info = find_rtini t();
- if (rtinit_info)
- mod_init1 (handler, rtinit_info);
- }
- }
-
- return 0;
-}
-
-
-void
-__libc_start_init (void)
-{
- /* Do run-time linking, if enabled and call the init()
- for all loaded modules. */
- if (__libc_start_data.mcount != __libc_start_data.special)
- modinit ();
-}
-
-/* For now these are just stubs. */
-void
-__libc_start_fini (void)
-{
-}
-
-void
-__libc_start_rtld_fini (void)
-{
-}
-
-
-int
-__libc_start_main (void)
-{
- /* Store the lowest stack address. */
- __libc_stack_end = __libc_start_data.stack;
-
- /* Used by setenv */
- __environ = __libc_start_data.envp;
-
-#ifndef SHARED
- /* Clear errno. */
- errno = 0;
-
- /* Some security at this point. Prevent starting a SUID binary where
- the standard file descriptors are not opened. We have to do this
- only for statically linked applications since otherwise the dynamic
- loader did the work already. */
- if (__builtin_expect (__libc_enable_secure, 0))
- __libc_check_standard_fds ();
-
-#endif
-
- /* Register the destructor of the dynamic linker if there is any. */
- if (__builtin_expect (__libc_start_data.rtld_fini != NULL, 1))
- __cxa_atexit ((void (*) (void *)) __libc_start_data.rtld_fini, NULL, NULL);
-
- /* Call the initializer of the libc. This is only needed here if we
- are compiling for the static library in which case we haven't
- run the constructors in `_dl_start_user'. */
-#ifndef SHARED
- __libc_init_first (__libc_start_data.argc, __libc_start_data.argv,
- __libc_start_data.envp);
-#endif
-
- /* Register the destructor of the program, if any. */
- if (__libc_start_data.fini)
- __cxa_atexit ((void (*) (void *)) __libc_start_data.fini, NULL, NULL);
-
- /* Call the initializer of the program, if any. */
- if (__libc_start_data.init)
- (*__libc_start_data.init) ();
-
- exit ((*__libc_start_data.main) (__libc_start_data.argc,
- __libc_start_data.argv,
- __libc_start_data.envp));
-}
diff --git a/sysdeps/unix/sysv/aix/start.s b/sysdeps/unix/sysv/aix/start.s
deleted file mode 100644
index 79d8ef4891..0000000000
--- a/sysdeps/unix/sysv/aix/start.s
+++ /dev/null
@@ -1,126 +0,0 @@
-/* Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- In addition to the permissions in the GNU Lesser General Public
- License, the Free Software Foundation gives you unlimited
- permission to link the compiled version of this file with other
- programs, and to distribute those programs without any restriction
- coming from the use of this file. (The GNU Lesser General Public
- License restrictions do apply in other respects; for example, they
- cover modification of the file, and distribution when not linked
- into another program.)
-
- Note that people who make modified versions of this file are not
- obligated to grant this special exception for their modified
- versions; it is their choice whether to do so. The GNU Lesser
- General Public License gives permission to release a modified
- version without this exception; this exception also makes it
- possible to release a modified version which carries forward this
- exception.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
- .file "start.s"
- .toc
-T.lsd: .tc __libc_start_data[tc], __libc_start_data[rw]
-T.main: .tc main[tc], main[rw]
-T.init: .tc __libc_start_init[tc], __libc_start_init[rw]
-T.fini: .tc __libc_start_fini[tc], __libc_start_init[rw]
-T.rtld_fini : .tc __libc_start_rtld_fini[tc], __libc_start_rtld_fini[rw]
-
- .globl __start
- .globl .__start
- .globl __libc_start_data
-
- .extern .__libc_start_main
- .extern .main
- .extern main
- .extern __libc_start_init
- .extern __libc_start_fini
- .extern __libc_start_rtld_fini
-
-/* Text */
-
- .csect __start[ds]
-__start:
- .long .__start, TOC[tc0], 0
-
- .csect .text[pr]
-.__start:
-
-/* No prologue needed, __start does not have to follow the ABI.
-
- Input from kernel/loader
- r1 : stack
- r2 : TOC
- r3 : argc
- r4 : argv
- r5 : envp
- r28 : data origin
- r29 : text origin
- r30 : module count
- r31 : default processing flag
-
- If r31 == r30, no special processing is needed, ie r28, r29 & r30
- are not used
-
- Save input in __libc_start_data */
- l 16, T.lsd(2)
- st 1, 0(16) /* stack */
- st 2, 4(16) /* toc */
- st 3, 8(16) /* argc */
- st 4, 12(16) /* argv */
- st 5, 16(16) /* envp */
- st 28, 20(16) /* data origin */
- st 29, 24(16) /* text origin */
- st 30, 28(16) /* module count */
- st 31, 32(16) /* special */
-
-/* Call __libc_start_main() */
-
- bl .__libc_start_main
- nop
-
-/* No epilog needed, __start does not have to follow the ABI */
-
-/* Trace back */
-TB.__start:
- .long 0x0
- .long 0xc2040
- .long 0x0
- .long TB.__start - .__start
- .short 7
- .byte "__start"
- .byte 0,0,0
-
-/* Data
- __libc_start_data
- Space to keep libc initialization information */
-
- .csect __libc_start_data[rw]
-__libc_start_data:
-/* For kernel/loader input args */
- .space 36
-
-/* Externs */
- .long main
-init:
- .long __libc_start_init
-fini:
- .long __libc_start_fini
-rtld_fini:
- .long __libc_start_rtld_fini
- .space 0x1000 + (4 + rtld_fini - __libc_start_data)
diff --git a/sysdeps/unix/sysv/aix/statfs.c b/sysdeps/unix/sysv/aix/statfs.c
deleted file mode 100644
index 1ead597da6..0000000000
--- a/sysdeps/unix/sysv/aix/statfs.c
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/statfs.h>
-
-extern int statfs (const char *file, struct statfs *buf);
-
-int
-__statfs (const char *file, struct statfs *buf)
-{
- return statfs (file, buf);
-}
-libc_hidden_def (__statfs)
diff --git a/sysdeps/unix/sysv/aix/symlink.c b/sysdeps/unix/sysv/aix/symlink.c
deleted file mode 100644
index cb24965952..0000000000
--- a/sysdeps/unix/sysv/aix/symlink.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__symlink (from, to)
- const char *from;
- const char *to;
-{
- return symlink (from, to);
-}
diff --git a/sysdeps/unix/sysv/aix/sync.c b/sysdeps/unix/sysv/aix/sync.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/sync.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/sys/param.h b/sysdeps/unix/sysv/aix/sys/param.h
deleted file mode 100644
index 7448f1a6eb..0000000000
--- a/sysdeps/unix/sysv/aix/sys/param.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Copyright (C) 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_PARAM_H
-#define _SYS_PARAM_H 1
-
-/* This file should contain various parameter macros appropriate for the
- machine and operating system. There is no standard set of macros; this
- file is just for compatibility with programs written for Unix that
- expect it to define things. On Unix systems that do not have their own
- sysdep version of this file, it is generated at build time by examining
- the installed headers on the system. */
-
-#include <limits.h>
-
-#define MAXSYMLINKS 1
-#define MAXPATHLEN 256
-
-/* The pagesize is 4096. */
-#define EXEC_PAGESIZE 4096
-
-/* maximum number of supplemental groups. */
-#define NGROUPS 32
-
-/* Macros for min/max. */
-#define MIN(a,b) (((a)<(b))?(a):(b))
-#define MAX(a,b) (((a)>(b))?(a):(b))
-
-
-/* Maximum length of hostname. */
-#define MAXHOSTNAMELEN 256
-
-#endif /* sys/param.h */
diff --git a/sysdeps/unix/sysv/aix/sys/ucontext.h b/sysdeps/unix/sysv/aix/sys/ucontext.h
deleted file mode 100644
index ddb3f010c9..0000000000
--- a/sysdeps/unix/sysv/aix/sys/ucontext.h
+++ /dev/null
@@ -1,113 +0,0 @@
-/* Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_UCONTEXT_H
-#define _SYS_UCONTEXT_H 1
-
-#include <features.h>
-#include <bits/types.h>
-#include <bits/sigset.h>
-
-
-/* Alternate, preferred interface. */
-typedef struct sigaltstack
- {
- void *ss_sp;
- size_t ss_size;
- int ss_flags;
- int __pad[4];
- } stack_t;
-
-
-/* Forward declaration of AIX type. */
-typedef struct label_t label_t;
-
-
-
-typedef unsigned int kvmhandle_t;
-typedef struct
- {
- unsigned long int __alloc;
- kvmhandle_t __srval[16];
- } adspace_t;
-
-
-
-#define _NGPRS 32
-#define _NFPRS 32
-
-struct __mstsafe
-{
- struct __mstsave *__prev; /* Previous save area. */
- label_t *__kjmpbuf; /* Pointer to saved context. */
- char *__stackfix; /* Stack fix pointer. */
- char __intpri; /* Interrupt priority. */
- char __backt; /* Back-track flag. */
- char __rsvd[2]; /* Reserved. */
- __pid_t __curid; /* Copy of curid. */
-
- int __excp_type; /* Exception type for debugger. */
- unsigned long int __iar; /* Instruction address register. */
- unsigned long int __msr; /* Machine state register. */
- unsigned long int __cr; /* Condition register. */
- unsigned long int __lr; /* Link register. */
- unsigned long int __ctr; /* Count register. */
- unsigned long int __xer; /* Fixed point exception. */
- unsigned long int __mq; /* Multiply/quotient register. */
- unsigned long int __tid; /* TID register. */
- unsigned long int __fpscr; /* Floating point status reg. */
- char __fpeu; /* Floating point ever used. */
- char __fpinfo; /* Floating point status flags. */
- char __pad[2]; /* Pad to dword boundary. */
- /* 1 implies state is in mstext */
- unsigned long int __except[5]; /* exception structure. */
- char __pad1[4]; /* Old bus field. */
- unsigned long int __o_iar; /* Old iar (for longjmp excpt). */
- unsigned long int __o_toc; /* Old toc (for longjmp excpt). */
- unsigned long int __o_arg1; /* Old arg1 (for longjmp excpt). */
- unsigned long int __excbranch; /* If not NULL, address to branch
- to on exception. Used by
- assembler routines for low
- cost exception handling. */
- unsigned long int __fpscrx; /* Software extension to fpscr. */
- unsigned long int __o_vaddr; /* Saved vaddr for vmexception. */
- unsigned long int __cachealign[7]; /* Reserved. */
- adspace_t __as; /* Segment registers. */
- unsigned long int __gpr[_NGPRS]; /* General purpose registers. */
- double __fpr[_NFPRS]; /* Floating point registers. */
- };
-
-typedef struct mcontext_t
- {
- struct __mstsafe __jmp_context;
- } mcontext_t;
-
-
-typedef struct ucontext_t
- {
- int __sc_onstack; /* Sigstack state to restore. */
- __sigset_t uc_sigmask; /* The set of signals that are blocked when
- this context is active. */
- int __sc_uerror; /* u_error to restore. */
- mcontext_t uc_mcontext; /* Machine-specific image of saved context. */
- struct ucontext_t *uc_link; /* context resumed after this one returns */
- stack_t uc_stack; /* stack used by context */
- int __pad[4];
- } ucontext_t;
-
-#endif /* sys/ucontext.h */
diff --git a/sysdeps/unix/sysv/aix/syscall.c b/sysdeps/unix/sysv/aix/syscall.c
deleted file mode 100644
index 6f204ff809..0000000000
--- a/sysdeps/unix/sysv/aix/syscall.c
+++ /dev/null
@@ -1,2 +0,0 @@
-/* XXX We will have to see whether it is possible to implement this
- function at all. */
diff --git a/sysdeps/unix/sysv/aix/sysdep.h b/sysdeps/unix/sysv/aix/sysdep.h
deleted file mode 100644
index dcf37f2533..0000000000
--- a/sysdeps/unix/sysv/aix/sysdep.h
+++ /dev/null
@@ -1,88 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdeps/unix/powerpc/sysdep.h>
-
-
-/* This seems to always be the case on PPC. */
-#define ALIGNARG(log2) log2
-
-/* How to define local lables. */
-#define L(name) L..##name
-
-/* Label in text section. */
-#define C_TEXT(name) .##name
-
-/* Function descriptor. */
-#define FUNCDESC(real, code) \
- .toc; \
- .csect real##[DS], 3; \
- .globl real; \
-real: \
- .long code, TOC[tc0], 0;
-
-/* Code to generate function entry code. */
-#define ENTRY(name) \
- FUNCDESC (name, C_TEXT (name)) \
- .csect .text[PR], 2; \
- .globl C_TEXT (name); \
-C_TEXT (name):
-
-/* XXX For now we don't define any code. */
-#define CALL_MCOUNT
-
-#define EALIGN_W_0 /* No words to insert. */
-#define EALIGN_W_1 nop
-#define EALIGN_W_2 nop;nop
-#define EALIGN_W_3 nop;nop;nop
-#define EALIGN_W_4 EALIGN_W_3;nop
-#define EALIGN_W_5 EALIGN_W_4;nop
-#define EALIGN_W_6 EALIGN_W_5;nop
-#define EALIGN_W_7 EALIGN_W_6;nop
-
-/* EALIGN is like ENTRY, but does alignment to 'words'*4 bytes
- past a 2^align boundary. */
-#ifdef PROF
-#define EALIGN(name, alignt, words) \
- FUNCDESC (name, C_TEXT (name)) \
- .csect .text[PR], 2; \
- .align ALIGNARG(2); \
- .globl C_TEXT (name); \
-C_TEXT (name): \
- CALL_MCOUNT \
- b L(align_0); \
- .align ALIGNARG(alignt); \
- EALIGN_W_##words; \
-L(align_0):
-#else /* PROF */
-#define EALIGN(name, alignt, words) \
- FUNCDESC (name, C_TEXT (name)) \
- .csect .text[PR], 2; \
- .align ALIGNARG(alignt); \
- EALIGN_W_##words; \
- .globl C_TEXT (name); \
-C_TEXT (name):
-#endif
-
-/* No special end code for now. We will eventually add to usual prolog
- with function length etc. */
-#define END(name)
-
-
-/* Jumping to another function. We are jumping to the TOC entry. */
-#define JUMPTARGET(name) C_TEXT (name)
diff --git a/sysdeps/unix/sysv/aix/sysv_termio.h b/sysdeps/unix/sysv/aix/sysv_termio.h
deleted file mode 100644
index f314c0e16f..0000000000
--- a/sysdeps/unix/sysv/aix/sysv_termio.h
+++ /dev/null
@@ -1,155 +0,0 @@
-/* Copyright (C) 1992, 1997, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* In various parts of this file we define the System V values for
- things as _SYSV_<whatever>. Those are the values that System V
- uses for termio, and also (SVR4) termios. Not necessarily the
- same as the GNU termios that the library user sees. */
-
-/* Number of elements of c_cc. termio only. */
-#define _SYSV_NCC 8
-
-#define _SYSV_VINTR 0
-#define _SYSV_VQUIT 1
-#define _SYSV_VERASE 2
-#define _SYSV_VKILL 3
-#define _SYSV_VEOF 4
-/* This field means VEOF if ICANON, VMIN if not. */
-#define _SYSV_VMIN 4
-#define _SYSV_VEOL 5
-/* This field means VEOL if ICANON, VTIME if not. */
-#define _SYSV_VTIME 5
-#define _SYSV_VEOL2 6
-
-/* Flags in c_iflag. */
-#define _SYSV_IGNBRK 1
-#define _SYSV_BRKINT 2
-#define _SYSV_IGNPAR 4
-#define _SYSV_PARMRK 8
-#define _SYSV_INPCK 0x10
-#define _SYSV_ISTRIP 0x20
-#define _SYSV_INLCR 0x40
-#define _SYSV_IGNCR 0x80
-#define _SYSV_ICRNL 0x100
-#define _SYSV_IUCLC 0x200
-#define _SYSV_IXON 0x400
-#define _SYSV_IXANY 0x800
-#define _SYSV_IXOFF 0x1000
-#define _SYSV_IMAXBEL 0x2000
-
-/* Flags in c_cflag. */
-#define _SYSV_CBAUD 0xf
-#define _SYSV_CIBAUD 0xf0000 /* termios only. */
-#define _SYSV_IBSHIFT 16
-/* Values for CBAUD and CIBAUD. */
-#define _SYSV_B0 0
-#define _SYSV_B50 1
-#define _SYSV_B75 2
-#define _SYSV_B110 3
-#define _SYSV_B134 4
-#define _SYSV_B150 5
-#define _SYSV_B200 6
-#define _SYSV_B300 7
-#define _SYSV_B600 8
-#define _SYSV_B1200 9
-#define _SYSV_B1800 10
-#define _SYSV_B2400 11
-#define _SYSV_B4800 12
-#define _SYSV_B9600 13
-#define _SYSV_B19200 14
-#define _SYSV_B38400 15
-
-#define _SYSV_CS5 0
-#define _SYSV_CS6 0x10
-#define _SYSV_CS7 0x20
-#define _SYSV_CS8 0x30
-#define _SYSV_CSIZE 0x30
-#define _SYSV_CSTOPB 0x40
-#define _SYSV_CREAD 0x80
-#define _SYSV_PARENB 0x100
-#define _SYSV_PARODD 0x200
-#define _SYSV_HUPCL 0x400
-#define _SYSV_CLOCAL 0x800
-
-/* Flags in c_lflag. */
-#define _SYSV_ISIG 1
-#define _SYSV_ICANON 2
-#define _SYSV_ECHO 8
-#define _SYSV_ECHOE 0x10
-#define _SYSV_ECHOK 0x20
-#define _SYSV_ECHONL 0x40
-#define _SYSV_NOFLSH 0x80
-#define _SYSV_TOSTOP 0x100
-#define _SYSV_ECHOCTL 0x200
-#define _SYSV_ECHOPRT 0x400
-#define _SYSV_ECHOKE 0x800
-#define _SYSV_FLUSHO 0x2000
-#define _SYSV_PENDIN 0x4000
-#define _SYSV_IEXTEN 0x8000
-
-/* Flags in c_oflag. */
-#define _SYSV_OPOST 1
-#define _SYSV_OLCUC 2
-#define _SYSV_ONLCR 4
-#define _SYSV_NLDLY 0x100
-#define _SYSV_NL0 0
-#define _SYSV_NL1 0x100
-#define _SYSV_CRDLY 0x600
-#define _SYSV_CR0 0
-#define _SYSV_CR1 0x200
-#define _SYSV_CR2 0x400
-#define _SYSV_CR3 0x600
-#define _SYSV_TABDLY 0x1800
-#define _SYSV_TAB0 0
-#define _SYSV_TAB1 0x0800
-#define _SYSV_TAB2 0x1000
-/* TAB3 is an obsolete name for XTABS. But we provide it since some
- programs expect it to exist. */
-#define _SYSV_TAB3 0x1800
-#define _SYSV_XTABS 0x1800
-#define _SYSV_BSDLY 0x2000
-#define _SYSV_BS0 0
-#define _SYSV_BS1 0x2000
-#define _SYSV_VTDLY 0x4000
-#define _SYSV_VT0 0
-#define _SYSV_VT1 0x4000
-#define _SYSV_FFDLY 0x8000
-#define _SYSV_FF0 0
-#define _SYSV_FF1 0x8000
-
-/* ioctl's. */
-
-#define _TCGETA 0x5405
-#define _TCSETA 0x5406
-#define _TCSETAW 0x5407
-#define _TCSETAF 0x5408
-#define _TCSBRK 0x5409
-#define _TCXONC 0x540B
-#define _TCFLSH 0x540C
-#define _TIOCGPGRP 0x7414
-#define _TIOCSPGRP 0x7415
-
-struct __sysv_termio
- {
- unsigned short c_iflag;
- unsigned short c_oflag;
- unsigned short c_cflag;
- unsigned short c_lflag;
- char c_line;
- unsigned char c_cc[_SYSV_NCC];
- };
diff --git a/sysdeps/unix/sysv/aix/tcgetattr.c b/sysdeps/unix/sysv/aix/tcgetattr.c
deleted file mode 100644
index 01ffd55eff..0000000000
--- a/sysdeps/unix/sysv/aix/tcgetattr.c
+++ /dev/null
@@ -1,152 +0,0 @@
-/* Copyright (C) 1992, 1995, 1996, 1997, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <stddef.h>
-#include <sysv_termio.h>
-#include <termios.h>
-#include <sys/ioctl.h>
-
-/* Put the state of FD into *TERMIOS_P. */
-int
-__tcgetattr (fd, termios_p)
- int fd;
- struct termios *termios_p;
-{
- struct __sysv_termio buf;
-
- if (termios_p == NULL)
- {
- __set_errno (EINVAL);
- return -1;
- }
-
- if (__ioctl (fd, _TCGETA, &buf) < 0)
- return -1;
-
- termios_p->c_cflag &= ~0x000f0000;
- termios_p->c_cflag |= (termios_p->c_cflag & 0xf) << 16;
-
- termios_p->c_iflag = 0;
- if (buf.c_iflag & _SYSV_IGNBRK)
- termios_p->c_iflag |= IGNBRK;
- if (buf.c_iflag & _SYSV_BRKINT)
- termios_p->c_iflag |= BRKINT;
- if (buf.c_iflag & _SYSV_IGNPAR)
- termios_p->c_iflag |= IGNPAR;
- if (buf.c_iflag & _SYSV_PARMRK)
- termios_p->c_iflag |= PARMRK;
- if (buf.c_iflag & _SYSV_INPCK)
- termios_p->c_iflag |= INPCK;
- if (buf.c_iflag & _SYSV_ISTRIP)
- termios_p->c_iflag |= ISTRIP;
- if (buf.c_iflag & _SYSV_INLCR)
- termios_p->c_iflag |= INLCR;
- if (buf.c_iflag & _SYSV_IGNCR)
- termios_p->c_iflag |= IGNCR;
- if (buf.c_iflag & _SYSV_ICRNL)
- termios_p->c_iflag |= ICRNL;
- if (buf.c_iflag & _SYSV_IXON)
- termios_p->c_iflag |= IXON;
- if (buf.c_iflag & _SYSV_IXOFF)
- termios_p->c_iflag |= IXOFF;
- if (buf.c_iflag & _SYSV_IXANY)
- termios_p->c_iflag |= IXANY;
- if (buf.c_iflag & _SYSV_IMAXBEL)
- termios_p->c_iflag |= IMAXBEL;
-
- termios_p->c_oflag = 0;
- if (buf.c_oflag & OPOST)
- termios_p->c_oflag |= OPOST;
- if (buf.c_oflag & ONLCR)
- termios_p->c_oflag |= ONLCR;
- termios_p->c_cflag = 0;
- switch (buf.c_cflag & _SYSV_CSIZE)
- {
- case _SYSV_CS5:
- termios_p->c_cflag |= CS5;
- break;
- case _SYSV_CS6:
- termios_p->c_cflag |= CS6;
- break;
- case _SYSV_CS7:
- termios_p->c_cflag |= CS7;
- break;
- case _SYSV_CS8:
- termios_p->c_cflag |= CS8;
- break;
- }
- if (buf.c_cflag & _SYSV_CSTOPB)
- termios_p->c_cflag |= CSTOPB;
- if (buf.c_cflag & _SYSV_CREAD)
- termios_p->c_cflag |= CREAD;
- if (buf.c_cflag & _SYSV_PARENB)
- termios_p->c_cflag |= PARENB;
- if (buf.c_cflag & _SYSV_PARODD)
- termios_p->c_cflag |= PARODD;
- if (buf.c_cflag & _SYSV_HUPCL)
- termios_p->c_cflag |= HUPCL;
- if (buf.c_cflag & _SYSV_CLOCAL)
- termios_p->c_cflag |= CLOCAL;
- termios_p->c_lflag = 0;
- if (buf.c_lflag & _SYSV_ISIG)
- termios_p->c_lflag |= ISIG;
- if (buf.c_lflag & _SYSV_ICANON)
- termios_p->c_lflag |= ICANON;
- if (buf.c_lflag & _SYSV_ECHO)
- termios_p->c_lflag |= ECHO;
- if (buf.c_lflag & _SYSV_ECHOE)
- termios_p->c_lflag |= ECHOE;
- if (buf.c_lflag & _SYSV_ECHOK)
- termios_p->c_lflag |= ECHOK;
- if (buf.c_lflag & _SYSV_ECHONL)
- termios_p->c_lflag |= ECHONL;
- if (buf.c_lflag & _SYSV_NOFLSH)
- termios_p->c_lflag |= NOFLSH;
- if (buf.c_lflag & _SYSV_TOSTOP)
- termios_p->c_lflag |= TOSTOP;
- if (buf.c_lflag & _SYSV_ECHOKE)
- termios_p->c_lflag |= ECHOKE;
- if (buf.c_lflag & _SYSV_ECHOPRT)
- termios_p->c_lflag |= ECHOPRT;
- if (buf.c_lflag & _SYSV_ECHOCTL)
- termios_p->c_lflag |= ECHOCTL;
- if (buf.c_lflag & _SYSV_FLUSHO)
- termios_p->c_lflag |= FLUSHO;
- if (buf.c_lflag & _SYSV_PENDIN)
- termios_p->c_lflag |= PENDIN;
- if (buf.c_lflag & _SYSV_IEXTEN)
- termios_p->c_lflag |= IEXTEN;
-
- termios_p->c_cc[VEOF] = buf.c_cc[_SYSV_VEOF];
- termios_p->c_cc[VEOL] = buf.c_cc[_SYSV_VEOL];
- termios_p->c_cc[VEOL2] = buf.c_cc[_SYSV_VEOL2];
- termios_p->c_cc[VERASE] = buf.c_cc[_SYSV_VERASE];
- termios_p->c_cc[VKILL] = buf.c_cc[_SYSV_VKILL];
- termios_p->c_cc[VINTR] = buf.c_cc[_SYSV_VINTR];
- termios_p->c_cc[VQUIT] = buf.c_cc[_SYSV_VQUIT];
- termios_p->c_cc[VSTART] = '\021'; /* XON (^Q). */
- termios_p->c_cc[VSTOP] = '\023'; /* XOFF (^S). */
- termios_p->c_cc[VSUSP] = '\0'; /* System V release 3 lacks job control. */
- termios_p->c_cc[VMIN] = buf.c_cc[_SYSV_VMIN];
- termios_p->c_cc[VTIME] = buf.c_cc[_SYSV_VTIME];
-
- return 0;
-}
-
-weak_alias (__tcgetattr, tcgetattr)
diff --git a/sysdeps/unix/sysv/aix/tcsetattr.c b/sysdeps/unix/sysv/aix/tcsetattr.c
deleted file mode 100644
index 8e78da1c2c..0000000000
--- a/sysdeps/unix/sysv/aix/tcsetattr.c
+++ /dev/null
@@ -1,198 +0,0 @@
-/* Copyright (C) 1992,1995,1996,1997,2000,2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <stddef.h>
-#include <termios.h>
-#include <sys/ioctl.h>
-
-#include <sysv_termio.h>
-
-
-const speed_t __unix_speeds[] =
- {
- 0,
- 50,
- 75,
- 110,
- 134,
- 150,
- 200,
- 300,
- 600,
- 1200,
- 1800,
- 2400,
- 4800,
- 9600,
- 19200,
- 38400,
- };
-
-
-/* Set the state of FD to *TERMIOS_P. */
-int
-tcsetattr (fd, optional_actions, termios_p)
- int fd;
- int optional_actions;
- const struct termios *termios_p;
-{
- struct __sysv_termio buf;
- int ioctl_function;
-
- if (termios_p == NULL)
- {
- __set_errno (EINVAL);
- return -1;
- }
- switch (optional_actions)
- {
- case TCSANOW:
- ioctl_function = _TCSETA;
- break;
- case TCSADRAIN:
- ioctl_function = _TCSETAW;
- break;
- case TCSAFLUSH:
- ioctl_function = _TCSETAF;
- break;
- default:
- __set_errno (EINVAL);
- return -1;
- }
-
- if ((termios_p->c_cflag & 0x000f0000) >> 16 != (termios_p->c_cflag & 0xf))
- {
- __set_errno (EINVAL);
- return -1;
- }
-
- buf.c_iflag = 0;
- if (termios_p->c_iflag & IGNBRK)
- buf.c_iflag |= _SYSV_IGNBRK;
- if (termios_p->c_iflag & BRKINT)
- buf.c_iflag |= _SYSV_BRKINT;
- if (termios_p->c_iflag & IGNPAR)
- buf.c_iflag |= _SYSV_IGNPAR;
- if (termios_p->c_iflag & PARMRK)
- buf.c_iflag |= _SYSV_PARMRK;
- if (termios_p->c_iflag & INPCK)
- buf.c_iflag |= _SYSV_INPCK;
- if (termios_p->c_iflag & ISTRIP)
- buf.c_iflag |= _SYSV_ISTRIP;
- if (termios_p->c_iflag & INLCR)
- buf.c_iflag |= _SYSV_INLCR;
- if (termios_p->c_iflag & IGNCR)
- buf.c_iflag |= _SYSV_IGNCR;
- if (termios_p->c_iflag & ICRNL)
- buf.c_iflag |= _SYSV_ICRNL;
- if (termios_p->c_iflag & IXON)
- buf.c_iflag |= _SYSV_IXON;
- if (termios_p->c_iflag & IXOFF)
- buf.c_iflag |= _SYSV_IXOFF;
- if (termios_p->c_iflag & IXANY)
- buf.c_iflag |= _SYSV_IXANY;
- if (termios_p->c_iflag & IMAXBEL)
- buf.c_iflag |= _SYSV_IMAXBEL;
-
- buf.c_oflag = 0;
- if (termios_p->c_oflag & OPOST)
- buf.c_oflag |= _SYSV_OPOST;
- if (termios_p->c_oflag & ONLCR)
- buf.c_oflag |= _SYSV_ONLCR;
-
- /* So far, buf.c_cflag contains the speed in CBAUD. */
- if (termios_p->c_cflag & CSTOPB)
- buf.c_cflag |= _SYSV_CSTOPB;
- if (termios_p->c_cflag & CREAD)
- buf.c_cflag |= _SYSV_CREAD;
- if (termios_p->c_cflag & PARENB)
- buf.c_cflag |= _SYSV_PARENB;
- if (termios_p->c_cflag & PARODD)
- buf.c_cflag |= _SYSV_PARODD;
- if (termios_p->c_cflag & HUPCL)
- buf.c_cflag |= _SYSV_HUPCL;
- if (termios_p->c_cflag & CLOCAL)
- buf.c_cflag |= _SYSV_CLOCAL;
- switch (termios_p->c_cflag & CSIZE)
- {
- case CS5:
- buf.c_cflag |= _SYSV_CS5;
- break;
- case CS6:
- buf.c_cflag |= _SYSV_CS6;
- break;
- case CS7:
- buf.c_cflag |= _SYSV_CS7;
- break;
- case CS8:
- buf.c_cflag |= _SYSV_CS8;
- break;
- }
-
- buf.c_lflag = 0;
- if (termios_p->c_lflag & ISIG)
- buf.c_lflag |= _SYSV_ISIG;
- if (termios_p->c_lflag & ICANON)
- buf.c_lflag |= _SYSV_ICANON;
- if (termios_p->c_lflag & ECHO)
- buf.c_lflag |= _SYSV_ECHO;
- if (termios_p->c_lflag & ECHOE)
- buf.c_lflag |= _SYSV_ECHOE;
- if (termios_p->c_lflag & ECHOK)
- buf.c_lflag |= _SYSV_ECHOK;
- if (termios_p->c_lflag & ECHONL)
- buf.c_lflag |= _SYSV_ECHONL;
- if (termios_p->c_lflag & NOFLSH)
- buf.c_lflag |= _SYSV_NOFLSH;
- if (termios_p->c_lflag & TOSTOP)
- buf.c_lflag |= _SYSV_TOSTOP;
- if (termios_p->c_lflag & ECHOCTL)
- buf.c_lflag |= _SYSV_ECHOCTL;
- if (termios_p->c_lflag & ECHOPRT)
- buf.c_lflag |= _SYSV_ECHOPRT;
- if (termios_p->c_lflag & ECHOKE)
- buf.c_lflag |= _SYSV_ECHOKE;
- if (termios_p->c_lflag & FLUSHO)
- buf.c_lflag |= _SYSV_FLUSHO;
- if (termios_p->c_lflag & PENDIN)
- buf.c_lflag |= _SYSV_PENDIN;
- if (termios_p->c_lflag & IEXTEN)
- buf.c_lflag |= _SYSV_IEXTEN;
-
- buf.c_cc[_SYSV_VINTR] = termios_p->c_cc[VINTR];
- buf.c_cc[_SYSV_VQUIT] = termios_p->c_cc[VQUIT];
- buf.c_cc[_SYSV_VERASE] = termios_p->c_cc[VERASE];
- buf.c_cc[_SYSV_VKILL] = termios_p->c_cc[VKILL];
- if (buf.c_lflag & _SYSV_ICANON)
- {
- buf.c_cc[_SYSV_VEOF] = termios_p->c_cc[VEOF];
- buf.c_cc[_SYSV_VEOL] = termios_p->c_cc[VEOL];
- }
- else
- {
- buf.c_cc[_SYSV_VMIN] = termios_p->c_cc[VMIN];
- buf.c_cc[_SYSV_VTIME] = termios_p->c_cc[VTIME];
- }
- buf.c_cc[_SYSV_VEOL2] = termios_p->c_cc[VEOL2];
-
- if (__ioctl (fd, ioctl_function, &buf) < 0)
- return -1;
- return 0;
-}
-libc_hidden_def (tcsetattr)
diff --git a/sysdeps/unix/sysv/aix/times.c b/sysdeps/unix/sysv/aix/times.c
deleted file mode 100644
index 8ebc40b021..0000000000
--- a/sysdeps/unix/sysv/aix/times.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/times.h>
-
-/* Store the CPU time used by this process and all its
- dead children (and their dead children) in BUFFER.
- Return the elapsed real time, or (clock_t) -1 for errors.
- All times are in CLK_TCKths of a second. */
-clock_t
-__times (buffer)
- struct tms *buffer;
-{
- return times (buffer);
-}
diff --git a/sysdeps/unix/sysv/aix/truncate.c b/sysdeps/unix/sysv/aix/truncate.c
deleted file mode 100644
index 247aebb330..0000000000
--- a/sysdeps/unix/sysv/aix/truncate.c
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-extern int ktruncate (const char *name, long long int length);
-
-int
-__truncate (const char *name, off_t length)
-{
- return ktruncate (name, length);
-}
-strong_alias (__truncate, truncate)
diff --git a/sysdeps/unix/sysv/aix/truncate64.c b/sysdeps/unix/sysv/aix/truncate64.c
deleted file mode 100644
index 3a219c0184..0000000000
--- a/sysdeps/unix/sysv/aix/truncate64.c
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-extern int ktruncate (const char *name, long long int length);
-
-int
-__truncate64 (const char *name, off64_t length)
-{
- return ktruncate (name, length);
-}
-strong_alias (__truncate64, truncate64)
diff --git a/sysdeps/unix/sysv/aix/uitrunc.c b/sysdeps/unix/sysv/aix/uitrunc.c
deleted file mode 100644
index 54cdc3af76..0000000000
--- a/sysdeps/unix/sysv/aix/uitrunc.c
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Copyright (C) 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <math.h>
-
-/* The uitrunc function returns the nearest unsigned integer
- to the x parameter in the direction of 0. This actions is
- equivalent to truncation off the fraction bits of the x
- parameter and then converting x to an unsigned integer. */
-unsigned int
-__uitrunc (double x)
-{
- double xrf;
- unsigned int xr;
- xr = (unsigned int) x;
- xrf = (double) xr;
- if (x >= 0.0)
- if (x - xrf >= 0.5 && x - xrf < 1.0 && x + 1 > 0)
- return x + 1;
- else
- return x;
- else
- if (xrf - x >= 0.5 && xrf - x < 1.0 && x - 1 < 0)
- return x - 1;
- else
- return x;
-}
diff --git a/sysdeps/unix/sysv/aix/ulimit.c b/sysdeps/unix/sysv/aix/ulimit.c
deleted file mode 100644
index 44fef64493..0000000000
--- a/sysdeps/unix/sysv/aix/ulimit.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <stdarg.h>
-#include <sys/resource.h>
-
-long int
-__ulimit (int cmd, ...)
-{
- va_list va;
- long int arg;
- long int res;
-
- va_start (va, cmd);
- arg = va_arg (va, long int);
-
- res = ulimit (cmd, arg);
-
- va_end (va);
-
- return res;
-}
diff --git a/sysdeps/unix/sysv/aix/umask.c b/sysdeps/unix/sysv/aix/umask.c
deleted file mode 100644
index e8c45e40b6..0000000000
--- a/sysdeps/unix/sysv/aix/umask.c
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/stat.h>
-
-mode_t
-__umask (mask)
- mode_t mask;
-{
- return umask (mask);
-}
diff --git a/sysdeps/unix/sysv/aix/uname.c b/sysdeps/unix/sysv/aix/uname.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/uname.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/unlink.c b/sysdeps/unix/sysv/aix/unlink.c
deleted file mode 100644
index 6fe9b59c61..0000000000
--- a/sysdeps/unix/sysv/aix/unlink.c
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-int
-__unlink (name)
- const char *name;
-{
- return unlink (name);
-}
diff --git a/sysdeps/unix/sysv/aix/usleep.c b/sysdeps/unix/sysv/aix/usleep.c
deleted file mode 100644
index a1d55eb2bc..0000000000
--- a/sysdeps/unix/sysv/aix/usleep.c
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Copyright (C) 1991, 1992, 1995, 1996, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <time.h>
-#include <unistd.h>
-#include <errno.h>
-
-extern int __libc_nanosleep (const struct timespec *requested_time,
- struct timespec *remaining);
-
-/* Sleep USECONDS microseconds, or until a previously set timer goes off. */
-int
-usleep (useconds)
- useconds_t useconds;
-{
- struct timespec ts ={.tv_sec = 0, .tv_nsec = (long int)useconds * 1000};
- __libc_nanosleep(&ts,&ts);
- return 0;
-}
diff --git a/sysdeps/unix/sysv/aix/ustat.c b/sysdeps/unix/sysv/aix/ustat.c
deleted file mode 100644
index 6036fbbffd..0000000000
--- a/sysdeps/unix/sysv/aix/ustat.c
+++ /dev/null
@@ -1 +0,0 @@
-/* This is a system call. */
diff --git a/sysdeps/unix/sysv/aix/utimes.c b/sysdeps/unix/sysv/aix/utimes.c
deleted file mode 100644
index 9bef02ae03..0000000000
--- a/sysdeps/unix/sysv/aix/utimes.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/time.h>
-
-int
-__utimes (file, tvp)
- const char *file;
- const struct timeval tvp[2];
-{
- return utimes (file, tvp);
-}
diff --git a/sysdeps/unix/sysv/aix/utmpx.h b/sysdeps/unix/sysv/aix/utmpx.h
deleted file mode 100644
index 1647bfe681..0000000000
--- a/sysdeps/unix/sysv/aix/utmpx.h
+++ /dev/null
@@ -1,89 +0,0 @@
-/* Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _UTMPX_H
-#define _UTMPX_H 1
-
-#include <features.h>
-#include <sys/time.h>
-
-/* Required according to Unix98. */
-#ifndef __pid_t_defined
-typedef __pid_t pid_t;
-# define __pid_t_defined
-#endif
-
-/* Get system dependent values and data structures. */
-#include <bits/utmpx.h>
-
-#ifdef __USE_GNU
-/* Compatibility names for the strings of the canonical file names. */
-# define UTMPX_FILE _PATH_UTMPX
-# define UTMPX_FILENAME _PATH_UTMPX
-# define WTMPX_FILE _PATH_WTMPX
-# define WTMPX_FILENAME _PATH_WTMPX
-#endif
-
-/* For the getutmp{,x} functions we need the `struct utmp'. */
-#ifdef __USE_GNU
-struct utmp;
-#endif
-
-
-__BEGIN_DECLS
-
-/* Open user accounting database. */
-extern void setutxent (void) __THROW;
-
-/* Close user accounting database. */
-extern void endutxent (void) __THROW;
-
-/* Get the next entry from the user accounting database. */
-extern struct utmpx *getutxent (void) __THROW;
-
-/* Get the user accounting database entry corresponding to ID. */
-extern struct utmpx *getutxid (__const struct utmpx *__id) __THROW;
-
-/* Get the user accounting database entry corresponding to LINE. */
-extern struct utmpx *getutxline (__const struct utmpx *__line) __THROW;
-
-/* Write the entry UTMPX into the user accounting database. */
-extern struct utmpx *pututxline (__const struct utmpx *__utmpx) __THROW;
-
-
-#ifdef __USE_GNU
-/* Change name of the utmpx file to be examined. */
-extern int utmpxname (__const char *__file) __THROW;
-
-/* Append entry UTMP to the wtmpx-like file WTMPX_FILE. */
-extern void updwtmpx (__const char *__wtmpx_file,
- __const struct utmpx *__utmpx) __THROW;
-
-
-/* Copy the information in UTMPX to UTMP. */
-extern void getutmp (__const struct utmpx *__utmpx,
- struct utmp *__utmp) __THROW;
-
-/* Copy the information in UTMP to UTMPX. */
-extern void getutmpx (__const struct utmp *__utmp,
- struct utmpx *__utmpx) __THROW;
-#endif
-
-__END_DECLS
-
-#endif /* utmpx.h */
diff --git a/sysdeps/unix/sysv/aix/wait3.c b/sysdeps/unix/sysv/aix/wait3.c
deleted file mode 100644
index b0f7faa150..0000000000
--- a/sysdeps/unix/sysv/aix/wait3.c
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Copyright (C) 1992, 93, 1995-1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <sys/wait.h>
-#include <sys/types.h>
-#include <stddef.h>
-
-extern pid_t kwaitpid (int *stat_loc, pid_t pid, int options,
- struct rusage *ru_loc, siginfo_t *infop);
-
-/* Wait for a child to exit. When one does, put its status in *STAT_LOC and
- return its process ID. For errors return (pid_t) -1. If USAGE is not nil,
- store information about the child's resource usage (as a `struct rusage')
- there. If the WUNTRACED bit is set in OPTIONS, return status for stopped
- children; otherwise don't. */
-pid_t
-__wait3 (__WAIT_STATUS stat_loc, int options, struct rusage *usage)
-{
- if (usage != NULL)
- {
- __set_errno (ENOSYS);
- return (pid_t) -1;
- }
- return kwaitpid (stat_loc.__iptr, WAIT_ANY, options, usage, NULL);
-}
-strong_alias (__wait3, wait3)
diff --git a/sysdeps/unix/sysv/aix/wait4.c b/sysdeps/unix/sysv/aix/wait4.c
deleted file mode 100644
index dd08f42782..0000000000
--- a/sysdeps/unix/sysv/aix/wait4.c
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright (C) 1991, 1992, 1995-1997, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <stddef.h>
-#include <sys/types.h>
-#include <sys/wait.h>
-
-extern pid_t kwaitpid (int *stat_loc, pid_t pid, int options,
- struct rusage *ru_loc, siginfo_t *infop);
-
-pid_t
-__wait4 (__pid_t pid, __WAIT_STATUS stat_loc, int options,
- struct rusage *usage)
-{
- return kwaitpid (stat_loc.__iptr, pid, options, usage, NULL);
-}
-strong_alias (__wait4, wait4)
diff --git a/sysdeps/unix/sysv/aix/waitid.c b/sysdeps/unix/sysv/aix/waitid.c
deleted file mode 100644
index 1d637df76e..0000000000
--- a/sysdeps/unix/sysv/aix/waitid.c
+++ /dev/null
@@ -1,83 +0,0 @@
-/* Pseudo implementation of waitid.
- Copyright (C) 1997, 1998, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Zack Weinberg <zack@rabi.phys.columbia.edu>, 1997.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <signal.h>
-#define __need_NULL
-#include <stddef.h>
-#include <sys/wait.h>
-#include <sys/types.h>
-
-#include <assert.h>
-
-extern pid_t kwaitpid (int *stat_loc, pid_t pid, int options,
- struct rusage *ru_loc, siginfo_t *infop);
-
-int
-__waitid (idtype, id, infop, options)
- idtype_t idtype;
- id_t id;
- siginfo_t *infop;
- int options;
-{
- pid_t pid, child;
- int status;
-
- switch (idtype)
- {
- case P_PID:
- if(id <= 0)
- goto invalid;
- pid = (pid_t) id;
- break;
- case P_PGID:
- if (id < 0 || id == 1)
- goto invalid;
- pid = (pid_t) -id;
- break;
- case P_ALL:
- pid = -1;
- break;
- default:
- invalid:
- __set_errno (EINVAL);
- return -1;
- }
-
- /* Technically we're supposed to return EFAULT if infop is bogus,
- but that would involve mucking with signals, which is
- too much hassle. User will have to deal with SIGSEGV/SIGBUS.
- We just check for a null pointer. */
-
- if (infop == NULL)
- {
- __set_errno (EFAULT);
- return -1;
- }
-
- child = kwaitpid (&status, pid, options, NULL, infop);
-
- if (child == -1)
- /* `waitpid' set `errno' for us. */
- return -1;
-
- return 0;
-}
-weak_alias (__waitid, waitid)
diff --git a/sysdeps/unix/sysv/aix/waitpid.c b/sysdeps/unix/sysv/aix/waitpid.c
deleted file mode 100644
index 19bcbab722..0000000000
--- a/sysdeps/unix/sysv/aix/waitpid.c
+++ /dev/null
@@ -1,53 +0,0 @@
-/* Copyright (C) 1991,95,96,97,2000,02 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <stddef.h>
-#include <sys/wait.h>
-#include <sys/types.h>
-
-extern pid_t kwaitpid (int *stat_loc, pid_t pid, int options,
- struct rusage *ru_loc, siginfo_t *infop);
-
-
-/* Wait for a child matching PID to die.
- If PID is greater than 0, match any process whose process ID is PID.
- If PID is (pid_t) -1, match any process.
- If PID is (pid_t) 0, match any process with the
- same process group as the current process.
- If PID is less than -1, match any process whose
- process group is the absolute value of PID.
- If the WNOHANG bit is set in OPTIONS, and that child
- is not already dead, return (pid_t) 0. If successful,
- return PID and store the dead child's status in STAT_LOC.
- Return (pid_t) -1 for errors. If the WUNTRACED bit is set in OPTIONS,
- return status for stopped children; otherwise don't. */
-pid_t
-__libc_waitpid (pid_t pid, int *stat_loc, int options)
-{
- if ((options & ~(WNOHANG|WUNTRACED)) != 0)
- {
- __set_errno (EINVAL);
- return (pid_t) -1;
- }
-
- return kwaitpid (stat_loc, pid, options, NULL, NULL);
-}
-weak_alias (__libc_waitpid, __waitpid)
-libc_hidden_weak (__waitpid)
-weak_alias (__libc_waitpid, waitpid)
diff --git a/sysdeps/unix/sysv/aix/write.c b/sysdeps/unix/sysv/aix/write.c
deleted file mode 100644
index 0cc5d33aca..0000000000
--- a/sysdeps/unix/sysv/aix/write.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Ulrich Drepper <drepper@cygnus.com>, 1999.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-
-#include "kernel_proto.h"
-
-ssize_t
-__write (fd, ptr, n)
- int fd;
- const void *ptr;
- size_t n;
-{
- return kwrite (fd, ptr, n);
-}
-libc_hidden_def (__write)
-/* AIX has no weak aliases (yet) but let's hope for better times. */
-weak_alias (__write, write)
-strong_alias (__write, __libc_write)
-libc_hidden_def (__libc_write)
diff --git a/sysdeps/unix/sysv/aix/writev.c b/sysdeps/unix/sysv/aix/writev.c
deleted file mode 100644
index d0e5741590..0000000000
--- a/sysdeps/unix/sysv/aix/writev.c
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Copyright (C) 1991, 1995-1998, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/uio.h>
-
-extern ssize_t kwritev (int fd, const struct iovec *iovp, size_t iovcnt,
- long int ext);
-
-/* Read data from file descriptor FD, and put the result in the
- buffers described by VECTOR, which is a vector of COUNT `struct iovec's.
- The buffers are filled in the order specified.
- Operates just like `read' (see <unistd.h>) except that data are
- put in VECTOR instead of a contiguous buffer. */
-ssize_t
-__libc_writev (fd, vector, count)
- int fd;
- const struct iovec *vector;
- int count;
-{
- return kwritev (fd, vector, count, 0);
-}
-strong_alias (__libc_writev, __writev)
-weak_alias (__libc_writev, writev)
diff --git a/sysdeps/unix/sysv/aix/xstat.c b/sysdeps/unix/sysv/aix/xstat.c
deleted file mode 100644
index c76ad07999..0000000000
--- a/sysdeps/unix/sysv/aix/xstat.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <assert.h>
-#include <sys/stat.h>
-
-#define STX_NORMAL 0x00
-
-extern int statx (const char *pathname, struct stat *st, int len, int cmd);
-
-int
-__xstat (int ver, const char *pathname, struct stat *st)
-{
- assert (ver == 0);
- return statx (pathname, st, sizeof (*st), STX_NORMAL);
-}
-hidden_def (__xstat)
diff --git a/sysdeps/unix/sysv/aix/xstat64.c b/sysdeps/unix/sysv/aix/xstat64.c
deleted file mode 100644
index cb1bea1182..0000000000
--- a/sysdeps/unix/sysv/aix/xstat64.c
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <assert.h>
-#include <sys/stat.h>
-
-#define STX_NORMAL 0x00
-#define STX_64 0x08
-
-
-extern int statx (const char *pathname, struct stat64 *st, int len, int cmd);
-
-int
-__xstat64 (int ver, const char *pathname, struct stat64 *st)
-{
- assert (ver == 0);
- return statx (pathname, st, sizeof (*st), STX_NORMAL | STX_64);
-}
-hidden_def (__xstat64)
diff --git a/sysdeps/unix/sysv/hpux/bits/errno.h b/sysdeps/unix/sysv/hpux/bits/errno.h
deleted file mode 100644
index c9903c6dfe..0000000000
--- a/sysdeps/unix/sysv/hpux/bits/errno.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Copyright (C) 1991, 1994, 1996, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* This file defines the `errno' constants. */
-
-#if !defined __Emath_defined && (defined _ERRNO_H || defined __need_Emath)
-#undef __need_Emath
-#define __Emath_defined 1
-
-#endif
-
-#ifdef _ERRNO_H
-#define EBADF 9
-#define ENOMEM 12
-#define EINVAL 22
-#define ERANGE 34
-#define ENOMSG 35
-#define ENOSYS 251
-#endif
diff --git a/sysdeps/unix/sysv/hpux/bits/setjmp.h b/sysdeps/unix/sysv/hpux/bits/setjmp.h
deleted file mode 100644
index 216d7bdd64..0000000000
--- a/sysdeps/unix/sysv/hpux/bits/setjmp.h
+++ /dev/null
@@ -1,16 +0,0 @@
-/* Define the machine-dependent type `jmp_buf'. Stub version. */
-
-#ifndef _SETJMP_H
-# error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead."
-#endif
-
-/* XXX This should go into different files!!! */
-
-#ifdef __hp9000s300
-typedef int __jmp_buf[100];
-#endif /* __hp9000s300 */
-
-#ifdef __hp9000s800
-typedef double __jmp_buf[25];
-#endif /* __hp9000s800 */
-
diff --git a/sysdeps/unix/sysv/hpux/bits/stat.h b/sysdeps/unix/sysv/hpux/bits/stat.h
deleted file mode 100644
index 845b29765f..0000000000
--- a/sysdeps/unix/sysv/hpux/bits/stat.h
+++ /dev/null
@@ -1,128 +0,0 @@
-/* Copyright (C) 1992, 95, 96, 97, 98, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_STAT_H
-# error "Never include <bits/stat.h> directly; use <sys/stat.h> instead."
-#endif
-
-/* Versions of the `struct stat' data structure. */
-#define _STAT_VER_SVR4 1
-#define _STAT_VER _STAT_VER_SVR4 /* The one defined below. */
-
-/* Versions of the `xmknod' interface. */
-#define _MKNOD_VER_SVR4 1
-#define _MKNOD_VER _MKNOD_VER_SVR4 /* The bits defined below. */
-
-
-struct stat
- {
- __dev_t st_dev; /* Device. */
- unsigned short int __pad1;
-#ifndef __USE_FILE_OFFSET64
- __ino_t st_ino; /* File serial number. */
-#else
- __ino64_t st_ino; /* File serial number. */
-#endif
- __mode_t st_mode; /* File mode. */
- __nlink_t st_nlink; /* Link count. */
- __uid_t st_uid; /* User ID of the file's owner. */
- __gid_t st_gid; /* Group ID of the file's group.*/
- __dev_t st_rdev; /* Device number, if device. */
- unsigned short int __pad2;
-#ifndef __USE_FILE_OFFSET64
- __off_t st_size; /* Size of file, in bytes. */
-#else
- __off64_t st_size; /* Size of file, in bytes. */
-#endif
- unsigned long int st_blksize; /* Optimal block size for I/O. */
-
-#ifndef __USE_FILE_OFFSET64
- __blkcnt_t st_blocks; /* Number 512-byte blocks allocated. */
-#else
- __blkcnt64_t st_blocks; /* Number 512-byte blocks allocated. */
-#endif
- __time_t st_atime; /* Time of last access. */
- unsigned long int __unused1;
- __time_t st_mtime; /* Time of last modification. */
- unsigned long int __unused2;
- __time_t st_ctime; /* Time of last status change. */
- unsigned long int __unused3;
- unsigned long int __unused4;
- unsigned long int __unused5;
- };
-
-#ifdef __USE_LARGEFILE64
-struct stat64
- {
- __dev_t st_dev; /* Device. */
- unsigned short int __pad1;
-
- __ino64_t st_ino; /* File serial number. */
- __mode_t st_mode; /* File mode. */
- __nlink_t st_nlink; /* Link count. */
- __uid_t st_uid; /* User ID of the file's owner. */
- __gid_t st_gid; /* Group ID of the file's group.*/
- __dev_t st_rdev; /* Device number, if device. */
- unsigned short int __pad2;
- __off64_t st_size; /* Size of file, in bytes. */
- unsigned long int st_blksize; /* Optimal block size for I/O. */
-
- __blkcnt64_t st_blocks; /* Number 512-byte blocks allocated. */
- __time_t st_atime; /* Time of last access. */
- unsigned long int __unused1;
- __time_t st_mtime; /* Time of last modification. */
- unsigned long int __unused2;
- __time_t st_ctime; /* Time of last status change. */
- unsigned long int __unused3;
- unsigned long int __unused4;
- unsigned long int __unused5;
- };
-#endif
-
-/* Tell code we have these members. */
-#define _STATBUF_ST_BLKSIZE
-#define _STATBUF_ST_RDEV
-
-/* Encoding of the file mode. */
-
-#define __S_IFMT 0170000 /* These bits determine file type. */
-
-/* File types. */
-#define __S_IFDIR 0040000 /* Directory. */
-#define __S_IFCHR 0020000 /* Character device. */
-#define __S_IFBLK 0060000 /* Block device. */
-#define __S_IFREG 0100000 /* Regular file. */
-#define __S_IFIFO 0010000 /* FIFO. */
-
-/* These don't actually exist on System V, but having them doesn't hurt. */
-#define __S_IFLNK 0120000 /* Symbolic link. */
-#define __S_IFSOCK 0140000 /* Socket. */
-
-/* POSIX.1b objects. */
-#define __S_TYPEISMQ(buf) (0)
-#define __S_TYPEISSEM(buf) (0)
-#define __S_TYPEISSHM(buf) (0)
-
-/* Protection bits. */
-
-#define __S_ISUID 04000 /* Set user ID on execution. */
-#define __S_ISGID 02000 /* Set group ID on execution. */
-#define __S_ISVTX 01000 /* Save swapped text after use (sticky). */
-#define __S_IREAD 0400 /* Read by owner. */
-#define __S_IWRITE 0200 /* Write by owner. */
-#define __S_IEXEC 0100 /* Execute by owner. */
diff --git a/sysdeps/unix/sysv/hpux/bits/types.h b/sysdeps/unix/sysv/hpux/bits/types.h
deleted file mode 100644
index e231841a83..0000000000
--- a/sysdeps/unix/sysv/hpux/bits/types.h
+++ /dev/null
@@ -1,128 +0,0 @@
-/* Copyright (C) 1991,1992,1994-1998,2000,2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/*
- * Never include this file directly; use <sys/types.h> instead.
- */
-
-#ifndef _BITS_TYPES_H
-#define _BITS_TYPES_H 1
-
-#include <features.h>
-
-#define __need_size_t
-#include <stddef.h>
-
-/* Convenience types. */
-typedef unsigned char __u_char;
-typedef unsigned short __u_short;
-typedef unsigned int __u_int;
-typedef unsigned long __u_long;
-#ifdef __GNUC__
-__extension__ typedef unsigned long long int __u_quad_t;
-__extension__ typedef long long int __quad_t;
-#else
-typedef struct
- {
- long int __val[2];
- } __quad_t;
-typedef struct
- {
- __u_long __val[2];
- } __u_quad_t;
-#endif
-typedef signed char __int8_t;
-typedef unsigned char __uint8_t;
-typedef signed short int __int16_t;
-typedef unsigned short int __uint16_t;
-typedef signed int __int32_t;
-typedef unsigned int __uint32_t;
-#ifdef __GNUC__
-__extension__ typedef signed long long int __int64_t;
-__extension__ typedef unsigned long long int __uint64_t;
-#endif
-typedef __quad_t *__qaddr_t;
-
-typedef long int __dev_t; /* Type of device numbers. */
-typedef long int __uid_t; /* Type of user identifications. */
-typedef long int __gid_t; /* Type of group identifications. */
-typedef __u_long __ino_t; /* Type of file serial numbers. */
-typedef __u_short __mode_t; /* Type of file attribute bitmasks. */
-typedef short __nlink_t; /* Type of file link counts. */
-typedef long int __off_t; /* Type of file sizes and offsets. */
-typedef __quad_t __loff_t; /* Type of file sizes and offsets. */
-typedef long int __pid_t; /* Type of process identifications. */
-typedef long int __ssize_t; /* Type of a byte count, or error. */
-typedef __u_long __rlim_t; /* Type of resource counts. */
-typedef __quad_t __rlim64_t; /* Type of resource counts (LFS). */
-typedef long int __id_t; /* General type for ID. */
-
-typedef struct
- {
- long int __val[2];
- } __fsid_t; /* Type of file system IDs. */
-
-/* Everythin' else. */
-typedef long int __daddr_t; /* The type of a disk address. */
-typedef char *__caddr_t;
-typedef long int __time_t;
-typedef long int __swblk_t; /* Type of a swap block maybe? */
-
-typedef __u_long __clock_t;
-
-/* Number of descriptors that can fit in an `fd_set'. */
-#define __FD_SETSIZE 2048
-
-
-typedef long int __key_t;
-
-/* Used in `struct shmid_ds'. */
-typedef unsigned short int __ipc_pid_t;
-
-
-/* Types from the Large File Support interface. */
-
-/* Type to count number os disk blocks. */
-typedef __u_long __blkcnt_t;
-typedef __u_quad_t __blkcnt64_t;
-
-/* Type to count file system blocks. */
-typedef long int __fsblkcnt_t;
-typedef __quad_t __fsblkcnt64_t;
-
-/* Type to count file system inodes. */
-typedef __u_long __fsfilcnt_t;
-typedef __u_quad_t __fsfilcnt64_t;
-
-/* Type of file serial numbers. */
-typedef __u_long __ino64_t;
-
-/* Type of file sizes and offsets. */
-typedef __loff_t __off64_t;
-
-/* Used in XTI. */
-typedef int __t_scalar_t;
-typedef unsigned int __t_uscalar_t;
-
-/* Duplicates info from stdint.h but this is used in unistd.h. */
-typedef int __intptr_t;
-
-/* Duplicate info from sys/socket.h. */
-typedef unsigned int __socklen_t;
-
-#endif /* bits/types.h */
diff --git a/sysdeps/unix/sysv/hpux/sysdep.h b/sysdeps/unix/sysv/hpux/sysdep.h
deleted file mode 100644
index 89a3377116..0000000000
--- a/sysdeps/unix/sysv/hpux/sysdep.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright (C) 1999 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Ulrich Drepper, <drepper@cygnus.com>, August 1999.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* No underscores necessary. */
-#define NO_UNDERSCORES
-
-#include <sysdeps/hppa/sysdep.h>
-
-/* HPUX uses the usual syscall naming. */
-#define SYS_ify(name) SYS_##name
diff --git a/sysdeps/unix/sysv/irix4/Dist b/sysdeps/unix/sysv/irix4/Dist
deleted file mode 100644
index 09026af264..0000000000
--- a/sysdeps/unix/sysv/irix4/Dist
+++ /dev/null
@@ -1,2 +0,0 @@
-__handler.S
-sigtramp.c
diff --git a/sysdeps/unix/sysv/irix4/Implies b/sysdeps/unix/sysv/irix4/Implies
deleted file mode 100644
index 35e1edd830..0000000000
--- a/sysdeps/unix/sysv/irix4/Implies
+++ /dev/null
@@ -1,4 +0,0 @@
-# Irix 4 has the set of things which are also common to BSD and SVR4.
-unix/common
-# Irix 4 has the canonical set of <sys/mman.h> system calls.
-unix/mman
diff --git a/sysdeps/unix/sysv/irix4/Makefile b/sysdeps/unix/sysv/irix4/Makefile
deleted file mode 100644
index d07981e8f7..0000000000
--- a/sysdeps/unix/sysv/irix4/Makefile
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright (C) 1993, 1997 Free Software Foundation, Inc.
-# This file is part of the GNU C Library.
-
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
-
-# You should have received a copy of the GNU Lesser General Public
-# License along with the GNU C Library; if not, write to the Free
-# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-# 02111-1307 USA.
-
-ifeq ($(subdir),signal)
-sysdep_routines := $(sysdep_routines) sigtramp __handler
-endif
-
-ifeq ($(subdir),misc)
-sysdep_routines := $(sysdep_routines) syssgi sysmp
-endif
diff --git a/sysdeps/unix/sysv/irix4/__handler.S b/sysdeps/unix/sysv/irix4/__handler.S
deleted file mode 100644
index f02121a0c2..0000000000
--- a/sysdeps/unix/sysv/irix4/__handler.S
+++ /dev/null
@@ -1,117 +0,0 @@
-/* Copyright (C) 1992, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@cs.widener.edu).
- Also hacked by Ian Lance Taylor (ian@airs.com).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-/* This function saves all the registers, calls the
- user function, and then executes a sigreturn system call. The
- sigreturn call wants the address of a sigcontext structure. This
- is all hideously system dependent and, for all intents and
- purposes, undocumented.
-
- When we enter here, a3 holds the user's signal handler. We are
- supposed to fill in the context given in a2, and then pass it and
- the first two arguments to the user's function. If the user's
- function returns, we execute a sigreturn system call.
-
- The sc_onstack, sc_mask and sc_pc elements of the context are
- already set by the kernel. For some reason we don't have to save
- the floating point state or the coprocessor state; the kernel may
- have saved them for us, or it doesn't use them. */
-
-.set noat
-ENTRY (__handler)
-#if 0
- /* Store zero and the asm temp reg. */
- sw $0, 12(a2)
- sw AT, 16(a2)
-
- /* Put v1 in sc_regs[3]. */
- sw v1, 24(a2)
-
- /* Save the caller saved registers in sc_regs[8..15]. */
- sw t0, 44(a2)
- sw t1, 48(a2)
- sw t2, 52(a2)
- sw t3, 56(a2)
- sw t4, 60(a2)
- sw t5, 64(a2)
- sw t6, 68(a2)
- sw t7, 72(a2)
-
- /* Save the callee saved registers in sc_regs[16..23]. */
- sw s0, 76(a2)
- sw s1, 80(a2)
- sw s2, 84(a2)
- sw s3, 88(a2)
- sw s4, 92(a2)
- sw s5, 96(a2)
- sw s6, 100(a2)
- sw s7, 104(a2)
-
- /* Save the code generator registers in sc_regs[24] & sc_regs[25]. */
- sw t8, 108(a2)
- sw t9, 112(a2)
-
- /* Save the kernel temp regs in sc_regs[26] & sc_regs[27]. */
- sw k0, 116(a2)
- sw k1, 120(a2)
-
- /* Save the global pointer in sc_regs[28]. */
- sw gp, 124(a2)
-
- /* ... and also the return address in sc_regs[31]. */
- sw ra, 136(a2)
-
- /* Note: we don't save the stack pointer in sc_regs[29];
- instead, we use the one that was already there. */
-#if 0
- sw sp, 128(a2)
-#endif
-
- /* Save the floating pointer in sc_regs[30]. */
- sw fp, 132(a2)
-
- /* Save the mul/div stuff in sc_mdlo and sc_mdhi. */
- mflo t0
- sw t0, 140(a2)
- mfhi t0
- sw t0, 144(a2)
-
-#endif
- /* Move the stack up six. This will save the context. */
- addu sp, sp, -24
- sw a2, 16(sp)
-
- /* Call their handler with the signal, code, and context; note
- this will clobber the context. */
- .set noreorder
- jal ra, a3
- nop
- .set reorder
-
- /* When we come back, restore the context and pass it right
- on into sigreturn(). */
- lw a0, 16(sp)
-
- /* Do a sigreturn syscall; this doesn't return. */
- li v0, SYS_sigreturn
- syscall
- nop
diff --git a/sysdeps/unix/sysv/irix4/bits/confname.h b/sysdeps/unix/sysv/irix4/bits/confname.h
deleted file mode 100644
index ed334694cd..0000000000
--- a/sysdeps/unix/sysv/irix4/bits/confname.h
+++ /dev/null
@@ -1,84 +0,0 @@
-/* `sysconf', `pathconf', and `confstr' NAME values. Irix 4 version.
- Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _UNISTD_H
-# error "Never use <bits/confname.h> directly; include <unistd.h> instead."
-#endif
-
-/* Values for the NAME argument to `pathconf' and `fpathconf'. */
-enum
- {
- _PC_LINK_MAX = 1,
- _PC_MAX_CANON,
- _PC_MAX_INPUT,
- _PC_NAME_MAX,
- _PC_PATH_MAX,
- _PC_PIPE_BUF,
- _PC_CHOWN_RESTRICTED,
- _PC_NO_TRUNC,
- _PC_VDISABLE
- };
-
-/* Values for the argument to `sysconf'. */
-enum
- {
- _SC_ARG_MAX = 1,
- _SC_CHILD_MAX,
- _SC_CLK_TCK,
- _SC_NGROUPS_MAX,
- _SC_OPEN_MAX,
- _SC_JOB_CONTROL,
- _SC_SAVED_IDS,
- _SC_VERSION,
-
- /* Above are done by the Irix system call.
- The rest are done by the C library (or are not really implemented). */
-
- _SC_STREAM_MAX,
- _SC_TZNAME_MAX,
- _SC_PAGESIZE,
-
- /* Values for the argument to `sysconf'
- corresponding to _POSIX2_* symbols. */
- _SC_BC_BASE_MAX,
- _SC_BC_DIM_MAX,
- _SC_BC_SCALE_MAX,
- _SC_BC_STRING_MAX,
- _SC_COLL_WEIGHTS_MAX,
- _SC_EQUIV_CLASS_MAX,
- _SC_EXPR_NEST_MAX,
- _SC_LINE_MAX,
- _SC_RE_DUP_MAX,
-
- _SC_2_VERSION,
- _SC_2_C_BIND,
- _SC_2_C_DEV,
- _SC_2_FORT_DEV,
- _SC_2_FORT_RUN,
- _SC_2_SW_DEV,
- _SC_2_LOCALEDEF
- };
-
-#ifdef __USE_POSIX2
-/* Values for the NAME argument to `confstr'. */
-enum
- {
- _CS_PATH /* The default search path. */
- };
-#endif
diff --git a/sysdeps/unix/sysv/irix4/bits/fcntl.h b/sysdeps/unix/sysv/irix4/bits/fcntl.h
deleted file mode 100644
index 5eb7c76eb7..0000000000
--- a/sysdeps/unix/sysv/irix4/bits/fcntl.h
+++ /dev/null
@@ -1,109 +0,0 @@
-/* O_*, F_*, FD_* bit values for SGI Irix 4.
- Copyright (C) 1994, 1997, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _FCNTL_H
-#error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead."
-#endif
-
-
-/* File access modes for `open' and `fcntl'. */
-#define O_RDONLY 0 /* Open read-only. */
-#define O_WRONLY 1 /* Open write-only. */
-#define O_RDWR 2 /* Open read/write. */
-
-
-/* Bits OR'd into the second argument to open. */
-#define O_CREAT 00400 /* Create file if it doesn't exist. */
-#define O_EXCL 02000 /* Fail if file already exists. */
-#define O_TRUNC 01000 /* Truncate file to zero length. */
-#ifdef __USE_MISC
-#define O_SYNC 00020 /* Synchronous writes. */
-#define O_FSYNC O_SYNC
-#define O_ASYNC 00100 /* Send SIGIO to owner when data is ready. */
-#endif
-
-/* File status flags for `open' and `fcntl'. */
-#define O_APPEND 000010 /* Writes append to the file. */
-#ifdef __USE_BSD
-#define O_NDELAY 000004 /* Non-blocking I/O. */
-#endif
-#define O_NONBLOCK 000200 /* POSIX.1 non-blocking I/O. */
-
-/* Mask for file access modes. This is system-dependent in case
- some system ever wants to define some other flavor of access. */
-#define O_ACCMODE (O_RDONLY|O_WRONLY|O_RDWR)
-
-/* Values for the second argument to `fcntl'. */
-#define F_DUPFD 0 /* Duplicate file descriptor. */
-#define F_GETFD 1 /* Get file descriptor flags. */
-#define F_SETFD 2 /* Set file descriptor flags. */
-#define F_GETFL 3 /* Get file status flags. */
-#define F_SETFL 4 /* Set file status flags. */
-#define F_GETLK 5 /* Get record locking info. */
-#define F_SETLK 6 /* Set record locking info. */
-#define F_SETLKW 7 /* Set record locking info, wait. */
-#ifdef __USE_MISC
-#define F_CHKFL 8 /* Check legality of file flag changes. */
-#define F_ALLOCSP 10
-#define F_FREESP 11
-#define F_SETBSDLK 12 /* Set Berkeley record lock. */
-#define F_SETBSDLKW 13 /* Set Berkeley record lock and wait. */
-#define F_RGETLK 20 /* Get info on a remote lock. */
-#define F_RSETLK 21 /* Set or unlock a remote lock. */
-#define F_RSETLKW 22 /* Set or unlock a remote lock and wait. */
-#endif
-#if defined __USE_BSD || defined __USE_UNIX98
-#define F_GETOWN 10 /* Get owner; only works on sockets. */
-#define F_SETOWN 11 /* Set owner; only works on sockets. */
-#endif
-
-
-/* File descriptor flags used with F_GETFD and F_SETFD. */
-#define FD_CLOEXEC 1 /* Close on exec. */
-
-
-#include <bits/types.h>
-
-/* The structure describing an advisory lock. This is the type of the third
- argument to `fcntl' for the F_GETLK, F_SETLK, and F_SETLKW requests. */
-struct flock
- {
- short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */
- short int l_whence; /* Where `l_start' is relative to (like `lseek'). */
- __off_t l_start; /* Offset where the lock begins. */
- __off_t l_len; /* Size of the locked area; zero means until EOF. */
- short int l_sysid; /* System ID where locking process resides. */
- short int l_pid; /* Process holding the lock. */
- };
-
-/* Values for the `l_type' field of a `struct flock'. */
-#define F_RDLCK 1 /* Read lock. */
-#define F_WRLCK 2 /* Write lock. */
-#define F_UNLCK 3 /* Remove lock. */
-
-
-/* Define some more compatibility macros to be backward compatible with
- BSD systems which did not managed to hide these kernel macros. */
-#ifdef __USE_BSD
-#define FAPPEND O_APPEND
-#define FFSYNC O_FSYNC
-#define FASYNC O_ASYNC
-#define FNONBLOCK O_NONBLOCK
-#define FNDELAY O_NDELAY
-#endif /* Use BSD. */
diff --git a/sysdeps/unix/sysv/irix4/bits/mman.h b/sysdeps/unix/sysv/irix4/bits/mman.h
deleted file mode 100644
index 1549ff01c7..0000000000
--- a/sysdeps/unix/sysv/irix4/bits/mman.h
+++ /dev/null
@@ -1,64 +0,0 @@
-/* Definitions for BSD-style memory management. Irix 4 version.
- Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _BITS_MMAN_H
-#define _BITS_MMAN_H 1
-
-/* Protections are chosen from these bits, OR'd together. The
- implementation does not necessarily support PROT_EXEC or PROT_WRITE
- without PROT_READ. The only guarantees are that no writing will be
- allowed without PROT_WRITE and no access will be allowed for PROT_NONE. */
-
-#define PROT_NONE 0x00 /* No access. */
-#define PROT_READ 0x04 /* Pages can be read. */
-#define PROT_WRITE 0x02 /* Pages can be written. */
-#define PROT_EXEC 0x01 /* Pages can be executed. */
-#ifdef __USE_MISC
-# define PROT_EXECUTE PROT_EXEC
-#endif
-
-/* Sharing types (must choose one and only one of these). */
-#define MAP_SHARED 0x01 /* Share changes. */
-#define MAP_PRIVATE 0x02 /* Changes private; copy pages on write. */
-#ifdef __USE_BSD
-# define MAP_TYPE 0x0f /* Mask for sharing type. */
-#endif
-
-/* Other flags. */
-#define MAP_FIXED 0x10 /* Map address must be exactly as requested. */
-#ifdef __USE_MISC
-# define MAP_RENAME 0x20 /* Rename private pages to file. */
-# define MAP_AUTOGROW 0x40 /* Grow file as pages are written. */
-# define MAP_LOCAL 0x80 /* Copy the mapped region on fork. */
-#endif
-
-/* Advice to `madvise'. */
-#ifdef __USE_BSD
-# define MADV_NORMAL 0 /* No further special treatment. */
-# define MADV_RANDOM 1 /* Expect random page references. */
-# define MADV_SEQUENTIAL 2 /* Expect sequential page references. */
-# define MADV_WILLNEED 3 /* Will need these pages. */
-# define MADV_DONTNEED 4 /* Don't need these pages. */
-#endif
-
-/* Flags to `msync'. */
-#define MS_ASYNC 0x1 /* Return immediately, don't fsync. */
-#define MS_INVALIDATE 0x2 /* Invalidate caches. */
-
-#endif /* bits/mman.h */
diff --git a/sysdeps/unix/sysv/irix4/bits/signum.h b/sysdeps/unix/sysv/irix4/bits/signum.h
deleted file mode 100644
index c96ab9d2b9..0000000000
--- a/sysdeps/unix/sysv/irix4/bits/signum.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/* Signal number definitions. Irix4 version.
- Copyright (C) 1994, 1996 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifdef _SIGNAL_H
-
-/* This file defines the fake signal functions and signal
- number constants for SGI Irix 4. */
-
-/* Fake signal functions. */
-#define SIG_ERR ((__sighandler_t) -1)
-#define SIG_DFL ((__sighandler_t) 0)
-#define SIG_IGN ((__sighandler_t) 1)
-
-
-/* Signals. */
-#define SIGHUP 1 /* Hangup (POSIX). */
-#define SIGINT 2 /* Interrupt (ANSI). */
-#define SIGQUIT 3 /* Quit (POSIX). */
-#define SIGILL 4 /* Illegal instruction (ANSI). */
-#define SIGABRT SIGIOT /* Abort (ANSI). */
-#define SIGTRAP 5 /* Trace trap (POSIX). */
-#define SIGIOT 6 /* IOT trap. */
-#define SIGEMT 7 /* EMT trap. */
-#define SIGFPE 8 /* Floating-point exception (ANSI). */
-#define SIGKILL 9 /* Kill, unblockable (POSIX). */
-#define SIGBUS 10 /* Bus error. */
-#define SIGSEGV 11 /* Segmentation violation (ANSI). */
-#define SIGSYS 12 /* Bad argument to system call*/
-#define SIGPIPE 13 /* Broken pipe (POSIX). */
-#define SIGALRM 14 /* Alarm clock (POSIX). */
-#define SIGTERM 15 /* Termination (ANSI). */
-#define SIGUSR1 16 /* User-defined signal 1 (POSIX). */
-#define SIGUSR2 17 /* User-defined signal 2 (POSIX). */
-#define SIGCHLD 18 /* Child status has changed (POSIX). */
-#define SIGCLD SIGCHLD /* Same as SIGCHLD (System V). */
-#define SIGPWR 19 /* Power going down. */
-#define SIGSTOP 20 /* Stop, unblockable (POSIX). */
-#define SIGTSTP 21 /* Keyboard stop (POSIX). */
-#define SIGPOLL 22 /* Same as SIGIO? (SVID). */
-#define SIGIO 23 /* I/O now possible. */
-#define SIGURG 24 /* Urgent condition on socket.*/
-#define SIGWINCH 25 /* Window size change. */
-#define SIGVTALRM 26 /* Virtual alarm clock. */
-#define SIGPROF 27 /* Profiling alarm clock. */
-#define SIGCONT 28 /* Continue (POSIX). */
-#define SIGTTIN 29 /* Background read from tty (POSIX). */
-#define SIGTTOU 30 /* Background write to tty (POSIX). */
-#define SIGXCPU 31 /* CPU limit exceeded. */
-#define SIGXFSZ 32 /* File size limit exceeded. */
-
-#endif /* <signal.h> included. */
-
-#define _NSIG 33 /* Biggest signal number + 1. */
diff --git a/sysdeps/unix/sysv/irix4/bits/stat.h b/sysdeps/unix/sysv/irix4/bits/stat.h
deleted file mode 100644
index 33f575db1c..0000000000
--- a/sysdeps/unix/sysv/irix4/bits/stat.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/* Copyright (C) 1992, 1996, 1997, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_STAT_H
-# error "Never include <bits/stat.h> directly; use <sys/stat.h> instead."
-#endif
-
-struct stat
- {
- unsigned long st_ino;
- short int st_dev;
- unsigned short int st_mode;
- short int st_nlink;
- unsigned short int st_uid;
- unsigned short int st_gid;
- short int st_rdev;
- long int st_size;
- long int st_atime;
- long int st_mtime;
- long int st_ctime;
- };
-
-/* Encoding of the file mode. */
-
-#define __S_IFMT 0170000 /* These bits determine file type. */
-
-/* File types. */
-#define __S_IFDIR 0040000 /* Directory. */
-#define __S_IFCHR 0020000 /* Character device. */
-#define __S_IFBLK 0060000 /* Block device. */
-#define __S_IFREG 0100000 /* Regular file. */
-#define __S_IFIFO 0010000 /* FIFO. */
-
-/* These don't actually exist on System V, but having them doesn't hurt. */
-#define __S_IFLNK 0120000 /* Symbolic link. */
-#define __S_IFSOCK 0140000 /* Socket. */
-
-/* POSIX.1b objects. */
-#define __S_TYPEISMQ(buf) (0)
-#define __S_TYPEISSEM(buf) (0)
-#define __S_TYPEISSHM(buf) (0)
-
-/* Protection bits. */
-
-#define __S_ISUID 04000 /* Set user ID on execution. */
-#define __S_ISGID 02000 /* Set group ID on execution. */
-#define __S_ISVTX 01000 /* Save swapped text after use (sticky). */
-#define __S_IREAD 0400 /* Read by owner. */
-#define __S_IWRITE 0200 /* Write by owner. */
-#define __S_IEXEC 0100 /* Execute by owner. */
diff --git a/sysdeps/unix/sysv/irix4/dup2.c b/sysdeps/unix/sysv/irix4/dup2.c
deleted file mode 100644
index 86720b1b70..0000000000
--- a/sysdeps/unix/sysv/irix4/dup2.c
+++ /dev/null
@@ -1,3 +0,0 @@
-#include <sysdeps/posix/__dup2.c>
-
-weak_alias (__dup2, dup2)
diff --git a/sysdeps/unix/sysv/irix4/fpathconf.c b/sysdeps/unix/sysv/irix4/fpathconf.c
deleted file mode 100644
index 236eb1a6bc..0000000000
--- a/sysdeps/unix/sysv/irix4/fpathconf.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Copyright (C) 1994, 1995, 1997, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <stddef.h>
-#include <unistd.h>
-#include <sys/syssgi.h>
-
-extern int __syssgi (int, ...);
-
-/* Get file-specific information about descriptor FD. */
-long int
-__fpathconf (fd, name)
- int fd;
- int name;
-{
- return __syssgi (SGI_PATHCONF, FPATHCONF, fd, name);
-}
-
-weak_alias (__fpathconf, fpathconf)
diff --git a/sysdeps/unix/sysv/irix4/getgroups.c b/sysdeps/unix/sysv/irix4/getgroups.c
deleted file mode 100644
index 4c859eac83..0000000000
--- a/sysdeps/unix/sysv/irix4/getgroups.c
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Copyright (C) 1994, 1995, 1997, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/syssgi.h>
-#include <sys/types.h>
-#include <grp.h>
-
-extern int __syssgi (int, ...);
-
-/* Set the group set for the current user to GROUPS (N of them). */
-int
-__getgroups (n, groups)
- size_t n;
- gid_t *groups;
-{
- return __syssgi (SGI_GETGROUPS, n, groups);
-}
-
-weak_alias (__getgroups, getgroups)
diff --git a/sysdeps/unix/sysv/irix4/getpriority.c b/sysdeps/unix/sysv/irix4/getpriority.c
deleted file mode 100644
index 807ac2fba7..0000000000
--- a/sysdeps/unix/sysv/irix4/getpriority.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Copyright (C) 1994,96,97,2000,02, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <sys/resource.h>
-#include <sys/sysmp.h>
-
-extern int __sysmp (int, ...);
-
-/* Return the highest priority of any process specified by WHICH and WHO
- (see <sys/resource.h>); if WHO is zero, the current process, process group,
- or user (as specified by WHO) is used. A lower priority number means higher
- priority. Priorities range from PRIO_MIN to PRIO_MAX. */
-int
-getpriority (which, who)
- enum __priority_which which;
- id_t who;
-{
- switch (which)
- {
- case PRIO_PROCESS:
- return __sysmp (MP_SCHED, MPTS_GTNICE_PROC, who);
- case PRIO_PGRP:
- return __sysmp (MP_SCHED, MPTS_GTNICE_PGRP, who);
- case PRIO_USER:
- return __sysmp (MP_SCHED, MPTS_GTNICE_USER, who);
- }
-
- __set_errno (EINVAL);
- return -1;
-}
-libc_hidden_def (getpriority)
diff --git a/sysdeps/unix/sysv/irix4/getrusage.c b/sysdeps/unix/sysv/irix4/getrusage.c
deleted file mode 100644
index 3cabbdf3e2..0000000000
--- a/sysdeps/unix/sysv/irix4/getrusage.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Copyright (C) 1994, 1995, 1997, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/resource.h>
-#include <errno.h>
-#include <sys/syssgi.h>
-
-extern int __syssgi (int, ...);
-
-/* Return resource usage information on process indicated by WHO
- and put it in *USAGE. Returns 0 for success, -1 for failure. */
-int
-__getrusage (who, usage)
- enum __rusage_who who;
- struct rusage *usage;
-{
- return __syssgi (SGI_RUSAGE, who, usage);
-}
-
-weak_alias (__getrusage, getrusage)
diff --git a/sysdeps/unix/sysv/irix4/gettimeofday.c b/sysdeps/unix/sysv/irix4/gettimeofday.c
deleted file mode 100644
index d7055be82e..0000000000
--- a/sysdeps/unix/sysv/irix4/gettimeofday.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/posix/gettimeofday.c>
diff --git a/sysdeps/unix/sysv/irix4/pathconf.c b/sysdeps/unix/sysv/irix4/pathconf.c
deleted file mode 100644
index 51da0c5635..0000000000
--- a/sysdeps/unix/sysv/irix4/pathconf.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Copyright (C) 1994, 1995, 1997, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <stddef.h>
-#include <unistd.h>
-#include <sys/syssgi.h>
-
-extern int __syssgi (int, ...);
-
-/* Get file-specific information about PATH. */
-long int
-__pathconf (path, name)
- const char *path;
- int name;
-{
- return __syssgi (SGI_PATHCONF, PATHCONF, path, name);
-}
-
-weak_alias (__pathconf, pathconf)
diff --git a/sysdeps/unix/sysv/irix4/readv.c b/sysdeps/unix/sysv/irix4/readv.c
deleted file mode 100644
index baa976da6d..0000000000
--- a/sysdeps/unix/sysv/irix4/readv.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/posix/readv.c>
diff --git a/sysdeps/unix/sysv/irix4/reboot.c b/sysdeps/unix/sysv/irix4/reboot.c
deleted file mode 100644
index 4d90e6fc56..0000000000
--- a/sysdeps/unix/sysv/irix4/reboot.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/generic/reboot.c>
diff --git a/sysdeps/unix/sysv/irix4/setgroups.c b/sysdeps/unix/sysv/irix4/setgroups.c
deleted file mode 100644
index cca816bcff..0000000000
--- a/sysdeps/unix/sysv/irix4/setgroups.c
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright (C) 1994,97,2002, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/syssgi.h>
-#include <sys/types.h>
-#include <grp.h>
-
-extern int __syssgi (int, ...);
-
-/* Set the group set for the current user to GROUPS (N of them). */
-int
-setgroups (n, groups)
- size_t n;
- const gid_t *groups;
-{
- return __syssgi (SGI_SETGROUPS, n, groups);
-}
-libc_hidden_def (setgroups)
diff --git a/sysdeps/unix/sysv/irix4/setpriority.c b/sysdeps/unix/sysv/irix4/setpriority.c
deleted file mode 100644
index 99353187f6..0000000000
--- a/sysdeps/unix/sysv/irix4/setpriority.c
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Copyright (C) 1994,96,97,2000,02 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <sys/resource.h>
-#include <sys/sysmp.h>
-
-int
-setpriority (which, who, prio)
- enum __priority_which which;
- id_t who;
- int prio;
-{
- switch (which)
- {
- case PRIO_PROCESS:
- return __sysmp (MP_SCHED, MPTS_RENICE_PROC, who, prio);
- case PRIO_PGRP:
- return __sysmp (MP_SCHED, MPTS_RENICE_PGRP, who, prio);
- case PRIO_USER:
- return __sysmp (MP_SCHED, MPTS_RENICE_USER, who, prio);
- }
-
- __set_errno (EINVAL);
- return -1;
-}
-libc_hidden_def (setpriority)
diff --git a/sysdeps/unix/sysv/irix4/sigreturn.S b/sysdeps/unix/sysv/irix4/sigreturn.S
deleted file mode 100644
index 296db1d47d..0000000000
--- a/sysdeps/unix/sysv/irix4/sigreturn.S
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright (C) 1992, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@cs.widener.edu).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-ENTRY(__sigreturn)
- li v0, SYS_sigreturn
- syscall
-
-weak_alias (__sigreturn, sigreturn)
diff --git a/sysdeps/unix/sysv/irix4/sigtramp.c b/sysdeps/unix/sysv/irix4/sigtramp.c
deleted file mode 100644
index f8de75a7cd..0000000000
--- a/sysdeps/unix/sysv/irix4/sigtramp.c
+++ /dev/null
@@ -1,53 +0,0 @@
-/* Copyright (C) 1992, 1997, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* The sigvec system call on MIPS Ultrix takes an additional
- parameter, which is the address that is actually called when the
- signal occurs.
-
- When a signal occurs, we arrange for the kernel to call __handler.
- That will save the frame and stack pointers into the context, and
- then jump to this routine. See __handler.S.
-
- This code is based on sysdeps/unix/bsd/sun4/sigtramp.c, but it's
- different because since we get passed the user signal handler we
- don't actually need a trampoline. */
-
-#include <signal.h>
-#include <stddef.h>
-#include <errno.h>
-
-/* The user's signal handler is called with three arguments. */
-typedef void (*handler_type) (int sig, int code, struct sigcontext *);
-
-/* Defined in signal.S. */
-extern __sighandler_t __raw_signal (int sig, __sighandler_t func,
- void (*)(int sig, int code,
- struct sigcontext *,
- handler_type));
-
-extern void __handler (int sig, int code, struct sigcontext *,
- handler_type);
-
-__sighandler_t
-signal (sig, func)
- int sig;
- __sighandler_t func;
-{
- return __raw_signal (sig, func, __handler);
-}
diff --git a/sysdeps/unix/sysv/irix4/start.c b/sysdeps/unix/sysv/irix4/start.c
deleted file mode 100644
index fdda8809e6..0000000000
--- a/sysdeps/unix/sysv/irix4/start.c
+++ /dev/null
@@ -1,75 +0,0 @@
-/* Copyright (C) 1991,1992,1995,1996,1997,2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- In addition to the permissions in the GNU Lesser General Public
- License, the Free Software Foundation gives you unlimited
- permission to link the compiled version of this file with other
- programs, and to distribute those programs without any restriction
- coming from the use of this file. (The GNU Lesser General Public
- License restrictions do apply in other respects; for example, they
- cover modification of the file, and distribution when not linked
- into another program.)
-
- Note that people who make modified versions of this file are not
- obligated to grant this special exception for their modified
- versions; it is their choice whether to do so. The GNU Lesser
- General Public License gives permission to release a modified
- version without this exception; this exception also makes it
- possible to release a modified version which carries forward this
- exception.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <stdlib.h>
-#include <unistd.h>
-
-#ifndef __GNUC__
- #error This file uses GNU C extensions; you must compile with GCC.
-#endif
-
-/* The first piece of initialized data. */
-int __data_start = 0;
-
-extern void __libc_init (int argc, char **argv, char **envp);
-extern int main (int argc, char **argv, char **envp);
-
-/* Use the stack pointer to access the arguments. This assumes that
- we can guess how big the frame will be. */
-register long int sp asm("sp");
-#ifdef __OPTIMIZE__
-#define STACKSIZE 8
-#else
-#define STACKSIZE 10
-#endif
-
-void
-__start ()
-{
- int argc;
- char **argv, **envp;
-
- /* Set up the global pointer. */
- asm volatile ("la $28,_gp");
- argc = ((int *) sp)[STACKSIZE];
- argv = (char **) &((int *) sp)[STACKSIZE + 1];
- envp = &argv[argc + 1];
- __environ = envp;
-
- __libc_init (argc, argv, envp);
- errno = 0;
- exit (main (argc, argv, envp));
-}
diff --git a/sysdeps/unix/sysv/irix4/swapon.c b/sysdeps/unix/sysv/irix4/swapon.c
deleted file mode 100644
index 54885a883e..0000000000
--- a/sysdeps/unix/sysv/irix4/swapon.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/generic/swapon.c>
diff --git a/sysdeps/unix/sysv/irix4/syscalls.list b/sysdeps/unix/sysv/irix4/syscalls.list
deleted file mode 100644
index a57529e9ad..0000000000
--- a/sysdeps/unix/sysv/irix4/syscalls.list
+++ /dev/null
@@ -1,8 +0,0 @@
-# File name Caller Syscall name # args Strong name Weak names
-
-getpgid - bsdgetpgrp 1 __getpgid getpgid
-msync - msync 3 msync
-setpgid - bsdsetpgrp 2 __setpgid setpgid
-signal - signal 3 __raw_signal
-sysmp - sysmp 4 __sysmp
-syssgi - syssgi 2 __syssgi
diff --git a/sysdeps/unix/sysv/irix4/sysconf.c b/sysdeps/unix/sysv/irix4/sysconf.c
deleted file mode 100644
index ef7606edad..0000000000
--- a/sysdeps/unix/sysv/irix4/sysconf.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright (C) 1994, 1995, 1997, 2002, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-#include <sys/syssgi.h>
-
-extern int __syssgi ((int, ...);
-
-/* Get the value of the system variable NAME. */
-long int
-__sysconf (name)
- int name;
-{
- if (name == _SC_TZNAME_MAX)
- return __tzname_max ();
-
- return __syssgi (SGI_SYSCONF, name);
-}
-
-weak_alias (__sysconf, sysconf)
-libc_hidden_def (__sysconf)
diff --git a/sysdeps/unix/sysv/irix4/uname.S b/sysdeps/unix/sysv/irix4/uname.S
deleted file mode 100644
index 0b6536fd29..0000000000
--- a/sysdeps/unix/sysv/irix4/uname.S
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-ENTRY(uname)
- li a2, 0
- li a3, 0
-SYSCALL__ (utssys, 1)
- j ra
- move v0, zero
diff --git a/sysdeps/unix/sysv/irix4/wait.S b/sysdeps/unix/sysv/irix4/wait.S
deleted file mode 100644
index 90cd5948e7..0000000000
--- a/sysdeps/unix/sysv/irix4/wait.S
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Copyright (C) 1992, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@cs.widener.edu).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-.set noreorder
-
-ENTRY(__wait)
- /* Prep it for wait */
- move a1, zero
- move a2, zero
-
- li v0, SYS_wait
- syscall
- beq a3, zero, noerror
- nop
- j syscall_error
- nop
-noerror:
- beq a0, zero, noarg
- nop
- sw v1, 0(a0)
- nop
-noarg:
- ret
-
-weak_alias (__wait, wait)
diff --git a/sysdeps/unix/sysv/irix4/waitpid.c b/sysdeps/unix/sysv/irix4/waitpid.c
deleted file mode 100644
index 8378982ac7..0000000000
--- a/sysdeps/unix/sysv/irix4/waitpid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/bsd/bsd4.4/waitpid.c>
diff --git a/sysdeps/unix/sysv/irix4/writev.c b/sysdeps/unix/sysv/irix4/writev.c
deleted file mode 100644
index 0dc6a76014..0000000000
--- a/sysdeps/unix/sysv/irix4/writev.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/posix/writev.c>
diff --git a/sysdeps/unix/sysv/isc2.2/syscalls.list b/sysdeps/unix/sysv/isc2.2/syscalls.list
deleted file mode 100644
index 0ea253e3ca..0000000000
--- a/sysdeps/unix/sysv/isc2.2/syscalls.list
+++ /dev/null
@@ -1,2 +0,0 @@
-# File name Caller Syscall name # args Strong name Weak names
-
diff --git a/sysdeps/unix/sysv/linux/cris/brk.c b/sysdeps/unix/sysv/linux/alpha/setregid.c
index ce49445122..cfc8283c3a 100644
--- a/sysdeps/unix/sysv/linux/cris/brk.c
+++ b/sysdeps/unix/sysv/linux/alpha/setregid.c
@@ -1,5 +1,4 @@
-/* brk system call for Linux/CRIS.
- Copyright (C) 1995, 1996, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 2000, 2003, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -19,26 +18,36 @@
#include <errno.h>
#include <unistd.h>
+#include <sys/types.h>
+
#include <sysdep.h>
+#include <sys/syscall.h>
+
+#include <linux/posix_types.h>
+#include "kernel-features.h"
+#include <pthread-functions.h>
-/* This must be initialized data because commons can't have aliases. */
-void *__curbrk = 0;
int
-__brk (void *addr)
+__setregid (gid_t rgid, gid_t egid)
{
- unsigned char *newbrk;
-
- newbrk = (unsigned char *) INLINE_SYSCALL (brk, 1, addr);
+ int result;
- __curbrk = newbrk;
+ result = INLINE_SYSCALL (setregid, 2, (signed int)rgid, (signed int)egid);
- if (newbrk < (unsigned char *) addr)
+#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD
+ if (result == 0 && __libc_pthread_functions.ptr__nptl_setxid != NULL)
{
- __set_errno (ENOMEM);
- return -1;
+ struct xid_command cmd;
+ cmd.syscall_no = __NR_setregid;
+ cmd.id[0] = rgid;
+ cmd.id[1] = egid;
+ __libc_pthread_functions.ptr__nptl_setxid (&cmd);
}
+#endif
- return 0;
+ return result;
}
-weak_alias (__brk, brk)
+#ifndef __setregid
+weak_alias (__setregid, setregid)
+#endif
diff --git a/sysdeps/unix/sysv/sco3.2.4/__setpgid.c b/sysdeps/unix/sysv/linux/alpha/setresgid.c
index d51fa602c9..fdfa486534 100644
--- a/sysdeps/unix/sysv/sco3.2.4/__setpgid.c
+++ b/sysdeps/unix/sysv/linux/alpha/setresgid.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1994, 1997, 2002, 2004 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 2000, 2003, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -20,14 +20,36 @@
#include <unistd.h>
#include <sys/types.h>
-extern int __pgrpsys (int type, ...);
+#include <sysdep.h>
+#include <sys/syscall.h>
+
+#include <linux/posix_types.h>
+#include "kernel-features.h"
+#include <pthread-functions.h>
+
-/* Get the process group ID of process PID. */
int
-__setpgid (pid, pgid)
- pid_t pid;
- pid_t pgid;
+__setresgid (gid_t rgid, gid_t egid, gid_t sgid)
{
- return __pgrpsys (2, pid, pgid);
+ int result;
+
+ result = INLINE_SYSCALL (setresgid, 3, (signed int)rgid, (signed int)egid, (signed int)sgid);
+
+#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD
+ if (result == 0 && __libc_pthread_functions.ptr__nptl_setxid != NULL)
+ {
+ struct xid_command cmd;
+ cmd.syscall_no = __NR_setresgid;
+ cmd.id[0] = rgid;
+ cmd.id[1] = egid;
+ cmd.id[2] = sgid;
+ __libc_pthread_functions.ptr__nptl_setxid (&cmd);
+ }
+#endif
+
+ return result;
}
-libc_hidden_def (__setpgid)
+libc_hidden_def (__setresgid)
+#ifndef __setresgid
+weak_alias (__setresgid, setresgid)
+#endif
diff --git a/sysdeps/unix/sysv/sysv4/__getpgid.c b/sysdeps/unix/sysv/linux/alpha/setresuid.c
index 74ca3e0f9a..49671278ee 100644
--- a/sysdeps/unix/sysv/sysv4/__getpgid.c
+++ b/sysdeps/unix/sysv/linux/alpha/setresuid.c
@@ -1,6 +1,5 @@
-/* Copyright (C) 1993, 1997, 2002, 2004 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 2000, 2003, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
@@ -21,13 +20,36 @@
#include <unistd.h>
#include <sys/types.h>
-extern int __pgrpsys (int type, ...);
+#include <sysdep.h>
+#include <sys/syscall.h>
+
+#include <linux/posix_types.h>
+#include "kernel-features.h"
+#include <pthread-functions.h>
+
-/* Get the process group ID of process PID. */
int
-__getpgid (pid)
- pid_t pid;
+__setresuid (uid_t ruid, uid_t euid, uid_t suid)
{
- return __pgrpsys (4, pid);
+ int result;
+
+ result = INLINE_SYSCALL (setresuid, 3, (signed int)ruid, (signed int)euid, (signed int)suid);
+
+#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD
+ if (result == 0 && __libc_pthread_functions.ptr__nptl_setxid != NULL)
+ {
+ struct xid_command cmd;
+ cmd.syscall_no = __NR_setresuid;
+ cmd.id[0] = ruid;
+ cmd.id[1] = euid;
+ cmd.id[2] = suid;
+ __libc_pthread_functions.ptr__nptl_setxid (&cmd);
+ }
+#endif
+
+ return result;
}
-libc_hidden_def (__getpgid)
+libc_hidden_def (__setresuid)
+#ifndef __setresuid
+weak_alias (__setresuid, setresuid)
+#endif
diff --git a/sysdeps/unix/sysv/sysv4/__setpgid.c b/sysdeps/unix/sysv/linux/alpha/setreuid.c
index 36ad5cc77b..b29aed479e 100644
--- a/sysdeps/unix/sysv/sysv4/__setpgid.c
+++ b/sysdeps/unix/sysv/linux/alpha/setreuid.c
@@ -1,6 +1,5 @@
-/* Copyright (C) 1993, 1997, 2002, 2004 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 2000, 2003, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
@@ -21,14 +20,34 @@
#include <unistd.h>
#include <sys/types.h>
-extern int __pgrpsys (int type, ...);
+#include <sysdep.h>
+#include <sys/syscall.h>
+
+#include <linux/posix_types.h>
+#include "kernel-features.h"
+#include <pthread-functions.h>
+
-/* Get the process group ID of process PID. */
int
-__setpgid (pid, pgid)
- pid_t pid;
- pid_t pgid;
+__setreuid (uid_t ruid, uid_t euid)
{
- return __pgrpsys (5, pid, pgid);
+ int result;
+
+ result = INLINE_SYSCALL (setreuid, 2, (signed int)ruid, (signed int)euid);
+
+#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD
+ if (result == 0 && __libc_pthread_functions.ptr__nptl_setxid != NULL)
+ {
+ struct xid_command cmd;
+ cmd.syscall_no = __NR_setreuid;
+ cmd.id[0] = ruid;
+ cmd.id[1] = euid;
+ __libc_pthread_functions.ptr__nptl_setxid (&cmd);
+ }
+#endif
+
+ return result;
}
-libc_hidden_def (__setpgid)
+#ifndef __setreuid
+weak_alias (__setreuid, setreuid)
+#endif
diff --git a/sysdeps/unix/sysv/linux/cris/Dist b/sysdeps/unix/sysv/linux/cris/Dist
deleted file mode 100644
index 1b8a7e61a4..0000000000
--- a/sysdeps/unix/sysv/linux/cris/Dist
+++ /dev/null
@@ -1,5 +0,0 @@
-clone.S
-setresuid.c
-setresgid.c
-setfsuid.c
-setfsgid.c
diff --git a/sysdeps/unix/sysv/linux/cris/_G_config.h b/sysdeps/unix/sysv/linux/cris/_G_config.h
deleted file mode 100644
index 083a00abfb..0000000000
--- a/sysdeps/unix/sysv/linux/cris/_G_config.h
+++ /dev/null
@@ -1,106 +0,0 @@
-/* This file is needed by libio to define various configuration parameters.
- These are always the same in the GNU C library. */
-
-/* We have to keep a separate copy for CRIS, because we don't use thunks,
- and libstdc++-v2 (which we currently use) cares. The C++ ABI is
- changed totally with GCC 3.0, where we should not need a separate file. */
-
-#ifndef _G_config_h
-#define _G_config_h 1
-
-/* Define types for libio in terms of the standard internal type names. */
-
-#include <bits/types.h>
-#define __need_size_t
-#define __need_wchar_t
-#define __need_wint_t
-#define __need_NULL
-#include <stddef.h>
-#ifndef _WINT_T
-/* Integral type unchanged by default argument promotions that can
- hold any value corresponding to members of the extended character
- set, as well as at least one value that does not correspond to any
- member of the extended character set. */
-# define _WINT_T
-typedef unsigned int wint_t;
-#endif
-#define __need_mbstate_t
-#include <wchar.h>
-#define _G_size_t size_t
-typedef struct
-{
- __off_t __pos;
- __mbstate_t __state;
-} _G_fpos_t;
-typedef struct
-{
- __off64_t __pos;
- __mbstate_t __state;
-} _G_fpos64_t;
-#define _G_ssize_t __ssize_t
-#define _G_off_t __off_t
-#define _G_off64_t __off64_t
-#define _G_pid_t __pid_t
-#define _G_uid_t __uid_t
-#define _G_wchar_t wchar_t
-#define _G_wint_t wint_t
-#define _G_stat64 stat64
-#include <gconv.h>
-typedef union
-{
- struct __gconv_info __cd;
- struct
- {
- struct __gconv_info __cd;
- struct __gconv_step_data __data;
- } __combined;
-} _G_iconv_t;
-
-typedef int _G_int16_t __attribute__ ((__mode__ (__HI__)));
-typedef int _G_int32_t __attribute__ ((__mode__ (__SI__)));
-typedef unsigned int _G_uint16_t __attribute__ ((__mode__ (__HI__)));
-typedef unsigned int _G_uint32_t __attribute__ ((__mode__ (__SI__)));
-
-#define _G_HAVE_BOOL 1
-
-
-/* These library features are always available in the GNU C library. */
-#define _G_HAVE_ATEXIT 1
-#define _G_HAVE_SYS_CDEFS 1
-#define _G_HAVE_SYS_WAIT 1
-#define _G_NEED_STDARG_H 1
-#define _G_va_list __gnuc_va_list
-
-#define _G_HAVE_PRINTF_FP 1
-#define _G_HAVE_MMAP 1
-#define _G_HAVE_LONG_DOUBLE_IO 1
-#define _G_HAVE_IO_FILE_OPEN 1
-#define _G_HAVE_IO_GETLINE_INFO 1
-
-#define _G_IO_IO_FILE_VERSION 0x20001
-
-#define _G_OPEN64 __open64
-#define _G_LSEEK64 __lseek64
-#define _G_MMAP64 __mmap64
-#define _G_FSTAT64(fd,buf) __fxstat64 (_STAT_VER, fd, buf)
-
-/* This is defined by <bits/stat.h> if `st_blksize' exists. */
-#define _G_HAVE_ST_BLKSIZE defined (_STATBUF_ST_BLKSIZE)
-
-#define _G_BUFSIZ 8192
-
-/* These are the vtbl details for ELF. */
-#define _G_NAMES_HAVE_UNDERSCORE 0
-#define _G_VTABLE_LABEL_HAS_LENGTH 1
-#undef _G_USING_THUNKS
-#define _G_VTABLE_LABEL_PREFIX "_vt."
-#define _G_VTABLE_LABEL_PREFIX_ID _vt.
-
-
-#if defined __cplusplus || defined __STDC__
-# define _G_ARGS(ARGLIST) ARGLIST
-#else
-# define _G_ARGS(ARGLIST) ()
-#endif
-
-#endif /* _G_config.h */
diff --git a/sysdeps/unix/sysv/linux/cris/bits/fcntl.h b/sysdeps/unix/sysv/linux/cris/bits/fcntl.h
deleted file mode 100644
index 36799aa50e..0000000000
--- a/sysdeps/unix/sysv/linux/cris/bits/fcntl.h
+++ /dev/null
@@ -1,189 +0,0 @@
-/* O_*, F_*, FD_* bit values for Linux.
- Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001, 2004
- Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _FCNTL_H
-# error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead."
-#endif
-
-
-#include <sys/types.h>
-
-/* open/fcntl - O_SYNC is only implemented on blocks devices and on files
- located on an ext2 file system */
-#define O_ACCMODE 0003
-#define O_RDONLY 00
-#define O_WRONLY 01
-#define O_RDWR 02
-#define O_CREAT 0100 /* not fcntl */
-#define O_EXCL 0200 /* not fcntl */
-#define O_NOCTTY 0400 /* not fcntl */
-#define O_TRUNC 01000 /* not fcntl */
-#define O_APPEND 02000
-#define O_NONBLOCK 04000
-#define O_NDELAY O_NONBLOCK
-#define O_SYNC 010000
-#define O_FSYNC O_SYNC
-#define O_ASYNC 020000
-
-#ifdef __USE_GNU
-# define O_DIRECT 040000 /* Direct disk access. */
-# define O_DIRECTORY 0200000 /* Must be a directory. */
-# define O_NOFOLLOW 0400000 /* Do not follow links. */
-# define O_NOATIME 01000000 /* Do not set atime. */
-#endif
-
-/* For now Linux has synchronisity options for data and read operations.
- We define the symbols here but let them do the same as O_SYNC since
- this is a superset. */
-#if defined __USE_POSIX199309 || defined __USE_UNIX98
-# define O_DSYNC O_SYNC /* Synchronize data. */
-# define O_RSYNC O_SYNC /* Synchronize read operations. */
-#endif
-
-#ifdef __USE_LARGEFILE64
-# define O_LARGEFILE 0100000
-#endif
-
-/* Values for the second argument to `fcntl'. */
-#define F_DUPFD 0 /* Duplicate file descriptor. */
-#define F_GETFD 1 /* Get file descriptor flags. */
-#define F_SETFD 2 /* Set file descriptor flags. */
-#define F_GETFL 3 /* Get file status flags. */
-#define F_SETFL 4 /* Set file status flags. */
-#ifndef __USE_FILE_OFFSET64
-# define F_GETLK 5 /* Get record locking info. */
-# define F_SETLK 6 /* Set record locking info (non-blocking). */
-# define F_SETLKW 7 /* Set record locking info (blocking). */
-#else
-# define F_GETLK F_GETLK64 /* Get record locking info. */
-# define F_SETLK F_SETLK64 /* Set record locking info (non-blocking).*/
-# define F_SETLKW F_SETLKW64 /* Set record locking info (blocking). */
-#endif
-#define F_GETLK64 12 /* Get record locking info. */
-#define F_SETLK64 13 /* Set record locking info (non-blocking). */
-#define F_SETLKW64 14 /* Set record locking info (blocking). */
-
-#if defined __USE_BSD || defined __USE_UNIX98
-# define F_SETOWN 8 /* Get owner of socket (receiver of SIGIO). */
-# define F_GETOWN 9 /* Set owner of socket (receiver of SIGIO). */
-#endif
-
-#ifdef __USE_GNU
-# define F_SETSIG 10 /* Set number of signal to be sent. */
-# define F_GETSIG 11 /* Get number of signal to be sent. */
-#endif
-
-#ifdef __USE_GNU
-# define F_SETLEASE 1024 /* Set a lease. */
-# define F_GETLEASE 1025 /* Enquire what lease is active. */
-# define F_NOTIFY 1026 /* Request notfications on a directory. */
-#endif
-
-/* For F_[GET|SET]FL. */
-#define FD_CLOEXEC 1 /* actually anything with low bit set goes */
-
-/* For posix fcntl() and `l_type' field of a `struct flock' for lockf(). */
-#define F_RDLCK 0 /* Read lock. */
-#define F_WRLCK 1 /* Write lock. */
-#define F_UNLCK 2 /* Remove lock. */
-
-/* For old implementation of bsd flock(). */
-#define F_EXLCK 4 /* or 3 */
-#define F_SHLCK 8 /* or 4 */
-
-#ifdef __USE_BSD
-/* Operations for bsd flock(), also used by the kernel implementation. */
-# define LOCK_SH 1 /* shared lock */
-# define LOCK_EX 2 /* exclusive lock */
-# define LOCK_NB 4 /* or'd with one of the above to prevent
- blocking */
-# define LOCK_UN 8 /* remove lock */
-#endif
-
-#ifdef __USE_GNU
-# define LOCK_MAND 32 /* This is a mandatory flock: */
-# define LOCK_READ 64 /* ... which allows concurrent read operations. */
-# define LOCK_WRITE 128 /* ... which allows concurrent write operations. */
-# define LOCK_RW 192 /* ... Which allows concurrent read & write operations. */
-#endif
-
-#ifdef __USE_GNU
-/* Types of directory notifications that may be requested with F_NOTIFY. */
-# define DN_ACCESS 0x00000001 /* File accessed. */
-# define DN_MODIFY 0x00000002 /* File modified. */
-# define DN_CREATE 0x00000004 /* File created. */
-# define DN_DELETE 0x00000008 /* File removed. */
-# define DN_RENAME 0x00000010 /* File renamed. */
-# define DN_ATTRIB 0x00000020 /* File changed attibutes. */
-# define DN_MULTISHOT 0x80000000 /* Don't remove notifier. */
-#endif
-
-struct flock
- {
- short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */
- short int l_whence; /* Where `l_start' is relative to (like `lseek'). */
-#ifndef __USE_FILE_OFFSET64
- __off_t l_start; /* Offset where the lock begins. */
- __off_t l_len; /* Size of the locked area; zero means until EOF. */
-#else
- __off64_t l_start; /* Offset where the lock begins. */
- __off64_t l_len; /* Size of the locked area; zero means until EOF. */
-#endif
- __pid_t l_pid; /* Process holding the lock. */
- };
-
-#ifdef __USE_LARGEFILE64
-struct flock64
- {
- short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */
- short int l_whence; /* Where `l_start' is relative to (like `lseek'). */
- __off64_t l_start; /* Offset where the lock begins. */
- __off64_t l_len; /* Size of the locked area; zero means until EOF. */
- __pid_t l_pid; /* Process holding the lock. */
- };
-#endif
-
-/* Define some more compatibility macros to be backward compatible with
- BSD systems which did not managed to hide these kernel macros. */
-#ifdef __USE_BSD
-# define FAPPEND O_APPEND
-# define FFSYNC O_FSYNC
-# define FASYNC O_ASYNC
-# define FNONBLOCK O_NONBLOCK
-# define FNDELAY O_NDELAY
-#endif /* Use BSD. */
-
-/* Advise to `posix_fadvise'. */
-#ifdef __USE_XOPEN2K
-# define POSIX_FADV_NORMAL 0 /* No further special treatment. */
-# define POSIX_FADV_RANDOM 1 /* Expect random page references. */
-# define POSIX_FADV_SEQUENTIAL 2 /* Expect sequential page references. */
-# define POSIX_FADV_WILLNEED 3 /* Will need these pages. */
-# define POSIX_FADV_DONTNEED 4 /* Don't need these pages. */
-# define POSIX_FADV_NOREUSE 5 /* Data will be accessed once. */
-#endif
-
-__BEGIN_DECLS
-
-/* Provide kernel hint to read ahead. */
-extern ssize_t readahead (int __fd, __off64_t __offset, size_t __count)
- __THROW;
-
-__END_DECLS
diff --git a/sysdeps/unix/sysv/linux/cris/bits/mman.h b/sysdeps/unix/sysv/linux/cris/bits/mman.h
deleted file mode 100644
index b66c0bdb68..0000000000
--- a/sysdeps/unix/sysv/linux/cris/bits/mman.h
+++ /dev/null
@@ -1,97 +0,0 @@
-/* Definitions for POSIX memory map interface. Linux/CRIS version.
- Copyright (C) 1997, 2000, 2001, 2003 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_MMAN_H
-# error "Never use <bits/mman.h> directly; include <sys/mman.h> instead."
-#endif
-
-/* The following definitions basically come from the kernel headers.
- But the kernel header is not namespace clean. */
-
-
-/* Protections are chosen from these bits, OR'd together. The
- implementation does not necessarily support PROT_EXEC or PROT_WRITE
- without PROT_READ. The only guarantees are that no writing will be
- allowed without PROT_WRITE and no access will be allowed for PROT_NONE. */
-
-#define PROT_READ 0x1 /* Page can be read. */
-#define PROT_WRITE 0x2 /* Page can be written. */
-#define PROT_EXEC 0x4 /* Page can be executed. */
-#define PROT_NONE 0x0 /* Page can not be accessed. */
-#define PROT_GROWSDOWN 0x01000000 /* Extend change to start of
- growsdown vma (mprotect only). */
-#define PROT_GROWSUP 0x02000000 /* Extend change to start of
- growsup vma (mprotect only). */
-
-/* Sharing types (must choose one and only one of these). */
-#define MAP_SHARED 0x01 /* Share changes. */
-#define MAP_PRIVATE 0x02 /* Changes are private. */
-#ifdef __USE_MISC
-# define MAP_TYPE 0x0f /* Mask for type of mapping. */
-#endif
-
-/* Other flags. */
-#define MAP_FIXED 0x10 /* Interpret addr exactly. */
-#ifdef __USE_MISC
-# define MAP_FILE 0
-# define MAP_ANONYMOUS 0x20 /* Don't use a file. */
-# define MAP_ANON MAP_ANONYMOUS
-#endif
-
-/* These are Linux-specific. */
-#ifdef __USE_MISC
-# define MAP_GROWSDOWN 0x0100 /* Stack-like segment. */
-# define MAP_DENYWRITE 0x0800 /* ETXTBSY */
-# define MAP_EXECUTABLE 0x1000 /* Mark it as an executable. */
-# define MAP_LOCKED 0x2000 /* Lock the mapping. */
-# define MAP_NORESERVE 0x4000 /* Don't check for reservations. */
-#endif
-
-/* Flags to `msync'. */
-#define MS_ASYNC 1 /* Sync memory asynchronously. */
-#define MS_SYNC 4 /* Synchronous memory sync. */
-#define MS_INVALIDATE 2 /* Invalidate the caches. */
-
-/* Flags for `mlockall'. */
-#define MCL_CURRENT 1 /* Lock all currently mapped pages. */
-#define MCL_FUTURE 2 /* Lock all additions to address
- space. */
-
-/* Flags for `mremap'. */
-#ifdef __USE_GNU
-# define MREMAP_MAYMOVE 1
-#endif
-
-/* Advice to `madvise'. */
-#ifdef __USE_BSD
-# define MADV_NORMAL 0 /* No further special treatment. */
-# define MADV_RANDOM 1 /* Expect random page references. */
-# define MADV_SEQUENTIAL 2 /* Expect sequential page references. */
-# define MADV_WILLNEED 3 /* Will need these pages. */
-# define MADV_DONTNEED 4 /* Don't need these pages. */
-#endif
-
-/* The POSIX people had to invent similar names for the same things. */
-#ifdef __USE_XOPEN2K
-# define POSIX_MADV_NORMAL 0 /* No further special treatment. */
-# define POSIX_MADV_RANDOM 1 /* Expect random page references. */
-# define POSIX_MADV_SEQUENTIAL 2 /* Expect sequential page references. */
-# define POSIX_MADV_WILLNEED 3 /* Will need these pages. */
-# define POSIX_MADV_DONTNEED 4 /* Don't need these pages. */
-#endif
diff --git a/sysdeps/unix/sysv/linux/cris/chown.c b/sysdeps/unix/sysv/linux/cris/chown.c
deleted file mode 100644
index 1961622564..0000000000
--- a/sysdeps/unix/sysv/linux/cris/chown.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/m68k/chown.c>
diff --git a/sysdeps/unix/sysv/linux/cris/clone.S b/sysdeps/unix/sysv/linux/cris/clone.S
deleted file mode 100644
index b2016438a3..0000000000
--- a/sysdeps/unix/sysv/linux/cris/clone.S
+++ /dev/null
@@ -1,88 +0,0 @@
-/* Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-#define _ERRNO_H 1
-#include <bits/errno.h>
-
-/* int clone(int (*fn)(void *arg), void *child_stack, int flags, void *arg); */
-
- .syntax no_register_prefix
-
- .text
-ENTRY (__clone)
- /* Sanity check arguments: No NULL function pointers. Allow a NULL
- stack pointer though; it makes the kernel allocate stack. */
- test.d r10
- beq 1f
- nop
-
- /* We need to muck with a few registers. */
- movem r1,[sp=sp-8]
-
- /* Save the function pointer and argument. We can't save them
- onto the new stack since it can be NULL. */
- move.d r10,r0
- move.d r13,r1
-
- /* Move the other arguments into place for the system call. */
- move.d r11,r10
- move.d r12,r11
-
- /* Do the system call. */
- movu.w SYS_ify (clone),r9
- break 13
- test.d r10
- beq .Lthread_start
- nop
-
- /* Jump to error handler if we get (unsigned) -4096 .. 0xffffffff. */
- cmps.w -4096,r10
- bhs 0f
- movem [sp+],r1
-
- /* In parent, successful return. (Avoid using "ret" - it's a macro.) */
- Ret
- nop
-
-.Lthread_start:
- /* Terminate frame pointers here. */
- moveq 0,r8
-
- /* I've told you once. */
- move.d r1,r10
- jsr r0
-
- SETUP_PIC
- PLTCALL (_exit)
-
- /* Die horribly. */
- test.d [6809]
-
- /* Stop the unstoppable. */
-9:
- ba 9b
- nop
-
-/* Local error handler. */
-1:
- movs.w -EINVAL,r10
- /* Drop through into the ordinary error handler. */
-PSEUDO_END (__clone)
-
-weak_alias (__clone, clone)
diff --git a/sysdeps/unix/sysv/linux/cris/fchown.c b/sysdeps/unix/sysv/linux/cris/fchown.c
deleted file mode 100644
index 3a69ecc9e7..0000000000
--- a/sysdeps/unix/sysv/linux/cris/fchown.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/fchown.c>
diff --git a/sysdeps/unix/sysv/linux/cris/fcntl.c b/sysdeps/unix/sysv/linux/cris/fcntl.c
deleted file mode 100644
index ea951bc4f9..0000000000
--- a/sysdeps/unix/sysv/linux/cris/fcntl.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/fcntl.c>
diff --git a/sysdeps/unix/sysv/linux/cris/fxstat.c b/sysdeps/unix/sysv/linux/cris/fxstat.c
deleted file mode 100644
index 4f219f0b9d..0000000000
--- a/sysdeps/unix/sysv/linux/cris/fxstat.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/fxstat.c>
diff --git a/sysdeps/unix/sysv/linux/cris/getegid.c b/sysdeps/unix/sysv/linux/cris/getegid.c
deleted file mode 100644
index 37b4b4a530..0000000000
--- a/sysdeps/unix/sysv/linux/cris/getegid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/getegid.c>
diff --git a/sysdeps/unix/sysv/linux/cris/geteuid.c b/sysdeps/unix/sysv/linux/cris/geteuid.c
deleted file mode 100644
index ebcb555b5e..0000000000
--- a/sysdeps/unix/sysv/linux/cris/geteuid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/geteuid.c>
diff --git a/sysdeps/unix/sysv/linux/cris/getgid.c b/sysdeps/unix/sysv/linux/cris/getgid.c
deleted file mode 100644
index 0a4d6061f0..0000000000
--- a/sysdeps/unix/sysv/linux/cris/getgid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/getgid.c>
diff --git a/sysdeps/unix/sysv/linux/cris/getgroups.c b/sysdeps/unix/sysv/linux/cris/getgroups.c
deleted file mode 100644
index 102ea24e14..0000000000
--- a/sysdeps/unix/sysv/linux/cris/getgroups.c
+++ /dev/null
@@ -1,2 +0,0 @@
-/* We also have to rewrite the kernel gid_t to the user land type. */
-#include <sysdeps/unix/sysv/linux/i386/getgroups.c>
diff --git a/sysdeps/unix/sysv/linux/cris/getresgid.c b/sysdeps/unix/sysv/linux/cris/getresgid.c
deleted file mode 100644
index b703a414cc..0000000000
--- a/sysdeps/unix/sysv/linux/cris/getresgid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/getresgid.c>
diff --git a/sysdeps/unix/sysv/linux/cris/getresuid.c b/sysdeps/unix/sysv/linux/cris/getresuid.c
deleted file mode 100644
index 0b14cefe34..0000000000
--- a/sysdeps/unix/sysv/linux/cris/getresuid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/getresuid.c>
diff --git a/sysdeps/unix/sysv/linux/cris/getrlimit.c b/sysdeps/unix/sysv/linux/cris/getrlimit.c
deleted file mode 100644
index fc06dbd641..0000000000
--- a/sysdeps/unix/sysv/linux/cris/getrlimit.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/getrlimit.c>
diff --git a/sysdeps/unix/sysv/linux/cris/getrlimit64.c b/sysdeps/unix/sysv/linux/cris/getrlimit64.c
deleted file mode 100644
index fef018f471..0000000000
--- a/sysdeps/unix/sysv/linux/cris/getrlimit64.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/getrlimit64.c>
diff --git a/sysdeps/unix/sysv/linux/cris/getuid.c b/sysdeps/unix/sysv/linux/cris/getuid.c
deleted file mode 100644
index d682c79a49..0000000000
--- a/sysdeps/unix/sysv/linux/cris/getuid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/getuid.c>
diff --git a/sysdeps/unix/sysv/linux/cris/lchown.c b/sysdeps/unix/sysv/linux/cris/lchown.c
deleted file mode 100644
index c89de99ba2..0000000000
--- a/sysdeps/unix/sysv/linux/cris/lchown.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/lchown.c>
diff --git a/sysdeps/unix/sysv/linux/cris/lockf64.c b/sysdeps/unix/sysv/linux/cris/lockf64.c
deleted file mode 100644
index a88f5a784a..0000000000
--- a/sysdeps/unix/sysv/linux/cris/lockf64.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/lockf64.c>
diff --git a/sysdeps/unix/sysv/linux/cris/lxstat.c b/sysdeps/unix/sysv/linux/cris/lxstat.c
deleted file mode 100644
index 2371cd9719..0000000000
--- a/sysdeps/unix/sysv/linux/cris/lxstat.c
+++ /dev/null
@@ -1,2 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/lxstat.c>
-
diff --git a/sysdeps/unix/sysv/linux/cris/mmap.S b/sysdeps/unix/sysv/linux/cris/mmap.S
deleted file mode 100644
index 3c74d590fa..0000000000
--- a/sysdeps/unix/sysv/linux/cris/mmap.S
+++ /dev/null
@@ -1,68 +0,0 @@
-/* Copyright (C) 1995, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-#include "kernel-features.h"
-
-#include <asm/errno.h>
-
-/* Rather than dragging in yet another kernel file, <asm/page.h>, we
- define it here. Provide for easy override. */
-#ifndef PAGE_SHIFT
-#define PAGE_SHIFT 13
-#endif
-
- .syntax no_register_prefix
-
-/* This is __ptr_t
- __mmap (__ptr_t addr, size_t len, int prot, int flags, int fd, off_t offset) */
-
- ENTRY (__mmap)
-
- /* Only accept a offset (and address) being a multiple of PAGE_SIZE,
- since we only pass the page part in the system call. */
- move.d [sp+4],r9
- btstq (PAGE_SHIFT - 1),r9
- bne 1f
- btstq (PAGE_SHIFT - 1),r10
-
- bne 1f
- lsrq PAGE_SHIFT,r9
-
- move [sp],mof
- move srp,[sp]
- move r9,srp
-
- movu.b SYS_ify (mmap2),r9
- break 13
-
- cmps.w -4096,r10
- bhs 0f
- move [sp],srp
-
- Ret
- nop
-
-/* Local error handler. */
-1:
- movs.w -EINVAL,r10
- /* Drop through into the ordinary error handler. */
-PSEUDO_END (__mmap)
-
-weak_alias (__mmap, mmap)
diff --git a/sysdeps/unix/sysv/linux/cris/mmap64.S b/sysdeps/unix/sysv/linux/cris/mmap64.S
deleted file mode 100644
index d71114454b..0000000000
--- a/sysdeps/unix/sysv/linux/cris/mmap64.S
+++ /dev/null
@@ -1,91 +0,0 @@
-/* Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-#include "kernel-features.h"
-
-#include <asm/errno.h>
-
-/* Rather than dragging in yet another kernel file, <asm/page.h>, we
- define it here. Provide for easy override. */
-#ifndef PAGE_SHIFT
-#define PAGE_SHIFT 13
-#endif
-
-/* This is: __ptr_t
- __mmap64 (__ptr_t addr, size_t len, int prot, int flags, int fd,
- off64_t offset); */
-
-/* This was done in C, but the resulting code didn't look anywhere near
- nice, and mmap64 is important enough to have fast code. Rather than
- fixing (the generic bits in) gcc, we make sure not to depend on it by
- writing code that GCC cannot reasonably generate. */
-
- .syntax no_register_prefix
-
-ENTRY (__mmap64)
-
- move [sp],mof
- move.d [sp+4],r9
-
- /* Only accept an offset being a multiple of PAGE_SIZE, ditto address. */
- btstq (PAGE_SHIFT - 1),r9
- bne 1f
- lsrq PAGE_SHIFT,r9
-
- btstq (PAGE_SHIFT - 1),r10
- bne 1f
- move.d r9,[sp]
-
- /* We have to store the adjusted part somewhere we can "or" from.
- No registers available, so let's re-use the incoming low-part
- parameter location. */
- move.d [sp+8],r9
-
- swapwbr r9
- /* Check if the highest bits (now the lowest bits) are zero. They
- must be, since we're actually calling a system function
- specifying the size in *pages* in a single dword. Thus you can
- mmap64 PAGE_SIZE * 4 Gbyte. */
- btstq (PAGE_SHIFT - 1),r9
- bne 1f
- swapwbr r9
-
- lslq (32 - PAGE_SHIFT),r9
- or.d [sp],r9
- move srp,[sp]
- move r9,srp
-
- movu.b SYS_ify (mmap2),r9
- break 13
-
- cmps.w -4096,r10
- bhs 0f
- move [sp],srp
-
- Ret
- nop
-
-/* Local error handler. */
-1:
- movs.w -EINVAL,r10
- /* Drop through into the ordinary error handler. */
-PSEUDO_END (__mmap64)
-
-weak_alias (__mmap64, mmap64)
diff --git a/sysdeps/unix/sysv/linux/cris/msgctl.c b/sysdeps/unix/sysv/linux/cris/msgctl.c
deleted file mode 100644
index 9f9b8431a3..0000000000
--- a/sysdeps/unix/sysv/linux/cris/msgctl.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/msgctl.c>
diff --git a/sysdeps/unix/sysv/linux/cris/profil-counter.h b/sysdeps/unix/sysv/linux/cris/profil-counter.h
deleted file mode 100644
index 37adc1fee7..0000000000
--- a/sysdeps/unix/sysv/linux/cris/profil-counter.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Low-level statistical profiling support function. Linux/CRIS version.
- Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <signal.h>
-
-static void
-profil_counter (int signo, struct sigcontext *scp)
-{
- profil_count ((void *) scp->regs.irp);
-}
diff --git a/sysdeps/unix/sysv/linux/cris/register-dump.h b/sysdeps/unix/sysv/linux/cris/register-dump.h
deleted file mode 100644
index 309728bf96..0000000000
--- a/sysdeps/unix/sysv/linux/cris/register-dump.h
+++ /dev/null
@@ -1,117 +0,0 @@
-/* Dump registers.
- Copyright (C) 1998, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <stddef.h>
-#include <sys/uio.h>
-#include <stdio-common/_itoa.h>
-
-/* We will print the register dump in this format:
-
- R0: XXXXXXXX R1: XXXXXXXX R2: XXXXXXXX R3: XXXXXXXX
- R4: XXXXXXXX R5: XXXXXXXX R6: XXXXXXXX R7: XXXXXXXX
- R8: XXXXXXXX R9: XXXXXXXX R10: XXXXXXXX R11: XXXXXXXX
- R12: XXXXXXXX R13: XXXXXXXX SP: XXXXXXXX PC: XXXXXXXX
-DCCR: XXXXXXXX SRP: XXXXXXXX */
-
-static void
-hexvalue (unsigned long int value, char *buf, size_t len)
-{
- char *cp = _itoa_word (value, buf + len, 16, 0);
- while (cp > buf)
- *--cp = '0';
-}
-
-static void register_dump (int fd, struct sigcontext *ctx)
-{
- char regs[18][8];
- struct iovec iov[36], *next_iov = iov;
- struct pt_regs *rx = &ctx->regs;
-
-#define ADD_STRING(str) \
- next_iov->iov_base = (char *) (str); \
- next_iov->iov_len = strlen (str); \
- ++next_iov
-#define ADD_MEM(str, len) \
- next_iov->iov_base = (str); \
- next_iov->iov_len = (len); \
- ++next_iov
-
- /* Generate strings of register contents. */
- hexvalue (rx->r0, regs[0], 8);
- hexvalue (rx->r1, regs[1], 8);
- hexvalue (rx->r2, regs[2], 8);
- hexvalue (rx->r3, regs[3], 8);
- hexvalue (rx->r4, regs[4], 8);
- hexvalue (rx->r5, regs[5], 8);
- hexvalue (rx->r6, regs[6], 8);
- hexvalue (rx->r7, regs[7], 8);
- hexvalue (rx->r8, regs[8], 8);
- hexvalue (rx->r9, regs[9], 8);
- hexvalue (rx->r10, regs[10], 8);
- hexvalue (rx->r11, regs[11], 8);
- hexvalue (rx->r12, regs[12], 8);
- hexvalue (rx->r13, regs[13], 8);
- hexvalue (ctx->usp, regs[14], 8);
- hexvalue (rx->irp, regs[17], 8);
- hexvalue (rx->dccr, regs[15], 8);
- hexvalue (rx->srp, regs[16], 8);
-
- /* Generate the output. */
- ADD_STRING ("Register dump:\n\n R0: ");
- ADD_MEM (regs[0], 8);
- ADD_STRING (" R1: ");
- ADD_MEM (regs[1], 8);
- ADD_STRING (" R2: ");
- ADD_MEM (regs[2], 8);
- ADD_STRING (" R3: ");
- ADD_MEM (regs[3], 8);
- ADD_STRING ("\n R4: ");
- ADD_MEM (regs[4], 8);
- ADD_STRING (" R5: ");
- ADD_MEM (regs[5], 8);
- ADD_STRING (" R6: ");
- ADD_MEM (regs[6], 8);
- ADD_STRING (" R7: ");
- ADD_MEM (regs[7], 8);
- ADD_STRING ("\n R8: ");
- ADD_MEM (regs[8], 8);
- ADD_STRING (" R9: ");
- ADD_MEM (regs[9], 8);
- ADD_STRING (" R10: ");
- ADD_MEM (regs[10], 8);
- ADD_STRING (" R11: ");
- ADD_MEM (regs[11], 8);
- ADD_STRING ("\n R12: ");
- ADD_MEM (regs[12], 8);
- ADD_STRING (" R13: ");
- ADD_MEM (regs[13], 8);
- ADD_STRING (" SP: ");
- ADD_MEM (regs[14], 8);
- ADD_STRING (" PC: ");
- ADD_MEM (regs[17], 8);
- ADD_STRING ("\nDCCR: ");
- ADD_MEM (regs[15], 8);
- ADD_STRING (" SRP: ");
- ADD_MEM (regs[16], 4);
-
- /* Write the stuff out. */
- writev (fd, iov, next_iov - iov);
-}
-
-#define REGISTER_DUMP register_dump (fd, ctx)
diff --git a/sysdeps/unix/sysv/linux/cris/semctl.c b/sysdeps/unix/sysv/linux/cris/semctl.c
deleted file mode 100644
index e9b1a483c9..0000000000
--- a/sysdeps/unix/sysv/linux/cris/semctl.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/semctl.c>
diff --git a/sysdeps/unix/sysv/linux/cris/setegid.c b/sysdeps/unix/sysv/linux/cris/setegid.c
deleted file mode 100644
index 2e3a54c893..0000000000
--- a/sysdeps/unix/sysv/linux/cris/setegid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/setegid.c>
diff --git a/sysdeps/unix/sysv/linux/cris/seteuid.c b/sysdeps/unix/sysv/linux/cris/seteuid.c
deleted file mode 100644
index 18e41d08c1..0000000000
--- a/sysdeps/unix/sysv/linux/cris/seteuid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/seteuid.c>
diff --git a/sysdeps/unix/sysv/linux/cris/setfsgid.c b/sysdeps/unix/sysv/linux/cris/setfsgid.c
deleted file mode 100644
index 0886712569..0000000000
--- a/sysdeps/unix/sysv/linux/cris/setfsgid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/setfsgid.c>
diff --git a/sysdeps/unix/sysv/linux/cris/setfsuid.c b/sysdeps/unix/sysv/linux/cris/setfsuid.c
deleted file mode 100644
index a9f22eb8ab..0000000000
--- a/sysdeps/unix/sysv/linux/cris/setfsuid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/setfsuid.c>
diff --git a/sysdeps/unix/sysv/linux/cris/setgid.c b/sysdeps/unix/sysv/linux/cris/setgid.c
deleted file mode 100644
index 377021d9ec..0000000000
--- a/sysdeps/unix/sysv/linux/cris/setgid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/setgid.c>
diff --git a/sysdeps/unix/sysv/linux/cris/setgroups.c b/sysdeps/unix/sysv/linux/cris/setgroups.c
deleted file mode 100644
index 0e7086278f..0000000000
--- a/sysdeps/unix/sysv/linux/cris/setgroups.c
+++ /dev/null
@@ -1,2 +0,0 @@
-/* We also have to rewrite the kernel gid_t to the user land type. */
-#include <sysdeps/unix/sysv/linux/i386/setgroups.c>
diff --git a/sysdeps/unix/sysv/linux/cris/setregid.c b/sysdeps/unix/sysv/linux/cris/setregid.c
deleted file mode 100644
index 99c57ad20f..0000000000
--- a/sysdeps/unix/sysv/linux/cris/setregid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/setregid.c>
diff --git a/sysdeps/unix/sysv/linux/cris/setresgid.c b/sysdeps/unix/sysv/linux/cris/setresgid.c
deleted file mode 100644
index daca1a4833..0000000000
--- a/sysdeps/unix/sysv/linux/cris/setresgid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/setresgid.c>
diff --git a/sysdeps/unix/sysv/linux/cris/setresuid.c b/sysdeps/unix/sysv/linux/cris/setresuid.c
deleted file mode 100644
index 3aeabe9ad7..0000000000
--- a/sysdeps/unix/sysv/linux/cris/setresuid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/setresuid.c>
diff --git a/sysdeps/unix/sysv/linux/cris/setreuid.c b/sysdeps/unix/sysv/linux/cris/setreuid.c
deleted file mode 100644
index 8ad61226e9..0000000000
--- a/sysdeps/unix/sysv/linux/cris/setreuid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/setreuid.c>
diff --git a/sysdeps/unix/sysv/linux/cris/setrlimit.c b/sysdeps/unix/sysv/linux/cris/setrlimit.c
deleted file mode 100644
index bfaef74c38..0000000000
--- a/sysdeps/unix/sysv/linux/cris/setrlimit.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/setrlimit.c>
diff --git a/sysdeps/unix/sysv/linux/cris/setuid.c b/sysdeps/unix/sysv/linux/cris/setuid.c
deleted file mode 100644
index de394379be..0000000000
--- a/sysdeps/unix/sysv/linux/cris/setuid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/setuid.c>
diff --git a/sysdeps/unix/sysv/linux/cris/shmctl.c b/sysdeps/unix/sysv/linux/cris/shmctl.c
deleted file mode 100644
index 7eac6380dd..0000000000
--- a/sysdeps/unix/sysv/linux/cris/shmctl.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/shmctl.c>
diff --git a/sysdeps/unix/sysv/linux/cris/socket.S b/sysdeps/unix/sysv/linux/cris/socket.S
deleted file mode 100644
index 38b4ac5fb4..0000000000
--- a/sysdeps/unix/sysv/linux/cris/socket.S
+++ /dev/null
@@ -1,96 +0,0 @@
-/* Copyright (C) 1995, 1996, 1997, 1999, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-#include <socketcall.h>
-
-#define P(a, b) P2(a, b)
-#define P2(a, b) a##b
-
-/* The socket-oriented system calls are handled unusally in Linux.
- They are all gated through the single `socketcall' system call number.
- `socketcall' takes two arguments: the first is the subcode, specifying
- which socket function is being called; and the second is a pointer to
- the arguments to the specific function.
-
- The .S files for the other calls just #define socket and #include this.
- They also #define a 'number-of-arguments' word in NARGS, which
- defaults to 3. */
-
-#ifndef NARGS
-#ifdef socket
-#error NARGS not defined
-#endif
-#define NARGS 3
-#endif
-
- .syntax no_register_prefix
-
-#ifndef __socket
-#define __socket P(__,socket)
-#endif
-
-ENTRY(__socket)
- subq NARGS*4,sp
-
-#if NARGS >= 2
- move.d sp,r9
- move.d r10,[r9+]
-#else
- move.d r10,[sp]
-#endif
-#if NARGS >= 2
- move.d r11,[r9+]
-#endif
-#if NARGS >= 3
- move.d r12,[r9+]
-#endif
-#if NARGS >= 4
- move.d r13,[r9+]
-#endif
-#if NARGS >= 5
- move.d [sp+NARGS*4],r13
- move.d r13,[r9+]
-#endif
-#if NARGS >= 6
- move.d [sp+NARGS*4+4],r13
- move.d r13,[r9+]
-#endif
-#if NARGS >= 7
- move.d [sp+NARGS*4+8],r13
- move.d r13,[r9+]
-#endif
-#if NARGS >= 8
- move.d [sp+NARGS*4+12],r13
- move.d r13,[r9+]
-#endif
-#if NARGS >= 9
-#error Too many arguments!
-#endif
- moveq P(SOCKOP_,socket),r10
- move.d sp,r11
- movu.w SYS_ify(socketcall),r9
- break 13
- cmps.w -4096,r10
- bhs 0f
- addq NARGS*4,sp
- Ret
- nop
-PSEUDO_END (__socket)
-
-weak_alias (__socket, socket)
diff --git a/sysdeps/unix/sysv/linux/cris/sys/ucontext.h b/sysdeps/unix/sysv/linux/cris/sys/ucontext.h
deleted file mode 100644
index 2d3aee076e..0000000000
--- a/sysdeps/unix/sysv/linux/cris/sys/ucontext.h
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_UCONTEXT_H
-#define _SYS_UCONTEXT_H 1
-
-#include <features.h>
-#include <signal.h>
-
-#include <bits/sigcontext.h>
-
-
-/* Type for general register. */
-typedef long int greg_t;
-
-/* Number of general registers. */
-#define NGREG 20
-
-/* Container for all general registers. */
-typedef greg_t gregset_t[NGREG];
-
-/* A placeholder type for floating-point register. */
-typedef long int fpreg_t;
-
-/* A placeholder; CRIS does not have any fp regs. */
-typedef unsigned long fpregset_t;
-
-/* A machine context is exactly a sigcontext. */
-typedef struct sigcontext mcontext_t;
-
-/* Userlevel context. */
-typedef struct ucontext
- {
- unsigned long int uc_flags;
- struct ucontext *uc_link;
- stack_t uc_stack;
- mcontext_t uc_mcontext;
- __sigset_t uc_sigmask;
- } ucontext_t;
-
-#endif /* sys/ucontext.h */
diff --git a/sysdeps/unix/sysv/linux/cris/syscall.S b/sysdeps/unix/sysv/linux/cris/syscall.S
deleted file mode 100644
index 03626b0946..0000000000
--- a/sysdeps/unix/sysv/linux/cris/syscall.S
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
- .syntax no_register_prefix
-
-/* Make syscall (callno, ...) into a system call. */
-
-ENTRY (syscall)
- move.d r10,r9
- move.d r11,r10
- move.d r12,r11
- move.d r13,r12
- move.d [sp],r13
- move srp,[sp]
- move [sp+4],mof
- move [sp+8],srp
- break 13
- cmps.w -4096,r10
- bhs 0f
- move [sp],srp
- Ret
- nop
-PSEUDO_END (syscall)
diff --git a/sysdeps/unix/sysv/linux/cris/sysdep.S b/sysdeps/unix/sysv/linux/cris/sysdep.S
deleted file mode 100644
index e53e7bbfb9..0000000000
--- a/sysdeps/unix/sysv/linux/cris/sysdep.S
+++ /dev/null
@@ -1,66 +0,0 @@
-/* Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-/* The syscall stubs jump here when they detect an error, bot for PIC and
- non-PIC. */
-
- .syntax no_register_prefix
-
-ENTRY (__syscall_error)
- neg.d r10,r10
-
-#ifdef _LIBC_REENTRANT
- push r10
- push srp
-
- /* Note that __syscall_error is only visible within this library,
- and no-one passes it on as a pointer, so can assume that R0 (GOT
- pointer) is correctly set up. */
- PLTCALL (__errno_location)
-
- pop srp
- pop r11
- move.d r11,[r10]
-
-#else /* not _LIBC_REENTRANT */
-# ifdef __PIC__
- move.d [r0+C_SYMBOL_NAME(errno:GOT)],r9
- move.d r10,[r9]
-# else
- move.d r10,[C_SYMBOL_NAME(errno)]
-# endif
-#endif /* _LIBC_REENTRANT */
-
-#ifdef __PIC__
-/* PIC callers are supposed to have R0 on stack, ready for us to restore.
- Callers are only allowed from within this DSO, so the GOT in r0 is the
- one we want to use.
-
- (Don't use "ret" - it's a macro). */
-
- moveq -1,r10
- Ret
- pop r0
-#else
- Ret
- moveq -1,r10
-#endif
-
-END (__syscall_error)
diff --git a/sysdeps/unix/sysv/linux/cris/sysdep.h b/sysdeps/unix/sysv/linux/cris/sysdep.h
deleted file mode 100644
index 5013dd5d30..0000000000
--- a/sysdeps/unix/sysv/linux/cris/sysdep.h
+++ /dev/null
@@ -1,226 +0,0 @@
-/* Assembler macros for CRIS.
- Copyright (C) 1999, 2001, 2003 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <asm/unistd.h>
-#include <sysdeps/cris/sysdep.h>
-#include <sys/syscall.h>
-#include "config.h"
-
-#undef SYS_ify
-#define SYS_ify(syscall_name) (__NR_##syscall_name)
-
-
-#ifdef __ASSEMBLER__
-
-/* For Linux we can use the system call table in the header file
- /usr/include/asm/unistd.h
- of the kernel. But these symbols do not follow the SYS_* syntax
- so we have to redefine the `SYS_ify' macro here. */
-#undef SYS_ify
-#define SYS_ify(syscall_name) __NR_##syscall_name
-
-/* ELF-like local names start with `.L'. */
-#undef L
-#define L(name) .L##name
-
-/* Linux uses a negative return value to indicate syscall errors,
- unlike most Unices, which use the condition codes' carry flag.
-
- Since version 2.1 the return value of a system call might be
- negative even if the call succeeded. E.g., the `lseek' system call
- might return a large offset. Therefore we must not anymore test
- for < 0, but test for a real error by making sure the value in %eax
- is a real error number. Linus said he will make sure the no syscall
- returns a value in -1 .. -4095 as a valid result so we can safely
- test with -4095. */
-
-/* Syscall wrappers consist of
- #include <sysdep.h>
- PSEUDO (...)
- ret
- PSEUDO_END (...)
-
- which expand to the following. */
-
-/* Linux takes system call arguments in registers:
- syscall number R9
- arg 1 R10
- arg 2 R11
- arg 3 R12
- arg 4 R13
- arg 5 MOF
- arg 6 SRP
-
- The compiler calls us by the C convention:
- syscall number in the DO_CALL macro
- arg 1 R10
- arg 2 R11
- arg 3 R12
- arg 4 R13
- arg 5 [SP]
- arg 6 [SP + 4]
- */
-
-/* Note that we use "bhs", since we want to match
- (unsigned) -4096 .. 0xffffffff. Using "ble" would match
- -4096 .. -2**31. */
-#define PSEUDO(name, syscall_name, args) \
- ENTRY (name) @ \
- DOARGS_##args @ \
- movu.w SYS_ify (syscall_name),$r9 @ \
- break 13 @ \
- cmps.w -4096,$r10 @ \
- bhs 0f @ \
- nop @ \
- UNDOARGS_return_##args
-
-/* Ouch! We have to remember not to use "ret" in assembly-code.
- ("Luckily", mnemonics are case-insensitive.)
- Note that we assume usage is exactly:
- PSEUDO (...)
- ret
- PSEUDO_END (...)
- so we can put all payload into PSEUDO (except for error handling). */
-
-#define ret
-
-#define PSEUDO_END(name) \
-0: @ \
- SETUP_PIC @ \
- PLTJUMP (syscall_error) @ \
- END (name)
-
-#define PSEUDO_NOERRNO(name, syscall_name, args) \
- ENTRY (name) @ \
- DOARGS_##args @ \
- movu.w SYS_ify (syscall_name),$r9 @ \
- break 13 @ \
- UNDOARGS_return_##args
-
-#define ret_NOERRNO
-
-#define PSEUDO_END_NOERRNO(name) \
- END (name)
-
-#define DOARGS_0
-#define DOARGS_1
-#define DOARGS_2
-#define DOARGS_3
-#define DOARGS_4
-#define DOARGS_5 \
- move [$sp],$mof
-
-/* To avoid allocating stack-space, we re-use the arg 5 (MOF) entry by
- storing SRP into it. If called with too-few arguments, we will crash,
- but that will happen in the general case too. */
-#define DOARGS_6 \
- DOARGS_5 @ \
- move $srp,[$sp] @ \
- move [$sp+4],$srp
-
-#define UNDOARGS_return_0 \
- Ret @ \
- nop
-
-#define UNDOARGS_return_1 UNDOARGS_return_0
-#define UNDOARGS_return_2 UNDOARGS_return_0
-#define UNDOARGS_return_3 UNDOARGS_return_0
-#define UNDOARGS_return_4 UNDOARGS_return_0
-#define UNDOARGS_return_5 UNDOARGS_return_0
-
-/* We assume the following code will be "ret" and "PSEUDO_END". */
-#define UNDOARGS_return_return_6 \
- jump [$sp]
-
-#else /* not __ASSEMBLER__ */
-
-#undef INLINE_SYSCALL
-#define INLINE_SYSCALL(name, nr, args...) \
- ({ \
- unsigned long __sys_res; \
- register unsigned long __res asm ("r10"); \
- LOAD_ARGS_c_##nr (args) \
- register unsigned long __callno asm ("r9") \
- = SYS_ify (name); \
- asm volatile (LOAD_ARGS_asm_##nr (args) \
- "break 13" \
- : "=r" (__res) \
- : ASM_ARGS_##nr (args) \
- : ASM_CLOBBER_##nr); \
- __sys_res = __res; \
- \
- if (__sys_res >= (unsigned long) -4096) \
- { \
- __set_errno (- __sys_res); \
- __sys_res = (unsigned long) -1; \
- } \
- (long int) __sys_res; \
- })
-
-#define LOAD_ARGS_c_0()
-#define LOAD_ARGS_asm_0()
-#define ASM_CLOBBER_0 "memory"
-#define ASM_ARGS_0() "r" (__callno)
-
-#define LOAD_ARGS_c_1(r10) \
- LOAD_ARGS_c_0() \
- register unsigned long __r10 __asm__ ("r10") = (unsigned long) (r10);
-#define LOAD_ARGS_asm_1(r10) LOAD_ARGS_asm_0 ()
-#define ASM_CLOBBER_1 ASM_CLOBBER_0
-#define ASM_ARGS_1(r10) ASM_ARGS_0 (), "0" (__r10)
-
-#define LOAD_ARGS_c_2(r10, r11) \
- LOAD_ARGS_c_1(r10) \
- register unsigned long __r11 __asm__ ("r11") = (unsigned long) (r11);
-#define LOAD_ARGS_asm_2(r10, r11) LOAD_ARGS_asm_1 (r10)
-#define ASM_CLOBBER_2 ASM_CLOBBER_1
-#define ASM_ARGS_2(r10, r11) ASM_ARGS_1 (r10), "r" (__r11)
-
-#define LOAD_ARGS_c_3(r10, r11, r12) \
- LOAD_ARGS_c_2(r10, r11) \
- register unsigned long __r12 __asm__ ("r12") = (unsigned long) (r12);
-#define LOAD_ARGS_asm_3(r10, r11, r12) LOAD_ARGS_asm_2 (r10, r11)
-#define ASM_CLOBBER_3 ASM_CLOBBER_2
-#define ASM_ARGS_3(r10, r11, r12) ASM_ARGS_2 (r10, r11), "r" (__r12)
-
-#define LOAD_ARGS_c_4(r10, r11, r12, r13) \
- LOAD_ARGS_c_3(r10, r11, r12) \
- register unsigned long __r13 __asm__ ("r13") = (unsigned long) (r13);
-#define LOAD_ARGS_asm_4(r10, r11, r12, r13) LOAD_ARGS_asm_3 (r10, r11, r12)
-#define ASM_CLOBBER_4 ASM_CLOBBER_3
-#define ASM_ARGS_4(r10, r11, r12, r13) ASM_ARGS_3 (r10, r11, r12), "r" (__r13)
-
-#define LOAD_ARGS_c_5(r10, r11, r12, r13, mof) \
- LOAD_ARGS_c_4(r10, r11, r12, r13)
-#define LOAD_ARGS_asm_5(r10, r11, r12, r13, mof) \
- LOAD_ARGS_asm_4 (r10, r11, r12, r13) "move %6,$mof\n\t"
-#define ASM_CLOBBER_5 ASM_CLOBBER_4
-#define ASM_ARGS_5(r10, r11, r12, r13, mof) \
- ASM_ARGS_4 (r10, r11, r12, r13), "g" (mof)
-
-#define LOAD_ARGS_c_6(r10, r11, r12, r13, mof, srp) \
- LOAD_ARGS_c_5(r10, r11, r12, r13, mof)
-#define LOAD_ARGS_asm_6(r10, r11, r12, r13, mof, srp) \
- LOAD_ARGS_asm_5(r10, r11, r12, r13, mof) \
- "move %7,$srp\n\t"
-#define ASM_CLOBBER_6 ASM_CLOBBER_5, "srp"
-#define ASM_ARGS_6(r10, r11, r12, r13, mof, srp) \
- ASM_ARGS_5 (r10, r11, r12, r13, mof), "g" (srp)
-
-#endif /* not __ASSEMBLER__ */
diff --git a/sysdeps/unix/sysv/linux/cris/vfork.S b/sysdeps/unix/sysv/linux/cris/vfork.S
deleted file mode 100644
index 74a8556765..0000000000
--- a/sysdeps/unix/sysv/linux/cris/vfork.S
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright (C) 1999, 2001, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-PSEUDO (__vfork, vfork, 0)
- Ret
- nop
-PSEUDO_END (__vfork)
-libc_hidden_def (__vfork)
-
-weak_alias (__vfork, vfork)
diff --git a/sysdeps/unix/sysv/linux/cris/xstat.c b/sysdeps/unix/sysv/linux/cris/xstat.c
deleted file mode 100644
index e9869f5508..0000000000
--- a/sysdeps/unix/sysv/linux/cris/xstat.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/xstat.c>
diff --git a/sysdeps/unix/sysv/linux/syscalls.list b/sysdeps/unix/sysv/linux/syscalls.list
index dd229238c1..d7c8b443c4 100644
--- a/sysdeps/unix/sysv/linux/syscalls.list
+++ b/sysdeps/unix/sysv/linux/syscalls.list
@@ -52,7 +52,6 @@ query_module EXTRA query_module i:sipip query_module
quotactl EXTRA quotactl i:isip quotactl
remap_file_pages - remap_file_pages i:piiii __remap_file_pages remap_file_pages
request_key EXTRA request_key i:pppi request_key
-setaltroot EXTRA setaltroot i:p setaltroot
sched_getp - sched_getparam i:ip __sched_getparam sched_getparam
sched_gets - sched_getscheduler i:i __sched_getscheduler sched_getscheduler
sched_primax - sched_get_priority_max i:i __sched_get_priority_max sched_get_priority_max
diff --git a/sysdeps/unix/sysv/linux/waitid.c b/sysdeps/unix/sysv/linux/waitid.c
index 207c3d3453..71d5d3aa10 100644
--- a/sysdeps/unix/sysv/linux/waitid.c
+++ b/sysdeps/unix/sysv/linux/waitid.c
@@ -17,6 +17,7 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
+#include <stddef.h>
#include <errno.h>
#include <sys/wait.h>
#include <kernel-features.h>
diff --git a/sysdeps/unix/sysv/minix/bits/sigaction.h b/sysdeps/unix/sysv/minix/bits/sigaction.h
deleted file mode 100644
index 4b04b7b559..0000000000
--- a/sysdeps/unix/sysv/minix/bits/sigaction.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/* Copyright (C) 1992, 1996, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SIGNAL_H
-# error "Never include <bits/sigaction.h> directly; use <signal.h> instead."
-#endif
-
-/* Structure describing the action to be taken when a signal arrives. */
-struct sigaction
- {
- /* Signal handler. */
- __sighandler_t sa_handler;
-
- /* Additional set of signals to be blocked. */
- __sigset_t sa_mask;
-
- /* Special flags. */
- int sa_flags;
- };
-
-/* Bits in `sa_flags'. */
-#ifdef __USE_MISC
-# define SA_ONSTACK 0x1 /* Take signal on signal stack. */
-# define SA_RESETHAND 0x2 /* Reset signal handler when signal caught. */
-# define SA_NODEFER 0x4 /* Don't block signal while catching it. */
-# define SA_RESTART 0x8 /* Restart syscall on signal return. */
-# define SA_SIGINFO 0x10 /* Extended signal handling. */
-# define SA_NOCLDWAIT 0x20 /* Don't create zombies. */
-# define SA_COMPAT 0x80 /* Internal flag for old signal catchers. */
-# define SA_DISABLE 0x100 /* Disable alternate signal stack. */
-#endif
-#define SA_NOCLDSTOP 0x40 /* Don't send SIGCHLD when children stop. */
-
-
-/* Values for the HOW argument to `sigprocmask'. */
-#define SIG_BLOCK 0 /* Block signals. */
-#define SIG_UNBLOCK 1 /* Unblock signals. */
-#define SIG_SETMASK 2 /* Set the set of blocked signals. */
diff --git a/sysdeps/unix/sysv/sco3.2.4/Dist b/sysdeps/unix/sysv/sco3.2.4/Dist
deleted file mode 100644
index 984b473349..0000000000
--- a/sysdeps/unix/sysv/sco3.2.4/Dist
+++ /dev/null
@@ -1 +0,0 @@
-__setpgid.c
diff --git a/sysdeps/unix/sysv/sco3.2.4/Makefile b/sysdeps/unix/sysv/sco3.2.4/Makefile
deleted file mode 100644
index a199ba9003..0000000000
--- a/sysdeps/unix/sysv/sco3.2.4/Makefile
+++ /dev/null
@@ -1,17 +0,0 @@
-ifeq (posix,$(subdir))
-sysdep_routines := $(sysdep_routines) pgrpsys sco_getgrp
-endif
-
-ifeq (csu,$(subdir))
-
-# SCO uses crt1.o, and expects that single initializer file to also start
-# the .init and .fini sections as crti.o normally does.
-start-installed-name = crt1.o
-start-installed-name-rule = yes
-
-# Link together start.o and crti.o into the expected crt1.o.
-# Now crt1.o as initializer and crtn.o as finalizer will work.
-$(objpfx)crt1.o: $(objpfx)start.o $(objpfx)crti.o
- $(CC) -nostdlib -nostartfiles -Wl,-r -o $@ $^
-
-endif
diff --git a/sysdeps/unix/sysv/sco3.2.4/bits/confname.h b/sysdeps/unix/sysv/sco3.2.4/bits/confname.h
deleted file mode 100644
index 42e6ed0ead..0000000000
--- a/sysdeps/unix/sysv/sco3.2.4/bits/confname.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/* `sysconf', `pathconf', and `confstr' NAME values. Generic version.
- Copyright (C) 1993, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _UNISTD_H
-# error "Never use <bits/confname.h> directly; include <unistd.h> instead."
-#endif
-
-/* Values for the NAME argument to `pathconf' and `fpathconf'. */
-#define _PC_LINK_MAX 0
-#define _PC_MAX_CANON 1
-#define _PC_MAX_INPUT 2
-#define _PC_NAME_MAX 3
-#define _PC_PATH_MAX 4
-#define _PC_PIPE_BUF 5
-#define _PC_CHOWN_RESTRICTED 6
-#define _PC_NO_TRUNC 7
-#define _PC_VDISABLE 8
-
-/* Values for the argument to `sysconf'. */
-#define _SC_ARG_MAX 0
-#define _SC_CHILD_MAX 1
-#define _SC_CLK_TCK 2
-#define _SC_NGROUPS_MAX 3
-#define _SC_OPEN_MAX 4
-#define _SC_JOB_CONTROL 5
-#define _SC_SAVED_IDS 6
-#define _SC_VERSION 7
-#define _SC_PASS_MAX 8
-#define _SC_XOPEN_VERSION 9
-#define _SC_TZNAME_MAX 666 /* Not handled by SCO's system call. */
-
-#ifdef __USE_POSIX2
-/* Values for the NAME argument to `confstr'. */
-enum
- {
- _CS_PATH /* The default search path. */
- };
-#endif
diff --git a/sysdeps/unix/sysv/sco3.2.4/bits/sigaction.h b/sysdeps/unix/sysv/sco3.2.4/bits/sigaction.h
deleted file mode 100644
index f087388556..0000000000
--- a/sysdeps/unix/sysv/sco3.2.4/bits/sigaction.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/* The proper definitions for SCO's sigaction.
- Copyright (C) 1993, 1994, 1996, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SIGNAL_H
-# error "Never include <bits/sigaction.h> directly; use <signal.h> instead."
-#endif
-
-/* Structure describing the action to be taken when a signal arrives. */
-struct sigaction
- {
- /* Signal handler. */
- __sighandler_t sa_handler;
-
- /* Additional set of signals to be blocked. */
- __sigset_t sa_mask;
-
- /* Special flags. */
- int sa_flags;
- };
-
-/* Bits in `sa_flags'. */
-#define SA_NOCLDSTOP 0x01 /* Don't send SIGCHLD when children stop. */
-
-/* Values for the HOW argument to `sigprocmask'. */
-#define SIG_SETMASK 0 /* Set the set of blocked signals. */
-#define SIG_BLOCK 1 /* Block signals. */
-#define SIG_UNBLOCK 2 /* Unblock signals. */
diff --git a/sysdeps/unix/sysv/sco3.2.4/getgroups.c b/sysdeps/unix/sysv/sco3.2.4/getgroups.c
deleted file mode 100644
index 2aac40bddd..0000000000
--- a/sysdeps/unix/sysv/sco3.2.4/getgroups.c
+++ /dev/null
@@ -1,45 +0,0 @@
-/* Copyright (C) 1994, 1995, 1997, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/types.h>
-#include <unistd.h>
-#include <limits.h>
-#include <alloca.h>
-
-extern int __sco_getgroups (int size, unsigned short int *list);
-
-int
-__getgroups (size, list)
- int size; gid_t *list;
-{
- int i;
- unsigned short int *shortlist;
-
- if (size <= 0)
- return __sco_getgroups (size, NULL);
-
- shortlist = __alloca (size * sizeof (*shortlist));
-
- size = __sco_getgroups (size, shortlist);
- for (i = 0; i < size; ++i)
- list[i] = shortlist[i];
-
- return size;
-}
-
-weak_alias (__getgroups, getgroups)
diff --git a/sysdeps/unix/sysv/sco3.2.4/getpgid.c b/sysdeps/unix/sysv/sco3.2.4/getpgid.c
deleted file mode 100644
index 3b47d9dee2..0000000000
--- a/sysdeps/unix/sysv/sco3.2.4/getpgid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/sysv4/getpgid.c>
diff --git a/sysdeps/unix/sysv/sco3.2.4/setpgid.c b/sysdeps/unix/sysv/sco3.2.4/setpgid.c
deleted file mode 100644
index cc9c4cd61b..0000000000
--- a/sysdeps/unix/sysv/sco3.2.4/setpgid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/sysv4/setpgid.c>
diff --git a/sysdeps/unix/sysv/sco3.2.4/setsid.c b/sysdeps/unix/sysv/sco3.2.4/setsid.c
deleted file mode 100644
index 6337652552..0000000000
--- a/sysdeps/unix/sysv/sco3.2.4/setsid.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/sysv4/setsid.c>
diff --git a/sysdeps/unix/sysv/sco3.2.4/sigaction.S b/sysdeps/unix/sysv/sco3.2.4/sigaction.S
deleted file mode 100644
index ae50c17d93..0000000000
--- a/sysdeps/unix/sysv/sco3.2.4/sigaction.S
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright (C) 1993, 1994, 1995, 1997, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-.globl C_SYMBOL_NAME(__sigreturn)
-
-ENTRY (__sigaction)
- movl $C_SYMBOL_NAME(__sigreturn), %ecx
- DO_CALL (sigaction, 3)
- jb syscall_error
- ret
-
-libc_hidden_def (__sigaction)
-weak_alias (__sigaction, sigaction)
diff --git a/sysdeps/unix/sysv/sco3.2.4/sys/syscall.h b/sysdeps/unix/sysv/sco3.2.4/sys/syscall.h
deleted file mode 100644
index 05bbb89f34..0000000000
--- a/sysdeps/unix/sysv/sco3.2.4/sys/syscall.h
+++ /dev/null
@@ -1,125 +0,0 @@
-/* Copyright (C) 1994, 1996 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* From Scott Bartram. */
-
-#ifndef _SYSCALL_H
-#define _SYSCALL_H
-
-#define SYS_access 33
-#define SYS_acct 51
-#define SYS_advfs 70
-#define SYS_alarm 27
-#define SYS_break 17
-#define SYS_brk 17
-#define SYS_chdir 12
-#define SYS_chmod 15
-#define SYS_chown 16
-#define SYS_chroot 61
-#define SYS_chsize 0x0a28
-#define SYS_close 6
-#define SYS_creat 8
-#define SYS_dup 41
-#define SYS_exec 11
-#define SYS_exece 59
-#define SYS_exit 1
-#define SYS_fcntl 62
-#define SYS_fork 2
-#define SYS_fpathconf 0x2f28
-#define SYS_fstat 28
-#define SYS_fstatfs 38
-#define SYS_ftime 0x0b28
-#define SYS_getdents 81
-#define SYS_getgid 47
-#define SYS_getgroups 0x2b28
-#define SYS_getitimer 0x3728
-#define SYS_getmsg 85
-#define SYS_getpid 20
-#define SYS_getuid 24
-#define SYS_gtty 32
-#define SYS_ioctl 54
-#define SYS_kill 37
-#define SYS_link 9
-#define SYS_lock 45
-#define SYS_lseek 19
-#define SYS_lstat 91
-#define SYS_mkdir 80
-#define SYS_mknod 14
-#define SYS_mount 21
-#define SYS_msgsys 49
-#define SYS_nap 0x0c28
-#define SYS_nice 34
-#define SYS_open 5
-#define SYS_pathconf 0x2e28
-#define SYS_pause 29
-#define SYS_pgrpsys 39
-#define SYS_pipe 42
-#define SYS_plock 45
-#define SYS_poll 87
-#define SYS_prof 44
-#define SYS_ptrace 26
-#define SYS_putmsg 86
-#define SYS_rdebug 76
-#define SYS_read 3
-#define SYS_readlink 92
-#define SYS_rename 0x3028
-#define SYS_rfstart 74
-#define SYS_rfstop 77
-#define SYS_rfsys 78
-#define SYS_rmdir 79
-#define SYS_rmount 72
-#define SYS_rumount 73
-#define SYS_seek 19
-#define SYS_select 0x2428
-#define SYS_semsys 53
-#define SYS_setgid 46
-#define SYS_setgroups 0x2c28
-#define SYS_setitimer 0x3828
-#define SYS_setpgrp 39
-#define SYS_setuid 23
-#define SYS_shmsys 52
-#define SYS_sigaction 0x2728
-#define SYS_signal 48
-#define SYS_sigpending 0x2928
-#define SYS_sigprocmask 0x2828
-#define SYS_sigsuspend 0x2a28
-#define SYS_stat 18
-#define SYS_statfs 35
-#define SYS_stime 25
-#define SYS_stty 31
-#define SYS_symlink 90
-#define SYS_sync 36
-#define SYS_sys3b 50
-#define SYS_sysacct 51
-#define SYS_sysconf 0x2d28
-#define SYS_sysfs 84
-#define SYS_sysi86 50
-#define SYS_time 13
-#define SYS_times 43
-#define SYS_uadmin 55
-#define SYS_ulimit 63
-#define SYS_umask 60
-#define SYS_umount 22
-#define SYS_unadvfs 71
-#define SYS_unlink 10
-#define SYS_utime 30
-#define SYS_utssys 57
-#define SYS_wait 7
-#define SYS_write 4
-
-#endif
diff --git a/sysdeps/unix/sysv/sco3.2.4/syscalls.list b/sysdeps/unix/sysv/sco3.2.4/syscalls.list
deleted file mode 100644
index bda6c16c76..0000000000
--- a/sysdeps/unix/sysv/sco3.2.4/syscalls.list
+++ /dev/null
@@ -1,8 +0,0 @@
-# File name Caller Syscall name # args Strong name Weak names
-
-pathconf - pathconf 2 __pathconf pathconf
-pgrpsys - pgrpsys 3 __pgrpsys
-sco_getgrp getgroups getgroups 2 __sco_getgroups
-sigpending - sigpending 1 sigpending
-sigprocmask - sigprocmask 3 __sigprocmask sigprocmask
-sigsuspend - sigsuspend 1 sigsuspend
diff --git a/sysdeps/unix/sysv/sco3.2.4/sysconf.S b/sysdeps/unix/sysv/sco3.2.4/sysconf.S
deleted file mode 100644
index 9780bd4881..0000000000
--- a/sysdeps/unix/sysv/sco3.2.4/sysconf.S
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright (C) 1993, 1994, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-#include <bits/confname.h>
-
-.globl __tzname_max
-ENTRY (__sysconf)
- cmpl $_SC_TZNAME_MAX, 4(%esp) /* Is the arg _SC_TZNAME_MAX? */
- je tzname
- DO_CALL (sysconf, 1) /* No; use the SCO system call. */
- ret
-tzname: jmp C_SYMBOL_NAME(__tzname_max) /* Yes; bounce to __tzname_max (). */
-
-weak_alias (__sysconf, sysconf)
diff --git a/sysdeps/unix/sysv/sco3.2.4/system.c b/sysdeps/unix/sysv/sco3.2.4/system.c
deleted file mode 100644
index 06dc066b88..0000000000
--- a/sysdeps/unix/sysv/sco3.2.4/system.c
+++ /dev/null
@@ -1,10 +0,0 @@
-/* SCO has a bug where `waitpid' will never return if SIGCHLD is blocked.
- They have acknowledged that this is a bug but I have not seen nor heard
- of any forthcoming fix. */
-
-#define WAITPID_CANNOT_BLOCK_SIGCHLD
-
-/* SCO 3.2v4 does have `waitpid'.
- Avoid unix/system.c, which says we don't. */
-
-#include <sysdeps/posix/system.c>
diff --git a/sysdeps/unix/sysv/sco3.2.4/uname.S b/sysdeps/unix/sysv/sco3.2.4/uname.S
deleted file mode 100644
index bc61089d65..0000000000
--- a/sysdeps/unix/sysv/sco3.2.4/uname.S
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Copyright (C) 1993, 1994, 1997 Free Software Foundation, Inc.
- Contributed by Scott Bartram.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-/*
- before lcall, stack contents should be:
-
- 4(%esp) -> name
- 8(%esp) -> unspecified
- 12(%esp) -> 0
- */
-
-ENTRY (uname)
- pushl $0x0 /* Push the discriminator flag. */
- pushl $0x0 /* Push dummy placeholder. */
- pushl 12(%esp,1) /* Push NAME (ptr to struct utsname) */
- subl $0x4, %esp /* Adjust stack pointer. */
- DO_CALL (utssys, 3)
- jb error /* Test for error. */
- addl $0x10, %esp /* Adjust the stack pointer. */
- xorl %eax, %eax /* Clear return value. */
- ret
-error: addl $0x10, %esp /* Adjust the stack pointer. */
- jmp syscall_error
diff --git a/sysdeps/unix/sysv/sco3.2.4/waitpid.S b/sysdeps/unix/sysv/sco3.2.4/waitpid.S
deleted file mode 100644
index ccbc81274e..0000000000
--- a/sysdeps/unix/sysv/sco3.2.4/waitpid.S
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright (C) 1993,94,95,97,2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-ENTRY (__waitpid)
- /* The `waitpid' system call is distinguished from plain
- `wait' by setting lots of bits in the processor flags. */
- pushfl /* Push the flags word. */
- popl %eax /* Pop it into the accumulator. */
- orl $0x8c4, %eax /* Set lots of bits. */
- pushl %eax /* Push the new flags word. */
- popfl /* Pop it into the flags. */
- DO_CALL (wait, 2)
- movl 8(%esp), scratch /* Put status pointer in scratch register. */
- testl scratch, scratch /* Is it non-nil? */
- je null
- movl r1, (scratch) /* Yes; store the status there. */
-null: ret
-
-libc_hidden_def (__waitpid)
-weak_alias (__waitpid, waitpid)
diff --git a/sysdeps/unix/sysv/sco3.2/Dist b/sysdeps/unix/sysv/sco3.2/Dist
deleted file mode 100644
index 60fab2bdea..0000000000
--- a/sysdeps/unix/sysv/sco3.2/Dist
+++ /dev/null
@@ -1 +0,0 @@
-__fltused.c
diff --git a/sysdeps/unix/sysv/sco3.2/Makefile b/sysdeps/unix/sysv/sco3.2/Makefile
deleted file mode 100644
index c4d9da7a06..0000000000
--- a/sysdeps/unix/sysv/sco3.2/Makefile
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright (C) 1993, 1997 Free Software Foundation, Inc.
-# This file is part of the GNU C Library.
-
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
-
-# You should have received a copy of the GNU Lesser General Public
-# License along with the GNU C Library; if not, write to the Free
-# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-# 02111-1307 USA.
-
-ifeq ($(subdir),misc)
-
-sysdep_routines := $(sysdep_routines) __fltused
-
-endif
diff --git a/sysdeps/unix/sysv/sco3.2/__fltused.c b/sysdeps/unix/sysv/sco3.2/__fltused.c
deleted file mode 100644
index 5d1d67f0b1..0000000000
--- a/sysdeps/unix/sysv/sco3.2/__fltused.c
+++ /dev/null
@@ -1,3 +0,0 @@
-/* Code compiled by the SCO compiler apparently likes this to be defined. */
-
-int __fltused = 1;
diff --git a/sysdeps/unix/sysv/sco3.2/bits/local_lim.h b/sysdeps/unix/sysv/sco3.2/bits/local_lim.h
deleted file mode 100644
index b4141d0dbf..0000000000
--- a/sysdeps/unix/sysv/sco3.2/bits/local_lim.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright (C) 1993, 1996 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _BITS_LOCAL_LIM_H
-#define _BITS_LOCAL_LIM_H 1
-
-#define NGROUPS_MAX 8 /* Maximum number of supplementary groups. */
-#define ARG_MAX 5120
-#define CHILD_MAX 25
-#define OPEN_MAX 60
-#define LINK_MAX 1000
-#define MAX_CANON 256
-
-/* For SVR3, this is 14. For SVR4, it is 255, at least on ufs
- file systems, even though the System V limits.h incorrectly
- defines it as 14. Giving it a value which is too large
- is harmless (it is a maximum). */
-#define NAME_MAX 255
-
-#define PATH_MAX 1024
-
-#endif /* bits/local_lim.h */
diff --git a/sysdeps/unix/sysv/sysv4/Dist b/sysdeps/unix/sysv/sysv4/Dist
deleted file mode 100644
index 6395064504..0000000000
--- a/sysdeps/unix/sysv/sysv4/Dist
+++ /dev/null
@@ -1,4 +0,0 @@
-__getpgid.c
-__setpgid.c
-sysconfig.h
-siginfo.h
diff --git a/sysdeps/unix/sysv/sysv4/Implies b/sysdeps/unix/sysv/sysv4/Implies
deleted file mode 100644
index 953822ea48..0000000000
--- a/sysdeps/unix/sysv/sysv4/Implies
+++ /dev/null
@@ -1,3 +0,0 @@
-# The directory unix/common contains things which are common to both BSD
-# and SVR4.
-unix/common
diff --git a/sysdeps/unix/sysv/sysv4/Makefile b/sysdeps/unix/sysv/sysv4/Makefile
deleted file mode 100644
index 6f7155c716..0000000000
--- a/sysdeps/unix/sysv/sysv4/Makefile
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright (C) 1992, 1993, 1995, 1996, 1997 Free Software Foundation, Inc.
-# This file is part of the GNU C Library.
-
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
-
-# You should have received a copy of the GNU Lesser General Public
-# License along with the GNU C Library; if not, write to the Free
-# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-# 02111-1307 USA.
-
-ifeq ($(subdir),posix)
-
-sysdep_routines := $(sysdep_routines) sysconfig pgrpsys __waitid
-
-endif
-
-ifeq ($(subdir),misc)
-
-sysdep_routines := $(sysdep_routines) sysinfo
-
-endif
diff --git a/sysdeps/unix/sysv/sysv4/bits/sigaction.h b/sysdeps/unix/sysv/sysv4/bits/sigaction.h
deleted file mode 100644
index faf07e5ff5..0000000000
--- a/sysdeps/unix/sysv/sysv4/bits/sigaction.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/* The proper definitions for SVR4's sigaction.
- Copyright (C) 1993, 1994, 1996, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SIGNAL_H
-# error "Never include <bits/sigaction.h> directly; use <signal.h> instead."
-#endif
-
-/* Structure describing the action to be taken when a signal arrives. */
-struct sigaction
- {
- /* Special flags. */
- int sa_flags;
-
- /* Signal handler. */
- __sighandler_t sa_handler;
-
- /* Additional set of signals to be blocked. */
- __sigset_t sa_mask;
-
- /* Padding. */
- int sa_resv[2];
- };
-
-/* Bits in `sa_flags'. */
-#ifdef __USE_MISC
-# define SA_ONSTACK 0x1 /* Take signal on signal stack. */
-# define SA_RESETHAND 0x2 /* Reset to SIG_DFL on entry to handler. */
-# define SA_RESTART 0x4 /* Restart syscall on signal return. */
-# define SA_SIGINFO 0x8 /* Provide additional info to the handler. */
-# define SA_NODEFER 0x10 /* Don't automatically block the signal when
- its handler is being executed. */
-# define SA_NOCLDWAIT 0x10000 /* Don't save zombie processes. */
-#endif
-#define SA_NOCLDSTOP 0x20000 /* Don't send SIGCHLD when children stop. */
-
-/* Values for the HOW argument to `sigprocmask'. */
-#define SIG_BLOCK 1 /* Block signals. */
-#define SIG_UNBLOCK 2 /* Unblock signals. */
-#define SIG_SETMASK 3 /* Set the set of blocked signals. */
diff --git a/sysdeps/unix/sysv/sysv4/bits/signum.h b/sysdeps/unix/sysv/sysv4/bits/signum.h
deleted file mode 100644
index 07f900a78b..0000000000
--- a/sysdeps/unix/sysv/sysv4/bits/signum.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/* Signal number definitions. SVR4 version.
- Copyright (C) 1994, 1996 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifdef _SIGNAL_H
-
-/* Fake signal functions. */
-#define SIG_ERR ((__sighandler_t) -1) /* Error return. */
-#define SIG_DFL ((__sighandler_t) 0) /* Default action. */
-#define SIG_IGN ((__sighandler_t) 1) /* Ignore signal. */
-
-
-/* Signals. */
-#define SIGHUP 1 /* Hangup (POSIX). */
-#define SIGINT 2 /* Interrupt (ANSI). */
-#define SIGQUIT 3 /* Quit (POSIX). */
-#define SIGILL 4 /* Illegal instruction (ANSI). */
-#define SIGABRT SIGIOT /* Abort (ANSI). */
-#define SIGTRAP 5 /* Trace trap (POSIX). */
-#define SIGIOT 6 /* IOT trap (4.2 BSD). */
-#define SIGEMT 7 /* EMT trap (4.2 BSD). */
-#define SIGFPE 8 /* Floating-point exception (ANSI). */
-#define SIGKILL 9 /* Kill, unblockable (POSIX). */
-#define SIGBUS 10 /* Bus error (4.2 BSD). */
-#define SIGSEGV 11 /* Segmentation violation (ANSI). */
-#define SIGSYS 12 /* Bad argument to system call (4.2 BSD)*/
-#define SIGPIPE 13 /* Broken pipe (POSIX). */
-#define SIGALRM 14 /* Alarm clock (POSIX). */
-#define SIGTERM 15 /* Termination (ANSI). */
-#define SIGUSR1 16 /* User-defined signal 1 (POSIX). */
-#define SIGUSR2 17 /* User-defined signal 2 (POSIX). */
-#define SIGCHLD 18 /* Child status has changed (POSIX). */
-#define SIGCLD SIGCHLD /* Same as SIGCHLD (System V). */
-#define SIGPWR 19 /* Power failure restart (System V). */
-#define SIGWINCH 20 /* Window size change (4.3 BSD, Sun). */
-#define SIGURG 21 /* Urgent condition on socket (4.2 BSD).*/
-#define SIGPOLL 22 /* Pollable event occurred (System V). */
-#define SIGIO SIGPOLL /* I/O now possible (4.2 BSD). */
-#define SIGSTOP 23 /* Stop, unblockable (POSIX). */
-#define SIGTSTP 24 /* Keyboard stop (POSIX). */
-#define SIGCONT 25 /* Continue (POSIX). */
-#define SIGTTIN 26 /* Background read from tty (POSIX). */
-#define SIGTTOU 27 /* Background write to tty (POSIX). */
-#define SIGVTALRM 28 /* Virtual alarm clock (4.2 BSD). */
-#define SIGPROF 29 /* Profiling alarm clock (4.2 BSD). */
-#define SIGXCPU 30 /* CPU limit exceeded (4.2 BSD). */
-#define SIGXFSZ 31 /* File size limit exceeded (4.2 BSD). */
-
-#endif /* <signal.h> included. */
-
-#define _NSIG 32 /* Biggest signal number + 1. */
diff --git a/sysdeps/unix/sysv/sysv4/bits/sigset.h b/sysdeps/unix/sysv/sysv4/bits/sigset.h
deleted file mode 100644
index 9093c72952..0000000000
--- a/sysdeps/unix/sysv/sysv4/bits/sigset.h
+++ /dev/null
@@ -1,98 +0,0 @@
-/* __sig_atomic_t, __sigset_t, and related definitions. SVR4 version.
- Copyright (C) 1994-1996, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SIGSET_H_types
-#define _SIGSET_H_types 1
-
-typedef int __sig_atomic_t;
-
-/* A `sigset_t' has a bit for each signal. */
-typedef struct
- {
- unsigned long int __sigbits[4];
- } __sigset_t;
-
-#endif /* ! _SIGSET_H_types */
-
-/* We only want to define these functions if <signal.h> was actually
- included; otherwise we were included just to define the types. Since we
- are namespace-clean, it wouldn't hurt to define extra macros. But
- trouble can be caused by functions being defined (e.g., any global
- register vars declared later will cause compilation errors). */
-
-#if !defined (_SIGSET_H_fns) && defined (_SIGNAL_H)
-#define _SIGSET_H_fns 1
-
-/* Return a mask that includes SIG only. */
-#define __sigmask(sig) (1 << ((sig) - 1))
-
-
-/* It's easier to assume 8-bit bytes than to get CHAR_BIT. */
-#define __NSSBITS (sizeof (unsigned long int) * 8)
-#define __SSELT(s) ((s) / __NSSBITS)
-#define __SSMASK(s) (1 << ((s) % __NSSBITS))
-
-#ifdef __USE_EXTERN_INLINES
-# ifndef _EXTERN_INLINE
-# define _EXTERN_INLINE extern __inline
-# endif
-
-_EXTERN_INLINE int
-__sigemptyset (__sigset_t *__set)
-{
- __set->__sigbits[0] = __set->__sigbits[1] =
- __set->__sigbits[2] = __set->__sigbits[3] = 0L;
- return 0;
-}
-
-_EXTERN_INLINE int
-__sigfillset (__sigset_t *__set)
-{
- /* SVR4 has a system call for `sigfillset' (!), and it only sets the bits
- for signals [1,31]. Setting bits for unimplemented signals seems
- harmless (and we will find out if it really is). */
- __set->__sigbits[0] = __set->__sigbits[1] =
- __set->__sigbits[2] = __set->__sigbits[3] = ~0L;
- return 0;
-}
-
-_EXTERN_INLINE int
-__sigaddset (__sigset_t *__set, int __sig)
-{
- __set->__sigbits[__SSELT (__sig)] |= __SSMASK (__sig);
- return 0;
-}
-
-_EXTERN_INLINE int
-__sigdelset (__sigset_t *__set, int __sig)
-{
- __set->__sigbits[__SSELT (__sig)] &= ~__SSMASK (__sig);
- return 0;
-}
-
-_EXTERN_INLINE int
-__sigismember (__const __sigset_t *__set, int __sig)
-{
- if (__set->__sigbits[__SSELT (__sig)] & __SSMASK (__sig))
- return 1;
- return 0;
-}
-#endif /* use extern inlines. */
-
-#endif /* ! _SIGSET_H_fns */
diff --git a/sysdeps/unix/sysv/sysv4/bits/utsname.h b/sysdeps/unix/sysv/sysv4/bits/utsname.h
deleted file mode 100644
index 891ae68628..0000000000
--- a/sysdeps/unix/sysv/sysv4/bits/utsname.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_UTSNAME_H
-# error "Never include <bits/utsname.h> directly; use <sys/utsname.h> instead."
-#endif
-
-#define _UTSNAME_LENGTH 257
diff --git a/sysdeps/unix/sysv/sysv4/bits/waitflags.h b/sysdeps/unix/sysv/sysv4/bits/waitflags.h
deleted file mode 100644
index 40bc823de6..0000000000
--- a/sysdeps/unix/sysv/sysv4/bits/waitflags.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Definitions of flag bits for `waitpid' et al.
- Copyright (C) 1993, 1996, 1997, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#if !defined _SYS_WAIT_H && !defined _STDLIB_H
-# error "Never include <bits/waitflags.h> directly; use <sys/wait.h> instead."
-#endif
-
-
-/* Bits in the third argument to `waitpid'. */
-#define WNOHANG 64 /* Don't block waiting. */
-#define WUNTRACED 4 /* Report status of stopped children. */
-
-#ifdef __USE_SVID
-# define WEXITED 1 /* Look for children that have exited. */
-# define WTRAPPED 2 /* Look for processes that stopped
- while tracing. */
-#endif
diff --git a/sysdeps/unix/sysv/sysv4/dup2.c b/sysdeps/unix/sysv/sysv4/dup2.c
deleted file mode 100644
index 7d36e0e352..0000000000
--- a/sysdeps/unix/sysv/sysv4/dup2.c
+++ /dev/null
@@ -1,2 +0,0 @@
-/* SVR4 uses the POSIX dup2. */
-#include <sysdeps/posix/dup2.c>
diff --git a/sysdeps/unix/sysv/sysv4/ftruncate.c b/sysdeps/unix/sysv/sysv4/ftruncate.c
deleted file mode 100644
index 47e040eb2c..0000000000
--- a/sysdeps/unix/sysv/sysv4/ftruncate.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* ftruncate for SVR4 using the fcntl F_FREESP command.
- Copyright (C) 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sys/types.h>
-#include <unistd.h>
-#include <fcntl.h>
-#include <string.h>
-
-/* Truncate the file FD refers to to LENGTH bytes. */
-int
-ftruncate (fd, length)
- int fd;
- off_t length;
-{
- struct flock fl;
-
- memset (&fl, 0, sizeof fl);
- fl.l_type = F_WRLCK;
- fl.l_start = length;
- return fcntl (fd, F_FREESP, &fl);
-}
diff --git a/sysdeps/unix/sysv/sysv4/gethostname.c b/sysdeps/unix/sysv/sysv4/gethostname.c
deleted file mode 100644
index 4a058b51c1..0000000000
--- a/sysdeps/unix/sysv/sysv4/gethostname.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Copyright (C) 1994, 1995, 1997, 2000, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <sys/systeminfo.h>
-
-extern int __sysinfo (int command, char *buf, long int count);
-
-int
-__gethostname (name, namelen)
- char *name;
- size_t namelen;
-{
- return __sysinfo (SI_HOSTNAME, name, namelen);
-}
-
-weak_alias (__gethostname, gethostname)
diff --git a/sysdeps/unix/sysv/sysv4/getpagesize.c b/sysdeps/unix/sysv/sysv4/getpagesize.c
deleted file mode 100644
index 6119640758..0000000000
--- a/sysdeps/unix/sysv/sysv4/getpagesize.c
+++ /dev/null
@@ -1,2 +0,0 @@
-/* Solaris uses sysconf ala POSIX.1. */
-#include <sysdeps/posix/getpagesize.c>
diff --git a/sysdeps/unix/sysv/sysv4/getpgid.c b/sysdeps/unix/sysv/sysv4/getpgid.c
deleted file mode 100644
index 95f96417cc..0000000000
--- a/sysdeps/unix/sysv/sysv4/getpgid.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Copyright (C) 1993,1995,1997,1999,2002,2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <unistd.h>
-#include <sys/types.h>
-
-extern pid_t __pgrpsys (int type, ...);
-
-/* Get the process group ID of process PID. */
-pid_t
-__getpgid (pid)
- pid_t pid;
-{
- return __pgrpsys (4, pid);
-}
-libc_hidden_def (__getpgid)
-weak_alias (__getpgid, getpgid)
diff --git a/sysdeps/unix/sysv/sysv4/i386/Dist b/sysdeps/unix/sysv/sysv4/i386/Dist
deleted file mode 100644
index 69d16ac6bf..0000000000
--- a/sysdeps/unix/sysv/sysv4/i386/Dist
+++ /dev/null
@@ -1 +0,0 @@
-sys-sig.S
diff --git a/sysdeps/unix/sysv/sysv4/i386/Makefile b/sysdeps/unix/sysv/sysv4/i386/Makefile
deleted file mode 100644
index 56f0a37de1..0000000000
--- a/sysdeps/unix/sysv/sysv4/i386/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-ifeq ($(subdir),signal)
-sysdep_routines := $(sysdep_routines) sys-sig
-endif
diff --git a/sysdeps/unix/sysv/sysv4/i386/bits/stat.h b/sysdeps/unix/sysv/sysv4/i386/bits/stat.h
deleted file mode 100644
index c1016a9228..0000000000
--- a/sysdeps/unix/sysv/sysv4/i386/bits/stat.h
+++ /dev/null
@@ -1,93 +0,0 @@
-/* Copyright (C) 1993, 1996, 1997, 1999, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_STAT_H
-# error "Never include <bits/stat.h> directly; use <sys/stat.h> instead."
-#endif
-
-#include <bits/types.h>
-
-/* Versions of the `struct stat' data structure and
- the bits of the `xmknod' interface. */
-#define _STAT_VER 2
-#define _MKNOD_VER 2
-
-/* Structure describing file characteristics. */
-struct stat
- {
- unsigned long itn st_dev; /* Device. */
- long int st_filler1[3];
- unsigned long int st_ino; /* File serial number. */
- unsigned long int st_mode; /* File mode. */
- unsigned long int st_nlink; /* Link count. */
- long int st_uid; /* User ID of the file's owner. */
- long int st_gid; /* Group ID of the file's group.*/
- unsigned long int st_rdev; /* Device number, if device. */
- long int st_filler2[2];
-
- long int st_size; /* Size of file, in bytes. */
- /* SVR4 added this extra long to allow for expansion of off_t. */
- long int st_filler3;
-
- long int st_atime; /* Time of last access. */
- unsigned long int st_atime_usec;
- long int st_mtime; /* Time of last modification. */
- unsigned long int st_mtime_usec;
- long int st_ctime; /* Time of last status change. */
- unsigned long int st_ctime_usec;
-
- __blksize_t st_blksize; /* Optimal block size for I/O. */
-#define _STATBUF_ST_BLKSIZE /* Tell code we have this member. */
-
- __blkcnt_t st_blocks; /* Number of 512-byte blocks allocated. */
- char st_fstype[16]; /* The type of this filesystem. */
- int st_aclcnt;
- unsigned long int st_level;
- unsigned long int st_flags;
- unsigned long int st_cmwlevel;
- long int st_filler4[4];
- };
-
-/* Encoding of the file mode. */
-
-#define __S_IFMT 0170000 /* These bits determine file type. */
-
-/* File types. */
-#define __S_IFDIR 0040000 /* Directory. */
-#define __S_IFCHR 0020000 /* Character device. */
-#define __S_IFBLK 0060000 /* Block device. */
-#define __S_IFREG 0100000 /* Regular file. */
-#define __S_IFIFO 0010000 /* FIFO. */
-
-/* These don't actually exist on System V, but having them doesn't hurt. */
-#define __S_IFLNK 0120000 /* Symbolic link. */
-#define __S_IFSOCK 0140000 /* Socket. */
-
-/* POSIX.1b objects. */
-#define __S_TYPEISMQ(buf) (0)
-#define __S_TYPEISSEM(buf) (0)
-#define __S_TYPEISSHM(buf) (0)
-
-/* Protection bits. */
-
-#define __S_ISUID 04000 /* Set user ID on execution. */
-#define __S_ISGID 02000 /* Set group ID on execution. */
-#define __S_ISVTX 01000 /* Save swapped text after use (sticky). */
-#define __S_IREAD 0400 /* Read by owner. */
-#define __S_IWRITE 0200 /* Write by owner. */
-#define __S_IEXEC 0100 /* Execute by owner. */
diff --git a/sysdeps/unix/sysv/sysv4/i386/sys-sig.S b/sysdeps/unix/sysv/sysv4/i386/sys-sig.S
deleted file mode 100644
index 6e2d1abde3..0000000000
--- a/sysdeps/unix/sysv/sysv4/i386/sys-sig.S
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-.globl C_SYMBOL_NAME(__sigreturn)
-
-ENTRY (__sigaction_syscall)
- movl $C_SYMBOL_NAME(__sigreturn), %edx
- DO_CALL (sigaction, 3)
- jb syscall_error
- ret
-
-PSEUDO (__context_syscall, context, 2)
- ret
diff --git a/sysdeps/unix/sysv/sysv4/i386/syscalls.list b/sysdeps/unix/sysv/sysv4/i386/syscalls.list
deleted file mode 100644
index 560cd8366e..0000000000
--- a/sysdeps/unix/sysv/sysv4/i386/syscalls.list
+++ /dev/null
@@ -1,6 +0,0 @@
-# File name Caller Syscall name # args Strong name Weak names
-
-xstat - xstat 3 __xstat _xstat
-fxstat - fxstat 3 __fxstat _fxstat
-lxstat - lxstat 3 __lxstat _lxstat
-xmknod - xmknod 4 __xmknod _xmknod
diff --git a/sysdeps/unix/sysv/sysv4/i386/sysdep.h b/sysdeps/unix/sysv/sysv4/i386/sysdep.h
deleted file mode 100644
index daecdb6222..0000000000
--- a/sysdeps/unix/sysv/sysv4/i386/sysdep.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdeps/unix/sysv/i386/sysdep.h>
-
-/* In SVR4 some system calls can fail with the error ERESTART,
- and this means the call should be retried. */
-
-#ifndef _ERRNO_H
-#define _ERRNO_H
-#endif
-#include <bits/errno.h>
-
-#undef PSEUDO
-#define PSEUDO(name, syscall_name, args) \
- .globl syscall_error; \
- ENTRY (name) \
- DO_CALL (syscall_name, args); \
- jae noerror; \
- cmpb $ERESTART, %al; \
- je C_SYMBOL_NAME (name); \
- jmp syscall_error; \
- noerror:
diff --git a/sysdeps/unix/sysv/sysv4/i386/vfork.S b/sysdeps/unix/sysv/sysv4/i386/vfork.S
deleted file mode 100644
index bbe99fbc41..0000000000
--- a/sysdeps/unix/sysv/sysv4/i386/vfork.S
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/bsd/i386/vfork.S>
diff --git a/sysdeps/unix/sysv/sysv4/sethostname.c b/sysdeps/unix/sysv/sysv4/sethostname.c
deleted file mode 100644
index d74b0f4f3b..0000000000
--- a/sysdeps/unix/sysv/sysv4/sethostname.c
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright (C) 1994, 1997, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <sys/systeminfo.h>
-
-extern int __sysinfo (int command, const char *buf, long count);
-
-int
-sethostname (name, namelen)
- const char *name;
- size_t namelen;
-{
- return __sysinfo (SI_SET_HOSTNAME, name, namelen);
-}
diff --git a/sysdeps/unix/sysv/sysv4/setpgid.c b/sysdeps/unix/sysv/sysv4/setpgid.c
deleted file mode 100644
index 80f4ad6430..0000000000
--- a/sysdeps/unix/sysv/sysv4/setpgid.c
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Copyright (C) 1993,1995-1997,1999,2002,2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <unistd.h>
-
-extern int __pgrpsys (pid_t type, ...);
-
-/* Set the process group ID of the process matching PID to PGID.
- If PID is zero, the current process's process group ID is set.
- If PGID is zero, the process ID of the process is used. */
-int
-__setpgid (pid, pgid)
- pid_t pid, pgid;
-{
- return __pgrpsys (5, pid, pgid);
-}
-libc_hidden_def (__setpgid)
-weak_alias (__setpgid, setpgid)
diff --git a/sysdeps/unix/sysv/sysv4/setsid.c b/sysdeps/unix/sysv/sysv4/setsid.c
deleted file mode 100644
index faa2c42d7d..0000000000
--- a/sysdeps/unix/sysv/sysv4/setsid.c
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright (C) 1993, 1995, 1997, 1999, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <unistd.h>
-
-extern pid_t __pgrpsys (int type, ...);
-
-/* Create a new session with the calling process as its leader.
- The process group IDs of the session and the calling process
- are set to the process ID of the calling process, which is returned. */
-pid_t
-__setsid ()
-{
- return __pgrpsys (3);
-}
-
-weak_alias (__setsid, setsid)
diff --git a/sysdeps/unix/sysv/sysv4/sigaction.c b/sysdeps/unix/sysv/sysv4/sigaction.c
deleted file mode 100644
index d5926b3d42..0000000000
--- a/sysdeps/unix/sysv/sysv4/sigaction.c
+++ /dev/null
@@ -1,80 +0,0 @@
-/* Copyright (C) 1994,1995,1996,1997,2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <signal.h>
-#include <stddef.h>
-
-static __sighandler_t user_handlers[NSIG];
-
-extern int __context_syscall (int, struct sigcontext *);
-extern int __sigaction_syscall (int,
- const struct sigaction *, struct sigaction *);
-
-static void
-trampoline (int sig, int code, struct sigcontext *context)
-{
- (*(void (*) (int, int, struct sigcontext *)) user_handlers[sig])
- (sig, code, context);
- __context_syscall (1, context);
-}
-
-/* If ACT is not NULL, change the action for SIG to *ACT.
- If OACT is not NULL, put the old action for SIG in *OACT. */
-int
-__sigaction (sig, act, oact)
- int sig;
- const struct sigaction *act;
- struct sigaction *oact;
-{
- struct sigaction myact;
- __sighandler_t ohandler;
-
- if (sig <= 0 || sig >= NSIG)
- {
- __set_errno (EINVAL);
- return -1;
- }
-
- ohandler = user_handlers[sig];
-
- if (act != NULL)
- {
- user_handlers[sig] = act->sa_handler;
- if (act->sa_handler != SIG_DFL && act->sa_handler != SIG_IGN)
- {
- myact = *act;
- act = &myact;
- act->sa_handler = (__sighandler_t) trampoline;
- }
- }
-
- if (__sigaction_syscall (sig, act, oact) < 0)
- {
- /* The syscall got an error. Restore the old handler and return -1. */
- user_handlers[sig] = ohandler;
- return -1;
- }
-
- if (oact != NULL && oact->sa_handler == (__sighandler_t) trampoline)
- oact->sa_handler = ohandler;
-
- return 0;
-}
-libc_hidden_def (__sigaction)
-weak_alias (__sigaction, sigaction)
diff --git a/sysdeps/unix/sysv/sysv4/siginfo.h b/sysdeps/unix/sysv/sysv4/siginfo.h
deleted file mode 100644
index 2bb925738c..0000000000
--- a/sysdeps/unix/sysv/sysv4/siginfo.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Definitions of the siginfo structure.
- Copyright (C) 1993, 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SIGINFO_H
-#define _SIGINFO_H 1
-
-#ifdef __USE_SVID
-/* SVR4 puts a ton of other stuff in this structure. For now, we'll just
- define the two things we really need out of it, and hope for the best. */
-
-/* These define the different states a child can have on exit.
- We need these to build the status return for things like waitpid. */
-#define EXITED 1
-#define KILLED 2
-#define CORED 3
-#define TRAPPED 4
-#define STOPPED 5
-#define CONTINUED 6
-
-typedef struct __siginfo
- {
- int filler1;
-
- /* Code indicating child's status */
- int __code;
-
- int filler2;
-
- /* The PID of the child. */
- long __pid;
-
- int filler3;
-
- /* The child's status. */
- int __status;
-
- int filler4[26];
-
- } __siginfo_t;
-
-#endif /* __USE_SVID */
-#endif /* siginfo.h */
diff --git a/sysdeps/unix/sysv/sysv4/sigset-cvt-mask.h b/sysdeps/unix/sysv/sysv4/sigset-cvt-mask.h
deleted file mode 100644
index 5b7ea25885..0000000000
--- a/sysdeps/unix/sysv/sysv4/sigset-cvt-mask.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Convert between lowlevel sigmask and libc representation of sigset_t.
- SysVr4 version.
- Copyright (C) 1998, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Joe Keane <jgk@jgk.org>.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-static inline int __attribute__ ((unused))
-sigset_set_old_mask (sigset_t *set, int mask)
-{
- set->__sigbits[0] = (unsigned int) mask;
- set->__sigbits[1] = 0ul;
- set->__sigbits[2] = 0ul;
- set->__sigbits[3] = 0ul;
-
- return 0;
-}
-
-static inline int __attribute__ ((unused))
-sigset_get_old_mask (const sigset_t *set)
-{
- return (unsigned int) set->__sigbits[0];
-}
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/Makefile b/sysdeps/unix/sysv/sysv4/solaris2/Makefile
deleted file mode 100644
index 3ad90f748a..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/Makefile
+++ /dev/null
@@ -1,6 +0,0 @@
-# The linker supplied with Solaris looks in the current directory
-# before searching others. Compiling the various programs that come
-# along the way (e.g., glue-ctype) will fail because it'll try to link
-# with the libc.a being *constructed* in $(objdir). As a work-around,
-# we add this to each native-compile.
-ALL_BUILD_CFLAGS += -L/lib
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/bits/dirent.h b/sysdeps/unix/sysv/sysv4/solaris2/bits/dirent.h
deleted file mode 100644
index fa0250eb3e..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/bits/dirent.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/* Copyright (C) 1996, 1997, 1999 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _DIRENT_H
-# error "Never use <bits/dirent.h> directly; include <dirent.h> instead."
-#endif
-
-struct dirent
- {
-#ifndef __USE_FILE_OFFSET64
- __ino_t d_ino;
- __off_t d_off;
-#else
- __ino64_t d_ino;
- __off64_t d_off;
-#endif
- unsigned short int d_reclen;
- char d_name[256]; /* We must not include limits.h! */
- };
-
-#ifdef __USE_LARGEFILE64
-struct dirent64
- {
- __ino64_t d_ino;
- __off64_t d_off;
- unsigned short int d_reclen;
- char d_name[256]; /* We must not include limits.h! */
- };
-#endif
-
-#define d_fileno d_ino /* Backwards compatibility. */
-
-#undef _DIRENT_HAVE_D_NAMLEN
-#define _DIRENT_HAVE_D_RECLEN
-#define _DIRENT_HAVE_D_OFF
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/bits/errno.h b/sysdeps/unix/sysv/sysv4/solaris2/bits/errno.h
deleted file mode 100644
index 6c0de92151..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/bits/errno.h
+++ /dev/null
@@ -1,168 +0,0 @@
-/* Copyright (C) 1991, 1994, 1996, 1997, 1998 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* This file defines the `errno' constants. */
-
-#if !defined __Emath_defined && (defined _ERRNO_H || defined __need_Emath)
-#undef __need_Emath
-#define __Emath_defined 1
-
-# define EDOM 33 /* Math argument out of domain of function. */
-# define EILSEQ 88 /* Illegal byte sequence. */
-# define ERANGE 34 /* Math result not representable. */
-#endif
-
-#ifdef _ERRNO_H
-/* All error codes the system knows about. */
-
-# define EPERM 1 /* Not super-user. */
-# define ENOENT 2 /* No such file or directory. */
-# define ESRCH 3 /* No such process. */
-# define EINTR 4 /* Interrupted system call. */
-# define EIO 5 /* I/O error. */
-# define ENXIO 6 /* No such device or address. */
-# define E2BIG 7 /* Arg list too long. */
-# define ENOEXEC 8 /* Exec format error. */
-# define EBADF 9 /* Bad file number. */
-# define ECHILD 10 /* No children. */
-# define EAGAIN 11 /* Resource temporarily unavailable. */
-# define EWOULDBLOCK EAGAIN
-# define ENOMEM 12 /* Not enough core. */
-# define EACCES 13 /* Permission denied. */
-# define EFAULT 14 /* Bad address. */
-# define ENOTBLK 15 /* Block device required. */
-# define EBUSY 16 /* Mount device busy. */
-# define EEXIST 17 /* File exists. */
-# define EXDEV 18 /* Cross-device link. */
-# define ENODEV 19 /* No such device. */
-# define ENOTDIR 20 /* Not a directory. */
-# define EISDIR 21 /* Is a directory. */
-# define EINVAL 22 /* Invalid argument. */
-# define ENFILE 23 /* File table overflow. */
-# define EMFILE 24 /* Too many open files. */
-# define ENOTTY 25 /* Inappropriate ioctl for device. */
-# define ETXTBSY 26 /* Text file busy. */
-# define EFBIG 27 /* File too large. */
-# define ENOSPC 28 /* No space left on device. */
-# define ESPIPE 29 /* Illegal seek. */
-# define EROFS 30 /* Read only file system. */
-# define EMLINK 31 /* Too many links. */
-# define EPIPE 32 /* Broken pipe. */
-# define ENOMSG 35 /* No message of desired type. */
-# define EIDRM 36 /* Identifier removed. */
-# define ECHRNG 37 /* Channel number out of range. */
-# define EL2NSYNC 38 /* Level 2 not synchronized. */
-# define EL3HLT 39 /* Level 3 halted. */
-# define EL3RST 40 /* Level 3 reset. */
-# define ELNRNG 41 /* Link number out of range. */
-# define EUNATCH 42 /* Protocol driver not attached. */
-# define ENOCSI 43 /* No CSI structure available. */
-# define EL2HLT 44 /* Level 2 halted. */
-# define EDEADLK 45 /* Deadlock condition. */
-# define ENOLCK 46 /* No record locks available. */
-# define ECANCELED 47 /* Operation canceled. */
-# define ENOTSUP 48 /* Operation not supported. */
-
-/* Filesystem Quotas. */
-# define EDQUOT 49 /* Disc quota exceeded. */
-
-/* Convergent Error Returns. */
-# define EBADE 50 /* Invalid exchange. */
-# define EBADR 51 /* Invalid request descriptor. */
-# define EXFULL 52 /* Exchange full. */
-# define ENOANO 53 /* No anode. */
-# define EBADRQC 54 /* Invalid request code. */
-# define EBADSLT 55 /* Invalid slot. */
-# define EDEADLOCK 56 /* File locking deadlock error. */
-
-# define EBFONT 57 /* Bad font file fmt. */
-
-/* STREAM problems. */
-# define ENOSTR 60 /* Device not a stream. */
-# define ENODATA 61 /* No data (for no delay io). */
-# define ETIME 62 /* Timer expired. */
-# define ENOSR 63 /* Out of streams resources. */
-
-# define ENONET 64 /* Machine is not on the network. */
-# define ENOPKG 65 /* Package not installed. */
-# define EREMOTE 66 /* The object is remote. */
-# define ENOLINK 67 /* The link has been severed. */
-# define EADV 68 /* Advertise error. */
-# define ESRMNT 69 /* Srmount error. */
-
-# define ECOMM 70 /* Communication error on send. */
-# define EPROTO 71 /* Protocol error. */
-# define EMULTIHOP 74 /* Multihop attempted. */
-# define EBADMSG 77 /* Trying to read unreadable message. */
-# define ENAMETOOLONG 78 /* Path name is too long. */
-# define EOVERFLOW 79 /* Value too large to be stored in data type.*/
-# define ENOTUNIQ 80 /* Given log. name not unique. */
-# define EBADFD 81 /* F.d. invalid for this operation. */
-# define EREMCHG 82 /* Remote address changed. */
-
-/* Shared library problems. */
-# define ELIBACC 83 /* Can't access a needed shared lib. */
-# define ELIBBAD 84 /* Accessing a corrupted shared lib. */
-# define ELIBSCN 85 /* .lib section in a.out corrupted. */
-# define ELIBMAX 86 /* Attempting to link in too many libs. */
-# define ELIBEXEC 87 /* Attempting to exec a shared library. */
-# define ENOSYS 89 /* Unsupported file system operation. */
-# define ELOOP 90 /* Symbolic link loop. */
-# define ERESTART 91 /* Restartable system call. */
-# define ESTRPIPE 92 /* If pipe/FIFO, don't sleep in stream head. */
-# define ENOTEMPTY 93 /* Directory not empty. */
-# define EUSERS 94 /* Too many users (for UFS). */
-
-/* BSD Networking Software: argument errors. */
-# define ENOTSOCK 95 /* Socket operation on non-socket. */
-# define EDESTADDRREQ 96 /* Destination address required. */
-# define EMSGSIZE 97 /* Message too long. */
-# define EPROTOTYPE 98 /* Protocol wrong type for socket. */
-# define ENOPROTOOPT 99 /* Protocol not available. */
-# define EPROTONOSUPPORT 120 /* Protocol not supported. */
-# define ESOCKTNOSUPPORT 121 /* Socket type not supported. */
-# define EOPNOTSUPP 122 /* Operation not supported on socket. */
-# define EPFNOSUPPORT 123 /* Protocol family not supported. */
-# define EAFNOSUPPORT 124 /* Address family not supported by
- protocol family. */
-# define EADDRINUSE 125 /* Address already in use. */
-# define EADDRNOTAVAIL 126 /* Can't assign requested address. */
-/* BSD Networking Software: operational errors. */
-# define ENETDOWN 127 /* Network is down. */
-# define ENETUNREACH 128 /* Network is unreachable. */
-# define ENETRESET 129 /* Network dropped connection because
- of reset. */
-# define ECONNABORTED 130 /* Software caused connection abort. */
-# define ECONNRESET 131 /* Connection reset by peer. */
-# define ENOBUFS 132 /* No buffer space available. */
-# define EISCONN 133 /* Socket is already connected. */
-# define ENOTCONN 134 /* Socket is not connected. */
-/* XENIX has 135 - 142. */
-# define ESHUTDOWN 143 /* Can't send after socket shutdown. */
-# define ETOOMANYREFS 144 /* Too many references: can't splice. */
-# define ETIMEDOUT 145 /* Connection timed out. */
-# define ECONNREFUSED 146 /* Connection refused. */
-# define EHOSTDOWN 147 /* Host is down. */
-# define EHOSTUNREACH 148 /* No route to host. */
-# define EALREADY 149 /* operation already in progress. */
-# define EINPROGRESS 150 /* operation now in progress. */
-
-/* SUN Network File System. */
-# define ESTALE 151 /* Stale NFS file handle. */
-
-#endif
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/bits/signum.h b/sysdeps/unix/sysv/sysv4/solaris2/bits/signum.h
deleted file mode 100644
index a2659530b6..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/bits/signum.h
+++ /dev/null
@@ -1,76 +0,0 @@
-/* Signal number definitions. Solaris 2 version.
- Copyright (C) 1994, 1996, 1998 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifdef _SIGNAL_H
-
-/* Fake signal functions. */
-#define SIG_ERR ((__sighandler_t) -1) /* Error return. */
-#define SIG_DFL ((__sighandler_t) 0) /* Default action. */
-#define SIG_IGN ((__sighandler_t) 1) /* Ignore signal. */
-#ifdef __USE_UNIX98
-# define SIG_HOLD ((__sighandler_t) 2) /* Add signal to hold mask. */
-#endif
-
-
-/* Signals. */
-#define SIGHUP 1 /* Hangup (POSIX). */
-#define SIGINT 2 /* Interrupt (ANSI). */
-#define SIGQUIT 3 /* Quit (POSIX). */
-#define SIGILL 4 /* Illegal instruction (ANSI). */
-#define SIGABRT SIGIOT /* Abort (ANSI). */
-#define SIGTRAP 5 /* Trace trap (POSIX). */
-#define SIGIOT 6 /* IOT trap (4.2 BSD). */
-#define SIGEMT 7 /* EMT trap (4.2 BSD). */
-#define SIGFPE 8 /* Floating-point exception (ANSI). */
-#define SIGKILL 9 /* Kill, unblockable (POSIX). */
-#define SIGBUS 10 /* Bus error (4.2 BSD). */
-#define SIGSEGV 11 /* Segmentation violation (ANSI). */
-#define SIGSYS 12 /* Bad argument to system call (4.2 BSD)*/
-#define SIGPIPE 13 /* Broken pipe (POSIX). */
-#define SIGALRM 14 /* Alarm clock (POSIX). */
-#define SIGTERM 15 /* Termination (ANSI). */
-#define SIGUSR1 16 /* User-defined signal 1 (POSIX). */
-#define SIGUSR2 17 /* User-defined signal 2 (POSIX). */
-#define SIGCHLD 18 /* Child status has changed (POSIX). */
-#define SIGCLD SIGCHLD /* Same as SIGCHLD (System V). */
-#define SIGPWR 19 /* Power failure restart (System V). */
-#define SIGWINCH 20 /* Window size change (4.3 BSD, Sun). */
-#define SIGURG 21 /* Urgent condition on socket (4.2 BSD).*/
-#define SIGPOLL 22 /* Pollable event occurred (System V). */
-#define SIGIO SIGPOLL /* I/O now possible (4.2 BSD). */
-#define SIGSTOP 23 /* Stop, unblockable (POSIX). */
-#define SIGTSTP 24 /* Keyboard stop (POSIX). */
-#define SIGCONT 25 /* Continue (POSIX). */
-#define SIGTTIN 26 /* Background read from tty (POSIX). */
-#define SIGTTOU 27 /* Background write to tty (POSIX). */
-#define SIGVTALRM 28 /* Virtual alarm clock (4.2 BSD). */
-#define SIGPROF 29 /* Profiling alarm clock (4.2 BSD). */
-#define SIGXCPU 30 /* CPU limit exceeded (4.2 BSD). */
-#define SIGXFSZ 31 /* File size limit exceeded (4.2 BSD). */
-/* The following signals are new in Solaris 2. */
-#define SIGWAITING 32 /* Process's lwps are blocked. */
-#define SIGLWP 33 /* Special signal used by thread library. */
-#define SIGFREEZE 34 /* Special signal used by CPR. */
-#define SIGTHAW 35 /* Special signal used by CPR. */
-#define _SIGRTMIN 36 /* First (highest-priority) realtime signal. */
-#define _SIGRTMAX 43 /* Last (lowest-priority) realtime signal. */
-
-#endif /* <signal.h> included. */
-
-#define _NSIG 44 /* Biggest signal number + 1. */
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/bits/sigstack.h b/sysdeps/unix/sysv/sysv4/solaris2/bits/sigstack.h
deleted file mode 100644
index 753caac8a8..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/bits/sigstack.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/* sigstack, sigaltstack definitions.
- Copyright (C) 1998 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SIGNAL_H
-# error "Never include this file directly. Use <signal.h> instead"
-#endif
-
-
-/* Structure describing a signal stack (obsolete). */
-struct sigstack
- {
- __ptr_t ss_sp; /* Signal stack pointer. */
- int ss_onstack; /* Nonzero if executing on this stack. */
- };
-
-
-/* Possible values for `ss_flags.'. */
-enum
-{
- SS_ONSTACK = 1,
-#define SS_ONSTACK SS_ONSTACK
- SS_DISABLE
-#define SS_DISABLE SS_DISABLE
-};
-
-/* Minimum stack size for a signal handler. */
-#define MINSIGSTKSZ 2048
-
-/* System default stack size. */
-#define SIGSTKSZ 8192
-
-
-/* Alternate, preferred interface. */
-typedef struct sigaltstack
- {
- __ptr_t ss_sp;
- int ss_flags;
- size_t ss_size;
- } stack_t;
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/bits/stat.h b/sysdeps/unix/sysv/sysv4/solaris2/bits/stat.h
deleted file mode 100644
index 22c1c1f855..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/bits/stat.h
+++ /dev/null
@@ -1,119 +0,0 @@
-/* Copyright (C) 1993, 96, 97, 98, 99, 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_STAT_H
-# error "Never include <bits/stat.h> directly; use <sys/stat.h> instead."
-#endif
-
-#include <bits/types.h>
-
-/* Length of array allocated for file system type name. */
-#define _ST_FSTYPSZ 16
-
-
-/* Structure describing file characteristics. */
-struct stat
- {
- __dev_t st_dev;
- long int st_filler1[3];
- __ino_t st_ino; /* File serial number. */
- __mode_t st_mode; /* File mode. */
- __nlink_t st_nlink; /* Link count. */
- __uid_t st_uid; /* User ID of the file's owner. */
- __gid_t st_gid; /* Group ID of the file's group.*/
- __dev_t st_rdev; /* Device number, if device. */
- long int st_filler2[2];
-
- __off_t st_size; /* Size of file, in bytes. */
- /* SVR4 added this extra long to allow for expansion of off_t. */
- long int st_filler3;
-
- __time_t st_atime; /* Time of last access. */
- unsigned long int st_atime_usec;
- __time_t st_mtime; /* Time of last modification. */
- unsigned long int st_mtime_usec;
- __time_t st_ctime; /* Time of last status change. */
- unsigned long int st_ctime_usec;
-
- __blksize_t st_blksize; /* Optimal block size for I/O. */
-#define _STATBUF_ST_BLKSIZE /* Tell code we have this member. */
-
- __blkcnt_t st_blocks; /* Number of 512-byte blocks allocated. */
- char st_fstype[_ST_FSTYPSZ];
- long int st_filler4[8];
- };
-
-#ifdef __USE_LARGEFILE64
-/* struct stat64 has the shape as stat */
-struct stat64
- {
- __dev_t st_dev; /* Device */
- long int st_filler1[2];
- __ino64_t st_ino; /* File serial number */
- __mode_t st_mode; /* File mode */
- __nlink_t st_nlink; /* Link count */
- __uid_t st_uid; /* User ID of the file's owner. */
- __gid_t st_gid; /* Group ID of the file's group.*/
- __dev_t st_rdev; /* Device number, if device */
- long int st_filler2;
-
- __off64_t st_size; /* Size of file, in bytes. */
-
- __time_t st_atime; /* Time of last access */
- unsigned long int st_atime_usec;
- __time_t st_mtime; /* Time of last modification */
- unsigned long int st_mtime_usec;
- __time_t st_ctime; /* Time of last status change */
- unsigned long int st_ctime_usec;
-
- __blksize_t st_blksize;
- __blkcnt64_t st_blocks;
- char st_fstype[_ST_FSTYPSZ];
- long int st_filler3[8];
-};
-#endif
-
-
-/* Encoding of the file mode. */
-
-#define __S_IFMT 0170000 /* These bits determine file type. */
-
-/* File types. */
-#define __S_IFDIR 0040000 /* Directory. */
-#define __S_IFCHR 0020000 /* Character device. */
-#define __S_IFBLK 0060000 /* Block device. */
-#define __S_IFREG 0100000 /* Regular file. */
-#define __S_IFIFO 0010000 /* FIFO. */
-
-/* These don't actually exist on System V, but having them doesn't hurt. */
-#define __S_IFLNK 0120000 /* Symbolic link. */
-#define __S_IFSOCK 0140000 /* Socket. */
-
-/* POSIX.1b objects. */
-#define __S_TYPEISMQ(buf) (0)
-#define __S_TYPEISSEM(buf) (0)
-#define __S_TYPEISSHM(buf) (0)
-
-/* Protection bits. */
-
-#define __S_ISUID 04000 /* Set user ID on execution. */
-#define __S_ISGID 02000 /* Set group ID on execution. */
-#define __S_ISVTX 01000 /* Save swapped text after use (sticky). */
-#define __S_IREAD 0400 /* Read by owner. */
-#define __S_IWRITE 0200 /* Write by owner. */
-#define __S_IEXEC 0100 /* Execute by owner. */
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/bits/types.h b/sysdeps/unix/sysv/sysv4/solaris2/bits/types.h
deleted file mode 100644
index a9ce216c69..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/bits/types.h
+++ /dev/null
@@ -1,120 +0,0 @@
-/* Copyright (C) 1991,92,1994-1999,2000,2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/*
- * Never include this file directly; use <sys/types.h> instead.
- */
-
-#ifndef _BITS_TYPES_H
-#define _BITS_TYPES_H 1
-
-#include <features.h>
-
-#define __need_size_t
-#include <stddef.h>
-
-/* Convenience types. */
-typedef unsigned char __u_char;
-typedef unsigned short __u_short;
-typedef unsigned int __u_int;
-typedef unsigned long __u_long;
-#ifdef __GNUC__
-typedef unsigned long long int __u_quad_t;
-typedef long long int __quad_t;
-#else
-typedef struct
-{
- long __val[2];
-} __quad_t;
-typedef struct
-{
- __u_long __val[2];
-} __u_quad_t;
-#endif
-typedef signed char __int8_t;
-typedef unsigned char __uint8_t;
-typedef signed short int __int16_t;
-typedef unsigned short int __uint16_t;
-typedef signed int __int32_t;
-typedef unsigned int __uint32_t;
-#ifdef __GNUC__
-typedef signed long long int __int64_t;
-typedef unsigned long long int __uint64_t;
-#endif
-typedef __quad_t *__qaddr_t;
-typedef unsigned long int __dev_t; /* Type of device numbers. */
-typedef long int __uid_t; /* Type of user identifications. */
-typedef long int __gid_t; /* Type of group identifications. */
-typedef unsigned long int __ino_t; /* Type of file serial numbers. */
-typedef unsigned long int __mode_t; /* Type of file attribute bitmasks. */
-typedef unsigned long int __nlink_t; /* Type of file link counts. */
-typedef long int __off_t; /* Type of file sizes and offsets. */
-typedef __quad_t __loff_t; /* Type of file sizes and offsets. */
-typedef long int __pid_t; /* Type of process identifications. */
-typedef int __ssize_t; /* Type of a byte count, or error. */
-typedef __u_quad_t __fsid_t; /* Type of file system IDs. */
-typedef long int __clock_t; /* Type of CPU usage counts. */
-typedef long int __rlim_t; /* Type for resource measurement. */
-typedef __quad_t __rlim64_t; /* Type for resource measurement (LFS). */
-typedef __quad_t __ino64_t; /* Type for file serial numbers. */
-typedef __loff_t __off64_t; /* Type of file izes and offsets. */
-typedef unsigned int __id_t; /* General type for IDs. */
-
-/* Everythin' else. */
-typedef long int __daddr_t; /* The type of a disk address. */
-typedef char *__caddr_t;
-typedef long int __time_t;
-typedef unsigned int __useconds_t;
-typedef int __suseconds_t;
-typedef long int __swblk_t; /* Type of a swap block maybe? */
-typedef int __key_t; /* Type of an IPC key */
-
-/* fd_set for select. */
-
-/* Number of descriptors that can fit in an `fd_set'. */
-#define __FD_SETSIZE 1024
-
-
-/* Type to represent block size. */
-typedef long int __blksize_t;
-
-/* Types from the Large File Support interface. */
-
-/* Type to count number os disk blocks. */
-typedef long int __blkcnt_t;
-typedef __quad_t __blkcnt64_t;
-
-/* Type to count file system blocks. */
-typedef unsigned int __fsblkcnt_t;
-typedef __u_quad_t __fsblkcnt64_t;
-
-/* Type to count file system inodes. */
-typedef unsigned long int __fsfilcnt_t;
-typedef __u_quad_t __fsfilcnt64_t;
-
-/* Used in XTI. */
-typedef int __t_scalar_t;
-typedef unsigned int __t_uscalar_t;
-
-/* Duplicates info from stdint.h but this is used in unistd.h. */
-typedef long int __intptr_t;
-
-/* Duplicate info from sys/socket.h. */
-typedef unsigned int __socklen_t;
-
-#endif /* bits/types.h */
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/fsync.S b/sysdeps/unix/sysv/sysv4/solaris2/fsync.S
deleted file mode 100644
index 493926a98c..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/fsync.S
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-
-/* Solaris uses fdsync for the normal fsync. */
-ENTRY(fsync)
- mov 16, %i1
- mov SYS_ify(fdsync), %g1
- ta 8
- bcs syscall_error
- nop
- mov %g0, %o0
- ret
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/getdents.c b/sysdeps/unix/sysv/sysv4/solaris2/getdents.c
deleted file mode 100644
index ab782ffaac..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/getdents.c
+++ /dev/null
@@ -1,114 +0,0 @@
-/* Copyright (C) 1993,95,96,97,98, 2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <alloca.h>
-#include <dirent.h>
-#include <stddef.h>
-#include <string.h>
-#include <unistd.h>
-#include <sys/param.h>
-#include <sys/types.h>
-
-#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
-
-
-extern int __getdents (int fd, char *buf, size_t nbytes);
-
-/* For Solaris we need a special version of this file since the
- definition of `struct dirent' is not the same for the kernel and
- the libc. There is one additional field which might be introduced
- in the kernel structure in the future.
-
- He is the system definition of `struct dirent' as of 2.6: */
-
-struct kernel_dirent
- {
- ino_t d_ino;
- off_t d_off;
- unsigned short int d_reclen;
- char d_name[256];
- };
-
-#ifdef GETDENTS64
-#define __getdirentries __getdirentries64
-#define dirent dirent64
-#endif
-
-/* The problem here is that we cannot simply read the next NBYTES
- bytes. We need to take the additional field into account. We use
- some heuristic. Assuming the directory contains names with 14
- characters on average we can compute an estimate number of entries
- which fit in the buffer. Taking this number allows us to specify a
- correct number of bytes to read. If we should be wrong, we can reset
- the file descriptor. */
-ssize_t
-__getdirentries (int fd, char *buf, size_t nbytes, off_t *basep)
-{
- off_t base = __lseek (fd, (off_t) 0, SEEK_CUR);
- off_t last_offset = base;
- size_t red_nbytes;
- struct kernel_dirent *skdp, *kdp;
- struct dirent *dp;
- int retval;
- const size_t size_diff = (offsetof (struct dirent, d_name)
- - offsetof (struct kernel_dirent, d_name));
-
- red_nbytes = nbytes - ((nbytes / (offsetof (struct dirent, d_name) + 14))
- * size_diff);
-
- dp = (struct dirent *) buf;
- skdp = kdp = __alloca (red_nbytes);
-
- retval = __getdents (fd, (char *) kdp, red_nbytes);
-
- while ((char *) kdp < (char *) skdp + retval)
- {
- const size_t alignment = __alignof__ (struct dirent);
- /* Since kdp->d_reclen is already aligned for the kernel structure
- this may compute a value that is bigger than necessary. */
- size_t new_reclen = ((kdp->d_reclen + size_diff + alignment - 1)
- & ~(alignment - 1));
- if ((char *) dp + new_reclen > buf + nbytes)
- {
- /* Our heuristic failed. We read too many entries. Reset
- the stream. */
- __lseek (fd, last_offset, SEEK_SET);
- break;
- }
-
- last_offset = kdp->d_off;
- dp->d_ino = kdp->d_ino;
- dp->d_off = kdp->d_off;
- dp->d_reclen = new_reclen;
- dp->d_type = DT_UNKNOWN;
- memcpy (dp->d_name, kdp->d_name,
- kdp->d_reclen - offsetof (struct kernel_dirent, d_name));
-
- dp = (struct dirent *) ((char *) dp + new_reclen);
- kdp = (struct kernel_dirent *) (((char *) kdp) + kdp->d_reclen);
- }
-
- if (basep)
- *basep = base;
-
- return (char *) dp - buf;
-}
-
-#ifndef GETDENTS64
-weak_alias (__getdirentries, getdirentries)
-#endif
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/sigpending.c b/sysdeps/unix/sysv/sysv4/solaris2/sigpending.c
deleted file mode 100644
index 2723d79f7a..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/sigpending.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright (C) 1998 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <stddef.h>
-#include <signal.h>
-
-extern int __syscall_sigpending (int subcode, sigset_t *set);
-
-
-/* Store in SET all signals that are blocked and pending. */
-int
-sigpending (sigset_t *set)
-{
- if (set == NULL)
- {
- __set_errno (EINVAL);
- return -1;
- }
-
- return __syscall_sigpending (1, set);
-}
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/sigstack.c b/sysdeps/unix/sysv/sysv4/solaris2/sigstack.c
deleted file mode 100644
index 5aa73c8dcb..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/sigstack.c
+++ /dev/null
@@ -1,3 +0,0 @@
-/* We can reuse the Linux implementation with some tricks. */
-#define __NR_sigaltstack 1
-#include <sysdeps/unix/sysv/linux/sigstack.c>
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/sigwaitinfo.c b/sysdeps/unix/sysv/sysv4/solaris2/sigwaitinfo.c
deleted file mode 100644
index f246640023..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/sigwaitinfo.c
+++ /dev/null
@@ -1,2 +0,0 @@
-/* We can reuse the Linux implementation. */
-#include <sysdeps/unix/sysv/linux/sigwaitinfo.c>
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/sparc/Dist b/sysdeps/unix/sysv/sysv4/solaris2/sparc/Dist
deleted file mode 100644
index 7832507772..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/sparc/Dist
+++ /dev/null
@@ -1 +0,0 @@
-sys/trap.h
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/sparc/Makefile b/sysdeps/unix/sysv/sysv4/solaris2/sparc/Makefile
deleted file mode 100644
index 1c17ea168e..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/sparc/Makefile
+++ /dev/null
@@ -1,11 +0,0 @@
-# This flag is necessary because GCC now tries to call _Q_{mul, etc...}
-# instead of doing the stuff the hard way. For now, printf_fp.o, __vfscanf.o,
-# and difftime.o don't work because of this. The long-term fix is to actually
-# implement what they're doing, but for the short-term, we must do this.
-sysdep-CFLAGS := $(sysdep-CFLAGS) -mhard-quad-float
-
-ifeq ($(subdir),crypt)
-
-crypt := crypt.solar
-
-endif
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/sparc/bits/sigcontext.h b/sysdeps/unix/sysv/sysv4/solaris2/sparc/bits/sigcontext.h
deleted file mode 100644
index 7c4bca6049..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/sparc/bits/sigcontext.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Structure describing state saved while handling a signal. Sparc version.
- Copyright (C) 1992, 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SIGNAL_H
-# error "Never use <bits/sigcontext.h> directly; include <signal.h> instead."
-#endif
-
-struct sigcontext
- {
- int sc_onstack;
- __sigset_t sc_mask;
-
-#define SPARC_MAXREGWINDOW 31 /* Maximum usable register windows. */
- int sc_sp, sc_pc, sc_npc, sc_psr, sc_g1, sc_o0;
- int sc_wbcnt; /* Number of outstanding windows. */
- __ptr_t sc_spbuf[SPARC_MAXREGWINDOW]; /* SP's for each window. */
- int sc_wbuf[SPARC_MAXREGWINDOW][16]; /* Saved register windows. */
- };
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c b/sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c
deleted file mode 100644
index 3c75e3f011..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c
+++ /dev/null
@@ -1,185 +0,0 @@
-/* Copyright (C) 1999 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <stddef.h>
-#include <libintl.h>
-
-
-/* This is a list of all known `errno' codes. */
-
-
-const int _sys_nerr = 152;
-
-const char *const _sys_errlist[] =
-{
- N_("Error 0"),
- N_("Not owner"),
- N_("No such file or directory"),
- N_("No such process"),
- N_("Interrupted system call"),
- N_("I/O error"),
- N_("No such device or address"),
- N_("Arg list too long"),
- N_("Exec format error"),
- N_("Bad file number"),
- N_("No child processes"),
- N_("Resource temporarily unavailable"),
- N_("Not enough space"),
- N_("Permission denied"),
- N_("Bad address"),
- N_("Block device required"),
- N_("Device busy"),
- N_("File exists"),
- N_("Cross-device link"),
- N_("No such device"),
- N_("Not a directory"),
- N_("Is a directory"),
- N_("Invalid argument"),
- N_("File table overflow"),
- N_("Too many open files"),
- N_("Inappropriate ioctl for device"),
- N_("Text file busy"),
- N_("File too large"),
- N_("No space left on device"),
- N_("Illegal seek"),
- N_("Read-only file system"),
- N_("Too many links"),
- N_("Broken pipe"),
- N_("Argument out of domain"),
- N_("Result too large"),
- N_("No message of desired type"),
- N_("Identifier removed"),
- N_("Channel number out of range"),
- N_("Level 2 not synchronized"),
- N_("Level 3 halted"),
- N_("Level 3 reset"),
- N_("Link number out of range"),
- N_("Protocol driver not attached"),
- N_("No CSI structure available"),
- N_("Level 2 halted"),
- N_("Deadlock situation detected/avoided"),
- N_("No record locks available"),
- N_("Operation canceled"),
- N_("Operation not supported"),
- N_("Disc quota exceeded"),
- N_("Bad exchange descriptor"),
- N_("Bad request descriptor"),
- N_("Message tables full"),
- N_("Anode table overflow"),
- N_("Bad request code"),
- N_("Invalid slot"),
- N_("File locking deadlock"),
- N_("Bad font file format"),
- N_("Error 58"),
- N_("Error 59"),
- N_("Not a stream device"),
- N_("No data available"),
- N_("Timer expired"),
- N_("Out of stream resources"),
- N_("Machine is not on the network"),
- N_("Package not installed"),
- N_("Object is remote"),
- N_("Link has been severed"),
- N_("Advertise error"),
- N_("Srmount error"),
- N_("Communication error on send"),
- N_("Protocol error"),
- N_("Error 72"),
- N_("Error 73"),
- N_("Multihop attempted"),
- N_("Error 75"),
- N_("Error 76"),
- N_("Not a data message"),
- N_("File name too long"),
- N_("Value too large for defined data type"),
- N_("Name not unique on network"),
- N_("File descriptor in bad state"),
- N_("Remote address changed"),
- N_("Can not access a needed shared library"),
- N_("Accessing a corrupted shared library"),
- N_(".lib section in a.out corrupted"),
- N_("Attempting to link in more shared libraries than system limit"),
- N_("Can not exec a shared library directly"),
- N_("Illegal byte sequence"),
- N_("Operation not applicable"),
- N_("Number of symbolic links encountered during path name traversal exceeds MAXSYMLINKS"),
- N_("Error 91"),
- N_("Error 92"),
- N_("Directory not empty"),
- N_("Too many users"),
- N_("Socket operation on non-socket"),
- N_("Destination address required"),
- N_("Message too long"),
- N_("Protocol wrong type for socket"),
- N_("Option not supported by protocol"),
- N_("Error 100"),
- N_("Error 101"),
- N_("Error 102"),
- N_("Error 103"),
- N_("Error 104"),
- N_("Error 105"),
- N_("Error 106"),
- N_("Error 107"),
- N_("Error 108"),
- N_("Error 109"),
- N_("Error 110"),
- N_("Error 111"),
- N_("Error 112"),
- N_("Error 113"),
- N_("Error 114"),
- N_("Error 115"),
- N_("Error 116"),
- N_("Error 117"),
- N_("Error 118"),
- N_("Error 119"),
- N_("Protocol not supported"),
- N_("Socket type not supported"),
- N_("Operation not supported on transport endpoint"),
- N_("Protocol family not supported"),
- N_("Address family not supported by protocol family"),
- N_("Address already in use"),
- N_("Cannot assign requested address"),
- N_("Network is down"),
- N_("Network is unreachable"),
- N_("Network dropped connection because of reset"),
- N_("Software caused connection abort"),
- N_("Connection reset by peer"),
- N_("No buffer space available"),
- N_("Transport endpoint is already connected"),
- N_("Transport endpoint is not connected"),
- N_("Structure needs cleaning"),
- N_("Error 136"),
- N_("Not a name file"),
- N_("Not available"),
- N_("Is a name file"),
- N_("Remote I/O error"),
- N_("Reserved for future use"),
- N_("Error 142"),
- N_("Cannot send after socket shutdown"),
- N_("Too many references: cannot splice"),
- N_("Connection timed out"),
- N_("Connection refused"),
- N_("Host is down"),
- N_("No route to host"),
- N_("Operation already in progress"),
- N_("Operation now in progress"),
- N_("Stale NFS file handle")
-};
-
-weak_alias (_sys_errlist, sys_errlist)
-weak_alias (_sys_nerr, sys_nerr)
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/sparc/sparc32/syscall.S b/sysdeps/unix/sysv/sysv4/solaris2/sparc/sparc32/syscall.S
deleted file mode 100644
index b9f2996e31..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/sparc/sparc32/syscall.S
+++ /dev/null
@@ -1,2 +0,0 @@
-/* Bets are that the Linux code works... */
-#include <sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S>
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/sparc/start.c b/sysdeps/unix/sysv/sysv4/solaris2/sparc/start.c
deleted file mode 100644
index afdfaaa2e5..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/sparc/start.c
+++ /dev/null
@@ -1,4 +0,0 @@
-#define NO_SHLIB
-/* Solaris needs start named `_start', not `start'. */
-#define NO_EXPLICIT_START
-#include <sysdeps/unix/sparc/start.c>
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/sparc/sys/trap.h b/sysdeps/unix/sysv/sysv4/solaris2/sparc/sys/trap.h
deleted file mode 100644
index 39d2645973..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/sparc/sys/trap.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright (C) 1998 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_TRAP_H
-#define _SYS_TRAP_H 1
-
-/* Solaris2 software traps. */
-
-#define ST_OSYSCALL 0x00
-#define ST_BREAKPOINT 0x01
-#define ST_DIV0 0x02
-#define ST_FLUSH_WINDOWS 0x03
-#define ST_CLEAN_WINDOWS 0x04
-#define ST_RANGE_CHECK 0x05
-#define ST_FIX_ALIGN 0x06
-#define ST_INT_OVERFLOW 0x07
-#define ST_SYSCALL 0x08
-
-/* Traps 0x10 through 0x1f are allotted to the user. */
-
-#endif /* sys/trap.h */
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/sparc/sys/ucontext.h b/sysdeps/unix/sysv/sysv4/solaris2/sparc/sys/ucontext.h
deleted file mode 100644
index 6e9f69067d..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/sparc/sys/ucontext.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Copyright (C) 1998 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_UCONTEXT_H
-#define _SYS_UCONTEXT_H 1
-
-#include <features.h>
-#include <signal.h>
-#include <sys/types.h>
-
-typedef struct
-{
- long int mc_filler[78];
-} mcontext_t;
-
-struct ucontext
-{
- unsigned long int uc_flags;
- struct ucontext *uc_link;
- sigset_t uc_sigmask;
- stack_t uc_stack;
- mcontext_t uc_mcontext;
- long int uc_filler[23];
-};
-typedef struct ucontext ucontext_t;
-
-#endif /* sys/ucontext.h */
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/sparc/syscalls.list b/sysdeps/unix/sysv/sysv4/solaris2/sparc/syscalls.list
deleted file mode 100644
index d96fbba7e2..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/sparc/syscalls.list
+++ /dev/null
@@ -1,3 +0,0 @@
-# File name Caller Syscall name # args Strong name Weak names
-
-sys-sig - context 2 __context_syscall
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.S b/sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.S
deleted file mode 100644
index 2ac767c987..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.S
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Copyright (C) 1993, 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <sysdep.h>
-#define _ERRNO_H
-#include <bits/errno.h>
-
-ENTRY(syscall_error)
- /* If it was a syscall that got interrupted, but can
- be restarted, drop EINTR in. */
- cmp %o0, ERESTART
- be,a notint
- mov EINTR, %o0
-
-notint:
-#if defined (EWOULDBLOCK_sys) && EWOULDBLOCK_sys != EAGAIN
- /* We translate the system's EWOULDBLOCK error into EAGAIN.
- The GNU C library always defines EWOULDBLOCK==EAGAIN.
- EWOULDBLOCK_sys is the original number. */
- cmp %o0, EWOULDBLOCK_sys
- be,a notblock
- mov EAGAIN, %o0
-#endif
-
-notblock:/* Store it in errno... */
- sethi %hi(C_SYMBOL_NAME(errno)), %g1
- st %o0, [%g1 + %lo(C_SYMBOL_NAME(errno))]
-
- /* And just kick back a -1. */
- retl
- mov -1, %o0
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.h b/sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.h
deleted file mode 100644
index 9a0db6afe1..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.h
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Copyright (C) 1993,1994,1995,1997,1998,2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* Solaris 2 does not precede the asm names of C symbols with a `_'. */
-#ifndef NO_UNDERSCORES
-#define NO_UNDERSCORES
-#endif
-
-#include <sysdeps/unix/sysdep.h>
-
-#ifdef __ASSEMBLER__
-
-/* As of gcc-2.6.0, it complains about pound signs in front of things
- that aren't arguments to the macro. So we use this to pull it off
- instead. */
-#define cat(a,b) a##b
-#define poundfnc cat(#,function)
-
-#define ENTRY(name) \
- .section ".text"; \
- .align 4; \
- .global C_SYMBOL_NAME(name); \
- .type C_SYMBOL_NAME(name), poundfnc; \
- C_LABEL(name)
-
-#define PSEUDO(name, syscall_name, args) \
- ENTRY (name) \
- mov SYS_ify(syscall_name), %g1; \
- ta 8; \
- bcs C_SYMBOL_NAME(syscall_error); \
- nop
-
-#define ret retl; nop
-#define r0 %o0
-#define r1 %o1
-#define MOVE(x,y) mov x, y
-
-#define LOC(name) .L##name
-
-#endif /* __ASSEMBLER__ */
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/sys/param.h b/sysdeps/unix/sysv/sysv4/solaris2/sys/param.h
deleted file mode 100644
index bbd7b06a11..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/sys/param.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYS_PARAM_H
-#define _SYS_PARAM_H 1
-
-#include <limits.h>
-
-/* BSD names for some <limits.h> values. */
-
-#define NBBY CHAR_BIT
-#ifndef NGROUPS
-# define NGROUPS NGROUPS_MAX
-#endif
-#define MAXSYMLINKS 5
-#define CANBSIZ MAX_CANON
-#define NCARGS ARG_MAX
-#define MAXPATHLEN PATH_MAX
-#define NOFILE OPEN_MAX
-
-
-#include <sys/types.h>
-
-/* Bit map related macros. */
-#define setbit(a,i) ((a)[(i)/NBBY] |= 1<<((i)%NBBY))
-#define clrbit(a,i) ((a)[(i)/NBBY] &= ~(1<<((i)%NBBY)))
-#define isset(a,i) ((a)[(i)/NBBY] & (1<<((i)%NBBY)))
-#define isclr(a,i) (((a)[(i)/NBBY] & (1<<((i)%NBBY))) == 0)
-
-/* Macros for counting and rounding. */
-#ifndef howmany
-# define howmany(x, y) (((x)+((y)-1))/(y))
-#endif
-#define roundup(x, y) ((((x)+((y)-1))/(y))*(y))
-#define powerof2(x) ((((x)-1)&(x))==0)
-
-/* Macros for min/max. */
-#define MIN(a,b) (((a)<(b))?(a):(b))
-#define MAX(a,b) (((a)>(b))?(a):(b))
-
-/* Unit of `st_blocks'. */
-#define DEV_BSIZE 512
-
-#endif /* sys/param.h */
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/sys/syscall.h b/sysdeps/unix/sysv/sysv4/solaris2/sys/syscall.h
deleted file mode 100644
index 15c43a3c33..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/sys/syscall.h
+++ /dev/null
@@ -1,245 +0,0 @@
-/* Copyright (C) 1998 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _SYSCALL_H
-#define _SYSCALL_H 1
-
-/* Solaris 2 syscall numbers */
-
-#define SYS_syscall 0
-#define SYS_exit 1
-#define SYS_fork 2
-#define SYS_read 3
-#define SYS_write 4
-#define SYS_open 5
-#define SYS_close 6
-#define SYS_wait 7
-#define SYS_creat 8
-#define SYS_link 9
-#define SYS_unlink 10
-#define SYS_exec 11
-#define SYS_chdir 12
-#define SYS_time 13
-#define SYS_mknod 14
-#define SYS_chmod 15
-#define SYS_chown 16
-#define SYS_brk 17
-#define SYS_stat 18
-#define SYS_lseek 19
-#define SYS_getpid 20
-#define SYS_mount 21
-#define SYS_umount 22
-#define SYS_setuid 23
-#define SYS_getuid 24
-#define SYS_stime 25
-#define SYS_ptrace 26
-#define SYS_alarm 27
-#define SYS_fstat 28
-#define SYS_pause 29
-#define SYS_utime 30
-#define SYS_stty 31
-#define SYS_gtty 32
-#define SYS_access 33
-#define SYS_nice 34
-#define SYS_statfs 35
-#define SYS_sync 36
-#define SYS_kill 37
-#define SYS_fstatfs 38
-#define SYS_pgrpsys 39
-#define SYS_xenix 40
-#define SYS_dup 41
-#define SYS_pipe 42
-#define SYS_times 43
-#define SYS_profil 44
-#define SYS_plock 45
-#define SYS_setgid 46
-#define SYS_getgid 47
-#define SYS_signal 48
-#define SYS_msgsys 49
-#define SYS_syssun 50
-#define SYS_sysi86 50
-#define SYS_sysppc 50
-#define SYS_acct 51
-#define SYS_shmsys 52
-#define SYS_semsys 53
-#define SYS_ioctl 54
-#define SYS_uadmin 55
-#define SYS_utssys 57
-#define SYS_fdsync 58
-#define SYS_execve 59
-#define SYS_umask 60
-#define SYS_chroot 61
-#define SYS_fcntl 62
-#define SYS_ulimit 63
-#define SYS_rmdir 79
-#define SYS_mkdir 80
-#define SYS_getdents 81
-#define SYS_sysfs 84
-#define SYS_getmsg 85
-#define SYS_putmsg 86
-#define SYS_poll 87
-#define SYS_lstat 88
-#define SYS_symlink 89
-#define SYS_readlink 90
-#define SYS_setgroups 91
-#define SYS_getgroups 92
-#define SYS_fchmod 93
-#define SYS_fchown 94
-#define SYS_sigprocmask 95
-#define SYS_sigsuspend 96
-#define SYS_sigaltstack 97
-#define SYS_sigaction 98
-#define SYS_sigpending 99
-#define SYS_context 100
-#define SYS_evsys 101
-#define SYS_evtrapret 102
-#define SYS_statvfs 103
-#define SYS_fstatvfs 104
-#define SYS_nfssys 106
-#define SYS_waitsys 107
-#define SYS_sigsendsys 108
-#define SYS_hrtsys 109
-#define SYS_acancel 110
-#define SYS_async 111
-#define SYS_priocntlsys 112
-#define SYS_pathconf 113
-#define SYS_mincore 114
-#define SYS_mmap 115
-#define SYS_mprotect 116
-#define SYS_munmap 117
-#define SYS_fpathconf 118
-#define SYS_vfork 119
-#define SYS_fchdir 120
-#define SYS_readv 121
-#define SYS_writev 122
-#define SYS_xstat 123
-#define SYS_lxstat 124
-#define SYS_fxstat 125
-#define SYS_xmknod 126
-#define SYS_clocal 127
-#define SYS_setrlimit 128
-#define SYS_getrlimit 129
-#define SYS_lchown 130
-#define SYS_memcntl 131
-#define SYS_getpmsg 132
-#define SYS_putpmsg 133
-#define SYS_rename 134
-#define SYS_uname 135
-#define SYS_setegid 136
-#define SYS_sysconfig 137
-#define SYS_adjtime 138
-#define SYS_systeminfo 139
-#define SYS_seteuid 141
-#define SYS_vtrace 142
-#define SYS_fork1 143
-#define SYS_sigtimedwait 144
-#define SYS_lwp_info 145
-#define SYS_yield 146
-#define SYS_lwp_sema_wait 147
-#define SYS_lwp_sema_post 148
-#define SYS_lwp_sema_trywait 149
-#define SYS_modctl 152
-#define SYS_fchroot 153
-#define SYS_utimes 154
-#define SYS_vhangup 155
-#define SYS_gettimeofday 156
-#define SYS_getitimer 157
-#define SYS_setitimer 158
-#define SYS_lwp_create 159
-#define SYS_lwp_exit 160
-#define SYS_lwp_suspend 161
-#define SYS_lwp_continue 162
-#define SYS_lwp_kill 163
-#define SYS_lwp_self 164
-#define SYS_lwp_setprivate 165
-#define SYS_lwp_getprivate 166
-#define SYS_lwp_wait 167
-#define SYS_lwp_mutex_unlock 168
-#define SYS_lwp_mutex_lock 169
-#define SYS_lwp_cond_wait 170
-#define SYS_lwp_cond_signal 171
-#define SYS_lwp_cond_broadcast 172
-#define SYS_pread 173
-#define SYS_pwrite 174
-#define SYS_llseek 175
-#define SYS_inst_sync 176
-#define SYS_kaio 178
-#define SYS_tsolsys 184
-#define SYS_acl 185
-#define SYS_auditsys 186
-#define SYS_processor_bind 187
-#define SYS_processor_info 188
-#define SYS_p_online 189
-#define SYS_sigqueue 190
-#define SYS_clock_gettime 191
-#define SYS_clock_settime 192
-#define SYS_clock_getres 193
-#define SYS_timer_create 194
-#define SYS_timer_delete 195
-#define SYS_timer_settime 196
-#define SYS_timer_gettime 197
-#define SYS_timer_getoverrun 198
-#define SYS_nanosleep 199
-#define SYS_facl 200
-#define SYS_door 201
-#define SYS_setreuid 202
-#define SYS_setregid 203
-#define SYS_install_utrap 204
-#define SYS_signotify 205
-#define SYS_schedctl 206
-#define SYS_pset 207
-#define SYS_resolvepath 209
-#define SYS_signotifywait 210
-#define SYS_lwp_sigredirect 211
-#define SYS_lwp_alarm 212
-#define SYS_getdents64 213
-#define SYS_mmap64 214
-#define SYS_stat64 215
-#define SYS_lstat64 216
-#define SYS_fstat64 217
-#define SYS_statvfs64 218
-#define SYS_fstatvfs64 219
-#define SYS_setrlimit64 220
-#define SYS_getrlimit64 221
-#define SYS_pread64 222
-#define SYS_pwrite64 223
-#define SYS_creat64 224
-#define SYS_open64 225
-#define SYS_rpcsys 226
-#define SYS_so_socket 230
-#define SYS_so_socketpair 231
-#define SYS_bind 232
-#define SYS_listen 233
-#define SYS_accept 234
-#define SYS_connect 235
-#define SYS_shutdown 236
-#define SYS_recv 237
-#define SYS_recvfrom 238
-#define SYS_recvmsg 239
-#define SYS_send 240
-#define SYS_sendmsg 241
-#define SYS_sendto 242
-#define SYS_getpeername 243
-#define SYS_getsockname 244
-#define SYS_getsockopt 245
-#define SYS_setsockopt 246
-#define SYS_sockconfig 247
-#define SYS_ntp_gettime 248
-#define SYS_ntp_adjtime 249
-
-#endif /* sys/syscall.h */
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/syscalls.list b/sysdeps/unix/sysv/sysv4/solaris2/syscalls.list
deleted file mode 100644
index 092d869efc..0000000000
--- a/sysdeps/unix/sysv/sysv4/solaris2/syscalls.list
+++ /dev/null
@@ -1,7 +0,0 @@
-# File name Caller Syscall name # args Strong name Weak names
-
-sigaction - sigaction 3 __sigaction sigaction
-sigaltstack - sigaltstack 2 sigaltstack
-sigpending - sigpending 2 __syscall_sigpending
-sigqueue - sigqueue 3 __sigqueue sigqueue
-sigtimedwait - sigtimedwait 3 __sigtimedwait sigtime
diff --git a/sysdeps/unix/sysv/sysv4/syscalls.list b/sysdeps/unix/sysv/sysv4/syscalls.list
deleted file mode 100644
index 7b75d55248..0000000000
--- a/sysdeps/unix/sysv/sysv4/syscalls.list
+++ /dev/null
@@ -1,7 +0,0 @@
-# File name Caller Syscall name # args Strong name Weak names
-
-pgrpsys - pgrpsys 3 __pgrpsys
-sigprocmask - sigprocmask 3 __sigprocmask sigprocmask
-sysconfig - sysconfig 1 __sysconfig
-sysinfo - systeminfo 3 __sysinfo
-__waitid waitpid waitsys 3 __waitid
diff --git a/sysdeps/unix/sysv/sysv4/sysconf.c b/sysdeps/unix/sysv/sysv4/sysconf.c
deleted file mode 100644
index bfe7823c4c..0000000000
--- a/sysdeps/unix/sysv/sysv4/sysconf.c
+++ /dev/null
@@ -1,366 +0,0 @@
-/* Copyright (C) 1993,1995,1996,1997,2002,2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <limits.h>
-#include <unistd.h>
-#include <stdio.h>
-#include <time.h>
-#include <sysconfig.h>
-
-extern int __sysconfig (int);
-
-/* Get the value of the system variable NAME. */
-long int
-__sysconf (name)
- int name;
-{
- switch (name)
- {
- default:
- __set_errno (EINVAL);
- return -1;
-
- case _SC_ARG_MAX:
-#ifdef ARG_MAX
- return ARG_MAX;
-#else
- return -1;
-#endif
-
- case _SC_CHILD_MAX:
-#ifdef CHILD_MAX
- return CHILD_MAX;
-#else
- return -1;
-#endif
-
- case _SC_CLK_TCK:
- return __sysconfig (_CONFIG_CLK_TCK);
-
- case _SC_NGROUPS_MAX:
-#ifdef NGROUPS_MAX
- return NGROUPS_MAX;
-#else
- return -1;
-#endif
-
- /* Both of these are looking for _CONFIG_OPEN_FILES. */
- case _SC_OPEN_MAX:
- case _SC_STREAM_MAX:
- return __sysconfig (_CONFIG_OPEN_FILES);
-
- case _SC_TZNAME_MAX:
- return __tzname_max ();
-
- case _SC_JOB_CONTROL:
-#ifdef _POSIX_JOB_CONTROL
- return 1;
-#else
- return -1;
-#endif
-
- case _SC_SAVED_IDS:
-#ifdef _POSIX_SAVED_IDS
- return 1;
-#else
- return -1;
-#endif
-
- case _SC_REALTIME_SIGNALS:
-#ifdef _POSIX_REALTIME_SIGNALS
- return 1;
-#else
- return -1;
-#endif
-
- case _SC_PRIORITY_SCHEDULING:
-#ifdef _POSIX_PRIORITY_SCHEDULING
- return 1;
-#else
- return -1;
-#endif
-
- case _SC_TIMERS:
-#ifdef _POSIX_TIMERS
- return 1;
-#else
- return -1;
-#endif
-
- case _SC_ASYNCHRONOUS_IO:
-#ifdef _POSIX_ASYNCHRONOUS_IO
- return 1;
-#else
- return -1;
-#endif
-
- case _SC_PRIORITIZED_IO:
-#ifdef _POSIX_PRIORITIZED_IO
- return 1;
-#else
- return -1;
-#endif
-
- case _SC_SYNCHRONIZED_IO:
-#ifdef _POSIX_SYNCHRONIZED_IO
- return 1;
-#else
- return -1;
-#endif
-
- case _SC_FSYNC:
-#ifdef _POSIX_FSYNC
- return 1;
-#else
- return -1;
-#endif
-
- case _SC_MAPPED_FILES:
-#ifdef _POSIX_MAPPED_FILES
- return 1;
-#else
- return -1;
-#endif
-
- case _SC_MEMLOCK:
-#ifdef _POSIX_MEMLOCK
- return 1;
-#else
- return -1;
-#endif
-
- case _SC_MEMLOCK_RANGE:
-#ifdef _POSIX_MEMLOCK_RANGE
- return 1;
-#else
- return -1;
-#endif
-
- case _SC_MEMORY_PROTECTION:
-#ifdef _POSIX_MEMORY_PROTECTION
- return 1;
-#else
- return -1;
-#endif
-
- case _SC_MESSAGE_PASSING:
-#ifdef _POSIX_MESSAGE_PASSING
- return 1;
-#else
- return -1;
-#endif
-
- case _SC_SEMAPHORES:
-#ifdef _POSIX_SEMAPHORES
- return 1;
-#else
- return -1;
-#endif
-
- case _SC_SHARED_MEMORY_OBJECTS:
-#ifdef _POSIX_SHARED_MEMORY_OBJECTS
- return 1;
-#else
- return -1;
-#endif
-
- case _SC_VERSION:
- return _POSIX_VERSION;
-
- case _SC_PAGESIZE:
- return __sysconfig (_CONFIG_PAGESIZE);
-
- case _SC_AIO_LISTIO_MAX:
-#ifdef AIO_LISTIO_MAX
- return AIO_LISTIO_MAX;
-#else
- return -1;
-#endif
-
- case _SC_AIO_MAX:
-#ifdef AIO_MAX
- return AIO_MAX;
-#else
- return -1;
-#endif
-
- case _SC_AIO_PRIO_DELTA_MAX:
-#ifdef AIO_PRIO_DELTA_MAX
- return AIO_PRIO_DELTA_MAX;
-#else
- return -1;
-#endif
-
- case _SC_DELAYTIMER_MAX:
-#ifdef DELAYTIMER_MAX
- return DELAYTIMER_MAX;
-#else
- return -1;
-#endif
-
- case _SC_MQ_OPEN_MAX:
-#ifdef MQ_OPEN_MAX
- return MQ_OPEN_MAX;
-#else
- return -1;
-#endif
-
- case _SC_MQ_PRIO_MAX:
-#ifdef MQ_PRIO_MAX
- return MQ_PRIO_MAX;
-#else
- return -1;
-#endif
-
- case _SC_RTSIG_MAX:
-#ifdef RTSIG_MAX
- return RTSIG_MAX;
-#else
- return -1;
-#endif
-
- case _SC_SEM_NSEMS_MAX:
-#ifdef SEM_NSEMS_MAX
- return SEM_NSEMS_MAX;
-#else
- return -1;
-#endif
-
- case _SC_SEM_VALUE_MAX:
-#ifdef SEM_VALUE_MAX
- return SEM_VALUE_MAX;
-#else
- return -1;
-#endif
-
- case _SC_SIGQUEUE_MAX:
-#ifdef SIGQUEUE_MAX
- return SIGQUEUE_MAX;
-#else
- return -1;
-#endif
-
- case _SC_TIMER_MAX:
-#ifdef TIMER_MAX
- return TIMER_MAX;
-#else
- return -1;
-#endif
-
- case _SC_BC_BASE_MAX:
-#ifdef BC_BASE_MAX
- return BC_BASE_MAX;
-#else
- return -1;
-#endif
-
- case _SC_BC_DIM_MAX:
-#ifdef BC_DIM_MAX
- return BC_DIM_MAX;
-#else
- return -1;
-#endif
-
- case _SC_BC_SCALE_MAX:
-#ifdef BC_SCALE_MAX
- return BC_SCALE_MAX;
-#else
- return -1;
-#endif
-
- case _SC_BC_STRING_MAX:
-#ifdef BC_STRING_MAX
- return BC_STRING_MAX;
-#else
- return -1;
-#endif
-
- case _SC_EQUIV_CLASS_MAX:
-#ifdef EQUIV_CLASS_MAX
- return EQUIV_CLASS_MAX;
-#else
- return -1;
-#endif
-
- case _SC_EXPR_NEST_MAX:
-#ifdef EXPR_NEST_MAX
- return EXPR_NEST_MAX;
-#else
- return -1;
-#endif
-
- case _SC_LINE_MAX:
-#ifdef LINE_MAX
- return LINE_MAX;
-#else
- return -1;
-#endif
-
- case _SC_RE_DUP_MAX:
-#ifdef RE_DUP_MAX
- return RE_DUP_MAX;
-#else
- return -1;
-#endif
-
- case _SC_CHARCLASS_NAME_MAX:
-#ifdef CHARCLASS_NAME_MAX
- return CHARCLASS_NAME_MAX;
-#else
- return -1;
-#endif
-
- case _SC_2_VERSION:
- /* This is actually supposed to return the version
- of the 1003.2 utilities on the system {POSIX2_VERSION}. */
- return _POSIX2_C_VERSION;
-
- case _SC_2_C_BIND:
-#ifdef _POSIX2_C_BIND
- return _POSIX2_C_BIND;
-#else
- return -1;
-#endif
-
- case _SC_2_C_DEV:
-#ifdef _POSIX2_C_DEV
- return _POSIX2_C_DEV;
-#else
- return -1;
-#endif
-
- case _SC_2_FORT_DEV:
-#ifdef _POSIX2_FORT_DEV
- return _POSIX2_FORT_DEV;
-#else
- return -1;
-#endif
-
- case _SC_2_SW_DEV:
-#ifdef _POSIX2_SW_DEV
- return _POSIX2_SW_DEV;
-#else
- return -1;
-#endif
- }
-}
-
-weak_alias (__sysconf, sysconf)
-libc_hidden_def (__sysconf)
diff --git a/sysdeps/unix/sysv/sysv4/sysconfig.h b/sysdeps/unix/sysv/sysv4/sysconfig.h
deleted file mode 100644
index b51a3649a4..0000000000
--- a/sysdeps/unix/sysv/sysv4/sysconfig.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/* `__sysconfig' NAME values.
- Copyright (C) 1993, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef __SYSCONFIG_H
-#define __SYSCONFIG_H
-
-#define _CONFIG_OPEN_FILES 4 /* process limit on open files */
-#define _CONFIG_PAGESIZE 6 /* MMU page size */
-#define _CONFIG_CLK_TCK 7 /* all times are in CLK_TCKths of a second */
-
-#endif
diff --git a/sysdeps/unix/sysv/sysv4/system.c b/sysdeps/unix/sysv/sysv4/system.c
deleted file mode 100644
index fbfe43f19a..0000000000
--- a/sysdeps/unix/sysv/sysv4/system.c
+++ /dev/null
@@ -1,2 +0,0 @@
-/* SVR4 does have `waitpid'. Avoid unix/system.c, which says we don't. */
-#include <sysdeps/posix/system.c>
diff --git a/sysdeps/unix/sysv/sysv4/waitpid.c b/sysdeps/unix/sysv/sysv4/waitpid.c
deleted file mode 100644
index 23f9ceb029..0000000000
--- a/sysdeps/unix/sysv/sysv4/waitpid.c
+++ /dev/null
@@ -1,120 +0,0 @@
-/* Copyright (C) 1993,94,95,96,97,2002,2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Brendan Kehoe (brendan@zen.org).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <errno.h>
-#include <sys/wait.h>
-#include <sys/types.h>
-#include <stddef.h>
-#include "siginfo.h"
-
-typedef enum __idtype
- {
- /* Look for processes based upon a given PID. */
- P_PID,
-
- /* Look for processes based upon a given process-group ID. */
- P_PGID = 2,
-
- /* Look for any process. */
- P_ALL = 7,
- } __idtype_t;
-
-extern __pid_t __getpgid (__pid_t pid);
-extern int __waitid (__idtype_t idtype, __pid_t id,
- __siginfo_t *infop, int options);
-
-/* Wait for a child matching PID to die.
- If PID is greater than 0, match any process whose process ID is PID.
- If PID is (pid_t) -1, match any process.
- If PID is (pid_t) 0, match any process with the
- same process group as the current process.
- If PID is less than -1, match any process whose
- process group is the absolute value of PID.
- If the WNOHANG bit is set in OPTIONS, and that child
- is not already dead, return (pid_t) 0. If successful,
- return PID and store the dead child's status in STAT_LOC.
- Return (pid_t) -1 for errors. If the WUNTRACED bit is set in OPTIONS,
- return status for stopped children; otherwise don't. */
-
-__pid_t
-__libc_waitpid (__pid_t pid, int *stat_loc, int options)
-{
- __idtype_t idtype;
- __pid_t tmp_pid = pid;
- __siginfo_t infop;
-
- if (pid <= WAIT_MYPGRP)
- {
- if (pid == WAIT_ANY)
- {
- /* Request the status for any child. */
- idtype = P_ALL;
- }
- else if (pid == WAIT_MYPGRP)
- {
- /* Request the status for any child process that has
- a pgid that's equal to that of our parent. */
- tmp_pid = __getpgid (0);
- idtype = P_PGID;
- }
- else /* PID < -1 */
- {
- /* Request the status for any child whose pgid is equal
- to the absolute value of PID. */
- tmp_pid = pid & ~0; /* XXX not pseudo-insn */
- idtype = P_PGID;
- }
- }
- else
- {
- /* Request the status for the child whose pid is PID. */
- idtype = P_PID;
- }
-
- if (__waitid (idtype, tmp_pid, &infop, options | WEXITED | WTRAPPED) < 0)
- return -1;
-
- switch (infop.__code)
- {
- case EXITED:
- *stat_loc = W_EXITCODE (infop.__status, 0);
- break;
- case STOPPED:
- case TRAPPED:
- *stat_loc = W_STOPCODE (infop.__status);
- break;
- case KILLED:
- /* Don't know what to do with continue, since it isn't documented.
- Putting it here seemed the right place though. */
- case CONTINUED:
- *stat_loc = infop.__status;
- /* FALLTHROUGH */
- case CORED:
- *stat_loc |= WCOREFLAG;
- break;
- }
-
- /* Return the PID out of the INFOP structure instead of the one we were
- called with, to account for cases of being called with -1 to signify
- any PID. */
- return infop.__pid;
-}
-weak_alias (__libc_waitpid, __waitpid)
-weak_alias (__libc_waitpid, waitpid)
-libc_hidden_weak (__waitpid)
diff --git a/sysdeps/vax/DEFS.h b/sysdeps/vax/DEFS.h
deleted file mode 100644
index 50f8b7e131..0000000000
--- a/sysdeps/vax/DEFS.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright (c) 1982, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)DEFS.h 8.1 (Berkeley) 6/4/93
- */
-
-#define R0 0x001
-#define R1 0x002
-#define R2 0x004
-#define R3 0x008
-#define R4 0x010
-#define R5 0x020
-#define R6 0x040
-#define R7 0x080
-#define R8 0x100
-#define R9 0x200
-#define R10 0x400
-#define R11 0x800
-
-#ifdef PROF
-#define ENTRY(x, regs) \
- .globl _/**/x; .align 2; _/**/x: .word regs; \
- .data; 1:; .long 0; .text; moval 1b,r0; jsb mcount
-#define ASENTRY(x, regs) \
- .globl x; .align 2; x: .word regs; \
- .data; 1:; .long 0; .text; moval 1b,r0; jsb mcount
-#else
-#define ENTRY(x, regs) \
- .globl _/**/x; .align 2; _/**/x: .word regs
-#define ASENTRY(x, regs) \
- .globl x; .align 2; x: .word regs
-#endif
diff --git a/sysdeps/vax/Dist b/sysdeps/vax/Dist
deleted file mode 100644
index 22a693094a..0000000000
--- a/sysdeps/vax/Dist
+++ /dev/null
@@ -1,2 +0,0 @@
-DEFS.h
-fl.h
diff --git a/sysdeps/vax/Makefile b/sysdeps/vax/Makefile
deleted file mode 100644
index 909fc29f33..0000000000
--- a/sysdeps/vax/Makefile
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright (C) 1991, 1994, 1997 Free Software Foundation, Inc.
-# This file is part of the GNU C Library.
-
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
-
-# You should have received a copy of the GNU Lesser General Public
-# License along with the GNU C Library; if not, write to the Free
-# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-# 02111-1307 USA.
-
-ifeq ($(subdir),math)
-ifndef math-twiddled
-
-elided-routines := $(elided-routines) acos asin cos sin ceil rint hypot \
- __copysign __scalb __drem __logb __finite
-sysdep_routines := $(sysdep_routines) asincos sincos argred \
- support exp__E log__L
-
-math-twiddled := t
-endif
-
-bsdmath_dirs := $(bsdmath_dirs) vax
-
-endif
diff --git a/sysdeps/vax/__longjmp.c b/sysdeps/vax/__longjmp.c
deleted file mode 100644
index 8ffb8cd4b6..0000000000
--- a/sysdeps/vax/__longjmp.c
+++ /dev/null
@@ -1,129 +0,0 @@
-/* Copyright (C) 1991, 1992, 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA.
-
- Derived from @(#)_setjmp.s 5.7 (Berkeley) 6/27/88,
- Copyright (C) 1980 Regents of the University of California.
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
- 4. Neither the name of the University nor the names of its contributors
- may be used to endorse or promote products derived from this software
- without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- SUCH DAMAGE.*/
-
-#include <setjmp.h>
-
-#ifndef __GNUC__
- #error This file uses GNU C extensions; you must compile with GCC.
-#endif
-
-
-#define REI 02 /* Vax `rei' opcode. */
-
-/* Jump to the position specified by ENV, causing the
- setjmp call there to return VAL, or 1 if VAL is 0. */
-__NORETURN
-void
-__longjmp (env, val)
- const __jmp_buf env;
- int val;
-{
- register long int *fp asm("fp");
- long int *regsave;
- unsigned long int flags;
-
- if (env.__fp == NULL)
- __libc_fatal("longjmp: Invalid ENV argument.\n");
-
- if (val == 0)
- val = 1;
-
- asm volatile("loop:");
-
- flags = *(long int *) (6 + (char *) fp);
- regsave = (long int *) (20 + (char *) fp);
- if (flags & 1)
- /* R0 was saved by the caller.
- Store VAL where it will be restored from. */
- *regsave++ = val;
- if (flags & 2)
- /* R1 was saved by the caller.
- Store ENV where it will be restored from. */
- *regsave = env;
-
- /* Was the FP saved in the last call the same one in ENV? */
- asm volatile("cmpl %0, 12(fp);"
- /* Yes, return to it. */
- "beql done;"
- /* The FP in ENV is less than the one saved in the last call.
- This means we have already returned from the function that
- called `setjmp' with ENV! */
- "blssu latejump;" : /* No outputs. */ : "g" (env.__fp));
-
- /* We are more than one level below the state in ENV.
- Return to where we will pop another stack frame. */
- asm volatile("movl $loop, 16(fp);"
- "ret");
-
- asm volatile("done:");
- {
- char return_insn asm("*16(fp)");
- if (return_insn == REI)
- /* We're returning with an `rei' instruction.
- Do a return with PSL-PC pop. */
- asm volatile("movab 0f, 16(fp)");
- else
- /* Do a standard return. */
- asm volatile("movab 1f, 16(fp)");
-
- /* Return. */
- asm volatile("ret");
- }
-
- asm volatile("0:" /* `rei' return. */
- /* Compensate for PSL-PC push. */
- "addl2 %0, sp;"
- "1:" /* Standard return. */
- /* Return to saved PC. */
- "jmp %1" : /* No outputs. */ :
- "g" (8), "g" (env.__pc));
-
- /* Jump here when the FP saved in ENV points
- to a function that has already returned. */
- asm volatile("latejump:");
- __libc_fatal("longjmp: Attempt to jump to a function that has returned.\n");
-}
diff --git a/sysdeps/vax/add_n.s b/sysdeps/vax/add_n.s
deleted file mode 100644
index 265a8c7881..0000000000
--- a/sysdeps/vax/add_n.s
+++ /dev/null
@@ -1,48 +0,0 @@
-# VAX __mpn_add_n -- Add two limb vectors of the same length > 0 and store
-# sum in a third limb vector.
-
-# Copyright (C) 1992, 1994 Free Software Foundation, Inc.
-
-# This file is part of the GNU MP Library.
-
-# The GNU MP Library is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or (at your
-# option) any later version.
-
-# The GNU MP Library is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-# License for more details.
-
-# You should have received a copy of the GNU Lesser General Public License
-# along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-# MA 02111-1307, USA.
-
-
-# INPUT PARAMETERS
-# res_ptr (sp + 4)
-# s1_ptr (sp + 8)
-# s2_ptr (sp + 12)
-# size (sp + 16)
-
-.text
- .align 1
-.globl ___mpn_add_n
-___mpn_add_n:
- .word 0x0
- movl 16(ap),r0
- movl 12(ap),r1
- movl 8(ap),r2
- movl 4(ap),r3
- subl2 r4,r4
-
-Loop:
- movl (r2)+,r4
- adwc (r1)+,r4
- movl r4,(r3)+
- jsobgtr r0,Loop
-
- adwc r0,r0
- ret
diff --git a/sysdeps/vax/addmul_1.s b/sysdeps/vax/addmul_1.s
deleted file mode 100644
index c6d657dcf3..0000000000
--- a/sysdeps/vax/addmul_1.s
+++ /dev/null
@@ -1,126 +0,0 @@
-# VAX __mpn_addmul_1 -- Multiply a limb vector with a limb and add
-# the result to a second limb vector.
-
-# Copyright (C) 1992, 1994 Free Software Foundation, Inc.
-
-# This file is part of the GNU MP Library.
-
-# The GNU MP Library is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or (at your
-# option) any later version.
-
-# The GNU MP Library is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-# License for more details.
-
-# You should have received a copy of the GNU Lesser General Public License
-# along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-# MA 02111-1307, USA.
-
-
-# INPUT PARAMETERS
-# res_ptr (sp + 4)
-# s1_ptr (sp + 8)
-# size (sp + 12)
-# s2_limb (sp + 16)
-
-.text
- .align 1
-.globl ___mpn_addmul_1
-___mpn_addmul_1:
- .word 0xfc0
- movl 12(ap),r4
- movl 8(ap),r8
- movl 4(ap),r9
- movl 16(ap),r6
- jlss s2_big
-
- clrl r3
- incl r4
- ashl $-1,r4,r7
- jlbc r4,L1
- clrl r11
-
-# Loop for S2_LIMB < 0x80000000
-Loop1: movl (r8)+,r1
- jlss L1n0
- emul r1,r6,$0,r2
- addl2 r11,r2
- adwc $0,r3
- addl2 r2,(r9)+
- adwc $0,r3
-L1: movl (r8)+,r1
- jlss L1n1
-L1p1: emul r1,r6,$0,r10
- addl2 r3,r10
- adwc $0,r11
- addl2 r10,(r9)+
- adwc $0,r11
-
- jsobgtr r7,Loop1
- movl r11,r0
- ret
-
-L1n0: emul r1,r6,$0,r2
- addl2 r11,r2
- adwc r6,r3
- addl2 r2,(r9)+
- adwc $0,r3
- movl (r8)+,r1
- jgeq L1p1
-L1n1: emul r1,r6,$0,r10
- addl2 r3,r10
- adwc r6,r11
- addl2 r10,(r9)+
- adwc $0,r11
-
- jsobgtr r7,Loop1
- movl r11,r0
- ret
-
-
-s2_big: clrl r3
- incl r4
- ashl $-1,r4,r7
- jlbc r4,L2
- clrl r11
-
-# Loop for S2_LIMB >= 0x80000000
-Loop2: movl (r8)+,r1
- jlss L2n0
- emul r1,r6,$0,r2
- addl2 r11,r2
- adwc r1,r3
- addl2 r2,(r9)+
- adwc $0,r3
-L2: movl (r8)+,r1
- jlss L2n1
-L2p1: emul r1,r6,$0,r10
- addl2 r3,r10
- adwc r1,r11
- addl2 r10,(r9)+
- adwc $0,r11
-
- jsobgtr r7,Loop2
- movl r11,r0
- ret
-
-L2n0: emul r1,r6,$0,r2
- addl2 r11,r2
- adwc r6,r3
- addl2 r2,(r9)+
- adwc r1,r3
- movl (r8)+,r1
- jgeq L2p1
-L2n1: emul r1,r6,$0,r10
- addl2 r3,r10
- adwc r6,r11
- addl2 r10,(r9)+
- adwc r1,r11
-
- jsobgtr r7,Loop2
- movl r11,r0
- ret
diff --git a/sysdeps/vax/bcopy.s b/sysdeps/vax/bcopy.s
deleted file mode 100644
index 186ad365f8..0000000000
--- a/sysdeps/vax/bcopy.s
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Copyright (c) 1983 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)bcopy.s 5.6 (Berkeley) 6/1/90"
-#endif /* LIBC_SCCS and not lint */
-
-/* bcopy(from, to, size) */
-
-#include "DEFS.h"
-
-ENTRY(bcopy, R6)
- movl 4(ap),r1
- movl 8(ap),r3
- movl 12(ap),r6
- cmpl r1,r3
- bgtr 2f # normal forward case
- blss 3f # overlapping, must do backwards
- ret # equal, nothing to do
-1:
- subl2 r0,r6
- movc3 r0,(r1),(r3)
-2:
- movzwl $65535,r0
- cmpl r6,r0
- jgtr 1b
- movc3 r6,(r1),(r3)
- ret
-3:
- addl2 r6,r1
- addl2 r6,r3
- movzwl $65535,r0
- jbr 5f
-4:
- subl2 r0,r6
- subl2 r0,r1
- subl2 r0,r3
- movc3 r0,(r1),(r3)
- movzwl $65535,r0
- subl2 r0,r1
- subl2 r0,r3
-5:
- cmpl r6,r0
- jgtr 4b
- subl2 r6,r1
- subl2 r6,r3
- movc3 r6,(r1),(r3)
- ret
diff --git a/sysdeps/vax/bits/huge_val.h b/sysdeps/vax/bits/huge_val.h
deleted file mode 100644
index 63395b15e3..0000000000
--- a/sysdeps/vax/bits/huge_val.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* `HUGE_VAL' constant for Vaxen.
- Used by <stdlib.h> and <math.h> functions for overflow.
- Copyright (C) 1992, 1996, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _MATH_H
-# error "Never use <bits/huge_val.h> directly; include <math.h> instead."
-#endif
-
-
-#define HUGE_VAL 1.70141182460469227e38
diff --git a/sysdeps/vax/bits/setjmp.h b/sysdeps/vax/bits/setjmp.h
deleted file mode 100644
index 10ca170a2a..0000000000
--- a/sysdeps/vax/bits/setjmp.h
+++ /dev/null
@@ -1,11 +0,0 @@
-/* Define the machine-dependent type `jmp_buf'. Vax version. */
-
-#ifndef _SETJMP_H
-# error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead."
-#endif
-
-typedef struct
- {
- PTR __fp;
- PTR __pc;
- } __jmp_buf[1];
diff --git a/sysdeps/vax/bsd-_setjmp.S b/sysdeps/vax/bsd-_setjmp.S
deleted file mode 100644
index 756e96b707..0000000000
--- a/sysdeps/vax/bsd-_setjmp.S
+++ /dev/null
@@ -1,33 +0,0 @@
-/* BSD `_setjmp' entry point to `sigsetjmp (..., 0)'. Vax version.
- Copyright (C) 1994, 1997, 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* This just does a tail-call to `__sigsetjmp (ARG, 0)'.
- We cannot do it in C because it must be a tail-call, so frame-unwinding
- in setjmp doesn't clobber the state restored by longjmp. */
-
-#include <sysdep.h>
-
-ENTRY (_setjmp)
- popl r0 /* Pop return PC. */
- popl r1 /* Pop jmp_buf argument. */
- pushl $0 /* Push second argument of zero. */
- pushl r1 /* Push back first argument. */
- pushl r0 /* Push back return PC. */
- jmp C_SYMBOL_NAME (__sigsetjmp)
-libc_hidden_def (_setjmp)
diff --git a/sysdeps/vax/bsd-setjmp.S b/sysdeps/vax/bsd-setjmp.S
deleted file mode 100644
index 792fcf7a69..0000000000
--- a/sysdeps/vax/bsd-setjmp.S
+++ /dev/null
@@ -1,32 +0,0 @@
-/* BSD `setjmp' entry point to `sigsetjmp (..., 1)'. Vax version.
- Copyright (C) 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* This just does a tail-call to `__sigsetjmp (ARG, 1)'.
- We cannot do it in C because it must be a tail-call, so frame-unwinding
- in setjmp doesn't clobber the state restored by longjmp. */
-
-#include <sysdep.h>
-
-ENTRY (setjmp)
- popl r0 /* Pop return PC. */
- popl r1 /* Pop jmp_buf argument. */
- pushl $1 /* Push second argument of one. */
- pushl r1 /* Push back first argument. */
- pushl r0 /* Push back return PC. */
- jmp C_SYMBOL_NAME (__sigsetjmp)
diff --git a/sysdeps/vax/bzero.s b/sysdeps/vax/bzero.s
deleted file mode 100644
index be61a97d89..0000000000
--- a/sysdeps/vax/bzero.s
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Copyright (c) 1983 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)bzero.s 5.6 (Berkeley) 6/1/90"
-#endif /* LIBC_SCCS and not lint */
-
-/* bzero(base, length) */
-
-#include "DEFS.h"
-
-ENTRY(__bzero, 0)
- movl 4(ap),r3
- jbr 2f
-1:
- subl2 r0,8(ap)
- movc5 $0,(r3),$0,r0,(r3)
-2:
- movzwl $65535,r0
- cmpl 8(ap),r0
- jgtr 1b
- movc5 $0,(r3),$0,8(ap),(r3)
- ret
-weak_alias (__bzero, bzero)
diff --git a/sysdeps/vax/ffs.s b/sysdeps/vax/ffs.s
deleted file mode 100644
index 6272cfd59f..0000000000
--- a/sysdeps/vax/ffs.s
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright (c) 1983 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)ffs.s 5.6 (Berkeley) 6/1/90"
-#endif /* LIBC_SCCS and not lint */
-
-/* bit = ffs(value) */
-
-#include "DEFS.h"
-
-ENTRY(__ffs, 0)
- ffs $0,$32,4(ap),r0
- bneq 1f
- mnegl $1,r0
-1:
- incl r0
- ret
-weak_alias (__ffs, ffs)
diff --git a/sysdeps/vax/fl.h b/sysdeps/vax/fl.h
deleted file mode 100644
index 79cbeb247a..0000000000
--- a/sysdeps/vax/fl.h
+++ /dev/null
@@ -1,68 +0,0 @@
-/* Copyright (C) 1991, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef __need_HUGE_VAL
-
-/* Floating-point constants for Vaxen. */
-
-#define FLT_RADIX 2
-
-#define FLT_ROUNDS _FLT_ROUNDS_TONEAREST
-
-#define FLT_MANT_DIG 23
-#define DBL_MANT_DIG 55
-#define LDBL_MANT_DIG 55
-
-#define FLT_DIG 6
-#define DBL_DIG 16
-#define LDBL_DIG 16
-
-#define FLT_MIN_EXP (-128)
-#define DBL_MIN_EXP (-128)
-#define LDBL_MIN_EXP (-128)
-
-#define FLT_MIN_10_EXP (-38)
-#define DBL_MIN_10_EXP (-38)
-#define LDBL_MIN_10_EXP (-38)
-
-#define FLT_MAX_EXP 127
-#define DBL_MAX_EXP 127
-#define LDBL_MAX_EXP 127
-
-#define FLT_MAX_10_EXP 38
-#define DBL_MAX_10_EXP 38
-#define LDBL_MAX_10_EXP 38
-
-#define FLT_MAX 1.7014116e38
-#define DBL_MAX 1.70141182460469227e38
-#define LDBL_MAX DBL_MAX
-
-#define FLT_EPSILON 2.384186e-7
-#define DBL_EPSILON 5.55111512312578270e-17
-#define LDBL_EPSILON DBL_EPSILON
-
-#define FLT_MIN 0.2938736e-38
-#define DBL_MIN 0.29387358770557187e-38
-#define LDBL_MIN DBL_MIN
-
-#else /* Need HUGE_VAL. */
-
-/* Used by <stdlib.h> and <math.h> functions for overflow. */
-#define HUGE_VAL 1.70141182460469227e38
-
-#endif /* Don't need HUGE_VAL. */
diff --git a/sysdeps/vax/gccframe.h b/sysdeps/vax/gccframe.h
deleted file mode 100644
index 323d5115d4..0000000000
--- a/sysdeps/vax/gccframe.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Definition of object in frame unwind info. vax version.
- Copyright (C) 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#define DWARF_FRAME_REGISTERS 16
-
-#include <sysdeps/generic/gccframe.h>
diff --git a/sysdeps/vax/gmp-mparam.h b/sysdeps/vax/gmp-mparam.h
deleted file mode 100644
index 1ebfa19c5f..0000000000
--- a/sysdeps/vax/gmp-mparam.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/* gmp-mparam.h -- Compiler/machine parameter header file.
-
-Copyright (C) 1991, 1993, 1994, 1995 Free Software Foundation, Inc.
-
-This file is part of the GNU MP Library.
-
-The GNU MP Library is free software; you can redistribute it and/or modify
-it under the terms of the GNU Lesser General Public License as published by
-the Free Software Foundation; either version 2.1 of the License, or (at your
-option) any later version.
-
-The GNU MP Library is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-License for more details.
-
-You should have received a copy of the GNU Lesser General Public License
-along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-MA 02111-1307, USA. */
-
-#define BITS_PER_MP_LIMB 32
-#define BYTES_PER_MP_LIMB 4
-#define BITS_PER_LONGINT 32
-#define BITS_PER_INT 32
-#define BITS_PER_SHORTINT 16
-#define BITS_PER_CHAR 8
-
-#define IEEE_DOUBLE_BIG_ENDIAN 0
diff --git a/sysdeps/vax/htonl.s b/sysdeps/vax/htonl.s
deleted file mode 100644
index f3e2195c00..0000000000
--- a/sysdeps/vax/htonl.s
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (C) 1983 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)htonl.s 5.5 (Berkeley) 6/27/88"
-#endif /* LIBC_SCCS and not lint */
-
-/* netorder = htonl(hostorder) */
-
-#include "DEFS.h"
-
-ENTRY(htonl, 0)
- rotl $-8,4(ap),r0
- insv r0,$16,$8,r0
- movb 7(ap),r0
- ret
-weak_alias (htonl, ntohl)
diff --git a/sysdeps/vax/htons.s b/sysdeps/vax/htons.s
deleted file mode 100644
index 5f9ea7384d..0000000000
--- a/sysdeps/vax/htons.s
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (C) 1983 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)htons.s 5.5 (Berkeley) 6/27/88"
-#endif /* LIBC_SCCS and not lint */
-
-/* hostorder = htons(netorder) */
-
-#include "DEFS.h"
-
-ENTRY(htons, 0)
- rotl $8,4(ap),r0
- movb 5(ap),r0
- movzwl r0,r0
- ret
-weak_alias (htons, ntohs)
diff --git a/sysdeps/vax/memccpy.c b/sysdeps/vax/memccpy.c
deleted file mode 100644
index 9a459ff5eb..0000000000
--- a/sysdeps/vax/memccpy.c
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Copyright (C) 1991, 1992, 1995, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#include <string.h>
-
-/* Copy no more than N bytes of SRC to DEST, stopping when C is found.
- Return the position in DEST one byte past where C was copied,
- or NULL if C was not found in the first N bytes of SRC. */
-void *
-__memccpy (dest, src, c, n)
- void *dest;
- const void *src;
- int c;
- size_t nbytes;
-{
- /* Except when N > 65535, this is what a hand-coded version would
- do anyway. */
-
- void *found = memchr (src, c, n);
-
- if (found == NULL)
- {
- (void) memcpy (dest, src, n);
- return NULL;
- }
-
- (void) memcpy (dest, src, (char *) found + 1 - (char *) src);
- return (PTR) ((char *) dest + ((char *) found + 1 - (char *) src));
-}
-
-weak_alias (__memccpy, memccpy)
diff --git a/sysdeps/vax/memchr.s b/sysdeps/vax/memchr.s
deleted file mode 100644
index 5c54ba8e79..0000000000
--- a/sysdeps/vax/memchr.s
+++ /dev/null
@@ -1,74 +0,0 @@
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)memchr.s 5.1 (Berkeley) 5/29/90"
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * Find the first occurrence of c in the memory at cp (length n).
- * Return pointer to match or null pointer.
- *
- * This code optimises the usual case (0 < n < 65535).
- *
- * void *
- * memchr(cp, c, n)
- * char *cp, c;
- * size_t n;
- */
-
-#include "DEFS.h"
-
-ENTRY(__memchr, 0)
- movq 4(ap),r1 # r1 = cp; r2 = c
- movl 12(ap),r0 # r0 = n
- movzwl $65535,r4 # handy constant
-0:
- cmpl r0,r4 # check for annoying locc limit
- bgtru 3f
-
- /* n <= 65535 */
- locc r2,r0,(r1) # search n bytes for c
- beql 2f # done if not found (r0 already 0)
-1: /* found character c at (r1) */
- movl r1,r0
-2:
- ret
-
-3: /* n > 65535 */
- locc r2,r4,(r1) # search 65535 bytes for c
- beql 1b # done if found
- decw r0 # from 0 to 65535
- subl2 r0,r4 # adjust n
- brb 0b # and loop
-
-weak_alias (__memchr, memchr)
-#if !__BOUNDED_POINTERS__
-weak_alias (__memchr, __ubp_memchr)
-#endif
diff --git a/sysdeps/vax/memcmp.s b/sysdeps/vax/memcmp.s
deleted file mode 100644
index e32fe24f41..0000000000
--- a/sysdeps/vax/memcmp.s
+++ /dev/null
@@ -1,59 +0,0 @@
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)memcmp.s 5.1 (Berkeley) 5/15/90"
-#endif /* LIBC_SCCS and not lint */
-
-/* int memcmp(s1, s2, n) */
-
-#include "DEFS.h"
-
-ENTRY(memcmp, 0)
- movl 4(ap),r1 /* r1 = s1 */
- movq 8(ap),r3 /* r3 = s2; r4 = n */
- movzwl $65535,r5
-0:
- cmpl r4,r5
- jgtru 3f /* handle stupid cmpc3 limitation */
- cmpc3 r4,(r1),(r3) /* compare */
- beql 2f /* done if same (r0 = 0) */
-1:
- movzbl (r1),r0
- movzbl (r3),r2
- subl2 r2,r0 /* return *s1 - *s2; s1,s2 unsigned chars */
-2:
- ret
-3:
- subl2 r5,r4 /* do 64K; adjust count */
- cmpc3 r5,(r1),(r3)
- jeql 0b /* loop if same */
- jbr 1b
-
-weak_alias (memcmp, bcmp)
diff --git a/sysdeps/vax/memmove.s b/sysdeps/vax/memmove.s
deleted file mode 100644
index 738544142f..0000000000
--- a/sysdeps/vax/memmove.s
+++ /dev/null
@@ -1,89 +0,0 @@
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)memmove.s 5.1 (Berkeley) 5/15/90"
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * void *memmove(dst, src, size)
- * returns dst
- *
- * This optimises the usual case (count < 65536) at the expense
- * of some extra memory references and branches when count >= 65536.
- */
-
-#include "DEFS.h"
-
-ENTRY(memmove, 0)
- movzwl $65535,r0 /* r0 = 64K (needed below) */
- movq 8(ap),r1 /* r1 = src, r2 = length */
- movl 4(ap),r3 /* r3 = dst */
- cmpl r1,r3
- bgtru 1f /* normal forward case */
- beql 2f /* equal, nothing to do */
- addl2 r2,r1 /* overlaps iff src<dst but src+len>dst */
- cmpl r1,r3
- bgtru 4f /* overlapping, must move backwards */
- subl2 r2,r1
-
-1: /* move forward */
- cmpl r2,r0
- bgtru 3f /* stupid movc3 limitation */
- movc3 r2,(r1),(r3) /* move it all */
-2:
- movl 4(ap),r0 /* return original dst */
- ret
-3:
- subl2 r0,12(ap) /* adjust length by 64K */
- movc3 r0,(r1),(r3) /* move 64K */
- movl 12(ap),r2
- decw r0 /* from 0 to 65535 */
- brb 1b /* retry */
-
-4: /* move backward */
- addl2 r2,r3
-5:
- cmpl r2,r0
- bgtru 6f /* stupid movc3 limitation */
- subl2 r2,r1
- subl2 r2,r3
- movc3 r2,(r1),(r3) /* move it all */
- movl 4(ap),r0 /* return original dst */
- ret
-6:
- subl2 r0,12(ap) /* adjust length by 64K */
- subl2 r0,r1
- subl2 r0,r3
- movc3 r0,(r1),(r3) /* move 64K */
- movl 12(ap),r2
- decw r0
- subl2 r0,r1
- subl2 r0,r3
- brb 5b
diff --git a/sysdeps/vax/memset.s b/sysdeps/vax/memset.s
deleted file mode 100644
index dda14868f9..0000000000
--- a/sysdeps/vax/memset.s
+++ /dev/null
@@ -1,51 +0,0 @@
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)memset.s 5.2 (Berkeley) 5/12/91"
-#endif /* LIBC_SCCS and not lint */
-
-/* void *memset(base, c, length) */
-
-#include "DEFS.h"
-
-ENTRY(memset, 0)
- movl 4(ap),r3
-1:
- movzwl $65535,r0
- movq 8(ap),r1
- cmpl r2,r0
- jgtru 2f
- movc5 $0,(r3),r1,r2,(r3)
- movl r1,r0
- ret
-2:
- subl2 r0,12(ap)
- movc5 $0,(r3),r1,r0,(r3)
- jbr 1b
diff --git a/sysdeps/vax/mul_1.s b/sysdeps/vax/mul_1.s
deleted file mode 100644
index 295638b06e..0000000000
--- a/sysdeps/vax/mul_1.s
+++ /dev/null
@@ -1,123 +0,0 @@
-# VAX __mpn_mul_1 -- Multiply a limb vector with a limb and store
-# the result in a second limb vector.
-
-# Copyright (C) 1992, 1994 Free Software Foundation, Inc.
-
-# This file is part of the GNU MP Library.
-
-# The GNU MP Library is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or (at your
-# option) any later version.
-
-# The GNU MP Library is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-# License for more details.
-
-# You should have received a copy of the GNU Lesser General Public License
-# along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-# MA 02111-1307, USA.
-
-
-# INPUT PARAMETERS
-# res_ptr (sp + 4)
-# s1_ptr (sp + 8)
-# size (sp + 12)
-# s2_limb (sp + 16)
-
-.text
- .align 1
-.globl ___mpn_mul_1
-___mpn_mul_1:
- .word 0xfc0
- movl 12(ap),r4
- movl 8(ap),r8
- movl 4(ap),r9
- movl 16(ap),r6
- jlss s2_big
-
-# One might want to combine the addl2 and the store below, but that
-# is actually just slower according to my timing tests. (VAX 3600)
-
- clrl r3
- incl r4
- ashl $-1,r4,r7
- jlbc r4,L1
- clrl r11
-
-# Loop for S2_LIMB < 0x80000000
-Loop1: movl (r8)+,r1
- jlss L1n0
- emul r1,r6,$0,r2
- addl2 r11,r2
- adwc $0,r3
- movl r2,(r9)+
-L1: movl (r8)+,r1
- jlss L1n1
-L1p1: emul r1,r6,$0,r10
- addl2 r3,r10
- adwc $0,r11
- movl r10,(r9)+
-
- jsobgtr r7,Loop1
- movl r11,r0
- ret
-
-L1n0: emul r1,r6,$0,r2
- addl2 r11,r2
- adwc r6,r3
- movl r2,(r9)+
- movl (r8)+,r1
- jgeq L1p1
-L1n1: emul r1,r6,$0,r10
- addl2 r3,r10
- adwc r6,r11
- movl r10,(r9)+
-
- jsobgtr r7,Loop1
- movl r11,r0
- ret
-
-
-s2_big: clrl r3
- incl r4
- ashl $-1,r4,r7
- jlbc r4,L2
- clrl r11
-
-# Loop for S2_LIMB >= 0x80000000
-Loop2: movl (r8)+,r1
- jlss L2n0
- emul r1,r6,$0,r2
- addl2 r11,r2
- adwc r1,r3
- movl r2,(r9)+
-L2: movl (r8)+,r1
- jlss L2n1
-L2p1: emul r1,r6,$0,r10
- addl2 r3,r10
- adwc r1,r11
- movl r10,(r9)+
-
- jsobgtr r7,Loop2
- movl r11,r0
- ret
-
-L2n0: emul r1,r6,$0,r2
- addl2 r1,r3
- addl2 r11,r2
- adwc r6,r3
- movl r2,(r9)+
- movl (r8)+,r1
- jgeq L2p1
-L2n1: emul r1,r6,$0,r10
- addl2 r1,r11
- addl2 r3,r10
- adwc r6,r11
- movl r10,(r9)+
-
- jsobgtr r7,Loop2
- movl r11,r0
- ret
diff --git a/sysdeps/vax/setjmp.c b/sysdeps/vax/setjmp.c
deleted file mode 100644
index 0e38f3974a..0000000000
--- a/sysdeps/vax/setjmp.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Copyright (C) 1991, 1992, 1994, 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA.
-
- Derived from @(#)_setjmp.s 5.7 (Berkeley) 6/27/88,
- Copyright (C) 1980 Regents of the University of California.
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
- 4. Neither the name of the University nor the names of its contributors
- may be used to endorse or promote products derived from this software
- without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- SUCH DAMAGE.
-*/
-
-#include <setjmp.h>
-
-
-/* Save the current program position in ENV and return 0. */
-int
-__sigsetjmp (jmp_buf env, int savemask)
-{
- /* Save our caller's FP and PC. */
- asm ("movl 12(fp), %0" : "=g" (env[0].__jmpbuf[0].__fp));
- asm ("movl 16(fp), %0" : "=g" (env[0].__jmpbuf[0].__pc));
-
- /* Save the signal mask if requested. */
- return __sigjmp_save (env, savemask);
-}
diff --git a/sysdeps/vax/strcat.s b/sysdeps/vax/strcat.s
deleted file mode 100644
index bfe64e61a3..0000000000
--- a/sysdeps/vax/strcat.s
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (c) 1983 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)strcat.s 5.6 (Berkeley) 6/1/90"
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * Concatenate string s2 to the end of s1
- * and return the base of s1.
- *
- * char *
- * strcat(s1, s2)
- * char *s1, *s2;
- */
-#include "DEFS.h"
-
-ENTRY(strcat, R6|R7)
- movq 4(ap), r6 # r6 = s1; r7 = s2
- movl r6,r1
-0:
- locc $0,$65535,(r1) # look for '\0'
- beql 0b
- movl r1,r3 # save end of s1
-1:
- locc $0,$65535,(r7) # find length of s2
- bneq 2f
- movc3 $65535,(r7),(r3)# copy full block
- movl r1,r7
- jbr 1b
-2:
- subl2 r7,r1 # calculate length
- incl r1
- movc3 r1,(r7),(r3) # copy remainder
- movl r6,r0
- ret
diff --git a/sysdeps/vax/strchr.s b/sysdeps/vax/strchr.s
deleted file mode 100644
index d56cb4b0a0..0000000000
--- a/sysdeps/vax/strchr.s
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * Copyright (c) 1988 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)strchr.s 5.4 (Berkeley) 6/1/90"
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * Find the first occurrence of c in the string cp.
- * Return pointer to match or null pointer.
- *
- * char *
- * strchr(cp, c)
- * char *cp, c;
- */
-#include "DEFS.h"
-
- .lcomm tbl,256
-
-ENTRY(strchr, 0)
- movzwl $65535,r4 /* handy constant */
- movq 4(ap),r1 /* r1 = cp; r2 = c */
- movzbl r2,r2
- beql Lzero /* special case for c == '\0' */
-
-/*
- * Fancy scanc version. Alas, it is not reentrant.
- */
- movab tbl,r3 /* r3 = base of table */
- bbss $0,(r3),Lreent /* ensure not reentering */
- movab (r3)[r2],r5
- incb (r5) /* mark both '\0' and c */
-0:
- scanc r4,(r1),(r3),$1 /* look for c or '\0' */
- beql 0b /* still looking */
- movl r1,r0 /* return whatever we found */
- tstb (r0)
- bneq 1f # unless it was '\0':
- clrl r0 # then return NULL
-1:
- clrb (r5) /* clean up table */
- clrb (r3)
- ret
-
-/*
- * Special case for \0.
- */
-Lzero:
- locc r2,r4,(r1) /* just find end of string */
- beql Lzero /* still looking */
- movl r1,r0 /* found it */
- ret
-
-/*
- * Slower reentrant version is two two-step searches. The first
- * phase runs until we know where the string ends; it locates the
- * first occurrence of c within a 65535-byte block. If we find
- * the end of the string first, we switch to the second phase,
- * were we look only up to the known end of string.
- */
-Lreent:
-0: /* first phase */
- movl r1,r3
- locc $0,r4,(r3) /* look for '\0' */
- bneq 1f
- locc r2,r4,(r3) /* look for c */
- beql 0b /* not found: reset pointer and loop */
- movl r1,r0 /* found: return it */
- ret
-1: /* second phase */
- subl3 r3,r1,r0 /* length of short block */
- locc r2,r0,(r3) /* look for c */
- beql 2f /* not found: return NULL */
- movl r1,r0
-2: ret
-
-weak_alias (strchr, index)
diff --git a/sysdeps/vax/strcmp.s b/sysdeps/vax/strcmp.s
deleted file mode 100644
index 479e14f301..0000000000
--- a/sysdeps/vax/strcmp.s
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * Copyright (c) 1983 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)strcmp.s 5.6 (Berkeley) 6/1/90"
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * Compare string s1 lexicographically to string s2.
- * Return:
- * 0 s1 == s2
- * > 0 s1 > s2
- * < 0 s2 < s2
- *
- * strcmp(s1, s2)
- * char *s1, *s2;
- */
-#include "DEFS.h"
-
-ENTRY(strcmp, 0)
- movl 4(ap),r1 # r1 = s1
- movl 8(ap),r3 # r3 = s2
- subb3 (r3),(r1),r0 # quick check for first char different
- beql 1f # have to keep checking
- cvtbl r0,r0
- ret
-1:
- clrl r5 # calculate min bytes to next page boundary
- subb3 r1,$255,r5 # r5 = (bytes - 1) to end of page for s1
- subb3 r3,$255,r0 # r0 = (bytes - 1) to end of page for s2
- cmpb r0,r5 # r5 = min(r0, r5);
- bgtru 2f
- movb r0,r5
-2:
- incl r5 # r5 = min bytes to next page boundary
- cmpc3 r5,(r1),(r3) # compare strings
- bneq 3f
- subl2 r5,r1 # check if found null yet
- locc $0,r5,(r1)
- beql 1b # not yet done, continue checking
- subl2 r0,r3
- mnegb (r3),r0 # r0 = '\0' - *s2
- cvtbl r0,r0
- ret
-3:
- subl2 r0,r5 # check for null in matching string
- subl2 r5,r1
- locc $0,r5,(r1)
- bneq 4f
- subb3 (r3),(r1),r0 # r0 = *s1 - *s2
- cvtbl r0,r0
- ret
-4:
- clrl r0 # both the same to null
- ret
diff --git a/sysdeps/vax/strcpy.s b/sysdeps/vax/strcpy.s
deleted file mode 100644
index 1eb00ba6c3..0000000000
--- a/sysdeps/vax/strcpy.s
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Copyright (c) 1983 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)strcpy.s 5.6 (Berkeley) 6/1/90"
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * Copy string s2 over top of s1.
- * Return base of s1.
- *
- * char *
- * strcpy(s1, s2)
- * char *s1, *s2;
- */
-#include "DEFS.h"
-
-ENTRY(strcpy, R6)
- movl 4(ap), r3 # r3 = s1
- movl 8(ap), r6 # r6 = s2
-1:
- locc $0,$65535,(r6) # find length of s2
- bneq 2f
- movc3 $65535,(r6),(r3)# copy full block
- movl r1,r6
- jbr 1b
-2:
- subl2 r6,r1 # calculate length
- incl r1
- movc3 r1,(r6),(r3) # copy remainder
- movl 4(ap),r0 # return base of s1
- ret
diff --git a/sysdeps/vax/strcspn.s b/sysdeps/vax/strcspn.s
deleted file mode 100644
index 155b783089..0000000000
--- a/sysdeps/vax/strcspn.s
+++ /dev/null
@@ -1,62 +0,0 @@
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)strcspn.s 5.1 (Berkeley) 5/15/90"
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * Span the complement of string s2 (skip characters that are not in s2).
- * Return the number of characters in s1 that were skipped.
- *
- * size_t
- * strcspn(s1, s2)
- * const char *s1, *s2;
- */
-#include "DEFS.h"
-
-ENTRY(strcspn, 0)
- subl2 $32,sp /* make 256 bit table */
- movc5 $0,(sp),$0,$32,(sp)
- movq 4(ap),r1 /* r1 = s1, r2 = s2 */
-
- /* turn on bit for each character in s2, including '\0' */
-1:
- movzbl (r2)+,r0
- bbss r0,(sp),1b
- bneq 1b
- movl r1,r0 /* r0 = s (current pos in s1) */
-
- /* look for a character that is in s2 */
-2:
- movzbl (r0)+,r2 /* c = *s++ */
- bbc r2,(sp),2b /* loop until c is in table */
- decl r0 /* s-- */
- subl2 r1,r0 /* r0 = s - s1 = count */
- ret
diff --git a/sysdeps/vax/strlen.s b/sysdeps/vax/strlen.s
deleted file mode 100644
index 9479fbbf65..0000000000
--- a/sysdeps/vax/strlen.s
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (c) 1983 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)strlen.s 5.6 (Berkeley) 6/1/90"
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * Return the length of cp (not counting '\0').
- *
- * strlen(cp)
- * char *cp;
- */
-#include "DEFS.h"
-
-ENTRY(strlen, 0)
- movl 4(ap),r1
-1:
- locc $0,$65535,(r1) # look for '\0'
- beql 1b
- subl3 4(ap),r1,r0 # len = cp - base
- ret
diff --git a/sysdeps/vax/strncat.s b/sysdeps/vax/strncat.s
deleted file mode 100644
index 2387d1b1bb..0000000000
--- a/sysdeps/vax/strncat.s
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Copyright (c) 1983 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)strncat.s 5.6 (Berkeley) 6/1/90"
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * Concatenate string s2 on the end of s1
- * and return the base of s1. The parameter
- * n is the maximum length of string s2 to
- * concatenate.
- *
- * char *
- * strncat(s1, s2, n)
- * char *s1, *s2;
- * int n;
- */
-#include "DEFS.h"
-
-ENTRY(strncat, R6)
- movl 12(ap),r6 # r6 = n
- bleq done # n <= 0
- movl 4(ap),r3 # r3 = s1
- movl r3,r1
-0:
- locc $0,$65535,(r1)
- beql 0b
- movl r1,r3 # r3 = index(s1, '\0');
- movl 8(ap),r1 # r1 = s2
-1:
- movzwl $65535,r2 # r2 = bytes in first chunk
- cmpl r6,r2 # r2 = min(bytes in chunk, n);
- jgeq 2f
- movl r6,r2
-2:
- subl2 r2,r6 # update n
- locc $0,r2,(r1) # '\0' found?
- jneq 3f
- subl2 r2,r1 # back up pointer updated by locc
- movc3 r2,(r1),(r3) # copy in next piece
- tstl r6 # run out of space?
- jneq 1b
- clrb (r3) # force '\0' termination
- jbr done
-3:
- subl2 r0,r2 # r2 = number of bytes to move
- subl2 r2,r1 # back up pointer updated by locc
- incl r2 # copy '\0' as well
- movc3 r2,(r1),(r3) # copy in last piece
-done:
- movl 4(ap),r0 # return s1
- ret
diff --git a/sysdeps/vax/strncmp.s b/sysdeps/vax/strncmp.s
deleted file mode 100644
index 8d8f5d419a..0000000000
--- a/sysdeps/vax/strncmp.s
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Copyright (c) 1983 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)strncmp.s 5.6 (Berkeley) 6/1/90"
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * Compare at most n characters of string
- * s1 lexicographically to string s2.
- * Return:
- * 0 s1 == s2
- * > 0 s1 > s2
- * < 0 s2 < s2
- *
- * strncmp(s1, s2, n)
- * char *s1, *s2;
- * int n;
- */
-#include "DEFS.h"
-
-ENTRY(strncmp, 0)
- movl 4(ap),r1 # r1 = s1
- movq 8(ap),r3 # r3 = s2; r4 = n
-1:
- clrl r5 # calculate min bytes to next page boundary
- subb3 r1,$255,r5 # r5 = (bytes - 1) to end of page for s1
- subb3 r3,$255,r0 # r0 = (bytes - 1) to end of page for s2
- cmpb r0,r5 # r5 = min(r0, r5);
- bgtru 2f
- movb r0,r5
-2:
- incl r5 # r5 = min bytes to next page boundary
- cmpl r4,r5 # r5 = min(n, r5);
- bgeq 3f
- movl r4,r5
-3:
- cmpc3 r5,(r1),(r3) # compare strings
- bneq 4f
- subl2 r5,r4 # check for end of comparison
- beql 5f
- subl2 r5,r1 # check if found null yet
- locc $0,r5,(r1)
- beql 1b # not yet done, continue checking
- subl2 r0,r3
- mnegb (r3),r0 # r0 = '\0' - *s2
- cvtbl r0,r0
- ret
-4:
- subl2 r0,r5 # check for null in matching string
- subl2 r5,r1
- locc $0,r5,(r1)
- bneq 5f
- subb3 (r3),(r1),r0 # r0 = *s1 - *s2
- cvtbl r0,r0
- ret
-5:
- clrl r0 # both the same to null
- ret
diff --git a/sysdeps/vax/strncpy.s b/sysdeps/vax/strncpy.s
deleted file mode 100644
index ade70e9dca..0000000000
--- a/sysdeps/vax/strncpy.s
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Copyright (c) 1983 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)strncpy.s 5.6 (Berkeley) 6/1/90"
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * Copy string s2 over top of string s1.
- * Truncate or null-pad to n bytes.
- *
- * char *
- * strncpy(s1, s2, n)
- * char *s1, *s2;
- */
-#include "DEFS.h"
-
-ENTRY(strncpy, R6)
- movl 12(ap),r6 # r6 = n
- bleq done # n <= 0
- movl 4(ap),r3 # r3 = s1
- movl 8(ap),r1 # r1 = s2
-1:
- movzwl $65535,r2 # r2 = bytes in first chunk
- cmpl r6,r2 # r2 = min(bytes in chunk, n);
- jgeq 2f
- movl r6,r2
-2:
- subl2 r2,r6 # update n
- locc $0,r2,(r1) # '\0' found?
- jneq 3f
- subl2 r2,r1 # back up pointer updated by locc
- movc3 r2,(r1),(r3) # copy in next piece
- tstl r6 # run out of space?
- jneq 1b
- jbr done
-3: # copy up to '\0' logic
- addl2 r0,r6 # r6 = number of null-pad bytes
- subl2 r0,r2 # r2 = number of bytes to move
- subl2 r2,r1 # back up pointer updated by locc
- movc3 r2,(r1),(r3) # copy in last piece
-4: # null-pad logic
- movzwl $65535,r2 # r2 = bytes in first chunk
- cmpl r6,r2 # r2 = min(bytes in chunk, n);
- jgeq 5f
- movl r6,r2
-5:
- subl2 r2,r6 # update n
- movc5 $0,(r3),$0,r2,(r3)# pad with '\0's
- tstl r6 # finished padding?
- jneq 4b
-done:
- movl 4(ap),r0 # return s1
- ret
diff --git a/sysdeps/vax/strpbrk.s b/sysdeps/vax/strpbrk.s
deleted file mode 100644
index 4a0e541719..0000000000
--- a/sysdeps/vax/strpbrk.s
+++ /dev/null
@@ -1,64 +0,0 @@
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)strpbrk.s 5.1 (Berkeley) 5/15/90"
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * Find in s1 the first occurrence of any character from s2.
- * If there are none, return NULL.
- *
- * char *
- * strpbrk(s1, s2)
- * const char *s1, *s2;
- */
-#include "DEFS.h"
-
-ENTRY(strpbrk, 0)
- subl2 $32,sp /* make 256 bit table */
- movc5 $0,(sp),$0,$32,(sp)
- movq 4(ap),r0 /* r0 = s1, r1 = s2 */
-
- /* turn on bit for each character in s2, including '\0' */
-1:
- movzbl (r1)+,r2
- bbss r2,(sp),1b
- bneq 1b
-
- /* look for a character that is in s2 */
-2:
- movzbl (r0)+,r2 /* c = *s++ */
- bbc r2,(sp),2b /* loop until c is in table */
- beql 3f /* if c==0, go return NULL */
- decl r0 /* s-- */
- ret
-3:
- clrl r0
- ret
diff --git a/sysdeps/vax/strrchr.s b/sysdeps/vax/strrchr.s
deleted file mode 100644
index b0e482c9fa..0000000000
--- a/sysdeps/vax/strrchr.s
+++ /dev/null
@@ -1,112 +0,0 @@
-/*
- * Copyright (c) 1988 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)strrchr.s 5.4 (Berkeley) 6/1/90"
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * Find the last occurrence of c in the string cp.
- * Return pointer to match or null pointer.
- *
- * char *
- * strrchr(cp, c)
- * char *cp, c;
- */
-#include "DEFS.h"
-
- .lcomm tbl,256
-
-ENTRY(strrchr, 0)
- movzwl $65535,r4 /* handy 65535 */
- movq 4(ap),r1 /* r1 = cp; r2 = c */
- movzbl r2,r2
- beql Lzero /* special case for c == '\0' */
-
- clrl r5 /* r5 = pointer to last match */
-
-/*
- * Fancy scanc version. Alas, it is not reentrant.
- */
- movab tbl,r3 /* r3 = address of table */
- bbss $0,(r3),Lreent /* ensure not reentering */
- movab (r3)[r2],r4
- incb (r4) /* mark both '\0' and c */
-0:
- scanc $65535,(r1),(r3),$1 /* look for c or '\0' */
- beql 0b /* keep looking */
- tstb (r1)
- beql 1f /* done if '\0' */
- movab (r1)+,r5 /* save most recently found, and skip over it */
- jbr 0b /* keep looking */
-1:
- movl r5,r0 /* return last found (if any) */
- clrb (r4) /* clean up table */
- clrb (r3)
- ret
-
-/*
- * Special case for \0.
- */
-Lzero:
- locc $0,r4,(r1) /* just find end of string */
- beql Lzero /* still looking */
- movl r1,r0 /* found it */
- ret
-
-/*
- * Slower reentrant version is two two-step searches. The first
- * phase runs until we know where the string ends; it locates any
- * occurrences of c within a 65535-byte block. Once we have found
- * the end of the string, we find any further occurrences before
- * that location.
- */
-Lreent:
-0: /* first phase */
- movl r1,r3
- locc $0,r4,(r3) /* look for '\0' */
- bneq 1f
- locc r2,r4,(r3) /* continue phase 1 search for c */
- beql 0b
- movab (r1)+,r5 /* found c: save and increment pointer */
- brb 0b /* and continue */
-
-1: /* second phase */
- subl3 r3,r1,r0 /* length of short block */
- movl r3,r1
-2:
- locc r2,r0,(r1) /* look for c */
- beql 3f /* skip if not found */
- movab (r1)+,r5 /* save pointer as before */
- sobgtr r0,2b /* adjust count and loop */
-3:
- movl r5,r0 /* return stashed pointer */
- ret
-
-weak_alias (strrchr, rindex)
diff --git a/sysdeps/vax/strsep.s b/sysdeps/vax/strsep.s
deleted file mode 100644
index dcf2a7caaa..0000000000
--- a/sysdeps/vax/strsep.s
+++ /dev/null
@@ -1,81 +0,0 @@
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)strsep.s 5.1 (Berkeley) 5/15/90"
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * Get next word from string *stringp, where words are
- * strings separated by characters from delim.
- *
- * Writes NULs into the string at *stringp to end tokens.
- * On return, *stringp points past the last NUL written (if there might
- * be further tokens), or is NULL (if there are definitely no more tokens).
- *
- * If *stringp is NULL, strtoken returns NULL.
- *
- * char *
- * strtoken(stringp, delim)
- * register char **stringp;
- * register char const *delim;
- */
-#include "DEFS.h"
-
-ENTRY(strsep, 0)
- tstl *4(ap) /* if (*stringp == NULL) */
- bneq 0f
- clrl r0 # return (NULL);
- ret
-
-0:
- subl2 $32,sp /* make room for 256 bit table */
- movc5 $0,(sp),$0,$32,(sp)
- movq 4(ap),r1 /* r1 = stringp, r2 = delim */
-
- /* turn on bit for each character in s2, including '\0' */
-1:
- movzbl (r2)+,r0
- bbss r0,(sp),1b
- bneq 1b
-
- movl (r1),r3 /* r3 = s = *stringp */
- movl r3,r0 /* save return value */
-
- /* scan for delimiters */
-2:
- movzbl (r3)+,r2 /* c = *s++ */
- bbc r2,(sp),2b /* loop until c is in table */
- beql 3f
- clrb -1(r3) /* if c!='\0', s[-1] = 0 */
- movl r3,(r1) /* and *stringp = s */
- ret
-3:
- clrl (r1) /* else *stringp = NULL */
- ret
diff --git a/sysdeps/vax/strspn.s b/sysdeps/vax/strspn.s
deleted file mode 100644
index ca944828cd..0000000000
--- a/sysdeps/vax/strspn.s
+++ /dev/null
@@ -1,66 +0,0 @@
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)strspn.s 5.1 (Berkeley) 5/15/90"
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * Span the string s2 (skip characters that are in s2).
- * Return the number of characters in s1 that were skipped.
- *
- * size_t
- * strspn(s1, s2)
- * const char *s1, *s2;
- */
-#include "DEFS.h"
-
-ENTRY(strspn, 0)
- subl2 $32,sp /* make 256 bit table */
- movc5 $0,(sp),$0,$32,(sp)
- movq 4(ap),r1 /* r1 = s1, r2 = s2 */
-
- /* turn on bit for each character in s2, including '\0' */
-1:
- movzbl (r2)+,r0
- bbss r0,(sp),1b
- bneq 1b
-
- /* now clear bit for '\0' */
- /* (this is easier than avoiding setting it in the first place) */
- bicb2 $1,(sp) /* stop at '\0' */
- movl r1,r0 /* r0 = s (current pos in s1) */
-
- /* look for a character that is not in s2 */
-2:
- movzbl (r0)+,r2 /* c = *s++ */
- bbs r2,(sp),2b /* loop while c is in table */
- decl r0 /* s-- */
- subl2 r1,r0 /* r0 = s - s1 = count */
- ret
diff --git a/sysdeps/vax/strstr.s b/sysdeps/vax/strstr.s
deleted file mode 100644
index 0283a57dcf..0000000000
--- a/sysdeps/vax/strstr.s
+++ /dev/null
@@ -1,109 +0,0 @@
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
- .asciz "@(#)strstr.s 5.2 (Berkeley) 8/21/90"
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * Find the first occurrence of s2 as a substring in s1.
- * If s2 is empty, return s1.
- *
- * char *strstr(s1, s2)
- * const char *s1, *s2;
- */
-#include "DEFS.h"
-
-ENTRY(strstr, 0)
- movq 4(ap),r3 /* r3 = s1, r4 = s2 */
- movzwl $65535,r2 /* r2 = locc/matchc limit */
- locc $0,r2,(r4) /* find '\0' in s2 */
- beql 4f
- subl3 r4,r1,r5 /* r5 = strlen(s2) */
- beql 1f /* if r5 == 0, return s1 */
-
- /*
- * s2 is short enough to apply matchc.
- * If s1 is long, we have to do it in stages.
- */
-0: locc $0,r2,(r3) /* find '\0' in s1 */
- beql 3f
-
- /*
- * Both strings are `short'; we can use matchc directly.
- */
- subl3 r3,r1,r1 /* r1 = strlen(s1) */
- matchc r5,(r4),r1,(r3) /* find substring */
- bneq 2f
-
- /*
- * r3 points r5 bytes past match. Return the match.
- */
-1: subl3 r5,r3,r0 /* return (byte_past_match - strlen(s2)) */
- ret
-
- /*
- * There is no matching substring.
- */
-2: clrl r0 /* return NULL */
- ret
-
- /*
- * s1 is too long (> 65535 bytes) to apply matchc directly,
- * but s2 is short enough. Apply s2 to s1, then (if not
- * found yet) advancing s1 by (65536-strlen(s2)) bytes and
- * loop.
- */
-3: matchc r5,(r4),r2,(r3) /* search */
- beql 1b /* if found, go return it */
- decw r2 /* from 0 to 65535 */
- incl r3 /* already advanced 65535, now 65536 */
- subl2 r5,r3 /* ... minus strlen(s2) */
- brb 0b
-
- /*
- * s2 is too long (> 65535 bytes) to bother with matchc.
- */
-4: locc $0,r2,(r1) /* continue working on strlen(s2) */
- beql 4b
- subl3 r1,r4,r5 /* r5 = strlen(s2) */
- movb (r4)+,r2 /* r2 = *s2++ */
- decl r5 /* fix up length */
-5: movb (r3)+,r0 /* r0 = *s1++ */
- beql 2b /* if '\0', return NULL */
- cmpb r0,r2
- bneq 5b /* loop until first char found */
- pushr R5|R4|R3|R2 /* save c, s1, s2, n */
- pushr R5|R4|R3 /* strncmp(s1, s2, n) */
- calls $3,_strncmp
- popr R2|R3|R4|R5 /* restore */
- tstl r0
- bneq 5b /* loop until strncmp says rest same too */
- subl3 $1,r3,r0 /* return previous s1 */
- ret
diff --git a/sysdeps/vax/sub_n.s b/sysdeps/vax/sub_n.s
deleted file mode 100644
index 14ba343f96..0000000000
--- a/sysdeps/vax/sub_n.s
+++ /dev/null
@@ -1,48 +0,0 @@
-# VAX __mpn_sub_n -- Subtract two limb vectors of the same length > 0 and store
-# difference in a third limb vector.
-
-# Copyright (C) 1992, 1994 Free Software Foundation, Inc.
-
-# This file is part of the GNU MP Library.
-
-# The GNU MP Library is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or (at your
-# option) any later version.
-
-# The GNU MP Library is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-# License for more details.
-
-# You should have received a copy of the GNU Lesser General Public License
-# along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-# MA 02111-1307, USA.
-
-
-# INPUT PARAMETERS
-# res_ptr (sp + 4)
-# s1_ptr (sp + 8)
-# s2_ptr (sp + 12)
-# size (sp + 16)
-
-.text
- .align 1
-.globl ___mpn_sub_n
-___mpn_sub_n:
- .word 0x0
- movl 16(ap),r0
- movl 12(ap),r1
- movl 8(ap),r2
- movl 4(ap),r3
- subl2 r4,r4
-
-Loop:
- movl (r2)+,r4
- sbwc (r1)+,r4
- movl r4,(r3)+
- jsobgtr r0,Loop
-
- adwc r0,r0
- ret
diff --git a/sysdeps/vax/submul_1.s b/sysdeps/vax/submul_1.s
deleted file mode 100644
index 5ff8d016ce..0000000000
--- a/sysdeps/vax/submul_1.s
+++ /dev/null
@@ -1,126 +0,0 @@
-# VAX __mpn_submul_1 -- Multiply a limb vector with a limb and subtract
-# the result from a second limb vector.
-
-# Copyright (C) 1992, 1994 Free Software Foundation, Inc.
-
-# This file is part of the GNU MP Library.
-
-# The GNU MP Library is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or (at your
-# option) any later version.
-
-# The GNU MP Library is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-# License for more details.
-
-# You should have received a copy of the GNU Lesser General Public License
-# along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-# MA 02111-1307, USA.
-
-
-# INPUT PARAMETERS
-# res_ptr (sp + 4)
-# s1_ptr (sp + 8)
-# size (sp + 12)
-# s2_limb (sp + 16)
-
-.text
- .align 1
-.globl ___mpn_submul_1
-___mpn_submul_1:
- .word 0xfc0
- movl 12(ap),r4
- movl 8(ap),r8
- movl 4(ap),r9
- movl 16(ap),r6
- jlss s2_big
-
- clrl r3
- incl r4
- ashl $-1,r4,r7
- jlbc r4,L1
- clrl r11
-
-# Loop for S2_LIMB < 0x80000000
-Loop1: movl (r8)+,r1
- jlss L1n0
- emul r1,r6,$0,r2
- addl2 r11,r2
- adwc $0,r3
- subl2 r2,(r9)+
- adwc $0,r3
-L1: movl (r8)+,r1
- jlss L1n1
-L1p1: emul r1,r6,$0,r10
- addl2 r3,r10
- adwc $0,r11
- subl2 r10,(r9)+
- adwc $0,r11
-
- jsobgtr r7,Loop1
- movl r11,r0
- ret
-
-L1n0: emul r1,r6,$0,r2
- addl2 r11,r2
- adwc r6,r3
- subl2 r2,(r9)+
- adwc $0,r3
- movl (r8)+,r1
- jgeq L1p1
-L1n1: emul r1,r6,$0,r10
- addl2 r3,r10
- adwc r6,r11
- subl2 r10,(r9)+
- adwc $0,r11
-
- jsobgtr r7,Loop1
- movl r11,r0
- ret
-
-
-s2_big: clrl r3
- incl r4
- ashl $-1,r4,r7
- jlbc r4,L2
- clrl r11
-
-# Loop for S2_LIMB >= 0x80000000
-Loop2: movl (r8)+,r1
- jlss L2n0
- emul r1,r6,$0,r2
- addl2 r11,r2
- adwc r1,r3
- subl2 r2,(r9)+
- adwc $0,r3
-L2: movl (r8)+,r1
- jlss L2n1
-L2p1: emul r1,r6,$0,r10
- addl2 r3,r10
- adwc r1,r11
- subl2 r10,(r9)+
- adwc $0,r11
-
- jsobgtr r7,Loop2
- movl r11,r0
- ret
-
-L2n0: emul r1,r6,$0,r2
- addl2 r11,r2
- adwc r6,r3
- subl2 r2,(r9)+
- adwc r1,r3
- movl (r8)+,r1
- jgeq L2p1
-L2n1: emul r1,r6,$0,r10
- addl2 r3,r10
- adwc r6,r11
- subl2 r10,(r9)+
- adwc r1,r11
-
- jsobgtr r7,Loop2
- movl r11,r0
- ret
diff --git a/sysdeps/z8000/add_n.s b/sysdeps/z8000/add_n.s
deleted file mode 100644
index 4d290265a5..0000000000
--- a/sysdeps/z8000/add_n.s
+++ /dev/null
@@ -1,53 +0,0 @@
-! Z8000 __mpn_add_n -- Add two limb vectors of equal, non-zero length.
-
-! Copyright (C) 1993, 1994 Free Software Foundation, Inc.
-
-! This file is part of the GNU MP Library.
-
-! The GNU MP Library is free software; you can redistribute it and/or modify
-! it under the terms of the GNU Lesser General Public License as published by
-! the Free Software Foundation; either version 2.1 of the License, or (at your
-! option) any later version.
-
-! The GNU MP Library is distributed in the hope that it will be useful, but
-! WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-! or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-! License for more details.
-
-! You should have received a copy of the GNU Lesser General Public License
-! along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-! MA 02111-1307, USA.
-
-
-! INPUT PARAMETERS
-! res_ptr r7
-! s1_ptr r6
-! s2_ptr r5
-! size r4
-
-! If we are really crazy, we can use push to write a few result words
-! backwards, using push just because it is faster than reg+disp. We'd
-! then add 2x the number of words written to r7...
-
- unseg
- .text
- even
- global ___mpn_add_n
-___mpn_add_n:
- pop r0,@r6
- pop r1,@r5
- add r0,r1
- ld @r7,r0
- dec r4
- jr eq,Lend
-Loop: pop r0,@r6
- pop r1,@r5
- adc r0,r1
- inc r7,#2
- ld @r7,r0
- dec r4
- jr ne,Loop
-Lend: ld r2,r4 ! use 0 already in r4
- adc r2,r2
- ret t
diff --git a/sysdeps/z8000/gmp-mparam.h b/sysdeps/z8000/gmp-mparam.h
deleted file mode 100644
index 4216df673c..0000000000
--- a/sysdeps/z8000/gmp-mparam.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/* gmp-mparam.h -- Compiler/machine parameter header file.
-
-Copyright (C) 1991, 1993, 1994 Free Software Foundation, Inc.
-
-This file is part of the GNU MP Library.
-
-The GNU MP Library is free software; you can redistribute it and/or modify
-it under the terms of the GNU Lesser General Public License as published by
-the Free Software Foundation; either version 2.1 of the License, or (at your
-option) any later version.
-
-The GNU MP Library is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-License for more details.
-
-You should have received a copy of the GNU Lesser General Public License
-along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-MA 02111-1307, USA. */
-
-#define BITS_PER_MP_LIMB 16
-#define BYTES_PER_MP_LIMB 2
-#define BITS_PER_LONGINT 32
-#define BITS_PER_INT 16
-#define BITS_PER_SHORTINT 16
-#define BITS_PER_CHAR 8
diff --git a/sysdeps/z8000/mul_1.s b/sysdeps/z8000/mul_1.s
deleted file mode 100644
index e449dfacb0..0000000000
--- a/sysdeps/z8000/mul_1.s
+++ /dev/null
@@ -1,68 +0,0 @@
-! Z8000 __mpn_mul_1 -- Multiply a limb vector with a limb and store
-! the result in a second limb vector.
-
-! Copyright (C) 1993, 1994, 1995 Free Software Foundation, Inc.
-
-! This file is part of the GNU MP Library.
-
-! The GNU MP Library is free software; you can redistribute it and/or modify
-! it under the terms of the GNU Lesser General Public License as published by
-! the Free Software Foundation; either version 2.1 of the License, or (at your
-! option) any later version.
-
-! The GNU MP Library is distributed in the hope that it will be useful, but
-! WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-! or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-! License for more details.
-
-! You should have received a copy of the GNU Lesser General Public License
-! along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-! MA 02111-1307, USA.
-
-
-! INPUT PARAMETERS
-! res_ptr r7
-! s1_ptr r6
-! size r5
-! s2_limb r4
-
- unseg
- .text
- even
- global ___mpn_mul_1
-___mpn_mul_1:
- sub r2,r2 ! zero carry limb
- and r4,r4
- jr mi,Lneg
-
-Lpos: pop r1,@r6
- ld r9,r1
- mult rr8,r4
- and r1,r1 ! shift msb of loaded limb into cy
- jr mi,Lp ! branch if loaded limb's msb is set
- add r8,r4 ! hi_limb += sign_comp2
-Lp: add r9,r2 ! lo_limb += cy_limb
- xor r2,r2
- adc r2,r8
- ld @r7,r9
- inc r7,#2
- dec r5
- jr ne,Lpos
- ret t
-
-Lneg: pop r1,@r6
- ld r9,r1
- mult rr8,r4
- add r8,r1 ! hi_limb += sign_comp1
- and r1,r1
- jr mi,Ln
- add r8,r4 ! hi_limb += sign_comp2
-Ln: add r9,r2 ! lo_limb += cy_limb
- xor r2,r2
- adc r2,r8
- ld @r7,r9
- inc r7,#2
- dec r5
- jr ne,Lneg
- ret t
diff --git a/sysdeps/z8000/sub_n.s b/sysdeps/z8000/sub_n.s
deleted file mode 100644
index c0787755c6..0000000000
--- a/sysdeps/z8000/sub_n.s
+++ /dev/null
@@ -1,54 +0,0 @@
-! Z8000 __mpn_sub_n -- Subtract two limb vectors of the same length > 0 and
-! store difference in a third limb vector.
-
-! Copyright (C) 1993, 1994 Free Software Foundation, Inc.
-
-! This file is part of the GNU MP Library.
-
-! The GNU MP Library is free software; you can redistribute it and/or modify
-! it under the terms of the GNU Lesser General Public License as published by
-! the Free Software Foundation; either version 2.1 of the License, or (at your
-! option) any later version.
-
-! The GNU MP Library is distributed in the hope that it will be useful, but
-! WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-! or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-! License for more details.
-
-! You should have received a copy of the GNU Lesser General Public License
-! along with the GNU MP Library; see the file COPYING.LIB. If not, write to
-! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-! MA 02111-1307, USA.
-
-
-! INPUT PARAMETERS
-! res_ptr r7
-! s1_ptr r6
-! s2_ptr r5
-! size r4
-
-! If we are really crazy, we can use push to write a few result words
-! backwards, using push just because it is faster than reg+disp. We'd
-! then add 2x the number of words written to r7...
-
- unseg
- .text
- even
- global ___mpn_sub_n
-___mpn_sub_n:
- pop r0,@r6
- pop r1,@r5
- sub r0,r1
- ld @r7,r0
- dec r4
- jr eq,Lend
-Loop: pop r0,@r6
- pop r1,@r5
- sbc r0,r1
- inc r7,#2
- ld @r7,r0
- dec r4
- jr ne,Loop
-Lend: ld r2,r4 ! use 0 already in r4
- adc r2,r2
- ret t
diff --git a/time/Makefile b/time/Makefile
index acd82d855e..cb6ce4413d 100644
--- a/time/Makefile
+++ b/time/Makefile
@@ -1,4 +1,4 @@
-# Copyright (C) 1991-2002, 2003 Free Software Foundation, Inc.
+# Copyright (C) 1991-2002,2003,2004 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
# The GNU C Library is free software; you can redistribute it and/or
@@ -34,7 +34,7 @@ aux := era alt_digit lc-time-cleanup
distribute := datemsk
tests := test_time clocktest tst-posixtz tst-strptime tst_wcsftime \
- tst-getdate tst-mktime tst-ftime_l tst-strftime
+ tst-getdate tst-mktime tst-mktime2 tst-ftime_l tst-strftime
include ../Rules
diff --git a/time/mktime.c b/time/mktime.c
index ea9778c872..72b20128a3 100644
--- a/time/mktime.c
+++ b/time/mktime.c
@@ -37,11 +37,11 @@
#include <time.h>
#include <limits.h>
-#include <string.h> /* For string function builtin redirect. */
#if DEBUG
# include <stdio.h>
# include <stdlib.h>
+# include <string.h>
/* Make it work even if the system's libc has its own mktime routine. */
# define mktime my_mktime
#endif /* DEBUG */
@@ -60,6 +60,7 @@
#ifndef TIME_T_MAX
# define TIME_T_MAX TYPE_MAXIMUM (time_t)
#endif
+#define TIME_T_MIDPOINT (((TIME_T_MIN + TIME_T_MAX) >> 1) + 1)
/* Verify a requirement at compile-time (unlike assert, which is runtime). */
#define verify(name, assertion) struct name { char a[(assertion) ? 1 : -1]; }
@@ -75,12 +76,17 @@ verify (right_shift_propagates_sign, -1 >> 1 == -1);
#define TM_YEAR_BASE 1900
verify (base_year_is_a_multiple_of_100, TM_YEAR_BASE % 100 == 0);
-#ifndef __isleap
-/* Nonzero if YEAR is a leap year (every 4 years,
- except every 100th isn't, and every 400th is). */
-# define __isleap(year) \
- ((year) % 4 == 0 && ((year) % 100 != 0 || (year) % 400 == 0))
-#endif
+/* Return 1 if YEAR + TM_YEAR_BASE is a leap year. */
+static inline int
+leapyear (long int year)
+{
+ /* Don't add YEAR to TM_YEAR_BASE, as that might overflow.
+ Also, work even if YEAR is negative. */
+ return
+ ((year & 3) == 0
+ && (year % 100 != 0
+ || ((year / 100) & 3) == (- (TM_YEAR_BASE / 100) & 3)));
+}
/* How many days come before each month (0-12). */
#ifndef _LIBC
@@ -103,44 +109,77 @@ const unsigned short int __mon_yday[2][13] =
# include "time_r.h"
# undef __localtime_r
# define __localtime_r localtime_r
+# define __mktime_internal mktime_internal
#endif
+/* Return an integer value measuring (YEAR1-YDAY1 HOUR1:MIN1:SEC1) -
+ (YEAR0-YDAY0 HOUR0:MIN0:SEC0) in seconds, assuming that the clocks
+ were not adjusted between the time stamps.
+
+ The YEAR values uses the same numbering as TP->tm_year. Values
+ need not be in the usual range. However, YEAR1 must not be less
+ than 2 * INT_MIN or greater than 2 * INT_MAX.
+
+ The result may overflow. It is the caller's responsibility to
+ detect overflow. */
+
+static inline time_t
+ydhms_diff (long int year1, long int yday1, int hour1, int min1, int sec1,
+ int year0, int yday0, int hour0, int min0, int sec0)
+{
+ verify (C99_integer_division, -1 / 2 == 0);
+ verify (long_int_year_and_yday_are_wide_enough,
+ INT_MAX <= LONG_MAX / 2 || TIME_T_MAX <= UINT_MAX);
+
+ /* Compute intervening leap days correctly even if year is negative.
+ Take care to avoid integer overflow here. */
+ int a4 = (year1 >> 2) + (TM_YEAR_BASE >> 2) - ! (year1 & 3);
+ int b4 = (year0 >> 2) + (TM_YEAR_BASE >> 2) - ! (year0 & 3);
+ int a100 = a4 / 25 - (a4 % 25 < 0);
+ int b100 = b4 / 25 - (b4 % 25 < 0);
+ int a400 = a100 >> 2;
+ int b400 = b100 >> 2;
+ int intervening_leap_days = (a4 - b4) - (a100 - b100) + (a400 - b400);
+
+ /* Compute the desired time in time_t precision. Overflow might
+ occur here. */
+ time_t tyear1 = year1;
+ time_t years = tyear1 - year0;
+ time_t days = 365 * years + yday1 - yday0 + intervening_leap_days;
+ time_t hours = 24 * days + hour1 - hour0;
+ time_t minutes = 60 * hours + min1 - min0;
+ time_t seconds = 60 * minutes + sec1 - sec0;
+ return seconds;
+}
+
-/* Yield the difference between (YEAR-YDAY HOUR:MIN:SEC) and (*TP),
- measured in seconds, ignoring leap seconds.
- YEAR uses the same numbering as TM->tm_year.
- All values are in range, except possibly YEAR.
- If TP is null, return a nonzero value.
- If overflow occurs, yield the low order bits of the correct answer. */
+/* Return a time_t value corresponding to (YEAR-YDAY HOUR:MIN:SEC),
+ assuming that *T corresponds to *TP and that no clock adjustments
+ occurred between *TP and the desired time.
+ If TP is null, return a value not equal to *T; this avoids false matches.
+ If overflow occurs, yield the minimal or maximal value, except do not
+ yield a value equal to *T. */
static time_t
-ydhms_tm_diff (int year, int yday, int hour, int min, int sec,
- const struct tm *tp)
+guess_time_tm (long int year, long int yday, int hour, int min, int sec,
+ const time_t *t, const struct tm *tp)
{
- if (!tp)
- return 1;
- else
+ if (tp)
{
- verify (C99_integer_division, -1 / 2 == 0);
-
- /* Compute intervening leap days correctly even if year is negative.
- Take care to avoid int overflow. time_t overflow is OK, since
- only the low order bits of the correct time_t answer are needed.
- Don't convert to time_t until after all divisions are done, since
- time_t might be unsigned. */
- int a4 = (year >> 2) + (TM_YEAR_BASE >> 2) - ! (year & 3);
- int b4 = (tp->tm_year >> 2) + (TM_YEAR_BASE >> 2) - ! (tp->tm_year & 3);
- int a100 = a4 / 25 - (a4 % 25 < 0);
- int b100 = b4 / 25 - (b4 % 25 < 0);
- int a400 = a100 >> 2;
- int b400 = b100 >> 2;
- int intervening_leap_days = (a4 - b4) - (a100 - b100) + (a400 - b400);
- time_t years = year - (time_t) tp->tm_year;
- time_t days = (365 * years + intervening_leap_days
- + (yday - tp->tm_yday));
- return (60 * (60 * (24 * days + (hour - tp->tm_hour))
- + (min - tp->tm_min))
- + (sec - tp->tm_sec));
+ time_t d = ydhms_diff (year, yday, hour, min, sec,
+ tp->tm_year, tp->tm_yday,
+ tp->tm_hour, tp->tm_min, tp->tm_sec);
+ time_t t1 = *t + d;
+ if ((t1 < *t) == (TYPE_SIGNED (time_t) ? d < 0 : TIME_T_MAX / 2 < d))
+ return t1;
}
+
+ /* Overflow occurred one way or another. Return the nearest result
+ that is actually in range, except don't report a zero difference
+ if the actual difference is nonzero, as that would cause a false
+ match. */
+ return (*t < TIME_T_MIDPOINT
+ ? TIME_T_MIN + (*t == TIME_T_MIN)
+ : TIME_T_MAX - (*t == TIME_T_MAX));
}
/* Use CONVERT to convert *T to a broken down time in *TP.
@@ -193,13 +232,14 @@ ranged_convert (struct tm *(*convert) (const time_t *, struct tm *),
the monotonic and mostly-unit-linear conversion function CONVERT.
Use *OFFSET to keep track of a guess at the offset of the result,
compared to what the result would be for UTC without leap seconds.
- If *OFFSET's guess is correct, only one CONVERT call is needed. */
+ If *OFFSET's guess is correct, only one CONVERT call is needed.
+ This function is external because it is used also by timegm.c. */
time_t
__mktime_internal (struct tm *tp,
struct tm *(*convert) (const time_t *, struct tm *),
time_t *offset)
{
- time_t t, dt, t0, t1, t2;
+ time_t t, gt, t0, t1, t2;
struct tm tm;
/* The maximum number of probes (calls to CONVERT) should be enough
@@ -225,7 +265,8 @@ __mktime_internal (struct tm *tp,
int mon_remainder = mon % 12;
int negative_mon_remainder = mon_remainder < 0;
int mon_years = mon / 12 - negative_mon_remainder;
- int year = year_requested + mon_years;
+ long int lyear_requested = year_requested;
+ long int year = lyear_requested + mon_years;
/* The other values need not be in range:
the remaining code handles minor overflows correctly,
@@ -234,38 +275,95 @@ __mktime_internal (struct tm *tp,
/* Calculate day of year from year, month, and day of month.
The result need not be in range. */
- int yday = ((__mon_yday[__isleap (year + TM_YEAR_BASE)]
- [mon_remainder + 12 * negative_mon_remainder])
- + mday - 1);
+ int mon_yday = ((__mon_yday[leapyear (year)]
+ [mon_remainder + 12 * negative_mon_remainder])
+ - 1);
+ long int lmday = mday;
+ long int yday = mon_yday + lmday;
+
+ time_t guessed_offset = *offset;
int sec_requested = sec;
- /* Only years after 1970 are defined.
- If year is 69, it might still be representable due to
- timezone differences. */
- if (year < 69)
- return -1;
-
-#if LEAP_SECONDS_POSSIBLE
- /* Handle out-of-range seconds specially,
- since ydhms_tm_diff assumes every minute has 60 seconds. */
- if (sec < 0)
- sec = 0;
- if (59 < sec)
- sec = 59;
-#endif
+ if (LEAP_SECONDS_POSSIBLE)
+ {
+ /* Handle out-of-range seconds specially,
+ since ydhms_tm_diff assumes every minute has 60 seconds. */
+ if (sec < 0)
+ sec = 0;
+ if (59 < sec)
+ sec = 59;
+ }
+
+ /* Invert CONVERT by probing. First assume the same offset as last
+ time. */
+
+ t0 = ydhms_diff (year, yday, hour, min, sec,
+ EPOCH_YEAR - TM_YEAR_BASE, 0, 0, 0, - guessed_offset);
- /* Invert CONVERT by probing. First assume the same offset as last time.
- Then repeatedly use the error to improve the guess. */
+ if (TIME_T_MAX / INT_MAX / 366 / 24 / 60 / 60 < 3)
+ {
+ /* time_t isn't large enough to rule out overflows, so check
+ for major overflows. A gross check suffices, since if t0
+ has overflowed, it is off by a multiple of TIME_T_MAX -
+ TIME_T_MIN + 1. So ignore any component of the difference
+ that is bounded by a small value. */
+
+ /* Approximate log base 2 of the number of time units per
+ biennium. A biennium is 2 years; use this unit instead of
+ years to avoid integer overflow. For example, 2 average
+ Gregorian years are 2 * 365.2425 * 24 * 60 * 60 seconds,
+ which is 63113904 seconds, and rint (log2 (63113904)) is
+ 26. */
+ int ALOG2_SECONDS_PER_BIENNIUM = 26;
+ int ALOG2_MINUTES_PER_BIENNIUM = 20;
+ int ALOG2_HOURS_PER_BIENNIUM = 14;
+ int ALOG2_DAYS_PER_BIENNIUM = 10;
+ int LOG2_YEARS_PER_BIENNIUM = 1;
+
+ int approx_requested_biennia =
+ ((year_requested >> LOG2_YEARS_PER_BIENNIUM)
+ - ((EPOCH_YEAR - TM_YEAR_BASE) >> LOG2_YEARS_PER_BIENNIUM)
+ + (mday >> ALOG2_DAYS_PER_BIENNIUM)
+ + (hour >> ALOG2_HOURS_PER_BIENNIUM)
+ + (min >> ALOG2_MINUTES_PER_BIENNIUM)
+ + (LEAP_SECONDS_POSSIBLE ? 0 : sec >> ALOG2_SECONDS_PER_BIENNIUM));
+
+ int approx_biennia = t0 >> ALOG2_SECONDS_PER_BIENNIUM;
+ int diff = approx_biennia - approx_requested_biennia;
+ int abs_diff = diff < 0 ? - diff : diff;
+
+ /* IRIX 4.0.5 cc miscaculates TIME_T_MIN / 3: it erroneously
+ gives a positive value of 715827882. Setting a variable
+ first then doing math on it seems to work.
+ (ghazi@caip.rutgers.edu) */
+ time_t time_t_max = TIME_T_MAX;
+ time_t time_t_min = TIME_T_MIN;
+ time_t overflow_threshold =
+ (time_t_max / 3 - time_t_min / 3) >> ALOG2_SECONDS_PER_BIENNIUM;
+
+ if (overflow_threshold < abs_diff)
+ {
+ /* Overflow occurred. Try repairing it; this might work if
+ the time zone offset is enough to undo the overflow. */
+ time_t repaired_t0 = -1 - t0;
+ approx_biennia = repaired_t0 >> ALOG2_SECONDS_PER_BIENNIUM;
+ diff = approx_biennia - approx_requested_biennia;
+ abs_diff = diff < 0 ? - diff : diff;
+ if (overflow_threshold < abs_diff)
+ return -1;
+ guessed_offset += repaired_t0 - t0;
+ t0 = repaired_t0;
+ }
+ }
- tm.tm_year = EPOCH_YEAR - TM_YEAR_BASE;
- tm.tm_yday = tm.tm_hour = tm.tm_min = tm.tm_sec = 0;
- t0 = ydhms_tm_diff (year, yday, hour, min, sec, &tm);
+ /* Repeatedly use the error to improve the guess. */
- for (t = t1 = t2 = t0 + *offset, dst2 = 0;
- (dt = ydhms_tm_diff (year, yday, hour, min, sec,
- ranged_convert (convert, &t, &tm)));
- t1 = t2, t2 = t, t += dt, dst2 = tm.tm_isdst != 0)
+ for (t = t1 = t2 = t0, dst2 = 0;
+ (gt = guess_time_tm (year, yday, hour, min, sec, &t,
+ ranged_convert (convert, &t, &tm)),
+ t != gt);
+ t1 = t2, t2 = t, t = gt, dst2 = tm.tm_isdst != 0)
if (t == t1 && t != t2
&& (tm.tm_isdst < 0
|| (isdst < 0
@@ -273,91 +371,83 @@ __mktime_internal (struct tm *tp,
: (isdst != 0) != (tm.tm_isdst != 0))))
/* We can't possibly find a match, as we are oscillating
between two values. The requested time probably falls
- within a spring-forward gap of size DT. Follow the common
- practice in this case, which is to return a time that is DT
+ within a spring-forward gap of size GT - T. Follow the common
+ practice in this case, which is to return a time that is GT - T
away from the requested time, preferring a time whose
tm_isdst differs from the requested value. (If no tm_isdst
was requested and only one of the two values has a nonzero
tm_isdst, prefer that value.) In practice, this is more
useful than returning -1. */
- break;
+ goto offset_found;
else if (--remaining_probes == 0)
return -1;
- /* If we have a match, check whether tm.tm_isdst has the requested
+ /* We have a match. Check whether tm.tm_isdst has the requested
value, if any. */
- if (dt == 0 && isdst != tm.tm_isdst && 0 <= isdst && 0 <= tm.tm_isdst)
+ if (isdst != tm.tm_isdst && 0 <= isdst && 0 <= tm.tm_isdst)
{
/* tm.tm_isdst has the wrong value. Look for a neighboring
time with the right value, and use its UTC offset.
- Heuristic: probe the previous three calendar quarters (approximately),
- looking for the desired isdst. This isn't perfect,
- but it's good enough in practice. */
- int quarter = 7889238; /* seconds per average 1/4 Gregorian year */
- int i;
-
- /* If we're too close to the time_t limit, look in future quarters. */
- if (t < TIME_T_MIN + 3 * quarter)
- quarter = -quarter;
- for (i = 1; i <= 3; i++)
- {
- time_t ot = t - i * quarter;
- struct tm otm;
- ranged_convert (convert, &ot, &otm);
- if (otm.tm_isdst == isdst)
- {
- /* We found the desired tm_isdst.
- Extrapolate back to the desired time. */
- t = ot + ydhms_tm_diff (year, yday, hour, min, sec, &otm);
- ranged_convert (convert, &t, &tm);
- break;
- }
- }
+ Heuristic: probe the adjacent timestamps in both directions,
+ looking for the desired isdst. This should work for all real
+ time zone histories in the tz database. */
+
+ /* Distance between probes when looking for a DST boundary. In
+ tzdata2003a, the shortest period of DST is 601200 seconds
+ (e.g., America/Recife starting 2000-10-08 01:00), and the
+ shortest period of non-DST surrounded by DST is 694800
+ seconds (Africa/Tunis starting 1943-04-17 01:00). Use the
+ minimum of these two values, so we don't miss these short
+ periods when probing. */
+ int stride = 601200;
+
+ /* The longest period of DST in tzdata2003a is 536454000 seconds
+ (e.g., America/Jujuy starting 1946-10-01 01:00). The longest
+ period of non-DST is much longer, but it makes no real sense
+ to search for more than a year of non-DST, so use the DST
+ max. */
+ int duration_max = 536454000;
+
+ /* Search in both directions, so the maximum distance is half
+ the duration; add the stride to avoid off-by-1 problems. */
+ int delta_bound = duration_max / 2 + stride;
+
+ int delta, direction;
+
+ for (delta = stride; delta < delta_bound; delta += stride)
+ for (direction = -1; direction <= 1; direction += 2)
+ {
+ time_t ot = t + delta * direction;
+ if ((ot < t) == (direction < 0))
+ {
+ struct tm otm;
+ ranged_convert (convert, &ot, &otm);
+ if (otm.tm_isdst == isdst)
+ {
+ /* We found the desired tm_isdst.
+ Extrapolate back to the desired time. */
+ t = guess_time_tm (year, yday, hour, min, sec, &ot, &otm);
+ ranged_convert (convert, &t, &tm);
+ goto offset_found;
+ }
+ }
+ }
}
- *offset = t - t0;
+ offset_found:
+ *offset = guessed_offset + t - t0;
-#if LEAP_SECONDS_POSSIBLE
- if (sec_requested != tm.tm_sec)
+ if (LEAP_SECONDS_POSSIBLE && sec_requested != tm.tm_sec)
{
/* Adjust time to reflect the tm_sec requested, not the normalized value.
Also, repair any damage from a false match due to a leap second. */
- t += sec_requested - sec + (sec == 0 && tm.tm_sec == 60);
- if (! (*convert) (&t, &tm))
- return -1;
- }
-#endif
-
- if (TIME_T_MAX / INT_MAX / 366 / 24 / 60 / 60 < 3)
- {
- /* time_t isn't large enough to rule out overflows in ydhms_tm_diff,
- so check for major overflows. A gross check suffices,
- since if t has overflowed, it is off by a multiple of
- TIME_T_MAX - TIME_T_MIN + 1. So ignore any component of
- the difference that is bounded by a small value. */
-
- double dyear = (double) year_requested + mon_years - tm.tm_year;
- double dday = 366 * dyear + mday;
- double dsec = 60 * (60 * (24 * dday + hour) + min) + sec_requested;
-
- /* On Irix4.0.5 cc, dividing TIME_T_MIN by 3 does not produce
- correct results, ie., it erroneously gives a positive value
- of 715827882. Setting a variable first then doing math on it
- seems to work. (ghazi@caip.rutgers.edu) */
-
- const time_t time_t_max = TIME_T_MAX;
- const time_t time_t_min = TIME_T_MIN;
-
- if (time_t_max / 3 - time_t_min / 3 < (dsec < 0 ? - dsec : dsec))
- return -1;
- }
-
- if (year == 69)
- {
- /* If year was 69, need to check whether the time was representable
- or not. */
- if (t < 0 || t > 2 * 24 * 60 * 60)
+ int sec_adjustment = (sec == 0 && tm.tm_sec == 60) - sec;
+ t1 = t + sec_requested;
+ t2 = t1 + sec_adjustment;
+ if (((t1 < t) != (sec_requested < 0))
+ | ((t2 < t1) != (sec_adjustment < 0))
+ | ! (*convert) (&t, &tm))
return -1;
}
@@ -366,6 +456,10 @@ __mktime_internal (struct tm *tp,
}
+/* FIXME: This should use a signed type wide enough to hold any UTC
+ offset in seconds. 'int' should be good enough for GNU code. We
+ can't fix this unilaterally though, as other modules invoke
+ __mktime_internal. */
static time_t localtime_offset;
/* Convert *TP to a time_t value. */
@@ -402,7 +496,6 @@ not_equal_tm (const struct tm *a, const struct tm *b)
| (a->tm_mday ^ b->tm_mday)
| (a->tm_mon ^ b->tm_mon)
| (a->tm_year ^ b->tm_year)
- | (a->tm_mday ^ b->tm_mday)
| (a->tm_yday ^ b->tm_yday)
| (a->tm_isdst ^ b->tm_isdst));
}
@@ -528,6 +621,6 @@ main (int argc, char **argv)
/*
Local Variables:
-compile-command: "gcc -DDEBUG -DHAVE_TIME_R_POSIX -Wall -W -O -g mktime.c -o mktime"
+compile-command: "gcc -DDEBUG -Wall -W -O -g mktime.c -o mktime"
End:
*/
diff --git a/time/tst-mktime.c b/time/tst-mktime.c
index 8bc7631461..416a85616c 100644
--- a/time/tst-mktime.c
+++ b/time/tst-mktime.c
@@ -55,9 +55,11 @@ main (void)
setenv ("TZ", "CET-1", 1);
t = mktime (&time_str);
- if (t != (time_t) -1)
+#define EVENING69_CET (EVENING69 - (5 - -1) * 60 * 60)
+ if (t != EVENING69_CET)
{
- printf ("mktime returned %ld, expected -1\n", (long) t);
+ printf ("mktime returned %ld, expected %ld\n",
+ (long) t, (long) EVENING69_CET);
result = 1;
}
else
diff --git a/time/tst-mktime2.c b/time/tst-mktime2.c
new file mode 100644
index 0000000000..fe7c370928
--- /dev/null
+++ b/time/tst-mktime2.c
@@ -0,0 +1,140 @@
+/* Test program from Paul Eggert and Tony Leneis. */
+#include <time.h>
+#include <stdlib.h>
+#include <unistd.h>
+
+static time_t time_t_max;
+static time_t time_t_min;
+
+/* Values we'll use to set the TZ environment variable. */
+static const char *tz_strings[] =
+ {
+ (const char *) 0, "GMT0", "JST-9",
+ "EST+3EDT+2,M10.1.0/00:00:00,M2.3.0/00:00:00"
+ };
+#define N_STRINGS ((int) (sizeof (tz_strings) / sizeof (tz_strings[0])))
+
+/* Fail if mktime fails to convert a date in the spring-forward gap.
+ Based on a problem report from Andreas Jaeger. */
+static void
+spring_forward_gap (void)
+{
+ /* glibc (up to about 1998-10-07) failed this test. */
+ struct tm tm;
+
+ /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0"
+ instead of "TZ=America/Vancouver" in order to detect the bug even
+ on systems that don't support the Olson extension, or don't have the
+ full zoneinfo tables installed. */
+ setenv ("TZ", "PST8PDT,M4.1.0,M10.5.0", 1);
+
+ tm.tm_year = 98;
+ tm.tm_mon = 3;
+ tm.tm_mday = 5;
+ tm.tm_hour = 2;
+ tm.tm_min = 0;
+ tm.tm_sec = 0;
+ tm.tm_isdst = -1;
+ if (mktime (&tm) == (time_t)-1)
+ exit (1);
+}
+
+static void
+mktime_test1 (time_t now)
+{
+ struct tm *lt = localtime (&now);
+ if (lt && mktime (lt) != now)
+ exit (2);
+}
+
+static void
+mktime_test (time_t now)
+{
+ mktime_test1 (now);
+ mktime_test1 ((time_t) (time_t_max - now));
+ mktime_test1 ((time_t) (time_t_min + now));
+}
+
+static void
+irix_6_4_bug (void)
+{
+ /* Based on code from Ariel Faigon. */
+ struct tm tm;
+ tm.tm_year = 96;
+ tm.tm_mon = 3;
+ tm.tm_mday = 0;
+ tm.tm_hour = 0;
+ tm.tm_min = 0;
+ tm.tm_sec = 0;
+ tm.tm_isdst = -1;
+ mktime (&tm);
+ if (tm.tm_mon != 2 || tm.tm_mday != 31)
+ exit (3);
+}
+
+static void
+bigtime_test (int j)
+{
+ struct tm tm;
+ time_t now;
+ tm.tm_year = tm.tm_mon = tm.tm_mday = tm.tm_hour = tm.tm_min = tm.tm_sec = j;
+ now = mktime (&tm);
+ if (now != (time_t) -1)
+ {
+ struct tm *lt = localtime (&now);
+ if (! (lt
+ && lt->tm_year == tm.tm_year
+ && lt->tm_mon == tm.tm_mon
+ && lt->tm_mday == tm.tm_mday
+ && lt->tm_hour == tm.tm_hour
+ && lt->tm_min == tm.tm_min
+ && lt->tm_sec == tm.tm_sec
+ && lt->tm_yday == tm.tm_yday
+ && lt->tm_wday == tm.tm_wday
+ && ((lt->tm_isdst < 0 ? -1 : 0 < lt->tm_isdst)
+ == (tm.tm_isdst < 0 ? -1 : 0 < tm.tm_isdst))))
+ exit (4);
+ }
+}
+
+static int
+do_test (void)
+{
+ time_t t, delta;
+ int i, j;
+
+ setenv ("TZ", "America/Sao_Paulo", 1);
+ /* This test makes some buggy mktime implementations loop.
+ Give up after 60 seconds; a mktime slower than that
+ isn't worth using anyway. */
+ alarm (60);
+
+ for (time_t_max = 1; 0 < time_t_max; time_t_max *= 2)
+ continue;
+ time_t_max--;
+ if ((time_t) -1 < 0)
+ for (time_t_min = -1; (time_t) (time_t_min * 2) < 0; time_t_min *= 2)
+ continue;
+ delta = time_t_max / 997; /* a suitable prime number */
+ for (i = 0; i < N_STRINGS; i++)
+ {
+ if (tz_strings[i])
+ setenv ("TZ", tz_strings[i], 1);
+
+ for (t = 0; t <= time_t_max - delta; t += delta)
+ mktime_test (t);
+ mktime_test ((time_t) 1);
+ mktime_test ((time_t) (60 * 60));
+ mktime_test ((time_t) (60 * 60 * 24));
+
+ for (j = 1; 0 < j; j *= 2)
+ bigtime_test (j);
+ bigtime_test (j - 1);
+ }
+ irix_6_4_bug ();
+ spring_forward_gap ();
+ return 0;
+}
+
+#define TEST_FUNCTION do_test ()
+#include "../test-skeleton.c"