From 8a4f583bb54baf8bfe83bfc1f0f8fa34316e8c09 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Wed, 5 Jun 2024 17:24:20 -0700 Subject: [PATCH 01/23] update glibc headers to 2.39 --- .../include/aarch64-linux-gnu/bits/fcntl.h | 2 +- .../include/aarch64-linux-gnu/bits/fenv.h | 2 +- .../include/aarch64-linux-gnu/bits/floatn.h | 2 +- .../include/aarch64-linux-gnu/bits/fp-fast.h | 2 +- .../include/aarch64-linux-gnu/bits/hwcap.h | 6 +- .../include/aarch64-linux-gnu/bits/link.h | 2 +- .../aarch64-linux-gnu/bits/long-double.h | 2 +- .../aarch64-linux-gnu/bits/math-vector.h | 112 ++- .../include/aarch64-linux-gnu/bits/mman.h | 2 +- .../include/aarch64-linux-gnu/bits/procfs.h | 2 +- .../bits/pthread_stack_min.h | 2 +- .../bits/pthreadtypes-arch.h | 2 +- .../include/aarch64-linux-gnu/bits/rseq.h | 2 +- .../aarch64-linux-gnu/bits/semaphore.h | 2 +- .../include/aarch64-linux-gnu/bits/setjmp.h | 2 +- .../include/aarch64-linux-gnu/bits/sigstack.h | 2 +- .../aarch64-linux-gnu/bits/struct_rwlock.h | 2 +- .../aarch64-linux-gnu/bits/struct_stat.h | 2 +- .../include/aarch64-linux-gnu/bits/timesize.h | 2 +- .../aarch64-linux-gnu/bits/typesizes.h | 2 +- .../include/aarch64-linux-gnu/bits/wordsize.h | 2 +- .../finclude/math-vector-fortran.h | 47 ++ .../include/aarch64-linux-gnu/fpu_control.h | 2 +- .../aarch64-linux-gnu/gnu/lib-names-lp64.h | 1 - lib/libc/include/aarch64-linux-gnu/ieee754.h | 2 +- lib/libc/include/aarch64-linux-gnu/sys/elf.h | 2 +- .../include/aarch64-linux-gnu/sys/ptrace.h | 16 +- .../include/aarch64-linux-gnu/sys/ucontext.h | 2 +- lib/libc/include/aarch64-linux-gnu/sys/user.h | 2 +- .../include/aarch64_be-linux-gnu/bits/fcntl.h | 2 +- .../include/aarch64_be-linux-gnu/bits/fenv.h | 2 +- .../aarch64_be-linux-gnu/bits/floatn.h | 2 +- .../aarch64_be-linux-gnu/bits/fp-fast.h | 2 +- .../include/aarch64_be-linux-gnu/bits/hwcap.h | 6 +- .../include/aarch64_be-linux-gnu/bits/link.h | 2 +- .../aarch64_be-linux-gnu/bits/long-double.h | 2 +- .../aarch64_be-linux-gnu/bits/math-vector.h | 112 ++- .../include/aarch64_be-linux-gnu/bits/mman.h | 2 +- .../aarch64_be-linux-gnu/bits/procfs.h | 2 +- .../bits/pthread_stack_min.h | 2 +- .../bits/pthreadtypes-arch.h | 2 +- .../include/aarch64_be-linux-gnu/bits/rseq.h | 2 +- .../aarch64_be-linux-gnu/bits/semaphore.h | 2 +- .../aarch64_be-linux-gnu/bits/setjmp.h | 2 +- .../aarch64_be-linux-gnu/bits/sigstack.h | 2 +- .../aarch64_be-linux-gnu/bits/struct_rwlock.h | 2 +- .../aarch64_be-linux-gnu/bits/struct_stat.h | 2 +- .../aarch64_be-linux-gnu/bits/timesize.h | 2 +- .../aarch64_be-linux-gnu/bits/typesizes.h | 2 +- .../aarch64_be-linux-gnu/bits/wordsize.h | 2 +- .../finclude/math-vector-fortran.h | 47 ++ .../aarch64_be-linux-gnu/fpu_control.h | 2 +- .../gnu/lib-names-lp64_be.h | 1 - .../include/aarch64_be-linux-gnu/ieee754.h | 2 +- .../include/aarch64_be-linux-gnu/sys/elf.h | 2 +- .../include/aarch64_be-linux-gnu/sys/ptrace.h | 16 +- .../aarch64_be-linux-gnu/sys/ucontext.h | 2 +- .../include/aarch64_be-linux-gnu/sys/user.h | 2 +- .../arm-linux-gnueabi/bits/dl_find_object.h | 2 +- .../include/arm-linux-gnueabi/bits/fcntl.h | 2 +- .../include/arm-linux-gnueabi/bits/fenv.h | 2 +- .../include/arm-linux-gnueabi/bits/floatn.h | 2 +- .../include/arm-linux-gnueabi/bits/hwcap.h | 2 +- .../include/arm-linux-gnueabi/bits/link.h | 2 +- .../arm-linux-gnueabi/bits/long-double.h | 2 +- .../arm-linux-gnueabi/bits/procfs-id.h | 2 +- .../include/arm-linux-gnueabi/bits/procfs.h | 2 +- .../include/arm-linux-gnueabi/bits/rseq.h | 2 +- .../include/arm-linux-gnueabi/bits/setjmp.h | 2 +- .../include/arm-linux-gnueabi/bits/shmlba.h | 2 +- .../arm-linux-gnueabi/bits/struct_stat.h | 2 +- .../include/arm-linux-gnueabi/bits/timesize.h | 2 +- .../arm-linux-gnueabi/bits/typesizes.h | 2 +- .../include/arm-linux-gnueabi/bits/wordsize.h | 2 +- .../include/arm-linux-gnueabi/fpu_control.h | 2 +- .../include/arm-linux-gnueabi/sys/ptrace.h | 14 +- .../include/arm-linux-gnueabi/sys/ucontext.h | 2 +- lib/libc/include/arm-linux-gnueabi/sys/user.h | 2 +- .../arm-linux-gnueabihf/bits/dl_find_object.h | 2 +- .../include/arm-linux-gnueabihf/bits/fcntl.h | 2 +- .../include/arm-linux-gnueabihf/bits/fenv.h | 2 +- .../include/arm-linux-gnueabihf/bits/floatn.h | 2 +- .../include/arm-linux-gnueabihf/bits/hwcap.h | 2 +- .../include/arm-linux-gnueabihf/bits/link.h | 2 +- .../arm-linux-gnueabihf/bits/long-double.h | 2 +- .../arm-linux-gnueabihf/bits/procfs-id.h | 2 +- .../include/arm-linux-gnueabihf/bits/procfs.h | 2 +- .../include/arm-linux-gnueabihf/bits/rseq.h | 2 +- .../include/arm-linux-gnueabihf/bits/setjmp.h | 2 +- .../include/arm-linux-gnueabihf/bits/shmlba.h | 2 +- .../arm-linux-gnueabihf/bits/struct_stat.h | 2 +- .../arm-linux-gnueabihf/bits/timesize.h | 2 +- .../arm-linux-gnueabihf/bits/typesizes.h | 2 +- .../arm-linux-gnueabihf/bits/wordsize.h | 2 +- .../include/arm-linux-gnueabihf/fpu_control.h | 2 +- .../include/arm-linux-gnueabihf/sys/ptrace.h | 14 +- .../arm-linux-gnueabihf/sys/ucontext.h | 2 +- .../include/arm-linux-gnueabihf/sys/user.h | 2 +- .../armeb-linux-gnueabi/bits/dl_find_object.h | 2 +- .../include/armeb-linux-gnueabi/bits/fcntl.h | 2 +- .../include/armeb-linux-gnueabi/bits/fenv.h | 2 +- .../include/armeb-linux-gnueabi/bits/floatn.h | 2 +- .../include/armeb-linux-gnueabi/bits/hwcap.h | 2 +- .../include/armeb-linux-gnueabi/bits/link.h | 2 +- .../armeb-linux-gnueabi/bits/long-double.h | 2 +- .../armeb-linux-gnueabi/bits/procfs-id.h | 2 +- .../include/armeb-linux-gnueabi/bits/procfs.h | 2 +- .../include/armeb-linux-gnueabi/bits/rseq.h | 2 +- .../include/armeb-linux-gnueabi/bits/setjmp.h | 2 +- .../include/armeb-linux-gnueabi/bits/shmlba.h | 2 +- .../armeb-linux-gnueabi/bits/struct_stat.h | 2 +- .../armeb-linux-gnueabi/bits/timesize.h | 2 +- .../armeb-linux-gnueabi/bits/typesizes.h | 2 +- .../armeb-linux-gnueabi/bits/wordsize.h | 2 +- .../include/armeb-linux-gnueabi/fpu_control.h | 2 +- .../include/armeb-linux-gnueabi/sys/ptrace.h | 14 +- .../armeb-linux-gnueabi/sys/ucontext.h | 2 +- .../include/armeb-linux-gnueabi/sys/user.h | 2 +- .../bits/dl_find_object.h | 2 +- .../armeb-linux-gnueabihf/bits/fcntl.h | 2 +- .../include/armeb-linux-gnueabihf/bits/fenv.h | 2 +- .../armeb-linux-gnueabihf/bits/floatn.h | 2 +- .../armeb-linux-gnueabihf/bits/hwcap.h | 2 +- .../include/armeb-linux-gnueabihf/bits/link.h | 2 +- .../armeb-linux-gnueabihf/bits/long-double.h | 2 +- .../armeb-linux-gnueabihf/bits/procfs-id.h | 2 +- .../armeb-linux-gnueabihf/bits/procfs.h | 2 +- .../include/armeb-linux-gnueabihf/bits/rseq.h | 2 +- .../armeb-linux-gnueabihf/bits/setjmp.h | 2 +- .../armeb-linux-gnueabihf/bits/shmlba.h | 2 +- .../armeb-linux-gnueabihf/bits/struct_stat.h | 2 +- .../armeb-linux-gnueabihf/bits/timesize.h | 2 +- .../armeb-linux-gnueabihf/bits/typesizes.h | 2 +- .../armeb-linux-gnueabihf/bits/wordsize.h | 2 +- .../armeb-linux-gnueabihf/fpu_control.h | 2 +- .../armeb-linux-gnueabihf/sys/ptrace.h | 14 +- .../armeb-linux-gnueabihf/sys/ucontext.h | 2 +- .../include/armeb-linux-gnueabihf/sys/user.h | 2 +- .../include/csky-linux-gnueabi/bits/fcntl.h | 2 +- .../include/csky-linux-gnueabi/bits/fenv.h | 2 +- .../include/csky-linux-gnueabi/bits/floatn.h | 2 +- .../include/csky-linux-gnueabi/bits/link.h | 2 +- .../csky-linux-gnueabi/bits/long-double.h | 2 +- .../include/csky-linux-gnueabi/bits/procfs.h | 2 +- .../include/csky-linux-gnueabi/bits/rseq.h | 2 +- .../include/csky-linux-gnueabi/bits/setjmp.h | 2 +- .../include/csky-linux-gnueabi/bits/shmlba.h | 2 +- .../include/csky-linux-gnueabi/bits/statfs.h | 2 +- .../csky-linux-gnueabi/bits/struct_rwlock.h | 61 -- .../csky-linux-gnueabi/bits/struct_stat.h | 2 +- .../csky-linux-gnueabi/bits/timesize.h | 2 +- .../csky-linux-gnueabi/bits/typesizes.h | 2 +- .../csky-linux-gnueabi/bits/wordsize.h | 2 +- .../include/csky-linux-gnueabi/fpu_control.h | 2 +- .../csky-linux-gnueabi/gnu/lib-names.h | 1 - .../include/csky-linux-gnueabi/sys/cachectl.h | 2 +- .../include/csky-linux-gnueabi/sys/ucontext.h | 2 +- .../include/csky-linux-gnueabi/sys/user.h | 2 +- .../include/csky-linux-gnueabihf/bits/fcntl.h | 2 +- .../include/csky-linux-gnueabihf/bits/fenv.h | 2 +- .../csky-linux-gnueabihf/bits/floatn.h | 2 +- .../include/csky-linux-gnueabihf/bits/link.h | 2 +- .../csky-linux-gnueabihf/bits/long-double.h | 2 +- .../csky-linux-gnueabihf/bits/procfs.h | 2 +- .../include/csky-linux-gnueabihf/bits/rseq.h | 2 +- .../csky-linux-gnueabihf/bits/setjmp.h | 2 +- .../csky-linux-gnueabihf/bits/shmlba.h | 2 +- .../csky-linux-gnueabihf/bits/statfs.h | 2 +- .../csky-linux-gnueabihf/bits/struct_rwlock.h | 61 -- .../csky-linux-gnueabihf/bits/struct_stat.h | 2 +- .../csky-linux-gnueabihf/bits/timesize.h | 2 +- .../csky-linux-gnueabihf/bits/typesizes.h | 2 +- .../csky-linux-gnueabihf/bits/wordsize.h | 2 +- .../csky-linux-gnueabihf/fpu_control.h | 2 +- .../csky-linux-gnueabihf/gnu/lib-names.h | 1 - .../csky-linux-gnueabihf/sys/cachectl.h | 2 +- .../csky-linux-gnueabihf/sys/ucontext.h | 2 +- .../include/csky-linux-gnueabihf/sys/user.h | 2 +- lib/libc/include/generic-glibc/aio.h | 2 +- lib/libc/include/generic-glibc/aliases.h | 2 +- lib/libc/include/generic-glibc/alloca.h | 2 +- lib/libc/include/generic-glibc/ar.h | 2 +- lib/libc/include/generic-glibc/argp.h | 2 +- lib/libc/include/generic-glibc/argz.h | 2 +- lib/libc/include/generic-glibc/arpa/inet.h | 2 +- lib/libc/include/generic-glibc/assert.h | 2 +- .../include/generic-glibc/bits/argp-ldbl.h | 2 +- .../generic-glibc/bits/atomic_wide_counter.h | 2 +- .../include/generic-glibc/bits/byteswap.h | 2 +- .../include/generic-glibc/bits/cmathcalls.h | 2 +- .../include/generic-glibc/bits/confname.h | 2 +- lib/libc/include/generic-glibc/bits/cpu-set.h | 2 +- lib/libc/include/generic-glibc/bits/dirent.h | 2 +- .../include/generic-glibc/bits/dirent_ext.h | 2 +- .../generic-glibc/bits/dl_find_object.h | 2 +- lib/libc/include/generic-glibc/bits/dlfcn.h | 2 +- lib/libc/include/generic-glibc/bits/endian.h | 2 +- .../include/generic-glibc/bits/environments.h | 2 +- lib/libc/include/generic-glibc/bits/epoll.h | 2 +- .../include/generic-glibc/bits/err-ldbl.h | 2 +- lib/libc/include/generic-glibc/bits/errno.h | 2 +- .../include/generic-glibc/bits/error-ldbl.h | 2 +- lib/libc/include/generic-glibc/bits/error.h | 2 +- lib/libc/include/generic-glibc/bits/eventfd.h | 2 +- .../include/generic-glibc/bits/fcntl-linux.h | 14 +- lib/libc/include/generic-glibc/bits/fcntl.h | 2 +- lib/libc/include/generic-glibc/bits/fcntl2.h | 2 +- lib/libc/include/generic-glibc/bits/fenv.h | 2 +- .../generic-glibc/bits/floatn-common.h | 2 +- lib/libc/include/generic-glibc/bits/floatn.h | 2 +- .../generic-glibc/bits/flt-eval-method.h | 2 +- lib/libc/include/generic-glibc/bits/fp-fast.h | 2 +- lib/libc/include/generic-glibc/bits/fp-logb.h | 2 +- .../include/generic-glibc/bits/getopt_core.h | 2 +- .../include/generic-glibc/bits/getopt_ext.h | 2 +- .../include/generic-glibc/bits/getopt_posix.h | 2 +- lib/libc/include/generic-glibc/bits/hwcap.h | 2 +- lib/libc/include/generic-glibc/bits/in.h | 3 +- .../generic-glibc/bits/indirect-return.h | 2 +- lib/libc/include/generic-glibc/bits/inotify.h | 2 +- .../include/generic-glibc/bits/ioctl-types.h | 2 +- lib/libc/include/generic-glibc/bits/ioctls.h | 2 +- .../include/generic-glibc/bits/ipc-perm.h | 2 +- lib/libc/include/generic-glibc/bits/ipc.h | 2 +- .../include/generic-glibc/bits/ipctypes.h | 2 +- .../include/generic-glibc/bits/iscanonical.h | 2 +- .../generic-glibc/bits/libc-header-start.h | 2 +- .../generic-glibc/bits/libm-simd-decl-stubs.h | 2 +- lib/libc/include/generic-glibc/bits/link.h | 2 +- .../generic-glibc/bits/link_lavcurrent.h | 2 +- .../include/generic-glibc/bits/local_lim.h | 2 +- lib/libc/include/generic-glibc/bits/locale.h | 2 +- .../include/generic-glibc/bits/long-double.h | 2 +- .../include/generic-glibc/bits/math-vector.h | 2 +- .../bits/mathcalls-helper-functions.h | 2 +- .../generic-glibc/bits/mathcalls-narrow.h | 2 +- .../include/generic-glibc/bits/mathcalls.h | 2 +- lib/libc/include/generic-glibc/bits/mathdef.h | 2 +- .../include/generic-glibc/bits/mman-linux.h | 2 +- .../bits/mman-map-flags-generic.h | 2 +- .../include/generic-glibc/bits/mman-shared.h | 2 +- lib/libc/include/generic-glibc/bits/mman.h | 2 +- .../include/generic-glibc/bits/mman_ext.h | 2 +- .../generic-glibc/bits/monetary-ldbl.h | 2 +- lib/libc/include/generic-glibc/bits/mqueue.h | 2 +- lib/libc/include/generic-glibc/bits/mqueue2.h | 2 +- lib/libc/include/generic-glibc/bits/msq.h | 2 +- lib/libc/include/generic-glibc/bits/netdb.h | 2 +- lib/libc/include/generic-glibc/bits/param.h | 2 +- .../generic-glibc/bits/platform/features.h | 48 ++ .../include/generic-glibc/bits/platform/x86.h | 16 +- lib/libc/include/generic-glibc/bits/poll.h | 2 +- lib/libc/include/generic-glibc/bits/poll2.h | 2 +- .../include/generic-glibc/bits/posix1_lim.h | 2 +- .../include/generic-glibc/bits/posix2_lim.h | 2 +- .../include/generic-glibc/bits/posix_opt.h | 2 +- lib/libc/include/generic-glibc/bits/ppc.h | 2 +- .../include/generic-glibc/bits/printf-ldbl.h | 2 +- .../include/generic-glibc/bits/procfs-extra.h | 2 +- .../include/generic-glibc/bits/procfs-id.h | 2 +- .../generic-glibc/bits/procfs-prregset.h | 2 +- lib/libc/include/generic-glibc/bits/procfs.h | 2 +- .../bits/pthread_stack_min-dynamic.h | 2 +- .../generic-glibc/bits/pthread_stack_min.h | 2 +- .../generic-glibc/bits/pthreadtypes-arch.h | 2 +- .../include/generic-glibc/bits/pthreadtypes.h | 2 +- .../generic-glibc/bits/ptrace-shared.h | 12 +- .../include/generic-glibc/bits/resource.h | 2 +- lib/libc/include/generic-glibc/bits/rseq.h | 2 +- lib/libc/include/generic-glibc/bits/sched.h | 2 +- .../include/generic-glibc/bits/select-decl.h | 2 +- lib/libc/include/generic-glibc/bits/select.h | 2 +- lib/libc/include/generic-glibc/bits/select2.h | 2 +- lib/libc/include/generic-glibc/bits/sem.h | 2 +- .../include/generic-glibc/bits/semaphore.h | 2 +- lib/libc/include/generic-glibc/bits/setjmp.h | 2 +- lib/libc/include/generic-glibc/bits/setjmp2.h | 2 +- lib/libc/include/generic-glibc/bits/shm.h | 2 +- lib/libc/include/generic-glibc/bits/shmlba.h | 2 +- .../include/generic-glibc/bits/sigaction.h | 2 +- .../include/generic-glibc/bits/sigcontext.h | 2 +- .../generic-glibc/bits/sigevent-consts.h | 2 +- .../generic-glibc/bits/siginfo-consts.h | 6 +- .../include/generic-glibc/bits/signal_ext.h | 2 +- .../include/generic-glibc/bits/signalfd.h | 2 +- .../include/generic-glibc/bits/signum-arch.h | 2 +- .../generic-glibc/bits/signum-generic.h | 2 +- .../include/generic-glibc/bits/sigstack.h | 2 +- .../include/generic-glibc/bits/sigstksz.h | 2 +- .../include/generic-glibc/bits/sigthread.h | 2 +- .../include/generic-glibc/bits/sockaddr.h | 2 +- .../generic-glibc/bits/socket-constants.h | 2 +- lib/libc/include/generic-glibc/bits/socket.h | 6 +- lib/libc/include/generic-glibc/bits/socket2.h | 2 +- .../include/generic-glibc/bits/socket_type.h | 2 +- .../include/generic-glibc/bits/spawn_ext.h | 67 ++ .../include/generic-glibc/bits/ss_flags.h | 2 +- lib/libc/include/generic-glibc/bits/stab.def | 2 +- lib/libc/include/generic-glibc/bits/stat.h | 2 +- lib/libc/include/generic-glibc/bits/statfs.h | 2 +- lib/libc/include/generic-glibc/bits/statvfs.h | 12 +- .../generic-glibc/bits/statx-generic.h | 2 +- lib/libc/include/generic-glibc/bits/statx.h | 2 +- .../include/generic-glibc/bits/stdint-intn.h | 2 +- .../include/generic-glibc/bits/stdint-least.h | 36 + .../include/generic-glibc/bits/stdint-uintn.h | 2 +- .../include/generic-glibc/bits/stdio-ldbl.h | 2 +- lib/libc/include/generic-glibc/bits/stdio.h | 2 +- .../include/generic-glibc/bits/stdio2-decl.h | 17 +- lib/libc/include/generic-glibc/bits/stdio2.h | 16 +- .../include/generic-glibc/bits/stdio_lim.h | 2 +- .../generic-glibc/bits/stdlib-bsearch.h | 2 +- .../include/generic-glibc/bits/stdlib-float.h | 2 +- .../include/generic-glibc/bits/stdlib-ldbl.h | 2 +- lib/libc/include/generic-glibc/bits/stdlib.h | 2 +- .../generic-glibc/bits/string_fortified.h | 2 +- .../generic-glibc/bits/strings_fortified.h | 2 +- .../include/generic-glibc/bits/struct_mutex.h | 2 +- .../generic-glibc/bits/struct_rwlock.h | 46 +- .../include/generic-glibc/bits/struct_stat.h | 2 +- .../bits/struct_stat_time64_helper.h | 2 +- lib/libc/include/generic-glibc/bits/syscall.h | 28 +- .../include/generic-glibc/bits/syslog-decl.h | 2 +- .../include/generic-glibc/bits/syslog-ldbl.h | 2 +- .../include/generic-glibc/bits/syslog-path.h | 2 +- lib/libc/include/generic-glibc/bits/syslog.h | 2 +- .../include/generic-glibc/bits/sysmacros.h | 2 +- .../include/generic-glibc/bits/termios-baud.h | 2 +- .../include/generic-glibc/bits/termios-c_cc.h | 2 +- .../generic-glibc/bits/termios-c_cflag.h | 2 +- .../generic-glibc/bits/termios-c_iflag.h | 2 +- .../generic-glibc/bits/termios-c_lflag.h | 2 +- .../generic-glibc/bits/termios-c_oflag.h | 2 +- .../include/generic-glibc/bits/termios-misc.h | 2 +- .../generic-glibc/bits/termios-struct.h | 2 +- .../generic-glibc/bits/termios-tcflow.h | 2 +- lib/libc/include/generic-glibc/bits/termios.h | 2 +- .../generic-glibc/bits/thread-shared-types.h | 2 +- lib/libc/include/generic-glibc/bits/time.h | 2 +- lib/libc/include/generic-glibc/bits/time64.h | 2 +- lib/libc/include/generic-glibc/bits/timerfd.h | 2 +- .../include/generic-glibc/bits/timesize.h | 2 +- lib/libc/include/generic-glibc/bits/timex.h | 2 +- lib/libc/include/generic-glibc/bits/types.h | 2 +- .../generic-glibc/bits/types/__locale_t.h | 2 +- .../generic-glibc/bits/types/__sigval_t.h | 2 +- .../bits/types/cookie_io_functions_t.h | 2 +- .../generic-glibc/bits/types/error_t.h | 2 +- .../generic-glibc/bits/types/locale_t.h | 2 +- .../generic-glibc/bits/types/stack_t.h | 2 +- .../generic-glibc/bits/types/struct_FILE.h | 2 +- .../bits/types/struct___jmp_buf_tag.h | 2 +- .../generic-glibc/bits/types/struct_iovec.h | 2 +- .../bits/types/struct_msqid64_ds.h | 2 +- .../bits/types/struct_msqid64_ds_helper.h | 2 +- .../bits/types/struct_msqid_ds.h | 2 +- .../generic-glibc/bits/types/struct_rusage.h | 2 +- .../bits/types/struct_sched_param.h | 2 +- .../bits/types/struct_semid64_ds.h | 2 +- .../bits/types/struct_semid64_ds_helper.h | 2 +- .../bits/types/struct_semid_ds.h | 2 +- .../bits/types/struct_shmid64_ds.h | 2 +- .../bits/types/struct_shmid64_ds_helper.h | 2 +- .../bits/types/struct_shmid_ds.h | 2 +- .../bits/types/struct_sigstack.h | 2 +- .../generic-glibc/bits/types/struct_statx.h | 2 +- .../bits/types/struct_statx_timestamp.h | 2 +- .../include/generic-glibc/bits/typesizes.h | 2 +- .../generic-glibc/bits/uintn-identity.h | 2 +- lib/libc/include/generic-glibc/bits/uio-ext.h | 2 +- lib/libc/include/generic-glibc/bits/uio_lim.h | 2 +- .../include/generic-glibc/bits/unistd-decl.h | 2 +- lib/libc/include/generic-glibc/bits/unistd.h | 2 +- .../include/generic-glibc/bits/unistd_ext.h | 2 +- lib/libc/include/generic-glibc/bits/utmp.h | 2 +- lib/libc/include/generic-glibc/bits/utmpx.h | 2 +- lib/libc/include/generic-glibc/bits/utsname.h | 2 +- .../include/generic-glibc/bits/waitflags.h | 2 +- .../include/generic-glibc/bits/waitstatus.h | 2 +- .../include/generic-glibc/bits/wchar-ldbl.h | 2 +- lib/libc/include/generic-glibc/bits/wchar.h | 2 +- .../include/generic-glibc/bits/wchar2-decl.h | 2 +- lib/libc/include/generic-glibc/bits/wchar2.h | 2 +- .../include/generic-glibc/bits/wctype-wchar.h | 2 +- .../include/generic-glibc/bits/wordsize.h | 2 +- .../include/generic-glibc/bits/xopen_lim.h | 2 +- lib/libc/include/generic-glibc/byteswap.h | 2 +- lib/libc/include/generic-glibc/complex.h | 2 +- lib/libc/include/generic-glibc/cpio.h | 2 +- lib/libc/include/generic-glibc/ctype.h | 2 +- lib/libc/include/generic-glibc/dirent.h | 2 +- lib/libc/include/generic-glibc/dlfcn.h | 2 +- lib/libc/include/generic-glibc/elf.h | 132 ++- lib/libc/include/generic-glibc/endian.h | 2 +- lib/libc/include/generic-glibc/envz.h | 2 +- lib/libc/include/generic-glibc/err.h | 2 +- lib/libc/include/generic-glibc/errno.h | 2 +- lib/libc/include/generic-glibc/error.h | 2 +- lib/libc/include/generic-glibc/execinfo.h | 2 +- lib/libc/include/generic-glibc/fcntl.h | 10 +- .../include/generic-glibc/features-time64.h | 2 +- lib/libc/include/generic-glibc/features.h | 37 +- lib/libc/include/generic-glibc/fenv.h | 2 +- .../finclude/math-vector-fortran.h | 2 +- lib/libc/include/generic-glibc/fmtmsg.h | 2 +- lib/libc/include/generic-glibc/fnmatch.h | 2 +- lib/libc/include/generic-glibc/fpregdef.h | 2 +- lib/libc/include/generic-glibc/fpu_control.h | 2 +- lib/libc/include/generic-glibc/fts.h | 2 +- lib/libc/include/generic-glibc/ftw.h | 2 +- lib/libc/include/generic-glibc/gconv.h | 2 +- lib/libc/include/generic-glibc/getopt.h | 2 +- lib/libc/include/generic-glibc/glob.h | 2 +- lib/libc/include/generic-glibc/gnu-versions.h | 2 +- .../include/generic-glibc/gnu/lib-names-32.h | 1 - .../generic-glibc/gnu/lib-names-hard.h | 1 - .../generic-glibc/gnu/lib-names-n32_hard.h | 1 - .../generic-glibc/gnu/lib-names-n64_hard.h | 1 - .../generic-glibc/gnu/lib-names-o32_hard.h | 1 - .../generic-glibc/gnu/lib-names-o32_soft.h | 1 - .../generic-glibc/gnu/lib-names-soft.h | 1 - .../include/generic-glibc/gnu/libc-version.h | 2 +- lib/libc/include/generic-glibc/grp.h | 2 +- lib/libc/include/generic-glibc/gshadow.h | 2 +- lib/libc/include/generic-glibc/iconv.h | 2 +- lib/libc/include/generic-glibc/ieee754.h | 2 +- lib/libc/include/generic-glibc/ifaddrs.h | 2 +- lib/libc/include/generic-glibc/inttypes.h | 2 +- lib/libc/include/generic-glibc/langinfo.h | 2 +- lib/libc/include/generic-glibc/libgen.h | 2 +- lib/libc/include/generic-glibc/libintl.h | 2 +- lib/libc/include/generic-glibc/limits.h | 2 +- lib/libc/include/generic-glibc/link.h | 2 +- lib/libc/include/generic-glibc/locale.h | 2 +- lib/libc/include/generic-glibc/malloc.h | 8 +- lib/libc/include/generic-glibc/math.h | 2 +- lib/libc/include/generic-glibc/mcheck.h | 2 +- lib/libc/include/generic-glibc/memory.h | 2 +- lib/libc/include/generic-glibc/mntent.h | 2 +- lib/libc/include/generic-glibc/monetary.h | 2 +- lib/libc/include/generic-glibc/mqueue.h | 2 +- lib/libc/include/generic-glibc/net/ethernet.h | 2 +- lib/libc/include/generic-glibc/net/if.h | 2 +- lib/libc/include/generic-glibc/net/if_arp.h | 2 +- .../include/generic-glibc/net/if_packet.h | 2 +- .../include/generic-glibc/net/if_shaper.h | 2 +- lib/libc/include/generic-glibc/net/if_slip.h | 2 +- lib/libc/include/generic-glibc/net/route.h | 2 +- lib/libc/include/generic-glibc/netash/ash.h | 2 +- lib/libc/include/generic-glibc/netatalk/at.h | 2 +- lib/libc/include/generic-glibc/netax25/ax25.h | 2 +- lib/libc/include/generic-glibc/netdb.h | 2 +- lib/libc/include/generic-glibc/neteconet/ec.h | 2 +- .../include/generic-glibc/netinet/ether.h | 2 +- .../include/generic-glibc/netinet/icmp6.h | 2 +- .../include/generic-glibc/netinet/if_ether.h | 2 +- .../include/generic-glibc/netinet/if_fddi.h | 2 +- .../include/generic-glibc/netinet/if_tr.h | 2 +- lib/libc/include/generic-glibc/netinet/igmp.h | 2 +- lib/libc/include/generic-glibc/netinet/in.h | 2 +- .../include/generic-glibc/netinet/in_systm.h | 2 +- lib/libc/include/generic-glibc/netinet/ip.h | 7 +- lib/libc/include/generic-glibc/netinet/ip6.h | 2 +- .../include/generic-glibc/netinet/ip_icmp.h | 2 +- lib/libc/include/generic-glibc/netinet/tcp.h | 3 +- lib/libc/include/generic-glibc/netinet/udp.h | 2 +- lib/libc/include/generic-glibc/netipx/ipx.h | 2 +- lib/libc/include/generic-glibc/netiucv/iucv.h | 2 +- .../include/generic-glibc/netpacket/packet.h | 3 +- .../include/generic-glibc/netrom/netrom.h | 2 +- lib/libc/include/generic-glibc/netrose/rose.h | 2 +- lib/libc/include/generic-glibc/nl_types.h | 2 +- lib/libc/include/generic-glibc/nss.h | 2 +- lib/libc/include/generic-glibc/obstack.h | 2 +- lib/libc/include/generic-glibc/printf.h | 2 +- lib/libc/include/generic-glibc/proc_service.h | 2 +- lib/libc/include/generic-glibc/pthread.h | 2 +- lib/libc/include/generic-glibc/pty.h | 2 +- lib/libc/include/generic-glibc/pwd.h | 2 +- lib/libc/include/generic-glibc/re_comp.h | 2 +- lib/libc/include/generic-glibc/regdef.h | 2 +- lib/libc/include/generic-glibc/regex.h | 2 +- lib/libc/include/generic-glibc/regexp.h | 2 +- lib/libc/include/generic-glibc/resolv.h | 31 +- lib/libc/include/generic-glibc/sched.h | 2 +- lib/libc/include/generic-glibc/scsi/scsi.h | 2 +- .../include/generic-glibc/scsi/scsi_ioctl.h | 2 +- lib/libc/include/generic-glibc/scsi/sg.h | 2 +- lib/libc/include/generic-glibc/search.h | 2 +- lib/libc/include/generic-glibc/semaphore.h | 2 +- lib/libc/include/generic-glibc/setjmp.h | 2 +- lib/libc/include/generic-glibc/sgidefs.h | 2 +- lib/libc/include/generic-glibc/sgtty.h | 2 +- lib/libc/include/generic-glibc/shadow.h | 2 +- lib/libc/include/generic-glibc/signal.h | 2 +- lib/libc/include/generic-glibc/spawn.h | 8 +- lib/libc/include/generic-glibc/stdbit.h | 792 ++++++++++++++++++ lib/libc/include/generic-glibc/stdc-predef.h | 2 +- lib/libc/include/generic-glibc/stdint.h | 15 +- lib/libc/include/generic-glibc/stdio.h | 150 ++-- lib/libc/include/generic-glibc/stdio_ext.h | 2 +- lib/libc/include/generic-glibc/stdlib.h | 8 +- lib/libc/include/generic-glibc/string.h | 8 +- lib/libc/include/generic-glibc/strings.h | 2 +- lib/libc/include/generic-glibc/sys/acct.h | 2 +- lib/libc/include/generic-glibc/sys/asm.h | 2 +- lib/libc/include/generic-glibc/sys/auxv.h | 2 +- lib/libc/include/generic-glibc/sys/cachectl.h | 2 +- lib/libc/include/generic-glibc/sys/cdefs.h | 2 +- lib/libc/include/generic-glibc/sys/debugreg.h | 2 +- lib/libc/include/generic-glibc/sys/dir.h | 2 +- lib/libc/include/generic-glibc/sys/elf.h | 2 +- lib/libc/include/generic-glibc/sys/epoll.h | 2 +- lib/libc/include/generic-glibc/sys/eventfd.h | 2 +- lib/libc/include/generic-glibc/sys/fanotify.h | 2 +- lib/libc/include/generic-glibc/sys/file.h | 2 +- lib/libc/include/generic-glibc/sys/fpregdef.h | 2 +- lib/libc/include/generic-glibc/sys/fsuid.h | 2 +- lib/libc/include/generic-glibc/sys/gmon_out.h | 2 +- lib/libc/include/generic-glibc/sys/ifunc.h | 2 +- lib/libc/include/generic-glibc/sys/inotify.h | 2 +- lib/libc/include/generic-glibc/sys/io.h | 2 +- lib/libc/include/generic-glibc/sys/ioctl.h | 2 +- lib/libc/include/generic-glibc/sys/ipc.h | 2 +- lib/libc/include/generic-glibc/sys/kd.h | 2 +- lib/libc/include/generic-glibc/sys/klog.h | 2 +- lib/libc/include/generic-glibc/sys/mman.h | 2 +- lib/libc/include/generic-glibc/sys/mount.h | 5 +- lib/libc/include/generic-glibc/sys/msg.h | 2 +- lib/libc/include/generic-glibc/sys/mtio.h | 2 +- lib/libc/include/generic-glibc/sys/param.h | 2 +- lib/libc/include/generic-glibc/sys/pci.h | 2 +- lib/libc/include/generic-glibc/sys/perm.h | 2 +- .../include/generic-glibc/sys/personality.h | 2 +- lib/libc/include/generic-glibc/sys/pidfd.h | 6 +- .../include/generic-glibc/sys/platform/ppc.h | 2 +- .../include/generic-glibc/sys/platform/x86.h | 6 +- lib/libc/include/generic-glibc/sys/poll.h | 2 +- lib/libc/include/generic-glibc/sys/prctl.h | 2 +- lib/libc/include/generic-glibc/sys/procfs.h | 2 +- lib/libc/include/generic-glibc/sys/profil.h | 2 +- lib/libc/include/generic-glibc/sys/ptrace.h | 14 +- lib/libc/include/generic-glibc/sys/quota.h | 2 +- lib/libc/include/generic-glibc/sys/random.h | 2 +- lib/libc/include/generic-glibc/sys/raw.h | 2 +- lib/libc/include/generic-glibc/sys/reboot.h | 2 +- lib/libc/include/generic-glibc/sys/reg.h | 2 +- lib/libc/include/generic-glibc/sys/regdef.h | 2 +- lib/libc/include/generic-glibc/sys/resource.h | 2 +- lib/libc/include/generic-glibc/sys/rseq.h | 2 +- lib/libc/include/generic-glibc/sys/select.h | 2 +- lib/libc/include/generic-glibc/sys/sem.h | 2 +- lib/libc/include/generic-glibc/sys/sendfile.h | 2 +- lib/libc/include/generic-glibc/sys/shm.h | 2 +- lib/libc/include/generic-glibc/sys/signalfd.h | 2 +- .../generic-glibc/sys/single_threaded.h | 2 +- lib/libc/include/generic-glibc/sys/socket.h | 2 +- lib/libc/include/generic-glibc/sys/stat.h | 4 +- lib/libc/include/generic-glibc/sys/statfs.h | 2 +- lib/libc/include/generic-glibc/sys/statvfs.h | 2 +- lib/libc/include/generic-glibc/sys/swap.h | 2 +- lib/libc/include/generic-glibc/sys/syscall.h | 2 +- lib/libc/include/generic-glibc/sys/sysinfo.h | 2 +- .../include/generic-glibc/sys/sysmacros.h | 2 +- lib/libc/include/generic-glibc/sys/sysmips.h | 2 +- lib/libc/include/generic-glibc/sys/tas.h | 2 +- lib/libc/include/generic-glibc/sys/time.h | 2 +- lib/libc/include/generic-glibc/sys/timeb.h | 2 +- lib/libc/include/generic-glibc/sys/timerfd.h | 2 +- lib/libc/include/generic-glibc/sys/times.h | 2 +- lib/libc/include/generic-glibc/sys/timex.h | 2 +- lib/libc/include/generic-glibc/sys/types.h | 2 +- lib/libc/include/generic-glibc/sys/ucontext.h | 2 +- lib/libc/include/generic-glibc/sys/uio.h | 2 +- lib/libc/include/generic-glibc/sys/un.h | 2 +- lib/libc/include/generic-glibc/sys/user.h | 2 +- lib/libc/include/generic-glibc/sys/utsname.h | 2 +- lib/libc/include/generic-glibc/sys/vlimit.h | 2 +- lib/libc/include/generic-glibc/sys/vm86.h | 2 +- lib/libc/include/generic-glibc/sys/wait.h | 2 +- lib/libc/include/generic-glibc/sys/xattr.h | 2 +- lib/libc/include/generic-glibc/tar.h | 2 +- lib/libc/include/generic-glibc/termios.h | 2 +- lib/libc/include/generic-glibc/tgmath.h | 2 +- lib/libc/include/generic-glibc/thread_db.h | 2 +- lib/libc/include/generic-glibc/threads.h | 2 +- lib/libc/include/generic-glibc/time.h | 2 +- lib/libc/include/generic-glibc/uchar.h | 2 +- lib/libc/include/generic-glibc/ucontext.h | 2 +- lib/libc/include/generic-glibc/ulimit.h | 2 +- lib/libc/include/generic-glibc/unistd.h | 7 +- lib/libc/include/generic-glibc/utime.h | 2 +- lib/libc/include/generic-glibc/utmp.h | 2 +- lib/libc/include/generic-glibc/utmpx.h | 2 +- lib/libc/include/generic-glibc/values.h | 2 +- lib/libc/include/generic-glibc/wchar.h | 2 +- lib/libc/include/generic-glibc/wctype.h | 2 +- lib/libc/include/generic-glibc/wordexp.h | 2 +- .../loongarch64-linux-gnu/bits/endianness.h | 11 + .../loongarch64-linux-gnu/bits/fcntl.h | 61 ++ .../include/loongarch64-linux-gnu/bits/fenv.h | 90 ++ .../loongarch64-linux-gnu/bits/floatn.h | 97 +++ .../loongarch64-linux-gnu/bits/hwcap.h | 38 + .../include/loongarch64-linux-gnu/bits/link.h | 76 ++ .../bits/link_lavcurrent.h | 25 + .../loongarch64-linux-gnu/bits/long-double.h | 21 + .../loongarch64-linux-gnu/bits/procfs.h | 52 ++ .../bits/pthread_stack_min.h | 20 + .../include/loongarch64-linux-gnu/bits/rseq.h | 29 + .../loongarch64-linux-gnu/bits/setjmp.h | 42 + .../loongarch64-linux-gnu/bits/shmlba.h | 24 + .../loongarch64-linux-gnu/bits/sigstack.h | 32 + .../loongarch64-linux-gnu/bits/struct_stat.h | 127 +++ .../loongarch64-linux-gnu/bits/timesize.h | 20 + .../loongarch64-linux-gnu/bits/typesizes.h | 107 +++ .../loongarch64-linux-gnu/bits/wordsize.h | 19 + .../loongarch64-linux-gnu/fpu_control.h | 119 +++ .../gnu/lib-names-lp64d.h | 27 + .../loongarch64-linux-gnu/gnu/lib-names.h | 16 + .../loongarch64-linux-gnu/gnu/stubs-lp64d.h | 21 + .../include/loongarch64-linux-gnu/gnu/stubs.h | 12 + .../include/loongarch64-linux-gnu/ieee754.h | 170 ++++ .../include/loongarch64-linux-gnu/sys/asm.h | 78 ++ .../loongarch64-linux-gnu/sys/ucontext.h | 64 ++ .../include/loongarch64-linux-gnu/sys/user.h | 42 + lib/libc/include/m68k-linux-gnu/bits/fcntl.h | 2 +- lib/libc/include/m68k-linux-gnu/bits/fenv.h | 2 +- lib/libc/include/m68k-linux-gnu/bits/floatn.h | 2 +- .../m68k-linux-gnu/bits/flt-eval-method.h | 2 +- .../include/m68k-linux-gnu/bits/fp-logb.h | 2 +- .../include/m68k-linux-gnu/bits/iscanonical.h | 2 +- lib/libc/include/m68k-linux-gnu/bits/link.h | 2 +- .../include/m68k-linux-gnu/bits/long-double.h | 2 +- lib/libc/include/m68k-linux-gnu/bits/poll.h | 2 +- .../include/m68k-linux-gnu/bits/procfs-id.h | 2 +- lib/libc/include/m68k-linux-gnu/bits/procfs.h | 2 +- .../m68k-linux-gnu/bits/pthreadtypes-arch.h | 2 +- lib/libc/include/m68k-linux-gnu/bits/rseq.h | 2 +- .../include/m68k-linux-gnu/bits/semaphore.h | 2 +- lib/libc/include/m68k-linux-gnu/bits/setjmp.h | 2 +- .../include/m68k-linux-gnu/bits/sockaddr.h | 2 +- .../m68k-linux-gnu/bits/struct_rwlock.h | 61 -- .../include/m68k-linux-gnu/bits/struct_stat.h | 2 +- .../include/m68k-linux-gnu/bits/timesize.h | 2 +- .../include/m68k-linux-gnu/bits/typesizes.h | 2 +- .../include/m68k-linux-gnu/bits/wordsize.h | 2 +- lib/libc/include/m68k-linux-gnu/fpu_control.h | 2 +- .../include/m68k-linux-gnu/gnu/lib-names.h | 1 - lib/libc/include/m68k-linux-gnu/sys/reg.h | 2 +- .../include/m68k-linux-gnu/sys/ucontext.h | 2 +- lib/libc/include/m68k-linux-gnu/sys/user.h | 2 +- .../include/mips-linux-gnueabi/bits/dlfcn.h | 2 +- .../include/mips-linux-gnueabi/bits/errno.h | 2 +- .../include/mips-linux-gnueabi/bits/eventfd.h | 2 +- .../include/mips-linux-gnueabi/bits/inotify.h | 2 +- .../mips-linux-gnueabi/bits/ioctl-types.h | 2 +- .../mips-linux-gnueabi/bits/ipctypes.h | 2 +- .../include/mips-linux-gnueabi/bits/mman.h | 2 +- .../include/mips-linux-gnueabi/bits/poll.h | 2 +- .../bits/pthread_stack_min.h | 2 +- .../bits/pthreadtypes-arch.h | 2 +- .../mips-linux-gnueabi/bits/resource.h | 2 +- .../mips-linux-gnueabi/bits/semaphore.h | 2 +- .../include/mips-linux-gnueabi/bits/shmlba.h | 2 +- .../mips-linux-gnueabi/bits/sigaction.h | 2 +- .../mips-linux-gnueabi/bits/sigcontext.h | 2 +- .../mips-linux-gnueabi/bits/signalfd.h | 2 +- .../mips-linux-gnueabi/bits/signum-arch.h | 2 +- .../bits/socket-constants.h | 2 +- .../mips-linux-gnueabi/bits/socket_type.h | 2 +- .../include/mips-linux-gnueabi/bits/statfs.h | 2 +- .../mips-linux-gnueabi/bits/struct_mutex.h | 2 +- .../bits/struct_rwlock.h | 64 +- .../mips-linux-gnueabi/bits/termios-c_cc.h | 2 +- .../mips-linux-gnueabi/bits/termios-c_lflag.h | 2 +- .../mips-linux-gnueabi/bits/termios-struct.h | 2 +- .../mips-linux-gnueabi/bits/termios-tcflow.h | 2 +- .../include/mips-linux-gnueabi/bits/timerfd.h | 2 +- .../mips-linux-gnueabi/bits/types/stack_t.h | 2 +- .../bits/types/struct_msqid_ds.h | 2 +- .../bits/types/struct_semid_ds.h | 2 +- .../bits/types/struct_shmid_ds.h | 2 +- lib/libc/include/mips-linux-gnueabi/ieee754.h | 2 +- .../include/mips-linux-gnueabihf/bits/dlfcn.h | 2 +- .../include/mips-linux-gnueabihf/bits/errno.h | 2 +- .../mips-linux-gnueabihf/bits/eventfd.h | 2 +- .../mips-linux-gnueabihf/bits/inotify.h | 2 +- .../mips-linux-gnueabihf/bits/ioctl-types.h | 2 +- .../mips-linux-gnueabihf/bits/ipctypes.h | 2 +- .../include/mips-linux-gnueabihf/bits/mman.h | 2 +- .../include/mips-linux-gnueabihf/bits/poll.h | 2 +- .../bits/pthread_stack_min.h | 2 +- .../bits/pthreadtypes-arch.h | 2 +- .../mips-linux-gnueabihf/bits/resource.h | 2 +- .../mips-linux-gnueabihf/bits/semaphore.h | 2 +- .../mips-linux-gnueabihf/bits/shmlba.h | 2 +- .../mips-linux-gnueabihf/bits/sigaction.h | 2 +- .../mips-linux-gnueabihf/bits/sigcontext.h | 2 +- .../mips-linux-gnueabihf/bits/signalfd.h | 2 +- .../mips-linux-gnueabihf/bits/signum-arch.h | 2 +- .../bits/socket-constants.h | 2 +- .../mips-linux-gnueabihf/bits/socket_type.h | 2 +- .../mips-linux-gnueabihf/bits/statfs.h | 2 +- .../mips-linux-gnueabihf/bits/struct_mutex.h | 2 +- .../bits/struct_rwlock.h | 64 +- .../mips-linux-gnueabihf/bits/termios-c_cc.h | 2 +- .../bits/termios-c_lflag.h | 2 +- .../bits/termios-struct.h | 2 +- .../bits/termios-tcflow.h | 2 +- .../mips-linux-gnueabihf/bits/timerfd.h | 2 +- .../mips-linux-gnueabihf/bits/types/stack_t.h | 2 +- .../bits/types/struct_msqid_ds.h | 2 +- .../bits/types/struct_semid_ds.h | 2 +- .../bits/types/struct_shmid_ds.h | 2 +- .../include/mips-linux-gnueabihf/ieee754.h | 2 +- .../mips64-linux-gnuabi64/bits/dlfcn.h | 2 +- .../mips64-linux-gnuabi64/bits/errno.h | 2 +- .../mips64-linux-gnuabi64/bits/eventfd.h | 2 +- .../mips64-linux-gnuabi64/bits/inotify.h | 2 +- .../mips64-linux-gnuabi64/bits/ioctl-types.h | 2 +- .../mips64-linux-gnuabi64/bits/ipctypes.h | 2 +- .../include/mips64-linux-gnuabi64/bits/mman.h | 2 +- .../include/mips64-linux-gnuabi64/bits/poll.h | 2 +- .../bits/pthread_stack_min.h | 2 +- .../bits/pthreadtypes-arch.h | 2 +- .../mips64-linux-gnuabi64/bits/resource.h | 2 +- .../mips64-linux-gnuabi64/bits/semaphore.h | 2 +- .../mips64-linux-gnuabi64/bits/shmlba.h | 2 +- .../mips64-linux-gnuabi64/bits/sigaction.h | 2 +- .../mips64-linux-gnuabi64/bits/sigcontext.h | 2 +- .../mips64-linux-gnuabi64/bits/signalfd.h | 2 +- .../mips64-linux-gnuabi64/bits/signum-arch.h | 2 +- .../bits/socket-constants.h | 2 +- .../mips64-linux-gnuabi64/bits/socket_type.h | 2 +- .../mips64-linux-gnuabi64/bits/statfs.h | 2 +- .../mips64-linux-gnuabi64/bits/struct_mutex.h | 2 +- .../bits/struct_rwlock.h | 64 +- .../mips64-linux-gnuabi64/bits/termios-c_cc.h | 2 +- .../bits/termios-c_lflag.h | 2 +- .../bits/termios-struct.h | 2 +- .../bits/termios-tcflow.h | 2 +- .../mips64-linux-gnuabi64/bits/timerfd.h | 2 +- .../bits/types/stack_t.h | 2 +- .../bits/types/struct_msqid_ds.h | 2 +- .../bits/types/struct_semid_ds.h | 2 +- .../bits/types/struct_shmid_ds.h | 2 +- .../include/mips64-linux-gnuabi64/ieee754.h | 2 +- .../mips64-linux-gnuabin32/bits/dlfcn.h | 2 +- .../mips64-linux-gnuabin32/bits/errno.h | 2 +- .../mips64-linux-gnuabin32/bits/eventfd.h | 2 +- .../mips64-linux-gnuabin32/bits/inotify.h | 2 +- .../mips64-linux-gnuabin32/bits/ioctl-types.h | 2 +- .../mips64-linux-gnuabin32/bits/ipctypes.h | 2 +- .../mips64-linux-gnuabin32/bits/mman.h | 2 +- .../mips64-linux-gnuabin32/bits/poll.h | 2 +- .../bits/pthread_stack_min.h | 2 +- .../bits/pthreadtypes-arch.h | 2 +- .../mips64-linux-gnuabin32/bits/resource.h | 2 +- .../mips64-linux-gnuabin32/bits/semaphore.h | 2 +- .../mips64-linux-gnuabin32/bits/shmlba.h | 2 +- .../mips64-linux-gnuabin32/bits/sigaction.h | 2 +- .../mips64-linux-gnuabin32/bits/sigcontext.h | 2 +- .../mips64-linux-gnuabin32/bits/signalfd.h | 2 +- .../mips64-linux-gnuabin32/bits/signum-arch.h | 2 +- .../bits/socket-constants.h | 2 +- .../mips64-linux-gnuabin32/bits/socket_type.h | 2 +- .../mips64-linux-gnuabin32/bits/statfs.h | 2 +- .../bits/struct_mutex.h | 2 +- .../bits/struct_rwlock.h | 64 +- .../bits/termios-c_cc.h | 2 +- .../bits/termios-c_lflag.h | 2 +- .../bits/termios-struct.h | 2 +- .../bits/termios-tcflow.h | 2 +- .../mips64-linux-gnuabin32/bits/timerfd.h | 2 +- .../bits/types/stack_t.h | 2 +- .../bits/types/struct_msqid_ds.h | 2 +- .../bits/types/struct_semid_ds.h | 2 +- .../bits/types/struct_shmid_ds.h | 2 +- .../include/mips64-linux-gnuabin32/ieee754.h | 2 +- .../mips64el-linux-gnuabi64/bits/dlfcn.h | 2 +- .../mips64el-linux-gnuabi64/bits/errno.h | 2 +- .../mips64el-linux-gnuabi64/bits/eventfd.h | 2 +- .../mips64el-linux-gnuabi64/bits/inotify.h | 2 +- .../bits/ioctl-types.h | 2 +- .../mips64el-linux-gnuabi64/bits/ipctypes.h | 2 +- .../mips64el-linux-gnuabi64/bits/mman.h | 2 +- .../mips64el-linux-gnuabi64/bits/poll.h | 2 +- .../bits/pthread_stack_min.h | 2 +- .../bits/pthreadtypes-arch.h | 2 +- .../mips64el-linux-gnuabi64/bits/resource.h | 2 +- .../mips64el-linux-gnuabi64/bits/semaphore.h | 2 +- .../mips64el-linux-gnuabi64/bits/shmlba.h | 2 +- .../mips64el-linux-gnuabi64/bits/sigaction.h | 2 +- .../mips64el-linux-gnuabi64/bits/sigcontext.h | 2 +- .../mips64el-linux-gnuabi64/bits/signalfd.h | 2 +- .../bits/signum-arch.h | 2 +- .../bits/socket-constants.h | 2 +- .../bits/socket_type.h | 2 +- .../mips64el-linux-gnuabi64/bits/statfs.h | 2 +- .../bits/struct_mutex.h | 2 +- .../bits/struct_rwlock.h | 71 ++ .../bits/termios-c_cc.h | 2 +- .../bits/termios-c_lflag.h | 2 +- .../bits/termios-struct.h | 2 +- .../bits/termios-tcflow.h | 2 +- .../mips64el-linux-gnuabi64/bits/timerfd.h | 2 +- .../bits/types/stack_t.h | 2 +- .../bits/types/struct_msqid_ds.h | 2 +- .../bits/types/struct_semid_ds.h | 2 +- .../bits/types/struct_shmid_ds.h | 2 +- .../include/mips64el-linux-gnuabi64/ieee754.h | 2 +- .../mips64el-linux-gnuabin32/bits/dlfcn.h | 2 +- .../mips64el-linux-gnuabin32/bits/errno.h | 2 +- .../mips64el-linux-gnuabin32/bits/eventfd.h | 2 +- .../mips64el-linux-gnuabin32/bits/inotify.h | 2 +- .../bits/ioctl-types.h | 2 +- .../mips64el-linux-gnuabin32/bits/ipctypes.h | 2 +- .../mips64el-linux-gnuabin32/bits/mman.h | 2 +- .../mips64el-linux-gnuabin32/bits/poll.h | 2 +- .../bits/pthread_stack_min.h | 2 +- .../bits/pthreadtypes-arch.h | 2 +- .../mips64el-linux-gnuabin32/bits/resource.h | 2 +- .../mips64el-linux-gnuabin32/bits/semaphore.h | 2 +- .../mips64el-linux-gnuabin32/bits/shmlba.h | 2 +- .../mips64el-linux-gnuabin32/bits/sigaction.h | 2 +- .../bits/sigcontext.h | 2 +- .../mips64el-linux-gnuabin32/bits/signalfd.h | 2 +- .../bits/signum-arch.h | 2 +- .../bits/socket-constants.h | 2 +- .../bits/socket_type.h | 2 +- .../mips64el-linux-gnuabin32/bits/statfs.h | 2 +- .../bits/struct_mutex.h | 2 +- .../bits/struct_rwlock.h | 71 ++ .../bits/termios-c_cc.h | 2 +- .../bits/termios-c_lflag.h | 2 +- .../bits/termios-struct.h | 2 +- .../bits/termios-tcflow.h | 2 +- .../mips64el-linux-gnuabin32/bits/timerfd.h | 2 +- .../bits/types/stack_t.h | 2 +- .../bits/types/struct_msqid_ds.h | 2 +- .../bits/types/struct_semid_ds.h | 2 +- .../bits/types/struct_shmid_ds.h | 2 +- .../mips64el-linux-gnuabin32/ieee754.h | 2 +- .../include/mipsel-linux-gnueabi/bits/dlfcn.h | 2 +- .../include/mipsel-linux-gnueabi/bits/errno.h | 2 +- .../mipsel-linux-gnueabi/bits/eventfd.h | 2 +- .../mipsel-linux-gnueabi/bits/inotify.h | 2 +- .../mipsel-linux-gnueabi/bits/ioctl-types.h | 2 +- .../mipsel-linux-gnueabi/bits/ipctypes.h | 2 +- .../include/mipsel-linux-gnueabi/bits/mman.h | 2 +- .../include/mipsel-linux-gnueabi/bits/poll.h | 2 +- .../bits/pthread_stack_min.h | 2 +- .../bits/pthreadtypes-arch.h | 2 +- .../mipsel-linux-gnueabi/bits/resource.h | 2 +- .../mipsel-linux-gnueabi/bits/semaphore.h | 2 +- .../mipsel-linux-gnueabi/bits/shmlba.h | 2 +- .../mipsel-linux-gnueabi/bits/sigaction.h | 2 +- .../mipsel-linux-gnueabi/bits/sigcontext.h | 2 +- .../mipsel-linux-gnueabi/bits/signalfd.h | 2 +- .../mipsel-linux-gnueabi/bits/signum-arch.h | 2 +- .../bits/socket-constants.h | 2 +- .../mipsel-linux-gnueabi/bits/socket_type.h | 2 +- .../mipsel-linux-gnueabi/bits/statfs.h | 2 +- .../mipsel-linux-gnueabi/bits/struct_mutex.h | 2 +- .../mipsel-linux-gnueabi/bits/struct_rwlock.h | 71 ++ .../mipsel-linux-gnueabi/bits/termios-c_cc.h | 2 +- .../bits/termios-c_lflag.h | 2 +- .../bits/termios-struct.h | 2 +- .../bits/termios-tcflow.h | 2 +- .../mipsel-linux-gnueabi/bits/timerfd.h | 2 +- .../mipsel-linux-gnueabi/bits/types/stack_t.h | 2 +- .../bits/types/struct_msqid_ds.h | 2 +- .../bits/types/struct_semid_ds.h | 2 +- .../bits/types/struct_shmid_ds.h | 2 +- .../include/mipsel-linux-gnueabi/ieee754.h | 2 +- .../mipsel-linux-gnueabihf/bits/dlfcn.h | 2 +- .../mipsel-linux-gnueabihf/bits/errno.h | 2 +- .../mipsel-linux-gnueabihf/bits/eventfd.h | 2 +- .../mipsel-linux-gnueabihf/bits/inotify.h | 2 +- .../mipsel-linux-gnueabihf/bits/ioctl-types.h | 2 +- .../mipsel-linux-gnueabihf/bits/ipctypes.h | 2 +- .../mipsel-linux-gnueabihf/bits/mman.h | 2 +- .../mipsel-linux-gnueabihf/bits/poll.h | 2 +- .../bits/pthread_stack_min.h | 2 +- .../bits/pthreadtypes-arch.h | 2 +- .../mipsel-linux-gnueabihf/bits/resource.h | 2 +- .../mipsel-linux-gnueabihf/bits/semaphore.h | 2 +- .../mipsel-linux-gnueabihf/bits/shmlba.h | 2 +- .../mipsel-linux-gnueabihf/bits/sigaction.h | 2 +- .../mipsel-linux-gnueabihf/bits/sigcontext.h | 2 +- .../mipsel-linux-gnueabihf/bits/signalfd.h | 2 +- .../mipsel-linux-gnueabihf/bits/signum-arch.h | 2 +- .../bits/socket-constants.h | 2 +- .../mipsel-linux-gnueabihf/bits/socket_type.h | 2 +- .../mipsel-linux-gnueabihf/bits/statfs.h | 2 +- .../bits/struct_mutex.h | 2 +- .../bits/struct_rwlock.h | 71 ++ .../bits/termios-c_cc.h | 2 +- .../bits/termios-c_lflag.h | 2 +- .../bits/termios-struct.h | 2 +- .../bits/termios-tcflow.h | 2 +- .../mipsel-linux-gnueabihf/bits/timerfd.h | 2 +- .../bits/types/stack_t.h | 2 +- .../bits/types/struct_msqid_ds.h | 2 +- .../bits/types/struct_semid_ds.h | 2 +- .../bits/types/struct_shmid_ds.h | 2 +- .../include/mipsel-linux-gnueabihf/ieee754.h | 2 +- .../powerpc-linux-gnueabi/bits/environments.h | 2 +- .../powerpc-linux-gnueabi/bits/fcntl.h | 4 +- .../include/powerpc-linux-gnueabi/bits/fenv.h | 2 +- .../powerpc-linux-gnueabi/bits/floatn.h | 2 +- .../powerpc-linux-gnueabi/bits/fp-fast.h | 2 +- .../powerpc-linux-gnueabi/bits/hwcap.h | 2 +- .../powerpc-linux-gnueabi/bits/ioctl-types.h | 2 +- .../powerpc-linux-gnueabi/bits/ipc-perm.h | 2 +- .../powerpc-linux-gnueabi/bits/iscanonical.h | 2 +- .../include/powerpc-linux-gnueabi/bits/link.h | 2 +- .../powerpc-linux-gnueabi/bits/long-double.h | 2 +- .../include/powerpc-linux-gnueabi/bits/mman.h | 2 +- .../powerpc-linux-gnueabi/bits/procfs.h | 2 +- .../bits/pthread_stack_min.h | 2 +- .../include/powerpc-linux-gnueabi/bits/rseq.h | 2 +- .../powerpc-linux-gnueabi/bits/setjmp.h | 2 +- .../powerpc-linux-gnueabi/bits/sigstack.h | 2 +- .../bits/socket-constants.h | 2 +- .../powerpc-linux-gnueabi/bits/struct_mutex.h | 2 +- .../bits/struct_rwlock.h | 2 +- .../powerpc-linux-gnueabi/bits/struct_stat.h | 2 +- .../powerpc-linux-gnueabi/bits/termios-baud.h | 2 +- .../powerpc-linux-gnueabi/bits/termios-c_cc.h | 2 +- .../bits/termios-c_cflag.h | 2 +- .../bits/termios-c_iflag.h | 2 +- .../bits/termios-c_lflag.h | 2 +- .../bits/termios-c_oflag.h | 2 +- .../powerpc-linux-gnueabi/bits/termios-misc.h | 2 +- .../powerpc-linux-gnueabi/bits/timesize.h | 2 +- .../bits/types/struct_msqid_ds.h | 2 +- .../bits/types/struct_semid_ds.h | 2 +- .../bits/types/struct_shmid_ds.h | 2 +- .../powerpc-linux-gnueabi/bits/typesizes.h | 2 +- .../powerpc-linux-gnueabi/fpu_control.h | 2 +- .../include/powerpc-linux-gnueabi/ieee754.h | 2 +- .../powerpc-linux-gnueabi/sys/ptrace.h | 16 +- .../powerpc-linux-gnueabi/sys/ucontext.h | 2 +- .../include/powerpc-linux-gnueabi/sys/user.h | 2 +- .../bits/environments.h | 2 +- .../powerpc-linux-gnueabihf/bits/fcntl.h | 4 +- .../powerpc-linux-gnueabihf/bits/fenv.h | 2 +- .../powerpc-linux-gnueabihf/bits/floatn.h | 2 +- .../powerpc-linux-gnueabihf/bits/fp-fast.h | 2 +- .../powerpc-linux-gnueabihf/bits/hwcap.h | 2 +- .../bits/ioctl-types.h | 2 +- .../powerpc-linux-gnueabihf/bits/ipc-perm.h | 2 +- .../bits/iscanonical.h | 2 +- .../powerpc-linux-gnueabihf/bits/link.h | 2 +- .../bits/long-double.h | 2 +- .../powerpc-linux-gnueabihf/bits/mman.h | 2 +- .../powerpc-linux-gnueabihf/bits/procfs.h | 2 +- .../bits/pthread_stack_min.h | 2 +- .../powerpc-linux-gnueabihf/bits/rseq.h | 2 +- .../powerpc-linux-gnueabihf/bits/setjmp.h | 2 +- .../powerpc-linux-gnueabihf/bits/sigstack.h | 2 +- .../bits/socket-constants.h | 2 +- .../bits/struct_mutex.h | 2 +- .../bits/struct_rwlock.h | 2 +- .../bits/struct_stat.h | 2 +- .../bits/termios-baud.h | 2 +- .../bits/termios-c_cc.h | 2 +- .../bits/termios-c_cflag.h | 2 +- .../bits/termios-c_iflag.h | 2 +- .../bits/termios-c_lflag.h | 2 +- .../bits/termios-c_oflag.h | 2 +- .../bits/termios-misc.h | 2 +- .../powerpc-linux-gnueabihf/bits/timesize.h | 2 +- .../bits/types/struct_msqid_ds.h | 2 +- .../bits/types/struct_semid_ds.h | 2 +- .../bits/types/struct_shmid_ds.h | 2 +- .../powerpc-linux-gnueabihf/bits/typesizes.h | 2 +- .../powerpc-linux-gnueabihf/fpu_control.h | 2 +- .../include/powerpc-linux-gnueabihf/ieee754.h | 2 +- .../powerpc-linux-gnueabihf/sys/ptrace.h | 16 +- .../powerpc-linux-gnueabihf/sys/ucontext.h | 2 +- .../powerpc-linux-gnueabihf/sys/user.h | 2 +- .../powerpc64-linux-gnu/bits/environments.h | 2 +- .../include/powerpc64-linux-gnu/bits/fcntl.h | 4 +- .../include/powerpc64-linux-gnu/bits/fenv.h | 2 +- .../include/powerpc64-linux-gnu/bits/floatn.h | 2 +- .../powerpc64-linux-gnu/bits/fp-fast.h | 2 +- .../include/powerpc64-linux-gnu/bits/hwcap.h | 2 +- .../powerpc64-linux-gnu/bits/ioctl-types.h | 2 +- .../powerpc64-linux-gnu/bits/ipc-perm.h | 2 +- .../powerpc64-linux-gnu/bits/iscanonical.h | 2 +- .../include/powerpc64-linux-gnu/bits/link.h | 2 +- .../powerpc64-linux-gnu/bits/long-double.h | 2 +- .../include/powerpc64-linux-gnu/bits/mman.h | 2 +- .../include/powerpc64-linux-gnu/bits/procfs.h | 2 +- .../bits/pthread_stack_min.h | 2 +- .../include/powerpc64-linux-gnu/bits/rseq.h | 2 +- .../include/powerpc64-linux-gnu/bits/setjmp.h | 2 +- .../powerpc64-linux-gnu/bits/sigstack.h | 2 +- .../bits/socket-constants.h | 2 +- .../powerpc64-linux-gnu/bits/struct_mutex.h | 2 +- .../powerpc64-linux-gnu/bits/struct_rwlock.h | 2 +- .../powerpc64-linux-gnu/bits/struct_stat.h | 2 +- .../powerpc64-linux-gnu/bits/termios-baud.h | 2 +- .../powerpc64-linux-gnu/bits/termios-c_cc.h | 2 +- .../bits/termios-c_cflag.h | 2 +- .../bits/termios-c_iflag.h | 2 +- .../bits/termios-c_lflag.h | 2 +- .../bits/termios-c_oflag.h | 2 +- .../powerpc64-linux-gnu/bits/termios-misc.h | 2 +- .../powerpc64-linux-gnu/bits/timesize.h | 2 +- .../bits/types/struct_msqid_ds.h | 2 +- .../bits/types/struct_semid_ds.h | 2 +- .../bits/types/struct_shmid_ds.h | 2 +- .../powerpc64-linux-gnu/bits/typesizes.h | 2 +- .../include/powerpc64-linux-gnu/fpu_control.h | 2 +- .../powerpc64-linux-gnu/gnu/lib-names-64-v1.h | 1 - .../include/powerpc64-linux-gnu/ieee754.h | 2 +- .../include/powerpc64-linux-gnu/sys/ptrace.h | 16 +- .../powerpc64-linux-gnu/sys/ucontext.h | 2 +- .../include/powerpc64-linux-gnu/sys/user.h | 2 +- .../powerpc64le-linux-gnu/bits/environments.h | 2 +- .../powerpc64le-linux-gnu/bits/fcntl.h | 4 +- .../include/powerpc64le-linux-gnu/bits/fenv.h | 2 +- .../powerpc64le-linux-gnu/bits/floatn.h | 2 +- .../powerpc64le-linux-gnu/bits/fp-fast.h | 2 +- .../powerpc64le-linux-gnu/bits/hwcap.h | 2 +- .../powerpc64le-linux-gnu/bits/ioctl-types.h | 2 +- .../powerpc64le-linux-gnu/bits/ipc-perm.h | 2 +- .../powerpc64le-linux-gnu/bits/iscanonical.h | 2 +- .../include/powerpc64le-linux-gnu/bits/link.h | 2 +- .../powerpc64le-linux-gnu/bits/long-double.h | 2 +- .../include/powerpc64le-linux-gnu/bits/mman.h | 2 +- .../powerpc64le-linux-gnu/bits/procfs.h | 2 +- .../bits/pthread_stack_min.h | 2 +- .../include/powerpc64le-linux-gnu/bits/rseq.h | 2 +- .../powerpc64le-linux-gnu/bits/setjmp.h | 2 +- .../powerpc64le-linux-gnu/bits/sigstack.h | 2 +- .../bits/socket-constants.h | 2 +- .../powerpc64le-linux-gnu/bits/struct_mutex.h | 2 +- .../bits/struct_rwlock.h | 2 +- .../powerpc64le-linux-gnu/bits/struct_stat.h | 2 +- .../powerpc64le-linux-gnu/bits/termios-baud.h | 2 +- .../powerpc64le-linux-gnu/bits/termios-c_cc.h | 2 +- .../bits/termios-c_cflag.h | 2 +- .../bits/termios-c_iflag.h | 2 +- .../bits/termios-c_lflag.h | 2 +- .../bits/termios-c_oflag.h | 2 +- .../powerpc64le-linux-gnu/bits/termios-misc.h | 2 +- .../powerpc64le-linux-gnu/bits/timesize.h | 2 +- .../bits/types/struct_msqid_ds.h | 2 +- .../bits/types/struct_semid_ds.h | 2 +- .../bits/types/struct_shmid_ds.h | 2 +- .../powerpc64le-linux-gnu/bits/typesizes.h | 2 +- .../powerpc64le-linux-gnu/fpu_control.h | 2 +- .../gnu/lib-names-64-v2.h | 1 - .../include/powerpc64le-linux-gnu/ieee754.h | 2 +- .../powerpc64le-linux-gnu/sys/ptrace.h | 16 +- .../powerpc64le-linux-gnu/sys/ucontext.h | 2 +- .../include/powerpc64le-linux-gnu/sys/user.h | 2 +- .../riscv32-linux-gnuilp32/bits/endianness.h | 11 + .../bits/environments.h | 81 ++ .../riscv32-linux-gnuilp32/bits/fcntl.h | 62 ++ .../riscv32-linux-gnuilp32/bits/fenv.h | 74 ++ .../riscv32-linux-gnuilp32/bits/floatn.h | 97 +++ .../riscv32-linux-gnuilp32/bits/link.h | 56 ++ .../riscv32-linux-gnuilp32/bits/long-double.h | 21 + .../riscv32-linux-gnuilp32/bits/procfs.h | 31 + .../bits/pthreadtypes-arch.h | 45 + .../riscv32-linux-gnuilp32/bits/rseq.h | 29 + .../riscv32-linux-gnuilp32/bits/setjmp.h | 39 + .../riscv32-linux-gnuilp32/bits/sigcontext.h | 31 + .../bits/struct_rwlock.h | 68 ++ .../riscv32-linux-gnuilp32/bits/struct_stat.h | 127 +++ .../riscv32-linux-gnuilp32/bits/time64.h | 36 + .../riscv32-linux-gnuilp32/bits/timesize.h | 20 + .../riscv32-linux-gnuilp32/bits/typesizes.h | 107 +++ .../riscv32-linux-gnuilp32/bits/wordsize.h | 30 + .../riscv32-linux-gnuilp32/fpu_control.h | 74 ++ .../gnu/lib-names-ilp32.h | 27 + .../riscv32-linux-gnuilp32/gnu/lib-names.h | 22 + .../riscv32-linux-gnuilp32/gnu/stubs-ilp32.h | 38 + .../riscv32-linux-gnuilp32/gnu/stubs.h | 18 + .../include/riscv32-linux-gnuilp32/ieee754.h | 170 ++++ .../include/riscv32-linux-gnuilp32/sys/asm.h | 66 ++ .../riscv32-linux-gnuilp32/sys/cachectl.h | 32 + .../riscv32-linux-gnuilp32/sys/ucontext.h | 110 +++ .../include/riscv32-linux-gnuilp32/sys/user.h | 23 + .../riscv64-linux-gnu/bits/environments.h | 2 +- .../include/riscv64-linux-gnu/bits/fcntl.h | 2 +- .../include/riscv64-linux-gnu/bits/fenv.h | 2 +- .../include/riscv64-linux-gnu/bits/floatn.h | 2 +- .../include/riscv64-linux-gnu/bits/link.h | 2 +- .../riscv64-linux-gnu/bits/long-double.h | 2 +- .../include/riscv64-linux-gnu/bits/procfs.h | 2 +- .../bits/pthreadtypes-arch.h | 2 +- .../include/riscv64-linux-gnu/bits/rseq.h | 2 +- .../include/riscv64-linux-gnu/bits/setjmp.h | 2 +- .../riscv64-linux-gnu/bits/sigcontext.h | 2 +- .../riscv64-linux-gnu/bits/struct_rwlock.h | 2 +- .../riscv64-linux-gnu/bits/struct_stat.h | 2 +- .../include/riscv64-linux-gnu/bits/time64.h | 2 +- .../include/riscv64-linux-gnu/bits/timesize.h | 2 +- .../riscv64-linux-gnu/bits/typesizes.h | 2 +- .../include/riscv64-linux-gnu/bits/wordsize.h | 2 +- .../include/riscv64-linux-gnu/fpu_control.h | 2 +- .../riscv64-linux-gnu/gnu/lib-names-lp64.h | 1 - lib/libc/include/riscv64-linux-gnu/ieee754.h | 2 +- lib/libc/include/riscv64-linux-gnu/sys/asm.h | 2 +- .../include/riscv64-linux-gnu/sys/cachectl.h | 2 +- .../include/riscv64-linux-gnu/sys/ucontext.h | 2 +- lib/libc/include/riscv64-linux-gnu/sys/user.h | 2 +- .../include/s390x-linux-gnu/bits/elfclass.h | 2 +- .../s390x-linux-gnu/bits/environments.h | 2 +- lib/libc/include/s390x-linux-gnu/bits/fcntl.h | 2 +- lib/libc/include/s390x-linux-gnu/bits/fenv.h | 2 +- .../include/s390x-linux-gnu/bits/floatn.h | 2 +- lib/libc/include/s390x-linux-gnu/bits/hwcap.h | 2 +- lib/libc/include/s390x-linux-gnu/bits/link.h | 2 +- .../s390x-linux-gnu/bits/long-double.h | 2 +- .../s390x-linux-gnu/bits/procfs-extra.h | 2 +- .../include/s390x-linux-gnu/bits/procfs-id.h | 2 +- .../include/s390x-linux-gnu/bits/procfs.h | 2 +- lib/libc/include/s390x-linux-gnu/bits/rseq.h | 2 +- .../include/s390x-linux-gnu/bits/setjmp.h | 2 +- .../include/s390x-linux-gnu/bits/sigaction.h | 2 +- .../include/s390x-linux-gnu/bits/statfs.h | 2 +- .../s390x-linux-gnu/bits/struct_mutex.h | 2 +- .../s390x-linux-gnu/bits/struct_rwlock.h | 2 +- .../s390x-linux-gnu/bits/struct_stat.h | 2 +- .../include/s390x-linux-gnu/bits/timesize.h | 2 +- .../include/s390x-linux-gnu/bits/typesizes.h | 2 +- lib/libc/include/s390x-linux-gnu/bits/utmp.h | 2 +- lib/libc/include/s390x-linux-gnu/bits/utmpx.h | 2 +- .../include/s390x-linux-gnu/fpu_control.h | 2 +- .../s390x-linux-gnu/gnu/lib-names-64.h | 1 - lib/libc/include/s390x-linux-gnu/ieee754.h | 2 +- lib/libc/include/s390x-linux-gnu/sys/elf.h | 2 +- lib/libc/include/s390x-linux-gnu/sys/ptrace.h | 14 +- .../include/s390x-linux-gnu/sys/ucontext.h | 2 +- lib/libc/include/s390x-linux-gnu/sys/user.h | 2 +- .../sparc64-linux-gnu/bits/environments.h | 2 +- .../include/sparc64-linux-gnu/bits/epoll.h | 2 +- .../include/sparc64-linux-gnu/bits/errno.h | 2 +- .../include/sparc64-linux-gnu/bits/eventfd.h | 2 +- .../include/sparc64-linux-gnu/bits/fcntl.h | 2 +- .../include/sparc64-linux-gnu/bits/fenv.h | 2 +- .../include/sparc64-linux-gnu/bits/floatn.h | 2 +- .../include/sparc64-linux-gnu/bits/hwcap.h | 2 +- .../include/sparc64-linux-gnu/bits/inotify.h | 2 +- .../include/sparc64-linux-gnu/bits/ioctls.h | 2 +- .../include/sparc64-linux-gnu/bits/ipc-perm.h | 2 +- .../include/sparc64-linux-gnu/bits/link.h | 2 +- .../sparc64-linux-gnu/bits/long-double.h | 2 +- .../include/sparc64-linux-gnu/bits/mman.h | 2 +- .../include/sparc64-linux-gnu/bits/poll.h | 2 +- .../sparc64-linux-gnu/bits/procfs-extra.h | 2 +- .../sparc64-linux-gnu/bits/procfs-id.h | 2 +- .../include/sparc64-linux-gnu/bits/procfs.h | 2 +- .../bits/pthread_stack_min.h | 2 +- .../include/sparc64-linux-gnu/bits/resource.h | 2 +- .../include/sparc64-linux-gnu/bits/rseq.h | 2 +- .../include/sparc64-linux-gnu/bits/setjmp.h | 2 +- .../include/sparc64-linux-gnu/bits/shmlba.h | 2 +- .../sparc64-linux-gnu/bits/sigaction.h | 2 +- .../sparc64-linux-gnu/bits/sigcontext.h | 2 +- .../include/sparc64-linux-gnu/bits/signalfd.h | 2 +- .../sparc64-linux-gnu/bits/signum-arch.h | 2 +- .../include/sparc64-linux-gnu/bits/sigstack.h | 2 +- .../sparc64-linux-gnu/bits/socket-constants.h | 2 +- .../sparc64-linux-gnu/bits/socket_type.h | 2 +- .../sparc64-linux-gnu/bits/struct_rwlock.h | 2 +- .../sparc64-linux-gnu/bits/struct_stat.h | 2 +- .../sparc64-linux-gnu/bits/termios-baud.h | 2 +- .../sparc64-linux-gnu/bits/termios-c_cc.h | 2 +- .../sparc64-linux-gnu/bits/termios-c_oflag.h | 2 +- .../sparc64-linux-gnu/bits/termios-struct.h | 2 +- .../include/sparc64-linux-gnu/bits/timerfd.h | 2 +- .../include/sparc64-linux-gnu/bits/timesize.h | 2 +- .../bits/types/struct_msqid_ds.h | 2 +- .../bits/types/struct_semid_ds.h | 2 +- .../bits/types/struct_shmid_ds.h | 2 +- .../sparc64-linux-gnu/bits/typesizes.h | 2 +- .../include/sparc64-linux-gnu/fpu_control.h | 9 +- .../sparc64-linux-gnu/gnu/lib-names-64.h | 1 - lib/libc/include/sparc64-linux-gnu/ieee754.h | 2 +- .../include/sparc64-linux-gnu/sys/ptrace.h | 14 +- .../include/sparc64-linux-gnu/sys/ucontext.h | 2 +- lib/libc/include/sparc64-linux-gnu/sys/user.h | 2 +- .../x86-linux-gnu/bits/dl_find_object.h | 2 +- .../include/x86-linux-gnu/bits/environments.h | 2 +- lib/libc/include/x86-linux-gnu/bits/epoll.h | 2 +- lib/libc/include/x86-linux-gnu/bits/fcntl.h | 2 +- lib/libc/include/x86-linux-gnu/bits/fenv.h | 2 +- lib/libc/include/x86-linux-gnu/bits/floatn.h | 2 +- .../x86-linux-gnu/bits/flt-eval-method.h | 2 +- lib/libc/include/x86-linux-gnu/bits/fp-logb.h | 2 +- .../x86-linux-gnu/bits/indirect-return.h | 2 +- .../include/x86-linux-gnu/bits/ipctypes.h | 2 +- .../include/x86-linux-gnu/bits/iscanonical.h | 2 +- lib/libc/include/x86-linux-gnu/bits/link.h | 2 +- .../include/x86-linux-gnu/bits/long-double.h | 2 +- .../include/x86-linux-gnu/bits/math-vector.h | 2 +- lib/libc/include/x86-linux-gnu/bits/mman.h | 8 +- .../include/x86-linux-gnu/bits/procfs-id.h | 2 +- lib/libc/include/x86-linux-gnu/bits/procfs.h | 2 +- .../x86-linux-gnu/bits/pthreadtypes-arch.h | 2 +- lib/libc/include/x86-linux-gnu/bits/rseq.h | 2 +- lib/libc/include/x86-linux-gnu/bits/setjmp.h | 2 +- .../include/x86-linux-gnu/bits/sigcontext.h | 2 +- .../include/x86-linux-gnu/bits/struct_mutex.h | 2 +- .../x86-linux-gnu/bits/struct_rwlock.h | 2 +- .../include/x86-linux-gnu/bits/struct_stat.h | 2 +- .../include/x86-linux-gnu/bits/timesize.h | 2 +- .../bits/types/struct_semid_ds.h | 2 +- .../include/x86-linux-gnu/bits/typesizes.h | 2 +- .../finclude/math-vector-fortran.h | 2 +- lib/libc/include/x86-linux-gnu/fpu_control.h | 2 +- .../include/x86-linux-gnu/gnu/lib-names-32.h | 1 - lib/libc/include/x86-linux-gnu/sys/elf.h | 2 +- lib/libc/include/x86-linux-gnu/sys/ptrace.h | 14 +- lib/libc/include/x86-linux-gnu/sys/ucontext.h | 2 +- lib/libc/include/x86-linux-gnu/sys/user.h | 2 +- .../x86_64-linux-gnu/bits/dl_find_object.h | 2 +- .../x86_64-linux-gnu/bits/environments.h | 2 +- .../include/x86_64-linux-gnu/bits/epoll.h | 2 +- .../include/x86_64-linux-gnu/bits/fcntl.h | 2 +- lib/libc/include/x86_64-linux-gnu/bits/fenv.h | 2 +- .../include/x86_64-linux-gnu/bits/floatn.h | 2 +- .../x86_64-linux-gnu/bits/flt-eval-method.h | 2 +- .../include/x86_64-linux-gnu/bits/fp-logb.h | 2 +- .../x86_64-linux-gnu/bits/indirect-return.h | 2 +- .../include/x86_64-linux-gnu/bits/ipctypes.h | 2 +- .../x86_64-linux-gnu/bits/iscanonical.h | 2 +- lib/libc/include/x86_64-linux-gnu/bits/link.h | 2 +- .../x86_64-linux-gnu/bits/long-double.h | 2 +- .../x86_64-linux-gnu/bits/math-vector.h | 2 +- lib/libc/include/x86_64-linux-gnu/bits/mman.h | 8 +- .../include/x86_64-linux-gnu/bits/procfs-id.h | 2 +- .../include/x86_64-linux-gnu/bits/procfs.h | 2 +- .../x86_64-linux-gnu/bits/pthreadtypes-arch.h | 2 +- lib/libc/include/x86_64-linux-gnu/bits/rseq.h | 2 +- .../include/x86_64-linux-gnu/bits/setjmp.h | 2 +- .../x86_64-linux-gnu/bits/sigcontext.h | 2 +- .../x86_64-linux-gnu/bits/struct_mutex.h | 2 +- .../x86_64-linux-gnu/bits/struct_rwlock.h | 2 +- .../x86_64-linux-gnu/bits/struct_stat.h | 2 +- .../include/x86_64-linux-gnu/bits/timesize.h | 2 +- .../bits/types/struct_semid_ds.h | 2 +- .../include/x86_64-linux-gnu/bits/typesizes.h | 2 +- .../finclude/math-vector-fortran.h | 2 +- .../include/x86_64-linux-gnu/fpu_control.h | 2 +- .../x86_64-linux-gnu/gnu/lib-names-64.h | 1 - lib/libc/include/x86_64-linux-gnu/sys/elf.h | 2 +- .../include/x86_64-linux-gnu/sys/ptrace.h | 14 +- .../include/x86_64-linux-gnu/sys/ucontext.h | 2 +- lib/libc/include/x86_64-linux-gnu/sys/user.h | 2 +- .../x86_64-linux-gnux32/bits/dl_find_object.h | 2 +- .../x86_64-linux-gnux32/bits/environments.h | 2 +- .../include/x86_64-linux-gnux32/bits/epoll.h | 2 +- .../include/x86_64-linux-gnux32/bits/fcntl.h | 2 +- .../include/x86_64-linux-gnux32/bits/fenv.h | 2 +- .../include/x86_64-linux-gnux32/bits/floatn.h | 2 +- .../bits/flt-eval-method.h | 2 +- .../x86_64-linux-gnux32/bits/fp-logb.h | 2 +- .../bits/indirect-return.h | 2 +- .../x86_64-linux-gnux32/bits/ipctypes.h | 2 +- .../x86_64-linux-gnux32/bits/iscanonical.h | 2 +- .../include/x86_64-linux-gnux32/bits/link.h | 2 +- .../x86_64-linux-gnux32/bits/long-double.h | 2 +- .../x86_64-linux-gnux32/bits/math-vector.h | 2 +- .../include/x86_64-linux-gnux32/bits/mman.h | 8 +- .../x86_64-linux-gnux32/bits/procfs-id.h | 2 +- .../include/x86_64-linux-gnux32/bits/procfs.h | 2 +- .../bits/pthreadtypes-arch.h | 2 +- .../include/x86_64-linux-gnux32/bits/rseq.h | 2 +- .../include/x86_64-linux-gnux32/bits/setjmp.h | 2 +- .../x86_64-linux-gnux32/bits/sigcontext.h | 2 +- .../x86_64-linux-gnux32/bits/struct_mutex.h | 2 +- .../x86_64-linux-gnux32/bits/struct_rwlock.h | 2 +- .../x86_64-linux-gnux32/bits/struct_stat.h | 2 +- .../x86_64-linux-gnux32/bits/timesize.h | 2 +- .../bits/types/struct_semid_ds.h | 2 +- .../x86_64-linux-gnux32/bits/typesizes.h | 2 +- .../finclude/math-vector-fortran.h | 2 +- .../include/x86_64-linux-gnux32/fpu_control.h | 2 +- .../x86_64-linux-gnux32/gnu/lib-names-x32.h | 1 - .../include/x86_64-linux-gnux32/sys/elf.h | 2 +- .../include/x86_64-linux-gnux32/sys/ptrace.h | 14 +- .../x86_64-linux-gnux32/sys/ucontext.h | 2 +- .../include/x86_64-linux-gnux32/sys/user.h | 2 +- 1292 files changed, 6454 insertions(+), 1742 deletions(-) create mode 100644 lib/libc/include/aarch64-linux-gnu/finclude/math-vector-fortran.h create mode 100644 lib/libc/include/aarch64_be-linux-gnu/finclude/math-vector-fortran.h delete mode 100644 lib/libc/include/csky-linux-gnueabi/bits/struct_rwlock.h delete mode 100644 lib/libc/include/csky-linux-gnueabihf/bits/struct_rwlock.h create mode 100644 lib/libc/include/generic-glibc/bits/platform/features.h create mode 100644 lib/libc/include/generic-glibc/bits/spawn_ext.h create mode 100644 lib/libc/include/generic-glibc/bits/stdint-least.h create mode 100644 lib/libc/include/generic-glibc/stdbit.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/endianness.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/fcntl.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/fenv.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/floatn.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/hwcap.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/link.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/link_lavcurrent.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/long-double.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/procfs.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/pthread_stack_min.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/rseq.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/setjmp.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/shmlba.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/sigstack.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/struct_stat.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/timesize.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/typesizes.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/bits/wordsize.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/fpu_control.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/gnu/lib-names-lp64d.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/gnu/lib-names.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/gnu/stubs-lp64d.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/gnu/stubs.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/ieee754.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/sys/asm.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/sys/ucontext.h create mode 100644 lib/libc/include/loongarch64-linux-gnu/sys/user.h delete mode 100644 lib/libc/include/m68k-linux-gnu/bits/struct_rwlock.h rename lib/libc/include/{arm-linux-gnueabi => mips-linux-gnueabi}/bits/struct_rwlock.h (61%) rename lib/libc/include/{arm-linux-gnueabihf => mips-linux-gnueabihf}/bits/struct_rwlock.h (61%) rename lib/libc/include/{armeb-linux-gnueabi => mips64-linux-gnuabi64}/bits/struct_rwlock.h (61%) rename lib/libc/include/{armeb-linux-gnueabihf => mips64-linux-gnuabin32}/bits/struct_rwlock.h (61%) create mode 100644 lib/libc/include/mips64el-linux-gnuabi64/bits/struct_rwlock.h create mode 100644 lib/libc/include/mips64el-linux-gnuabin32/bits/struct_rwlock.h create mode 100644 lib/libc/include/mipsel-linux-gnueabi/bits/struct_rwlock.h create mode 100644 lib/libc/include/mipsel-linux-gnueabihf/bits/struct_rwlock.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/endianness.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/environments.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/fcntl.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/fenv.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/floatn.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/link.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/long-double.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/procfs.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/pthreadtypes-arch.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/rseq.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/setjmp.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/sigcontext.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/struct_rwlock.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/struct_stat.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/time64.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/timesize.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/typesizes.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/bits/wordsize.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/fpu_control.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/gnu/lib-names-ilp32.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/gnu/lib-names.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/gnu/stubs-ilp32.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/gnu/stubs.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/ieee754.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/sys/asm.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/sys/cachectl.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/sys/ucontext.h create mode 100644 lib/libc/include/riscv32-linux-gnuilp32/sys/user.h diff --git a/lib/libc/include/aarch64-linux-gnu/bits/fcntl.h b/lib/libc/include/aarch64-linux-gnu/bits/fcntl.h index 7ecd1ae21e..bc6230d79d 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/fcntl.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for the AArch64 Linux ABI. - Copyright (C) 2011-2023 Free Software Foundation, Inc. + Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64-linux-gnu/bits/fenv.h b/lib/libc/include/aarch64-linux-gnu/bits/fenv.h index 274c745ef7..70ee95acdb 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/fenv.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2023 Free Software Foundation, Inc. +/* Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64-linux-gnu/bits/floatn.h b/lib/libc/include/aarch64-linux-gnu/bits/floatn.h index a4ac95d55e..20c1af5c2e 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/floatn.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features on ldbl-128 platforms. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64-linux-gnu/bits/fp-fast.h b/lib/libc/include/aarch64-linux-gnu/bits/fp-fast.h index d529dc4491..ca35509ad2 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/fp-fast.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/fp-fast.h @@ -1,5 +1,5 @@ /* Define FP_FAST_* macros. AArch64 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64-linux-gnu/bits/hwcap.h b/lib/libc/include/aarch64-linux-gnu/bits/hwcap.h index 9052ca7c89..1f037e5d2c 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/hwcap.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/hwcap.h @@ -1,5 +1,5 @@ /* Defines for bits in AT_HWCAP. AArch64 Linux version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -97,4 +97,6 @@ #define HWCAP2_SME_I16I32 (1UL << 39) #define HWCAP2_SME_BI32I32 (1UL << 40) #define HWCAP2_SME_B16B16 (1UL << 41) -#define HWCAP2_SME_F16F16 (1UL << 42) \ No newline at end of file +#define HWCAP2_SME_F16F16 (1UL << 42) +#define HWCAP2_MOPS (1UL << 43) +#define HWCAP2_HBC (1UL << 44) \ No newline at end of file diff --git a/lib/libc/include/aarch64-linux-gnu/bits/link.h b/lib/libc/include/aarch64-linux-gnu/bits/link.h index d1756817b1..561cfc70ef 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/link.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/link.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64-linux-gnu/bits/long-double.h b/lib/libc/include/aarch64-linux-gnu/bits/long-double.h index 3455ce2356..a83f6c746f 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/long-double.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. ldbl-128 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64-linux-gnu/bits/math-vector.h b/lib/libc/include/aarch64-linux-gnu/bits/math-vector.h index dad8614d99..3264c3e3e8 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/math-vector.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/math-vector.h @@ -1,6 +1,6 @@ /* Platform-specific SIMD declarations of math functions. - Copyright (C) 2023 Free Software Foundation, Inc. + Copyright (C) 2023-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -25,6 +25,72 @@ /* Get default empty definitions for simd declarations. */ #include +#if defined __aarch64__ && defined __FAST_MATH__ && __GNUC_PREREQ (6, 0) +/* Requires GCC >= 6 for __attribute__ ((__simd__)). */ +# define __DECL_SIMD_aarch64 __attribute__ ((__simd__ ("notinbranch"), const)) + +# undef __DECL_SIMD_acos +# define __DECL_SIMD_acos __DECL_SIMD_aarch64 +# undef __DECL_SIMD_acosf +# define __DECL_SIMD_acosf __DECL_SIMD_aarch64 +# undef __DECL_SIMD_asin +# define __DECL_SIMD_asin __DECL_SIMD_aarch64 +# undef __DECL_SIMD_asinf +# define __DECL_SIMD_asinf __DECL_SIMD_aarch64 +# undef __DECL_SIMD_atan +# define __DECL_SIMD_atan __DECL_SIMD_aarch64 +# undef __DECL_SIMD_atanf +# define __DECL_SIMD_atanf __DECL_SIMD_aarch64 +# undef __DECL_SIMD_atan2 +# define __DECL_SIMD_atan2 __DECL_SIMD_aarch64 +# undef __DECL_SIMD_atan2f +# define __DECL_SIMD_atan2f __DECL_SIMD_aarch64 +# undef __DECL_SIMD_cos +# define __DECL_SIMD_cos __DECL_SIMD_aarch64 +# undef __DECL_SIMD_cosf +# define __DECL_SIMD_cosf __DECL_SIMD_aarch64 +# undef __DECL_SIMD_exp +# define __DECL_SIMD_exp __DECL_SIMD_aarch64 +# undef __DECL_SIMD_expf +# define __DECL_SIMD_expf __DECL_SIMD_aarch64 +# undef __DECL_SIMD_exp10 +# define __DECL_SIMD_exp10 __DECL_SIMD_aarch64 +# undef __DECL_SIMD_exp10f +# define __DECL_SIMD_exp10f __DECL_SIMD_aarch64 +# undef __DECL_SIMD_exp2 +# define __DECL_SIMD_exp2 __DECL_SIMD_aarch64 +# undef __DECL_SIMD_exp2f +# define __DECL_SIMD_exp2f __DECL_SIMD_aarch64 +# undef __DECL_SIMD_expm1 +# define __DECL_SIMD_expm1 __DECL_SIMD_aarch64 +# undef __DECL_SIMD_expm1f +# define __DECL_SIMD_expm1f __DECL_SIMD_aarch64 +# undef __DECL_SIMD_log +# define __DECL_SIMD_log __DECL_SIMD_aarch64 +# undef __DECL_SIMD_logf +# define __DECL_SIMD_logf __DECL_SIMD_aarch64 +# undef __DECL_SIMD_log10 +# define __DECL_SIMD_log10 __DECL_SIMD_aarch64 +# undef __DECL_SIMD_log10f +# define __DECL_SIMD_log10f __DECL_SIMD_aarch64 +# undef __DECL_SIMD_log1p +# define __DECL_SIMD_log1p __DECL_SIMD_aarch64 +# undef __DECL_SIMD_log1pf +# define __DECL_SIMD_log1pf __DECL_SIMD_aarch64 +# undef __DECL_SIMD_log2 +# define __DECL_SIMD_log2 __DECL_SIMD_aarch64 +# undef __DECL_SIMD_log2f +# define __DECL_SIMD_log2f __DECL_SIMD_aarch64 +# undef __DECL_SIMD_sin +# define __DECL_SIMD_sin __DECL_SIMD_aarch64 +# undef __DECL_SIMD_sinf +# define __DECL_SIMD_sinf __DECL_SIMD_aarch64 +# undef __DECL_SIMD_tan +# define __DECL_SIMD_tan __DECL_SIMD_aarch64 +# undef __DECL_SIMD_tanf +# define __DECL_SIMD_tanf __DECL_SIMD_aarch64 +#endif + #if __GNUC_PREREQ(9, 0) # define __ADVSIMD_VEC_MATH_SUPPORTED typedef __Float32x4_t __f32x4_t; @@ -49,30 +115,74 @@ typedef __SVBool_t __sv_bool_t; # define __vpcs __attribute__ ((__aarch64_vector_pcs__)) +__vpcs __f32x4_t _ZGVnN4vv_atan2f (__f32x4_t, __f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_acosf (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_asinf (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_atanf (__f32x4_t); __vpcs __f32x4_t _ZGVnN4v_cosf (__f32x4_t); __vpcs __f32x4_t _ZGVnN4v_expf (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_exp10f (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_exp2f (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_expm1f (__f32x4_t); __vpcs __f32x4_t _ZGVnN4v_logf (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_log10f (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_log1pf (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_log2f (__f32x4_t); __vpcs __f32x4_t _ZGVnN4v_sinf (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_tanf (__f32x4_t); +__vpcs __f64x2_t _ZGVnN2vv_atan2 (__f64x2_t, __f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_acos (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_asin (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_atan (__f64x2_t); __vpcs __f64x2_t _ZGVnN2v_cos (__f64x2_t); __vpcs __f64x2_t _ZGVnN2v_exp (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_exp10 (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_exp2 (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_expm1 (__f64x2_t); __vpcs __f64x2_t _ZGVnN2v_log (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_log10 (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_log1p (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_log2 (__f64x2_t); __vpcs __f64x2_t _ZGVnN2v_sin (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_tan (__f64x2_t); # undef __ADVSIMD_VEC_MATH_SUPPORTED #endif /* __ADVSIMD_VEC_MATH_SUPPORTED */ #ifdef __SVE_VEC_MATH_SUPPORTED +__sv_f32_t _ZGVsMxvv_atan2f (__sv_f32_t, __sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_acosf (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_asinf (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_atanf (__sv_f32_t, __sv_bool_t); __sv_f32_t _ZGVsMxv_cosf (__sv_f32_t, __sv_bool_t); __sv_f32_t _ZGVsMxv_expf (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_exp10f (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_exp2f (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_expm1f (__sv_f32_t, __sv_bool_t); __sv_f32_t _ZGVsMxv_logf (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_log10f (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_log1pf (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_log2f (__sv_f32_t, __sv_bool_t); __sv_f32_t _ZGVsMxv_sinf (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_tanf (__sv_f32_t, __sv_bool_t); +__sv_f64_t _ZGVsMxvv_atan2 (__sv_f64_t, __sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_acos (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_asin (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_atan (__sv_f64_t, __sv_bool_t); __sv_f64_t _ZGVsMxv_cos (__sv_f64_t, __sv_bool_t); __sv_f64_t _ZGVsMxv_exp (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_exp10 (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_exp2 (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_expm1 (__sv_f64_t, __sv_bool_t); __sv_f64_t _ZGVsMxv_log (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_log10 (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_log1p (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_log2 (__sv_f64_t, __sv_bool_t); __sv_f64_t _ZGVsMxv_sin (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_tan (__sv_f64_t, __sv_bool_t); # undef __SVE_VEC_MATH_SUPPORTED #endif /* __SVE_VEC_MATH_SUPPORTED */ \ No newline at end of file diff --git a/lib/libc/include/aarch64-linux-gnu/bits/mman.h b/lib/libc/include/aarch64-linux-gnu/bits/mman.h index f13cce5b39..80ba42880e 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/mman.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/AArch64 version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64-linux-gnu/bits/procfs.h b/lib/libc/include/aarch64-linux-gnu/bits/procfs.h index 4cd1d53eff..db5d2e6dc7 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/procfs.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. AArch64 version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64-linux-gnu/bits/pthread_stack_min.h b/lib/libc/include/aarch64-linux-gnu/bits/pthread_stack_min.h index 8d736f1ec8..114d58d74d 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/pthread_stack_min.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/pthread_stack_min.h @@ -1,5 +1,5 @@ /* Definition of PTHREAD_STACK_MIN. Linux/aarch64 version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h b/lib/libc/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h index 6a079f2817..f09776fa3b 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64-linux-gnu/bits/rseq.h b/lib/libc/include/aarch64-linux-gnu/bits/rseq.h index 551df98467..072ab18c66 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/rseq.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences Linux aarch64 architecture header. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/aarch64-linux-gnu/bits/semaphore.h b/lib/libc/include/aarch64-linux-gnu/bits/semaphore.h index 7f8a2b05b8..79f16976ef 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/semaphore.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/semaphore.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64-linux-gnu/bits/setjmp.h b/lib/libc/include/aarch64-linux-gnu/bits/setjmp.h index 08c614da6b..af064381a6 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/setjmp.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/setjmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64-linux-gnu/bits/sigstack.h b/lib/libc/include/aarch64-linux-gnu/bits/sigstack.h index b5215f5efd..da7fa51cef 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/sigstack.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/sigstack.h @@ -1,5 +1,5 @@ /* sigstack, sigaltstack definitions. - Copyright (C) 2015-2023 Free Software Foundation, Inc. + Copyright (C) 2015-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64-linux-gnu/bits/struct_rwlock.h b/lib/libc/include/aarch64-linux-gnu/bits/struct_rwlock.h index fc284c6698..c051512fbd 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/struct_rwlock.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/struct_rwlock.h @@ -1,5 +1,5 @@ /* AArch64 internal rwlock struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64-linux-gnu/bits/struct_stat.h b/lib/libc/include/aarch64-linux-gnu/bits/struct_stat.h index 54192765a2..c8e2d78b57 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/struct_stat.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64-linux-gnu/bits/timesize.h b/lib/libc/include/aarch64-linux-gnu/bits/timesize.h index 00217b042a..17f828ecfe 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/timesize.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, general case. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64-linux-gnu/bits/typesizes.h b/lib/libc/include/aarch64-linux-gnu/bits/typesizes.h index fa5fab6be4..d875caa94e 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/typesizes.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. For the generic Linux ABI. - Copyright (C) 2011-2023 Free Software Foundation, Inc. + Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64-linux-gnu/bits/wordsize.h b/lib/libc/include/aarch64-linux-gnu/bits/wordsize.h index 3d4ed3d0a7..3f2885073b 100644 --- a/lib/libc/include/aarch64-linux-gnu/bits/wordsize.h +++ b/lib/libc/include/aarch64-linux-gnu/bits/wordsize.h @@ -1,6 +1,6 @@ /* Determine the wordsize from the preprocessor defines. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64-linux-gnu/finclude/math-vector-fortran.h b/lib/libc/include/aarch64-linux-gnu/finclude/math-vector-fortran.h new file mode 100644 index 0000000000..7a50d2dcbb --- /dev/null +++ b/lib/libc/include/aarch64-linux-gnu/finclude/math-vector-fortran.h @@ -0,0 +1,47 @@ +! Platform-specific declarations of SIMD math functions for Fortran. -*- f90 -*- +! Copyright (C) 2019-2024 Free Software Foundation, Inc. +! This file is part of the GNU C Library. +! +! The GNU C Library is free software; you can redistribute it and/or +! modify it under the terms of the GNU Lesser General Public +! License as published by the Free Software Foundation; either +! version 2.1 of the License, or (at your option) any later version. +! +! The GNU C Library is distributed in the hope that it will be useful, +! but WITHOUT ANY WARRANTY; without even the implied warranty of +! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +! Lesser General Public License for more details. +! +! You should have received a copy of the GNU Lesser General Public +! License along with the GNU C Library; if not, see +! . +!GCC$ builtin (acos) attributes simd (notinbranch) +!GCC$ builtin (acosf) attributes simd (notinbranch) +!GCC$ builtin (asin) attributes simd (notinbranch) +!GCC$ builtin (asinf) attributes simd (notinbranch) +!GCC$ builtin (atan) attributes simd (notinbranch) +!GCC$ builtin (atanf) attributes simd (notinbranch) +!GCC$ builtin (atan2) attributes simd (notinbranch) +!GCC$ builtin (atan2f) attributes simd (notinbranch) +!GCC$ builtin (cos) attributes simd (notinbranch) +!GCC$ builtin (cosf) attributes simd (notinbranch) +!GCC$ builtin (exp) attributes simd (notinbranch) +!GCC$ builtin (expf) attributes simd (notinbranch) +!GCC$ builtin (exp10) attributes simd (notinbranch) +!GCC$ builtin (exp10f) attributes simd (notinbranch) +!GCC$ builtin (exp2) attributes simd (notinbranch) +!GCC$ builtin (exp2f) attributes simd (notinbranch) +!GCC$ builtin (expm1) attributes simd (notinbranch) +!GCC$ builtin (expm1f) attributes simd (notinbranch) +!GCC$ builtin (log) attributes simd (notinbranch) +!GCC$ builtin (logf) attributes simd (notinbranch) +!GCC$ builtin (log10) attributes simd (notinbranch) +!GCC$ builtin (log10f) attributes simd (notinbranch) +!GCC$ builtin (log1p) attributes simd (notinbranch) +!GCC$ builtin (log1pf) attributes simd (notinbranch) +!GCC$ builtin (log2) attributes simd (notinbranch) +!GCC$ builtin (log2f) attributes simd (notinbranch) +!GCC$ builtin (sin) attributes simd (notinbranch) +!GCC$ builtin (sinf) attributes simd (notinbranch) +!GCC$ builtin (tan) attributes simd (notinbranch) +!GCC$ builtin (tanf) attributes simd (notinbranch) \ No newline at end of file diff --git a/lib/libc/include/aarch64-linux-gnu/fpu_control.h b/lib/libc/include/aarch64-linux-gnu/fpu_control.h index 46ef2a9780..83f52b7215 100644 --- a/lib/libc/include/aarch64-linux-gnu/fpu_control.h +++ b/lib/libc/include/aarch64-linux-gnu/fpu_control.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64-linux-gnu/gnu/lib-names-lp64.h b/lib/libc/include/aarch64-linux-gnu/gnu/lib-names-lp64.h index 70b282afde..e34eb75134 100644 --- a/lib/libc/include/aarch64-linux-gnu/gnu/lib-names-lp64.h +++ b/lib/libc/include/aarch64-linux-gnu/gnu/lib-names-lp64.h @@ -7,7 +7,6 @@ #define LD_SO "ld-linux-aarch64.so.1" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/aarch64-linux-gnu/ieee754.h b/lib/libc/include/aarch64-linux-gnu/ieee754.h index c76cf156f6..b1e2ec7dc6 100644 --- a/lib/libc/include/aarch64-linux-gnu/ieee754.h +++ b/lib/libc/include/aarch64-linux-gnu/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64-linux-gnu/sys/elf.h b/lib/libc/include/aarch64-linux-gnu/sys/elf.h index 4314e16baa..f67343a91c 100644 --- a/lib/libc/include/aarch64-linux-gnu/sys/elf.h +++ b/lib/libc/include/aarch64-linux-gnu/sys/elf.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64-linux-gnu/sys/ptrace.h b/lib/libc/include/aarch64-linux-gnu/sys/ptrace.h index 4f37d75d6d..90bec849d7 100644 --- a/lib/libc/include/aarch64-linux-gnu/sys/ptrace.h +++ b/lib/libc/include/aarch64-linux-gnu/sys/ptrace.h @@ -1,5 +1,5 @@ /* `ptrace' debugger support interface. Linux/AArch64 version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -59,6 +59,8 @@ __BEGIN_DECLS #undef PTRACE_SECCOMP_GET_METADATA #undef PTRACE_GET_SYSCALL_INFO #undef PTRACE_GET_RSEQ_CONFIGURATION +#undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG +#undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG /* Type of the REQUEST argument to `ptrace.' */ enum __ptrace_request @@ -195,8 +197,18 @@ enum __ptrace_request #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO /* Get rseq configuration information. */ - PTRACE_GET_RSEQ_CONFIGURATION = 0x420f + PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION + + /* Set configuration for syscall user dispatch. */ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, +#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG + + /* Get configuration for syscall user dispatch. */ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 +#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG }; diff --git a/lib/libc/include/aarch64-linux-gnu/sys/ucontext.h b/lib/libc/include/aarch64-linux-gnu/sys/ucontext.h index 2c4417ba0c..5a24ff2e57 100644 --- a/lib/libc/include/aarch64-linux-gnu/sys/ucontext.h +++ b/lib/libc/include/aarch64-linux-gnu/sys/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64-linux-gnu/sys/user.h b/lib/libc/include/aarch64-linux-gnu/sys/user.h index 2c4719e398..8bf4bb71a7 100644 --- a/lib/libc/include/aarch64-linux-gnu/sys/user.h +++ b/lib/libc/include/aarch64-linux-gnu/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2009-2023 Free Software Foundation, Inc. +/* Copyright (C) 2009-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/fcntl.h b/lib/libc/include/aarch64_be-linux-gnu/bits/fcntl.h index 7ecd1ae21e..bc6230d79d 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/fcntl.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for the AArch64 Linux ABI. - Copyright (C) 2011-2023 Free Software Foundation, Inc. + Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/fenv.h b/lib/libc/include/aarch64_be-linux-gnu/bits/fenv.h index 274c745ef7..70ee95acdb 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/fenv.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2023 Free Software Foundation, Inc. +/* Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/floatn.h b/lib/libc/include/aarch64_be-linux-gnu/bits/floatn.h index a4ac95d55e..20c1af5c2e 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/floatn.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features on ldbl-128 platforms. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/fp-fast.h b/lib/libc/include/aarch64_be-linux-gnu/bits/fp-fast.h index d529dc4491..ca35509ad2 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/fp-fast.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/fp-fast.h @@ -1,5 +1,5 @@ /* Define FP_FAST_* macros. AArch64 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/hwcap.h b/lib/libc/include/aarch64_be-linux-gnu/bits/hwcap.h index 9052ca7c89..1f037e5d2c 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/hwcap.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/hwcap.h @@ -1,5 +1,5 @@ /* Defines for bits in AT_HWCAP. AArch64 Linux version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -97,4 +97,6 @@ #define HWCAP2_SME_I16I32 (1UL << 39) #define HWCAP2_SME_BI32I32 (1UL << 40) #define HWCAP2_SME_B16B16 (1UL << 41) -#define HWCAP2_SME_F16F16 (1UL << 42) \ No newline at end of file +#define HWCAP2_SME_F16F16 (1UL << 42) +#define HWCAP2_MOPS (1UL << 43) +#define HWCAP2_HBC (1UL << 44) \ No newline at end of file diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/link.h b/lib/libc/include/aarch64_be-linux-gnu/bits/link.h index d1756817b1..561cfc70ef 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/link.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/link.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/long-double.h b/lib/libc/include/aarch64_be-linux-gnu/bits/long-double.h index 3455ce2356..a83f6c746f 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/long-double.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. ldbl-128 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/math-vector.h b/lib/libc/include/aarch64_be-linux-gnu/bits/math-vector.h index dad8614d99..3264c3e3e8 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/math-vector.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/math-vector.h @@ -1,6 +1,6 @@ /* Platform-specific SIMD declarations of math functions. - Copyright (C) 2023 Free Software Foundation, Inc. + Copyright (C) 2023-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -25,6 +25,72 @@ /* Get default empty definitions for simd declarations. */ #include +#if defined __aarch64__ && defined __FAST_MATH__ && __GNUC_PREREQ (6, 0) +/* Requires GCC >= 6 for __attribute__ ((__simd__)). */ +# define __DECL_SIMD_aarch64 __attribute__ ((__simd__ ("notinbranch"), const)) + +# undef __DECL_SIMD_acos +# define __DECL_SIMD_acos __DECL_SIMD_aarch64 +# undef __DECL_SIMD_acosf +# define __DECL_SIMD_acosf __DECL_SIMD_aarch64 +# undef __DECL_SIMD_asin +# define __DECL_SIMD_asin __DECL_SIMD_aarch64 +# undef __DECL_SIMD_asinf +# define __DECL_SIMD_asinf __DECL_SIMD_aarch64 +# undef __DECL_SIMD_atan +# define __DECL_SIMD_atan __DECL_SIMD_aarch64 +# undef __DECL_SIMD_atanf +# define __DECL_SIMD_atanf __DECL_SIMD_aarch64 +# undef __DECL_SIMD_atan2 +# define __DECL_SIMD_atan2 __DECL_SIMD_aarch64 +# undef __DECL_SIMD_atan2f +# define __DECL_SIMD_atan2f __DECL_SIMD_aarch64 +# undef __DECL_SIMD_cos +# define __DECL_SIMD_cos __DECL_SIMD_aarch64 +# undef __DECL_SIMD_cosf +# define __DECL_SIMD_cosf __DECL_SIMD_aarch64 +# undef __DECL_SIMD_exp +# define __DECL_SIMD_exp __DECL_SIMD_aarch64 +# undef __DECL_SIMD_expf +# define __DECL_SIMD_expf __DECL_SIMD_aarch64 +# undef __DECL_SIMD_exp10 +# define __DECL_SIMD_exp10 __DECL_SIMD_aarch64 +# undef __DECL_SIMD_exp10f +# define __DECL_SIMD_exp10f __DECL_SIMD_aarch64 +# undef __DECL_SIMD_exp2 +# define __DECL_SIMD_exp2 __DECL_SIMD_aarch64 +# undef __DECL_SIMD_exp2f +# define __DECL_SIMD_exp2f __DECL_SIMD_aarch64 +# undef __DECL_SIMD_expm1 +# define __DECL_SIMD_expm1 __DECL_SIMD_aarch64 +# undef __DECL_SIMD_expm1f +# define __DECL_SIMD_expm1f __DECL_SIMD_aarch64 +# undef __DECL_SIMD_log +# define __DECL_SIMD_log __DECL_SIMD_aarch64 +# undef __DECL_SIMD_logf +# define __DECL_SIMD_logf __DECL_SIMD_aarch64 +# undef __DECL_SIMD_log10 +# define __DECL_SIMD_log10 __DECL_SIMD_aarch64 +# undef __DECL_SIMD_log10f +# define __DECL_SIMD_log10f __DECL_SIMD_aarch64 +# undef __DECL_SIMD_log1p +# define __DECL_SIMD_log1p __DECL_SIMD_aarch64 +# undef __DECL_SIMD_log1pf +# define __DECL_SIMD_log1pf __DECL_SIMD_aarch64 +# undef __DECL_SIMD_log2 +# define __DECL_SIMD_log2 __DECL_SIMD_aarch64 +# undef __DECL_SIMD_log2f +# define __DECL_SIMD_log2f __DECL_SIMD_aarch64 +# undef __DECL_SIMD_sin +# define __DECL_SIMD_sin __DECL_SIMD_aarch64 +# undef __DECL_SIMD_sinf +# define __DECL_SIMD_sinf __DECL_SIMD_aarch64 +# undef __DECL_SIMD_tan +# define __DECL_SIMD_tan __DECL_SIMD_aarch64 +# undef __DECL_SIMD_tanf +# define __DECL_SIMD_tanf __DECL_SIMD_aarch64 +#endif + #if __GNUC_PREREQ(9, 0) # define __ADVSIMD_VEC_MATH_SUPPORTED typedef __Float32x4_t __f32x4_t; @@ -49,30 +115,74 @@ typedef __SVBool_t __sv_bool_t; # define __vpcs __attribute__ ((__aarch64_vector_pcs__)) +__vpcs __f32x4_t _ZGVnN4vv_atan2f (__f32x4_t, __f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_acosf (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_asinf (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_atanf (__f32x4_t); __vpcs __f32x4_t _ZGVnN4v_cosf (__f32x4_t); __vpcs __f32x4_t _ZGVnN4v_expf (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_exp10f (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_exp2f (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_expm1f (__f32x4_t); __vpcs __f32x4_t _ZGVnN4v_logf (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_log10f (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_log1pf (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_log2f (__f32x4_t); __vpcs __f32x4_t _ZGVnN4v_sinf (__f32x4_t); +__vpcs __f32x4_t _ZGVnN4v_tanf (__f32x4_t); +__vpcs __f64x2_t _ZGVnN2vv_atan2 (__f64x2_t, __f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_acos (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_asin (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_atan (__f64x2_t); __vpcs __f64x2_t _ZGVnN2v_cos (__f64x2_t); __vpcs __f64x2_t _ZGVnN2v_exp (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_exp10 (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_exp2 (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_expm1 (__f64x2_t); __vpcs __f64x2_t _ZGVnN2v_log (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_log10 (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_log1p (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_log2 (__f64x2_t); __vpcs __f64x2_t _ZGVnN2v_sin (__f64x2_t); +__vpcs __f64x2_t _ZGVnN2v_tan (__f64x2_t); # undef __ADVSIMD_VEC_MATH_SUPPORTED #endif /* __ADVSIMD_VEC_MATH_SUPPORTED */ #ifdef __SVE_VEC_MATH_SUPPORTED +__sv_f32_t _ZGVsMxvv_atan2f (__sv_f32_t, __sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_acosf (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_asinf (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_atanf (__sv_f32_t, __sv_bool_t); __sv_f32_t _ZGVsMxv_cosf (__sv_f32_t, __sv_bool_t); __sv_f32_t _ZGVsMxv_expf (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_exp10f (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_exp2f (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_expm1f (__sv_f32_t, __sv_bool_t); __sv_f32_t _ZGVsMxv_logf (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_log10f (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_log1pf (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_log2f (__sv_f32_t, __sv_bool_t); __sv_f32_t _ZGVsMxv_sinf (__sv_f32_t, __sv_bool_t); +__sv_f32_t _ZGVsMxv_tanf (__sv_f32_t, __sv_bool_t); +__sv_f64_t _ZGVsMxvv_atan2 (__sv_f64_t, __sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_acos (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_asin (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_atan (__sv_f64_t, __sv_bool_t); __sv_f64_t _ZGVsMxv_cos (__sv_f64_t, __sv_bool_t); __sv_f64_t _ZGVsMxv_exp (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_exp10 (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_exp2 (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_expm1 (__sv_f64_t, __sv_bool_t); __sv_f64_t _ZGVsMxv_log (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_log10 (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_log1p (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_log2 (__sv_f64_t, __sv_bool_t); __sv_f64_t _ZGVsMxv_sin (__sv_f64_t, __sv_bool_t); +__sv_f64_t _ZGVsMxv_tan (__sv_f64_t, __sv_bool_t); # undef __SVE_VEC_MATH_SUPPORTED #endif /* __SVE_VEC_MATH_SUPPORTED */ \ No newline at end of file diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/mman.h b/lib/libc/include/aarch64_be-linux-gnu/bits/mman.h index f13cce5b39..80ba42880e 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/mman.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/AArch64 version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/procfs.h b/lib/libc/include/aarch64_be-linux-gnu/bits/procfs.h index 4cd1d53eff..db5d2e6dc7 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/procfs.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. AArch64 version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/pthread_stack_min.h b/lib/libc/include/aarch64_be-linux-gnu/bits/pthread_stack_min.h index 8d736f1ec8..114d58d74d 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/pthread_stack_min.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/pthread_stack_min.h @@ -1,5 +1,5 @@ /* Definition of PTHREAD_STACK_MIN. Linux/aarch64 version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/pthreadtypes-arch.h b/lib/libc/include/aarch64_be-linux-gnu/bits/pthreadtypes-arch.h index 6a079f2817..f09776fa3b 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/pthreadtypes-arch.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/pthreadtypes-arch.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/rseq.h b/lib/libc/include/aarch64_be-linux-gnu/bits/rseq.h index 551df98467..072ab18c66 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/rseq.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences Linux aarch64 architecture header. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/semaphore.h b/lib/libc/include/aarch64_be-linux-gnu/bits/semaphore.h index 7f8a2b05b8..79f16976ef 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/semaphore.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/semaphore.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/setjmp.h b/lib/libc/include/aarch64_be-linux-gnu/bits/setjmp.h index 08c614da6b..af064381a6 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/setjmp.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/setjmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/sigstack.h b/lib/libc/include/aarch64_be-linux-gnu/bits/sigstack.h index b5215f5efd..da7fa51cef 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/sigstack.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/sigstack.h @@ -1,5 +1,5 @@ /* sigstack, sigaltstack definitions. - Copyright (C) 2015-2023 Free Software Foundation, Inc. + Copyright (C) 2015-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/struct_rwlock.h b/lib/libc/include/aarch64_be-linux-gnu/bits/struct_rwlock.h index fc284c6698..c051512fbd 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/struct_rwlock.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/struct_rwlock.h @@ -1,5 +1,5 @@ /* AArch64 internal rwlock struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/struct_stat.h b/lib/libc/include/aarch64_be-linux-gnu/bits/struct_stat.h index 54192765a2..c8e2d78b57 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/struct_stat.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/timesize.h b/lib/libc/include/aarch64_be-linux-gnu/bits/timesize.h index 00217b042a..17f828ecfe 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/timesize.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, general case. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/typesizes.h b/lib/libc/include/aarch64_be-linux-gnu/bits/typesizes.h index fa5fab6be4..d875caa94e 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/typesizes.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. For the generic Linux ABI. - Copyright (C) 2011-2023 Free Software Foundation, Inc. + Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64_be-linux-gnu/bits/wordsize.h b/lib/libc/include/aarch64_be-linux-gnu/bits/wordsize.h index 3d4ed3d0a7..3f2885073b 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/bits/wordsize.h +++ b/lib/libc/include/aarch64_be-linux-gnu/bits/wordsize.h @@ -1,6 +1,6 @@ /* Determine the wordsize from the preprocessor defines. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64_be-linux-gnu/finclude/math-vector-fortran.h b/lib/libc/include/aarch64_be-linux-gnu/finclude/math-vector-fortran.h new file mode 100644 index 0000000000..7a50d2dcbb --- /dev/null +++ b/lib/libc/include/aarch64_be-linux-gnu/finclude/math-vector-fortran.h @@ -0,0 +1,47 @@ +! Platform-specific declarations of SIMD math functions for Fortran. -*- f90 -*- +! Copyright (C) 2019-2024 Free Software Foundation, Inc. +! This file is part of the GNU C Library. +! +! The GNU C Library is free software; you can redistribute it and/or +! modify it under the terms of the GNU Lesser General Public +! License as published by the Free Software Foundation; either +! version 2.1 of the License, or (at your option) any later version. +! +! The GNU C Library is distributed in the hope that it will be useful, +! but WITHOUT ANY WARRANTY; without even the implied warranty of +! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +! Lesser General Public License for more details. +! +! You should have received a copy of the GNU Lesser General Public +! License along with the GNU C Library; if not, see +! . +!GCC$ builtin (acos) attributes simd (notinbranch) +!GCC$ builtin (acosf) attributes simd (notinbranch) +!GCC$ builtin (asin) attributes simd (notinbranch) +!GCC$ builtin (asinf) attributes simd (notinbranch) +!GCC$ builtin (atan) attributes simd (notinbranch) +!GCC$ builtin (atanf) attributes simd (notinbranch) +!GCC$ builtin (atan2) attributes simd (notinbranch) +!GCC$ builtin (atan2f) attributes simd (notinbranch) +!GCC$ builtin (cos) attributes simd (notinbranch) +!GCC$ builtin (cosf) attributes simd (notinbranch) +!GCC$ builtin (exp) attributes simd (notinbranch) +!GCC$ builtin (expf) attributes simd (notinbranch) +!GCC$ builtin (exp10) attributes simd (notinbranch) +!GCC$ builtin (exp10f) attributes simd (notinbranch) +!GCC$ builtin (exp2) attributes simd (notinbranch) +!GCC$ builtin (exp2f) attributes simd (notinbranch) +!GCC$ builtin (expm1) attributes simd (notinbranch) +!GCC$ builtin (expm1f) attributes simd (notinbranch) +!GCC$ builtin (log) attributes simd (notinbranch) +!GCC$ builtin (logf) attributes simd (notinbranch) +!GCC$ builtin (log10) attributes simd (notinbranch) +!GCC$ builtin (log10f) attributes simd (notinbranch) +!GCC$ builtin (log1p) attributes simd (notinbranch) +!GCC$ builtin (log1pf) attributes simd (notinbranch) +!GCC$ builtin (log2) attributes simd (notinbranch) +!GCC$ builtin (log2f) attributes simd (notinbranch) +!GCC$ builtin (sin) attributes simd (notinbranch) +!GCC$ builtin (sinf) attributes simd (notinbranch) +!GCC$ builtin (tan) attributes simd (notinbranch) +!GCC$ builtin (tanf) attributes simd (notinbranch) \ No newline at end of file diff --git a/lib/libc/include/aarch64_be-linux-gnu/fpu_control.h b/lib/libc/include/aarch64_be-linux-gnu/fpu_control.h index 46ef2a9780..83f52b7215 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/fpu_control.h +++ b/lib/libc/include/aarch64_be-linux-gnu/fpu_control.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64_be-linux-gnu/gnu/lib-names-lp64_be.h b/lib/libc/include/aarch64_be-linux-gnu/gnu/lib-names-lp64_be.h index 5c315425eb..2fba436ba3 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/gnu/lib-names-lp64_be.h +++ b/lib/libc/include/aarch64_be-linux-gnu/gnu/lib-names-lp64_be.h @@ -7,7 +7,6 @@ #define LD_SO "ld-linux-aarch64_be.so.1" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/aarch64_be-linux-gnu/ieee754.h b/lib/libc/include/aarch64_be-linux-gnu/ieee754.h index c76cf156f6..b1e2ec7dc6 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/ieee754.h +++ b/lib/libc/include/aarch64_be-linux-gnu/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/aarch64_be-linux-gnu/sys/elf.h b/lib/libc/include/aarch64_be-linux-gnu/sys/elf.h index 4314e16baa..f67343a91c 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/sys/elf.h +++ b/lib/libc/include/aarch64_be-linux-gnu/sys/elf.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64_be-linux-gnu/sys/ptrace.h b/lib/libc/include/aarch64_be-linux-gnu/sys/ptrace.h index 4f37d75d6d..90bec849d7 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/sys/ptrace.h +++ b/lib/libc/include/aarch64_be-linux-gnu/sys/ptrace.h @@ -1,5 +1,5 @@ /* `ptrace' debugger support interface. Linux/AArch64 version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -59,6 +59,8 @@ __BEGIN_DECLS #undef PTRACE_SECCOMP_GET_METADATA #undef PTRACE_GET_SYSCALL_INFO #undef PTRACE_GET_RSEQ_CONFIGURATION +#undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG +#undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG /* Type of the REQUEST argument to `ptrace.' */ enum __ptrace_request @@ -195,8 +197,18 @@ enum __ptrace_request #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO /* Get rseq configuration information. */ - PTRACE_GET_RSEQ_CONFIGURATION = 0x420f + PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION + + /* Set configuration for syscall user dispatch. */ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, +#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG + + /* Get configuration for syscall user dispatch. */ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 +#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG }; diff --git a/lib/libc/include/aarch64_be-linux-gnu/sys/ucontext.h b/lib/libc/include/aarch64_be-linux-gnu/sys/ucontext.h index 2c4417ba0c..5a24ff2e57 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/sys/ucontext.h +++ b/lib/libc/include/aarch64_be-linux-gnu/sys/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/aarch64_be-linux-gnu/sys/user.h b/lib/libc/include/aarch64_be-linux-gnu/sys/user.h index 2c4719e398..8bf4bb71a7 100644 --- a/lib/libc/include/aarch64_be-linux-gnu/sys/user.h +++ b/lib/libc/include/aarch64_be-linux-gnu/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2009-2023 Free Software Foundation, Inc. +/* Copyright (C) 2009-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/arm-linux-gnueabi/bits/dl_find_object.h b/lib/libc/include/arm-linux-gnueabi/bits/dl_find_object.h index f51873c4c1..55f29d13ec 100644 --- a/lib/libc/include/arm-linux-gnueabi/bits/dl_find_object.h +++ b/lib/libc/include/arm-linux-gnueabi/bits/dl_find_object.h @@ -1,5 +1,5 @@ /* arm definitions for finding objects. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabi/bits/fcntl.h b/lib/libc/include/arm-linux-gnueabi/bits/fcntl.h index 0a015fd137..d369766f48 100644 --- a/lib/libc/include/arm-linux-gnueabi/bits/fcntl.h +++ b/lib/libc/include/arm-linux-gnueabi/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for Linux. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabi/bits/fenv.h b/lib/libc/include/arm-linux-gnueabi/bits/fenv.h index cb312c03b7..546825e1f0 100644 --- a/lib/libc/include/arm-linux-gnueabi/bits/fenv.h +++ b/lib/libc/include/arm-linux-gnueabi/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2023 Free Software Foundation, Inc. +/* Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabi/bits/floatn.h b/lib/libc/include/arm-linux-gnueabi/bits/floatn.h index 7efc644d53..7f308138a7 100644 --- a/lib/libc/include/arm-linux-gnueabi/bits/floatn.h +++ b/lib/libc/include/arm-linux-gnueabi/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabi/bits/hwcap.h b/lib/libc/include/arm-linux-gnueabi/bits/hwcap.h index 16f1f8fb5f..86abe5f00e 100644 --- a/lib/libc/include/arm-linux-gnueabi/bits/hwcap.h +++ b/lib/libc/include/arm-linux-gnueabi/bits/hwcap.h @@ -1,5 +1,5 @@ /* Defines for bits in AT_HWCAP. ARM Linux version. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabi/bits/link.h b/lib/libc/include/arm-linux-gnueabi/bits/link.h index e0f874e338..2fb586c05c 100644 --- a/lib/libc/include/arm-linux-gnueabi/bits/link.h +++ b/lib/libc/include/arm-linux-gnueabi/bits/link.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabi/bits/long-double.h b/lib/libc/include/arm-linux-gnueabi/bits/long-double.h index 34ff5747e1..984b2c54b4 100644 --- a/lib/libc/include/arm-linux-gnueabi/bits/long-double.h +++ b/lib/libc/include/arm-linux-gnueabi/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabi/bits/procfs-id.h b/lib/libc/include/arm-linux-gnueabi/bits/procfs-id.h index d2086a253d..792e8e4e00 100644 --- a/lib/libc/include/arm-linux-gnueabi/bits/procfs-id.h +++ b/lib/libc/include/arm-linux-gnueabi/bits/procfs-id.h @@ -1,5 +1,5 @@ /* Types of pr_uid and pr_gid in struct elf_prpsinfo. Arm version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/arm-linux-gnueabi/bits/procfs.h b/lib/libc/include/arm-linux-gnueabi/bits/procfs.h index db604232b3..e10d2475c9 100644 --- a/lib/libc/include/arm-linux-gnueabi/bits/procfs.h +++ b/lib/libc/include/arm-linux-gnueabi/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. Arm version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabi/bits/rseq.h b/lib/libc/include/arm-linux-gnueabi/bits/rseq.h index d0f633e985..29cf5ebcbc 100644 --- a/lib/libc/include/arm-linux-gnueabi/bits/rseq.h +++ b/lib/libc/include/arm-linux-gnueabi/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences Linux arm architecture header. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/arm-linux-gnueabi/bits/setjmp.h b/lib/libc/include/arm-linux-gnueabi/bits/setjmp.h index ad0046a3ff..07a5d93d68 100644 --- a/lib/libc/include/arm-linux-gnueabi/bits/setjmp.h +++ b/lib/libc/include/arm-linux-gnueabi/bits/setjmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2023 Free Software Foundation, Inc. +/* Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabi/bits/shmlba.h b/lib/libc/include/arm-linux-gnueabi/bits/shmlba.h index 639c09abad..1575b8f9ea 100644 --- a/lib/libc/include/arm-linux-gnueabi/bits/shmlba.h +++ b/lib/libc/include/arm-linux-gnueabi/bits/shmlba.h @@ -1,5 +1,5 @@ /* Define SHMLBA. ARM version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabi/bits/struct_stat.h b/lib/libc/include/arm-linux-gnueabi/bits/struct_stat.h index f7dd2c807e..ad5a2ab333 100644 --- a/lib/libc/include/arm-linux-gnueabi/bits/struct_stat.h +++ b/lib/libc/include/arm-linux-gnueabi/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. Linux/arm version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabi/bits/timesize.h b/lib/libc/include/arm-linux-gnueabi/bits/timesize.h index 10207daaec..ddec182a64 100644 --- a/lib/libc/include/arm-linux-gnueabi/bits/timesize.h +++ b/lib/libc/include/arm-linux-gnueabi/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, Linux/ARM. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabi/bits/typesizes.h b/lib/libc/include/arm-linux-gnueabi/bits/typesizes.h index 9b70904d06..635e266189 100644 --- a/lib/libc/include/arm-linux-gnueabi/bits/typesizes.h +++ b/lib/libc/include/arm-linux-gnueabi/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. ARM version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabi/bits/wordsize.h b/lib/libc/include/arm-linux-gnueabi/bits/wordsize.h index 229f48ad0d..3a4baec808 100644 --- a/lib/libc/include/arm-linux-gnueabi/bits/wordsize.h +++ b/lib/libc/include/arm-linux-gnueabi/bits/wordsize.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabi/fpu_control.h b/lib/libc/include/arm-linux-gnueabi/fpu_control.h index a92cb86753..a1f8fd93d7 100644 --- a/lib/libc/include/arm-linux-gnueabi/fpu_control.h +++ b/lib/libc/include/arm-linux-gnueabi/fpu_control.h @@ -1,5 +1,5 @@ /* FPU control word definitions. ARM VFP version. - Copyright (C) 2004-2023 Free Software Foundation, Inc. + Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabi/sys/ptrace.h b/lib/libc/include/arm-linux-gnueabi/sys/ptrace.h index 4345f4ce8a..d437bc48f7 100644 --- a/lib/libc/include/arm-linux-gnueabi/sys/ptrace.h +++ b/lib/libc/include/arm-linux-gnueabi/sys/ptrace.h @@ -1,5 +1,5 @@ /* `ptrace' debugger support interface. Linux/ARM version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -204,8 +204,18 @@ enum __ptrace_request #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO /* Get rseq configuration information. */ - PTRACE_GET_RSEQ_CONFIGURATION = 0x420f + PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION + + /* Set configuration for syscall user dispatch. */ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, +#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG + + /* Get configuration for syscall user dispatch. */ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 +#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG }; diff --git a/lib/libc/include/arm-linux-gnueabi/sys/ucontext.h b/lib/libc/include/arm-linux-gnueabi/sys/ucontext.h index dda4d8820e..4a8e8bd804 100644 --- a/lib/libc/include/arm-linux-gnueabi/sys/ucontext.h +++ b/lib/libc/include/arm-linux-gnueabi/sys/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabi/sys/user.h b/lib/libc/include/arm-linux-gnueabi/sys/user.h index 0935e60335..4d1e1ca9f4 100644 --- a/lib/libc/include/arm-linux-gnueabi/sys/user.h +++ b/lib/libc/include/arm-linux-gnueabi/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/bits/dl_find_object.h b/lib/libc/include/arm-linux-gnueabihf/bits/dl_find_object.h index f51873c4c1..55f29d13ec 100644 --- a/lib/libc/include/arm-linux-gnueabihf/bits/dl_find_object.h +++ b/lib/libc/include/arm-linux-gnueabihf/bits/dl_find_object.h @@ -1,5 +1,5 @@ /* arm definitions for finding objects. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/bits/fcntl.h b/lib/libc/include/arm-linux-gnueabihf/bits/fcntl.h index 0a015fd137..d369766f48 100644 --- a/lib/libc/include/arm-linux-gnueabihf/bits/fcntl.h +++ b/lib/libc/include/arm-linux-gnueabihf/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for Linux. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/bits/fenv.h b/lib/libc/include/arm-linux-gnueabihf/bits/fenv.h index cb312c03b7..546825e1f0 100644 --- a/lib/libc/include/arm-linux-gnueabihf/bits/fenv.h +++ b/lib/libc/include/arm-linux-gnueabihf/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2023 Free Software Foundation, Inc. +/* Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/bits/floatn.h b/lib/libc/include/arm-linux-gnueabihf/bits/floatn.h index 7efc644d53..7f308138a7 100644 --- a/lib/libc/include/arm-linux-gnueabihf/bits/floatn.h +++ b/lib/libc/include/arm-linux-gnueabihf/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/bits/hwcap.h b/lib/libc/include/arm-linux-gnueabihf/bits/hwcap.h index 16f1f8fb5f..86abe5f00e 100644 --- a/lib/libc/include/arm-linux-gnueabihf/bits/hwcap.h +++ b/lib/libc/include/arm-linux-gnueabihf/bits/hwcap.h @@ -1,5 +1,5 @@ /* Defines for bits in AT_HWCAP. ARM Linux version. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/bits/link.h b/lib/libc/include/arm-linux-gnueabihf/bits/link.h index e0f874e338..2fb586c05c 100644 --- a/lib/libc/include/arm-linux-gnueabihf/bits/link.h +++ b/lib/libc/include/arm-linux-gnueabihf/bits/link.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/bits/long-double.h b/lib/libc/include/arm-linux-gnueabihf/bits/long-double.h index 34ff5747e1..984b2c54b4 100644 --- a/lib/libc/include/arm-linux-gnueabihf/bits/long-double.h +++ b/lib/libc/include/arm-linux-gnueabihf/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/bits/procfs-id.h b/lib/libc/include/arm-linux-gnueabihf/bits/procfs-id.h index d2086a253d..792e8e4e00 100644 --- a/lib/libc/include/arm-linux-gnueabihf/bits/procfs-id.h +++ b/lib/libc/include/arm-linux-gnueabihf/bits/procfs-id.h @@ -1,5 +1,5 @@ /* Types of pr_uid and pr_gid in struct elf_prpsinfo. Arm version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/arm-linux-gnueabihf/bits/procfs.h b/lib/libc/include/arm-linux-gnueabihf/bits/procfs.h index db604232b3..e10d2475c9 100644 --- a/lib/libc/include/arm-linux-gnueabihf/bits/procfs.h +++ b/lib/libc/include/arm-linux-gnueabihf/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. Arm version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/bits/rseq.h b/lib/libc/include/arm-linux-gnueabihf/bits/rseq.h index d0f633e985..29cf5ebcbc 100644 --- a/lib/libc/include/arm-linux-gnueabihf/bits/rseq.h +++ b/lib/libc/include/arm-linux-gnueabihf/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences Linux arm architecture header. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/arm-linux-gnueabihf/bits/setjmp.h b/lib/libc/include/arm-linux-gnueabihf/bits/setjmp.h index ad0046a3ff..07a5d93d68 100644 --- a/lib/libc/include/arm-linux-gnueabihf/bits/setjmp.h +++ b/lib/libc/include/arm-linux-gnueabihf/bits/setjmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2023 Free Software Foundation, Inc. +/* Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/bits/shmlba.h b/lib/libc/include/arm-linux-gnueabihf/bits/shmlba.h index 639c09abad..1575b8f9ea 100644 --- a/lib/libc/include/arm-linux-gnueabihf/bits/shmlba.h +++ b/lib/libc/include/arm-linux-gnueabihf/bits/shmlba.h @@ -1,5 +1,5 @@ /* Define SHMLBA. ARM version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/bits/struct_stat.h b/lib/libc/include/arm-linux-gnueabihf/bits/struct_stat.h index f7dd2c807e..ad5a2ab333 100644 --- a/lib/libc/include/arm-linux-gnueabihf/bits/struct_stat.h +++ b/lib/libc/include/arm-linux-gnueabihf/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. Linux/arm version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/bits/timesize.h b/lib/libc/include/arm-linux-gnueabihf/bits/timesize.h index 10207daaec..ddec182a64 100644 --- a/lib/libc/include/arm-linux-gnueabihf/bits/timesize.h +++ b/lib/libc/include/arm-linux-gnueabihf/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, Linux/ARM. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/bits/typesizes.h b/lib/libc/include/arm-linux-gnueabihf/bits/typesizes.h index 9b70904d06..635e266189 100644 --- a/lib/libc/include/arm-linux-gnueabihf/bits/typesizes.h +++ b/lib/libc/include/arm-linux-gnueabihf/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. ARM version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/bits/wordsize.h b/lib/libc/include/arm-linux-gnueabihf/bits/wordsize.h index 229f48ad0d..3a4baec808 100644 --- a/lib/libc/include/arm-linux-gnueabihf/bits/wordsize.h +++ b/lib/libc/include/arm-linux-gnueabihf/bits/wordsize.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/fpu_control.h b/lib/libc/include/arm-linux-gnueabihf/fpu_control.h index a92cb86753..a1f8fd93d7 100644 --- a/lib/libc/include/arm-linux-gnueabihf/fpu_control.h +++ b/lib/libc/include/arm-linux-gnueabihf/fpu_control.h @@ -1,5 +1,5 @@ /* FPU control word definitions. ARM VFP version. - Copyright (C) 2004-2023 Free Software Foundation, Inc. + Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/sys/ptrace.h b/lib/libc/include/arm-linux-gnueabihf/sys/ptrace.h index 4345f4ce8a..d437bc48f7 100644 --- a/lib/libc/include/arm-linux-gnueabihf/sys/ptrace.h +++ b/lib/libc/include/arm-linux-gnueabihf/sys/ptrace.h @@ -1,5 +1,5 @@ /* `ptrace' debugger support interface. Linux/ARM version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -204,8 +204,18 @@ enum __ptrace_request #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO /* Get rseq configuration information. */ - PTRACE_GET_RSEQ_CONFIGURATION = 0x420f + PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION + + /* Set configuration for syscall user dispatch. */ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, +#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG + + /* Get configuration for syscall user dispatch. */ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 +#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG }; diff --git a/lib/libc/include/arm-linux-gnueabihf/sys/ucontext.h b/lib/libc/include/arm-linux-gnueabihf/sys/ucontext.h index dda4d8820e..4a8e8bd804 100644 --- a/lib/libc/include/arm-linux-gnueabihf/sys/ucontext.h +++ b/lib/libc/include/arm-linux-gnueabihf/sys/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/sys/user.h b/lib/libc/include/arm-linux-gnueabihf/sys/user.h index 0935e60335..4d1e1ca9f4 100644 --- a/lib/libc/include/arm-linux-gnueabihf/sys/user.h +++ b/lib/libc/include/arm-linux-gnueabihf/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/bits/dl_find_object.h b/lib/libc/include/armeb-linux-gnueabi/bits/dl_find_object.h index f51873c4c1..55f29d13ec 100644 --- a/lib/libc/include/armeb-linux-gnueabi/bits/dl_find_object.h +++ b/lib/libc/include/armeb-linux-gnueabi/bits/dl_find_object.h @@ -1,5 +1,5 @@ /* arm definitions for finding objects. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/bits/fcntl.h b/lib/libc/include/armeb-linux-gnueabi/bits/fcntl.h index 0a015fd137..d369766f48 100644 --- a/lib/libc/include/armeb-linux-gnueabi/bits/fcntl.h +++ b/lib/libc/include/armeb-linux-gnueabi/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for Linux. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/bits/fenv.h b/lib/libc/include/armeb-linux-gnueabi/bits/fenv.h index cb312c03b7..546825e1f0 100644 --- a/lib/libc/include/armeb-linux-gnueabi/bits/fenv.h +++ b/lib/libc/include/armeb-linux-gnueabi/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2023 Free Software Foundation, Inc. +/* Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/bits/floatn.h b/lib/libc/include/armeb-linux-gnueabi/bits/floatn.h index 7efc644d53..7f308138a7 100644 --- a/lib/libc/include/armeb-linux-gnueabi/bits/floatn.h +++ b/lib/libc/include/armeb-linux-gnueabi/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/bits/hwcap.h b/lib/libc/include/armeb-linux-gnueabi/bits/hwcap.h index 16f1f8fb5f..86abe5f00e 100644 --- a/lib/libc/include/armeb-linux-gnueabi/bits/hwcap.h +++ b/lib/libc/include/armeb-linux-gnueabi/bits/hwcap.h @@ -1,5 +1,5 @@ /* Defines for bits in AT_HWCAP. ARM Linux version. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/bits/link.h b/lib/libc/include/armeb-linux-gnueabi/bits/link.h index e0f874e338..2fb586c05c 100644 --- a/lib/libc/include/armeb-linux-gnueabi/bits/link.h +++ b/lib/libc/include/armeb-linux-gnueabi/bits/link.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/bits/long-double.h b/lib/libc/include/armeb-linux-gnueabi/bits/long-double.h index 34ff5747e1..984b2c54b4 100644 --- a/lib/libc/include/armeb-linux-gnueabi/bits/long-double.h +++ b/lib/libc/include/armeb-linux-gnueabi/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/bits/procfs-id.h b/lib/libc/include/armeb-linux-gnueabi/bits/procfs-id.h index d2086a253d..792e8e4e00 100644 --- a/lib/libc/include/armeb-linux-gnueabi/bits/procfs-id.h +++ b/lib/libc/include/armeb-linux-gnueabi/bits/procfs-id.h @@ -1,5 +1,5 @@ /* Types of pr_uid and pr_gid in struct elf_prpsinfo. Arm version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/armeb-linux-gnueabi/bits/procfs.h b/lib/libc/include/armeb-linux-gnueabi/bits/procfs.h index db604232b3..e10d2475c9 100644 --- a/lib/libc/include/armeb-linux-gnueabi/bits/procfs.h +++ b/lib/libc/include/armeb-linux-gnueabi/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. Arm version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/bits/rseq.h b/lib/libc/include/armeb-linux-gnueabi/bits/rseq.h index d0f633e985..29cf5ebcbc 100644 --- a/lib/libc/include/armeb-linux-gnueabi/bits/rseq.h +++ b/lib/libc/include/armeb-linux-gnueabi/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences Linux arm architecture header. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/armeb-linux-gnueabi/bits/setjmp.h b/lib/libc/include/armeb-linux-gnueabi/bits/setjmp.h index ad0046a3ff..07a5d93d68 100644 --- a/lib/libc/include/armeb-linux-gnueabi/bits/setjmp.h +++ b/lib/libc/include/armeb-linux-gnueabi/bits/setjmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2023 Free Software Foundation, Inc. +/* Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/bits/shmlba.h b/lib/libc/include/armeb-linux-gnueabi/bits/shmlba.h index 639c09abad..1575b8f9ea 100644 --- a/lib/libc/include/armeb-linux-gnueabi/bits/shmlba.h +++ b/lib/libc/include/armeb-linux-gnueabi/bits/shmlba.h @@ -1,5 +1,5 @@ /* Define SHMLBA. ARM version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/bits/struct_stat.h b/lib/libc/include/armeb-linux-gnueabi/bits/struct_stat.h index f7dd2c807e..ad5a2ab333 100644 --- a/lib/libc/include/armeb-linux-gnueabi/bits/struct_stat.h +++ b/lib/libc/include/armeb-linux-gnueabi/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. Linux/arm version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/bits/timesize.h b/lib/libc/include/armeb-linux-gnueabi/bits/timesize.h index 10207daaec..ddec182a64 100644 --- a/lib/libc/include/armeb-linux-gnueabi/bits/timesize.h +++ b/lib/libc/include/armeb-linux-gnueabi/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, Linux/ARM. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/bits/typesizes.h b/lib/libc/include/armeb-linux-gnueabi/bits/typesizes.h index 9b70904d06..635e266189 100644 --- a/lib/libc/include/armeb-linux-gnueabi/bits/typesizes.h +++ b/lib/libc/include/armeb-linux-gnueabi/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. ARM version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/bits/wordsize.h b/lib/libc/include/armeb-linux-gnueabi/bits/wordsize.h index 229f48ad0d..3a4baec808 100644 --- a/lib/libc/include/armeb-linux-gnueabi/bits/wordsize.h +++ b/lib/libc/include/armeb-linux-gnueabi/bits/wordsize.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/fpu_control.h b/lib/libc/include/armeb-linux-gnueabi/fpu_control.h index a92cb86753..a1f8fd93d7 100644 --- a/lib/libc/include/armeb-linux-gnueabi/fpu_control.h +++ b/lib/libc/include/armeb-linux-gnueabi/fpu_control.h @@ -1,5 +1,5 @@ /* FPU control word definitions. ARM VFP version. - Copyright (C) 2004-2023 Free Software Foundation, Inc. + Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/sys/ptrace.h b/lib/libc/include/armeb-linux-gnueabi/sys/ptrace.h index 4345f4ce8a..d437bc48f7 100644 --- a/lib/libc/include/armeb-linux-gnueabi/sys/ptrace.h +++ b/lib/libc/include/armeb-linux-gnueabi/sys/ptrace.h @@ -1,5 +1,5 @@ /* `ptrace' debugger support interface. Linux/ARM version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -204,8 +204,18 @@ enum __ptrace_request #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO /* Get rseq configuration information. */ - PTRACE_GET_RSEQ_CONFIGURATION = 0x420f + PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION + + /* Set configuration for syscall user dispatch. */ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, +#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG + + /* Get configuration for syscall user dispatch. */ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 +#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG }; diff --git a/lib/libc/include/armeb-linux-gnueabi/sys/ucontext.h b/lib/libc/include/armeb-linux-gnueabi/sys/ucontext.h index dda4d8820e..4a8e8bd804 100644 --- a/lib/libc/include/armeb-linux-gnueabi/sys/ucontext.h +++ b/lib/libc/include/armeb-linux-gnueabi/sys/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/sys/user.h b/lib/libc/include/armeb-linux-gnueabi/sys/user.h index 0935e60335..4d1e1ca9f4 100644 --- a/lib/libc/include/armeb-linux-gnueabi/sys/user.h +++ b/lib/libc/include/armeb-linux-gnueabi/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/bits/dl_find_object.h b/lib/libc/include/armeb-linux-gnueabihf/bits/dl_find_object.h index f51873c4c1..55f29d13ec 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/bits/dl_find_object.h +++ b/lib/libc/include/armeb-linux-gnueabihf/bits/dl_find_object.h @@ -1,5 +1,5 @@ /* arm definitions for finding objects. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/bits/fcntl.h b/lib/libc/include/armeb-linux-gnueabihf/bits/fcntl.h index 0a015fd137..d369766f48 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/bits/fcntl.h +++ b/lib/libc/include/armeb-linux-gnueabihf/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for Linux. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/bits/fenv.h b/lib/libc/include/armeb-linux-gnueabihf/bits/fenv.h index cb312c03b7..546825e1f0 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/bits/fenv.h +++ b/lib/libc/include/armeb-linux-gnueabihf/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2023 Free Software Foundation, Inc. +/* Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/bits/floatn.h b/lib/libc/include/armeb-linux-gnueabihf/bits/floatn.h index 7efc644d53..7f308138a7 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/bits/floatn.h +++ b/lib/libc/include/armeb-linux-gnueabihf/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/bits/hwcap.h b/lib/libc/include/armeb-linux-gnueabihf/bits/hwcap.h index 16f1f8fb5f..86abe5f00e 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/bits/hwcap.h +++ b/lib/libc/include/armeb-linux-gnueabihf/bits/hwcap.h @@ -1,5 +1,5 @@ /* Defines for bits in AT_HWCAP. ARM Linux version. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/bits/link.h b/lib/libc/include/armeb-linux-gnueabihf/bits/link.h index e0f874e338..2fb586c05c 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/bits/link.h +++ b/lib/libc/include/armeb-linux-gnueabihf/bits/link.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/bits/long-double.h b/lib/libc/include/armeb-linux-gnueabihf/bits/long-double.h index 34ff5747e1..984b2c54b4 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/bits/long-double.h +++ b/lib/libc/include/armeb-linux-gnueabihf/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/bits/procfs-id.h b/lib/libc/include/armeb-linux-gnueabihf/bits/procfs-id.h index d2086a253d..792e8e4e00 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/bits/procfs-id.h +++ b/lib/libc/include/armeb-linux-gnueabihf/bits/procfs-id.h @@ -1,5 +1,5 @@ /* Types of pr_uid and pr_gid in struct elf_prpsinfo. Arm version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/armeb-linux-gnueabihf/bits/procfs.h b/lib/libc/include/armeb-linux-gnueabihf/bits/procfs.h index db604232b3..e10d2475c9 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/bits/procfs.h +++ b/lib/libc/include/armeb-linux-gnueabihf/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. Arm version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/bits/rseq.h b/lib/libc/include/armeb-linux-gnueabihf/bits/rseq.h index d0f633e985..29cf5ebcbc 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/bits/rseq.h +++ b/lib/libc/include/armeb-linux-gnueabihf/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences Linux arm architecture header. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/armeb-linux-gnueabihf/bits/setjmp.h b/lib/libc/include/armeb-linux-gnueabihf/bits/setjmp.h index ad0046a3ff..07a5d93d68 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/bits/setjmp.h +++ b/lib/libc/include/armeb-linux-gnueabihf/bits/setjmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2023 Free Software Foundation, Inc. +/* Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/bits/shmlba.h b/lib/libc/include/armeb-linux-gnueabihf/bits/shmlba.h index 639c09abad..1575b8f9ea 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/bits/shmlba.h +++ b/lib/libc/include/armeb-linux-gnueabihf/bits/shmlba.h @@ -1,5 +1,5 @@ /* Define SHMLBA. ARM version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/bits/struct_stat.h b/lib/libc/include/armeb-linux-gnueabihf/bits/struct_stat.h index f7dd2c807e..ad5a2ab333 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/bits/struct_stat.h +++ b/lib/libc/include/armeb-linux-gnueabihf/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. Linux/arm version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/bits/timesize.h b/lib/libc/include/armeb-linux-gnueabihf/bits/timesize.h index 10207daaec..ddec182a64 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/bits/timesize.h +++ b/lib/libc/include/armeb-linux-gnueabihf/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, Linux/ARM. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/bits/typesizes.h b/lib/libc/include/armeb-linux-gnueabihf/bits/typesizes.h index 9b70904d06..635e266189 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/bits/typesizes.h +++ b/lib/libc/include/armeb-linux-gnueabihf/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. ARM version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/bits/wordsize.h b/lib/libc/include/armeb-linux-gnueabihf/bits/wordsize.h index 229f48ad0d..3a4baec808 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/bits/wordsize.h +++ b/lib/libc/include/armeb-linux-gnueabihf/bits/wordsize.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/fpu_control.h b/lib/libc/include/armeb-linux-gnueabihf/fpu_control.h index a92cb86753..a1f8fd93d7 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/fpu_control.h +++ b/lib/libc/include/armeb-linux-gnueabihf/fpu_control.h @@ -1,5 +1,5 @@ /* FPU control word definitions. ARM VFP version. - Copyright (C) 2004-2023 Free Software Foundation, Inc. + Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/sys/ptrace.h b/lib/libc/include/armeb-linux-gnueabihf/sys/ptrace.h index 4345f4ce8a..d437bc48f7 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/sys/ptrace.h +++ b/lib/libc/include/armeb-linux-gnueabihf/sys/ptrace.h @@ -1,5 +1,5 @@ /* `ptrace' debugger support interface. Linux/ARM version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -204,8 +204,18 @@ enum __ptrace_request #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO /* Get rseq configuration information. */ - PTRACE_GET_RSEQ_CONFIGURATION = 0x420f + PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION + + /* Set configuration for syscall user dispatch. */ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, +#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG + + /* Get configuration for syscall user dispatch. */ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 +#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG }; diff --git a/lib/libc/include/armeb-linux-gnueabihf/sys/ucontext.h b/lib/libc/include/armeb-linux-gnueabihf/sys/ucontext.h index dda4d8820e..4a8e8bd804 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/sys/ucontext.h +++ b/lib/libc/include/armeb-linux-gnueabihf/sys/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/sys/user.h b/lib/libc/include/armeb-linux-gnueabihf/sys/user.h index 0935e60335..4d1e1ca9f4 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/sys/user.h +++ b/lib/libc/include/armeb-linux-gnueabihf/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabi/bits/fcntl.h b/lib/libc/include/csky-linux-gnueabi/bits/fcntl.h index fe46d428e6..9c454a8d14 100644 --- a/lib/libc/include/csky-linux-gnueabi/bits/fcntl.h +++ b/lib/libc/include/csky-linux-gnueabi/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for the generic Linux ABI. - Copyright (C) 2011-2023 Free Software Foundation, Inc. + Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabi/bits/fenv.h b/lib/libc/include/csky-linux-gnueabi/bits/fenv.h index a4fbccbf57..8b234a86e7 100644 --- a/lib/libc/include/csky-linux-gnueabi/bits/fenv.h +++ b/lib/libc/include/csky-linux-gnueabi/bits/fenv.h @@ -1,5 +1,5 @@ /* Floating point environment. C-SKY version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabi/bits/floatn.h b/lib/libc/include/csky-linux-gnueabi/bits/floatn.h index 7efc644d53..7f308138a7 100644 --- a/lib/libc/include/csky-linux-gnueabi/bits/floatn.h +++ b/lib/libc/include/csky-linux-gnueabi/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabi/bits/link.h b/lib/libc/include/csky-linux-gnueabi/bits/link.h index 4f4c3707cc..9b87a4c980 100644 --- a/lib/libc/include/csky-linux-gnueabi/bits/link.h +++ b/lib/libc/include/csky-linux-gnueabi/bits/link.h @@ -1,5 +1,5 @@ /* Machine-specific declarations for dynamic linker interface. C-SKY version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabi/bits/long-double.h b/lib/libc/include/csky-linux-gnueabi/bits/long-double.h index 34ff5747e1..984b2c54b4 100644 --- a/lib/libc/include/csky-linux-gnueabi/bits/long-double.h +++ b/lib/libc/include/csky-linux-gnueabi/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabi/bits/procfs.h b/lib/libc/include/csky-linux-gnueabi/bits/procfs.h index a126329ca2..8c51a895bc 100644 --- a/lib/libc/include/csky-linux-gnueabi/bits/procfs.h +++ b/lib/libc/include/csky-linux-gnueabi/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. C-SKY version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabi/bits/rseq.h b/lib/libc/include/csky-linux-gnueabi/bits/rseq.h index fe2e400300..5ea695ad1c 100644 --- a/lib/libc/include/csky-linux-gnueabi/bits/rseq.h +++ b/lib/libc/include/csky-linux-gnueabi/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences architecture header. Stub version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/csky-linux-gnueabi/bits/setjmp.h b/lib/libc/include/csky-linux-gnueabi/bits/setjmp.h index e6f7d1230b..ff35d9136c 100644 --- a/lib/libc/include/csky-linux-gnueabi/bits/setjmp.h +++ b/lib/libc/include/csky-linux-gnueabi/bits/setjmp.h @@ -1,5 +1,5 @@ /* Define the machine-dependent type `jmp_buf'. C-SKY version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabi/bits/shmlba.h b/lib/libc/include/csky-linux-gnueabi/bits/shmlba.h index 9aba310893..af02b498ba 100644 --- a/lib/libc/include/csky-linux-gnueabi/bits/shmlba.h +++ b/lib/libc/include/csky-linux-gnueabi/bits/shmlba.h @@ -1,5 +1,5 @@ /* Define SHMLBA. C-SKY version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabi/bits/statfs.h b/lib/libc/include/csky-linux-gnueabi/bits/statfs.h index 90a612c57a..784544e717 100644 --- a/lib/libc/include/csky-linux-gnueabi/bits/statfs.h +++ b/lib/libc/include/csky-linux-gnueabi/bits/statfs.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2011-2023 Free Software Foundation, Inc. +/* Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabi/bits/struct_rwlock.h b/lib/libc/include/csky-linux-gnueabi/bits/struct_rwlock.h deleted file mode 100644 index 91b0a3b012..0000000000 --- a/lib/libc/include/csky-linux-gnueabi/bits/struct_rwlock.h +++ /dev/null @@ -1,61 +0,0 @@ -/* Default read-write lock implementation struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef __RWLOCK_INTERNAL_H -#define __RWLOCK_INTERNAL_H - -#include - -/* Generic struct for both POSIX read-write lock. New ports are expected - to use the default layout, however archictetures can redefine it to add - arch-specific extensions (such as lock-elision). The struct have a size - of 32 bytes on both LP32 and LP64 architectures. */ - -struct __pthread_rwlock_arch_t -{ - unsigned int __readers; - unsigned int __writers; - unsigned int __wrphase_futex; - unsigned int __writers_futex; - unsigned int __pad3; - unsigned int __pad4; - /* FLAGS must stay at its position in the structure to maintain - binary compatibility. */ -#if __BYTE_ORDER == __BIG_ENDIAN - unsigned char __pad1; - unsigned char __pad2; - unsigned char __shared; - unsigned char __flags; -#else - unsigned char __flags; - unsigned char __shared; - unsigned char __pad1; - unsigned char __pad2; -#endif - int __cur_writer; -}; - -#if __BYTE_ORDER == __BIG_ENDIAN -# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ - 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 -#else -# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ - 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 -#endif - -#endif \ No newline at end of file diff --git a/lib/libc/include/csky-linux-gnueabi/bits/struct_stat.h b/lib/libc/include/csky-linux-gnueabi/bits/struct_stat.h index 910bd8fc12..9620943315 100644 --- a/lib/libc/include/csky-linux-gnueabi/bits/struct_stat.h +++ b/lib/libc/include/csky-linux-gnueabi/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. Linux/csky version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabi/bits/timesize.h b/lib/libc/include/csky-linux-gnueabi/bits/timesize.h index 78484f9587..6a3ad772e0 100644 --- a/lib/libc/include/csky-linux-gnueabi/bits/timesize.h +++ b/lib/libc/include/csky-linux-gnueabi/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, Linux/csky. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabi/bits/typesizes.h b/lib/libc/include/csky-linux-gnueabi/bits/typesizes.h index fa5fab6be4..d875caa94e 100644 --- a/lib/libc/include/csky-linux-gnueabi/bits/typesizes.h +++ b/lib/libc/include/csky-linux-gnueabi/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. For the generic Linux ABI. - Copyright (C) 2011-2023 Free Software Foundation, Inc. + Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabi/bits/wordsize.h b/lib/libc/include/csky-linux-gnueabi/bits/wordsize.h index 229f48ad0d..3a4baec808 100644 --- a/lib/libc/include/csky-linux-gnueabi/bits/wordsize.h +++ b/lib/libc/include/csky-linux-gnueabi/bits/wordsize.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabi/fpu_control.h b/lib/libc/include/csky-linux-gnueabi/fpu_control.h index a198a3f9dc..9ef319704d 100644 --- a/lib/libc/include/csky-linux-gnueabi/fpu_control.h +++ b/lib/libc/include/csky-linux-gnueabi/fpu_control.h @@ -1,5 +1,5 @@ /* FPU control word bits. C-SKY version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabi/gnu/lib-names.h b/lib/libc/include/csky-linux-gnueabi/gnu/lib-names.h index 31a8308c70..d89cac7b8f 100644 --- a/lib/libc/include/csky-linux-gnueabi/gnu/lib-names.h +++ b/lib/libc/include/csky-linux-gnueabi/gnu/lib-names.h @@ -8,7 +8,6 @@ #define LD_SO "ld-linux-cskyv2.so.1" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/csky-linux-gnueabi/sys/cachectl.h b/lib/libc/include/csky-linux-gnueabi/sys/cachectl.h index 3b37187b2a..ff88e7b8b9 100644 --- a/lib/libc/include/csky-linux-gnueabi/sys/cachectl.h +++ b/lib/libc/include/csky-linux-gnueabi/sys/cachectl.h @@ -1,5 +1,5 @@ /* C-SKY cache flushing interface. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabi/sys/ucontext.h b/lib/libc/include/csky-linux-gnueabi/sys/ucontext.h index ddc502d191..d8aa9779b5 100644 --- a/lib/libc/include/csky-linux-gnueabi/sys/ucontext.h +++ b/lib/libc/include/csky-linux-gnueabi/sys/ucontext.h @@ -1,5 +1,5 @@ /* struct ucontext definition, C-SKY version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabi/sys/user.h b/lib/libc/include/csky-linux-gnueabi/sys/user.h index a03437ad6d..72137936ec 100644 --- a/lib/libc/include/csky-linux-gnueabi/sys/user.h +++ b/lib/libc/include/csky-linux-gnueabi/sys/user.h @@ -1,6 +1,6 @@ /* This file is not used by C-SKY GDB. ptrace can use pt_regs definition from linux kernel directly. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabihf/bits/fcntl.h b/lib/libc/include/csky-linux-gnueabihf/bits/fcntl.h index fe46d428e6..9c454a8d14 100644 --- a/lib/libc/include/csky-linux-gnueabihf/bits/fcntl.h +++ b/lib/libc/include/csky-linux-gnueabihf/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for the generic Linux ABI. - Copyright (C) 2011-2023 Free Software Foundation, Inc. + Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabihf/bits/fenv.h b/lib/libc/include/csky-linux-gnueabihf/bits/fenv.h index a4fbccbf57..8b234a86e7 100644 --- a/lib/libc/include/csky-linux-gnueabihf/bits/fenv.h +++ b/lib/libc/include/csky-linux-gnueabihf/bits/fenv.h @@ -1,5 +1,5 @@ /* Floating point environment. C-SKY version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabihf/bits/floatn.h b/lib/libc/include/csky-linux-gnueabihf/bits/floatn.h index 7efc644d53..7f308138a7 100644 --- a/lib/libc/include/csky-linux-gnueabihf/bits/floatn.h +++ b/lib/libc/include/csky-linux-gnueabihf/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabihf/bits/link.h b/lib/libc/include/csky-linux-gnueabihf/bits/link.h index 4f4c3707cc..9b87a4c980 100644 --- a/lib/libc/include/csky-linux-gnueabihf/bits/link.h +++ b/lib/libc/include/csky-linux-gnueabihf/bits/link.h @@ -1,5 +1,5 @@ /* Machine-specific declarations for dynamic linker interface. C-SKY version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabihf/bits/long-double.h b/lib/libc/include/csky-linux-gnueabihf/bits/long-double.h index 34ff5747e1..984b2c54b4 100644 --- a/lib/libc/include/csky-linux-gnueabihf/bits/long-double.h +++ b/lib/libc/include/csky-linux-gnueabihf/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabihf/bits/procfs.h b/lib/libc/include/csky-linux-gnueabihf/bits/procfs.h index a126329ca2..8c51a895bc 100644 --- a/lib/libc/include/csky-linux-gnueabihf/bits/procfs.h +++ b/lib/libc/include/csky-linux-gnueabihf/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. C-SKY version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabihf/bits/rseq.h b/lib/libc/include/csky-linux-gnueabihf/bits/rseq.h index fe2e400300..5ea695ad1c 100644 --- a/lib/libc/include/csky-linux-gnueabihf/bits/rseq.h +++ b/lib/libc/include/csky-linux-gnueabihf/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences architecture header. Stub version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/csky-linux-gnueabihf/bits/setjmp.h b/lib/libc/include/csky-linux-gnueabihf/bits/setjmp.h index e6f7d1230b..ff35d9136c 100644 --- a/lib/libc/include/csky-linux-gnueabihf/bits/setjmp.h +++ b/lib/libc/include/csky-linux-gnueabihf/bits/setjmp.h @@ -1,5 +1,5 @@ /* Define the machine-dependent type `jmp_buf'. C-SKY version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabihf/bits/shmlba.h b/lib/libc/include/csky-linux-gnueabihf/bits/shmlba.h index 9aba310893..af02b498ba 100644 --- a/lib/libc/include/csky-linux-gnueabihf/bits/shmlba.h +++ b/lib/libc/include/csky-linux-gnueabihf/bits/shmlba.h @@ -1,5 +1,5 @@ /* Define SHMLBA. C-SKY version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabihf/bits/statfs.h b/lib/libc/include/csky-linux-gnueabihf/bits/statfs.h index 90a612c57a..784544e717 100644 --- a/lib/libc/include/csky-linux-gnueabihf/bits/statfs.h +++ b/lib/libc/include/csky-linux-gnueabihf/bits/statfs.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2011-2023 Free Software Foundation, Inc. +/* Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabihf/bits/struct_rwlock.h b/lib/libc/include/csky-linux-gnueabihf/bits/struct_rwlock.h deleted file mode 100644 index 91b0a3b012..0000000000 --- a/lib/libc/include/csky-linux-gnueabihf/bits/struct_rwlock.h +++ /dev/null @@ -1,61 +0,0 @@ -/* Default read-write lock implementation struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef __RWLOCK_INTERNAL_H -#define __RWLOCK_INTERNAL_H - -#include - -/* Generic struct for both POSIX read-write lock. New ports are expected - to use the default layout, however archictetures can redefine it to add - arch-specific extensions (such as lock-elision). The struct have a size - of 32 bytes on both LP32 and LP64 architectures. */ - -struct __pthread_rwlock_arch_t -{ - unsigned int __readers; - unsigned int __writers; - unsigned int __wrphase_futex; - unsigned int __writers_futex; - unsigned int __pad3; - unsigned int __pad4; - /* FLAGS must stay at its position in the structure to maintain - binary compatibility. */ -#if __BYTE_ORDER == __BIG_ENDIAN - unsigned char __pad1; - unsigned char __pad2; - unsigned char __shared; - unsigned char __flags; -#else - unsigned char __flags; - unsigned char __shared; - unsigned char __pad1; - unsigned char __pad2; -#endif - int __cur_writer; -}; - -#if __BYTE_ORDER == __BIG_ENDIAN -# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ - 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 -#else -# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ - 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 -#endif - -#endif \ No newline at end of file diff --git a/lib/libc/include/csky-linux-gnueabihf/bits/struct_stat.h b/lib/libc/include/csky-linux-gnueabihf/bits/struct_stat.h index 910bd8fc12..9620943315 100644 --- a/lib/libc/include/csky-linux-gnueabihf/bits/struct_stat.h +++ b/lib/libc/include/csky-linux-gnueabihf/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. Linux/csky version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabihf/bits/timesize.h b/lib/libc/include/csky-linux-gnueabihf/bits/timesize.h index 78484f9587..6a3ad772e0 100644 --- a/lib/libc/include/csky-linux-gnueabihf/bits/timesize.h +++ b/lib/libc/include/csky-linux-gnueabihf/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, Linux/csky. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabihf/bits/typesizes.h b/lib/libc/include/csky-linux-gnueabihf/bits/typesizes.h index fa5fab6be4..d875caa94e 100644 --- a/lib/libc/include/csky-linux-gnueabihf/bits/typesizes.h +++ b/lib/libc/include/csky-linux-gnueabihf/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. For the generic Linux ABI. - Copyright (C) 2011-2023 Free Software Foundation, Inc. + Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabihf/bits/wordsize.h b/lib/libc/include/csky-linux-gnueabihf/bits/wordsize.h index 229f48ad0d..3a4baec808 100644 --- a/lib/libc/include/csky-linux-gnueabihf/bits/wordsize.h +++ b/lib/libc/include/csky-linux-gnueabihf/bits/wordsize.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabihf/fpu_control.h b/lib/libc/include/csky-linux-gnueabihf/fpu_control.h index a198a3f9dc..9ef319704d 100644 --- a/lib/libc/include/csky-linux-gnueabihf/fpu_control.h +++ b/lib/libc/include/csky-linux-gnueabihf/fpu_control.h @@ -1,5 +1,5 @@ /* FPU control word bits. C-SKY version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabihf/gnu/lib-names.h b/lib/libc/include/csky-linux-gnueabihf/gnu/lib-names.h index 8909004c6c..374b226d3d 100644 --- a/lib/libc/include/csky-linux-gnueabihf/gnu/lib-names.h +++ b/lib/libc/include/csky-linux-gnueabihf/gnu/lib-names.h @@ -8,7 +8,6 @@ #define LD_SO "ld-linux-cskyv2-hf.so.1" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/csky-linux-gnueabihf/sys/cachectl.h b/lib/libc/include/csky-linux-gnueabihf/sys/cachectl.h index 3b37187b2a..ff88e7b8b9 100644 --- a/lib/libc/include/csky-linux-gnueabihf/sys/cachectl.h +++ b/lib/libc/include/csky-linux-gnueabihf/sys/cachectl.h @@ -1,5 +1,5 @@ /* C-SKY cache flushing interface. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabihf/sys/ucontext.h b/lib/libc/include/csky-linux-gnueabihf/sys/ucontext.h index ddc502d191..d8aa9779b5 100644 --- a/lib/libc/include/csky-linux-gnueabihf/sys/ucontext.h +++ b/lib/libc/include/csky-linux-gnueabihf/sys/ucontext.h @@ -1,5 +1,5 @@ /* struct ucontext definition, C-SKY version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/csky-linux-gnueabihf/sys/user.h b/lib/libc/include/csky-linux-gnueabihf/sys/user.h index a03437ad6d..72137936ec 100644 --- a/lib/libc/include/csky-linux-gnueabihf/sys/user.h +++ b/lib/libc/include/csky-linux-gnueabihf/sys/user.h @@ -1,6 +1,6 @@ /* This file is not used by C-SKY GDB. ptrace can use pt_regs definition from linux kernel directly. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/aio.h b/lib/libc/include/generic-glibc/aio.h index 09f2cd7a6c..fb1f9b4eb2 100644 --- a/lib/libc/include/generic-glibc/aio.h +++ b/lib/libc/include/generic-glibc/aio.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/aliases.h b/lib/libc/include/generic-glibc/aliases.h index 09fcdaee1a..657613f0fa 100644 --- a/lib/libc/include/generic-glibc/aliases.h +++ b/lib/libc/include/generic-glibc/aliases.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/alloca.h b/lib/libc/include/generic-glibc/alloca.h index c859d00762..cb583b3f43 100644 --- a/lib/libc/include/generic-glibc/alloca.h +++ b/lib/libc/include/generic-glibc/alloca.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/ar.h b/lib/libc/include/generic-glibc/ar.h index 41a0bbf629..d074c4ae70 100644 --- a/lib/libc/include/generic-glibc/ar.h +++ b/lib/libc/include/generic-glibc/ar.h @@ -1,5 +1,5 @@ /* Header describing `ar' archive file format. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/argp.h b/lib/libc/include/generic-glibc/argp.h index f6d4b81c71..d6b1f5e220 100644 --- a/lib/libc/include/generic-glibc/argp.h +++ b/lib/libc/include/generic-glibc/argp.h @@ -1,5 +1,5 @@ /* Hierarchical argument parsing, layered over getopt. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. Written by Miles Bader . diff --git a/lib/libc/include/generic-glibc/argz.h b/lib/libc/include/generic-glibc/argz.h index a11ba74b93..2b2c8f8bd4 100644 --- a/lib/libc/include/generic-glibc/argz.h +++ b/lib/libc/include/generic-glibc/argz.h @@ -1,5 +1,5 @@ /* Routines for dealing with '\0' separated arg vectors. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/arpa/inet.h b/lib/libc/include/generic-glibc/arpa/inet.h index b66521d27f..85bddd3bd2 100644 --- a/lib/libc/include/generic-glibc/arpa/inet.h +++ b/lib/libc/include/generic-glibc/arpa/inet.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/assert.h b/lib/libc/include/generic-glibc/assert.h index b099485e8c..a7dc006dc3 100644 --- a/lib/libc/include/generic-glibc/assert.h +++ b/lib/libc/include/generic-glibc/assert.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/argp-ldbl.h b/lib/libc/include/generic-glibc/bits/argp-ldbl.h index 4a4ca5f443..8e5f113227 100644 --- a/lib/libc/include/generic-glibc/bits/argp-ldbl.h +++ b/lib/libc/include/generic-glibc/bits/argp-ldbl.h @@ -1,5 +1,5 @@ /* Redirections for argp functions for -mlong-double-64. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/atomic_wide_counter.h b/lib/libc/include/generic-glibc/bits/atomic_wide_counter.h index a41140d824..e168a1f18d 100644 --- a/lib/libc/include/generic-glibc/bits/atomic_wide_counter.h +++ b/lib/libc/include/generic-glibc/bits/atomic_wide_counter.h @@ -1,5 +1,5 @@ /* Monotonically increasing wide counters (at least 62 bits). - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/byteswap.h b/lib/libc/include/generic-glibc/bits/byteswap.h index d26ee4a405..514b25b180 100644 --- a/lib/libc/include/generic-glibc/bits/byteswap.h +++ b/lib/libc/include/generic-glibc/bits/byteswap.h @@ -1,5 +1,5 @@ /* Macros and inline functions to swap the order of bytes in integer values. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/cmathcalls.h b/lib/libc/include/generic-glibc/bits/cmathcalls.h index d56893dc82..04d3582e05 100644 --- a/lib/libc/include/generic-glibc/bits/cmathcalls.h +++ b/lib/libc/include/generic-glibc/bits/cmathcalls.h @@ -1,6 +1,6 @@ /* Prototype declarations for complex math functions; helper file for . - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/confname.h b/lib/libc/include/generic-glibc/bits/confname.h index e9c89a668c..b6cb5fad98 100644 --- a/lib/libc/include/generic-glibc/bits/confname.h +++ b/lib/libc/include/generic-glibc/bits/confname.h @@ -1,5 +1,5 @@ /* `sysconf', `pathconf', and `confstr' NAME values. Generic version. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/cpu-set.h b/lib/libc/include/generic-glibc/bits/cpu-set.h index f97b3069fb..89936d465d 100644 --- a/lib/libc/include/generic-glibc/bits/cpu-set.h +++ b/lib/libc/include/generic-glibc/bits/cpu-set.h @@ -1,6 +1,6 @@ /* Definition of the cpu_set_t structure used by the POSIX 1003.1b-1993 scheduling interface. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/dirent.h b/lib/libc/include/generic-glibc/bits/dirent.h index 5979f8fcb5..9f570d9028 100644 --- a/lib/libc/include/generic-glibc/bits/dirent.h +++ b/lib/libc/include/generic-glibc/bits/dirent.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/dirent_ext.h b/lib/libc/include/generic-glibc/bits/dirent_ext.h index 90cb19a11c..a1376ab36d 100644 --- a/lib/libc/include/generic-glibc/bits/dirent_ext.h +++ b/lib/libc/include/generic-glibc/bits/dirent_ext.h @@ -1,5 +1,5 @@ /* System-specific extensions of . Linux version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/dl_find_object.h b/lib/libc/include/generic-glibc/bits/dl_find_object.h index 612183c885..ff908aec64 100644 --- a/lib/libc/include/generic-glibc/bits/dl_find_object.h +++ b/lib/libc/include/generic-glibc/bits/dl_find_object.h @@ -1,5 +1,5 @@ /* System dependent definitions for finding objects by address. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/dlfcn.h b/lib/libc/include/generic-glibc/bits/dlfcn.h index ad567a6ada..29a318f443 100644 --- a/lib/libc/include/generic-glibc/bits/dlfcn.h +++ b/lib/libc/include/generic-glibc/bits/dlfcn.h @@ -1,5 +1,5 @@ /* System dependent definitions for run-time dynamic loading. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/endian.h b/lib/libc/include/generic-glibc/bits/endian.h index 4bcc9bb06b..72c2ad990f 100644 --- a/lib/libc/include/generic-glibc/bits/endian.h +++ b/lib/libc/include/generic-glibc/bits/endian.h @@ -1,5 +1,5 @@ /* Endian macros for string.h functions - Copyright (C) 1992-2023 Free Software Foundation, Inc. + Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/environments.h b/lib/libc/include/generic-glibc/bits/environments.h index d1db229dce..faeeb36f31 100644 --- a/lib/libc/include/generic-glibc/bits/environments.h +++ b/lib/libc/include/generic-glibc/bits/environments.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/epoll.h b/lib/libc/include/generic-glibc/bits/epoll.h index a9bc693592..764bbe6945 100644 --- a/lib/libc/include/generic-glibc/bits/epoll.h +++ b/lib/libc/include/generic-glibc/bits/epoll.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/err-ldbl.h b/lib/libc/include/generic-glibc/bits/err-ldbl.h index 8e2007fa9c..298be8a666 100644 --- a/lib/libc/include/generic-glibc/bits/err-ldbl.h +++ b/lib/libc/include/generic-glibc/bits/err-ldbl.h @@ -1,5 +1,5 @@ /* Redirections for err.h functions for -mlong-double-64. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/errno.h b/lib/libc/include/generic-glibc/bits/errno.h index ec781a5969..ce43656ba3 100644 --- a/lib/libc/include/generic-glibc/bits/errno.h +++ b/lib/libc/include/generic-glibc/bits/errno.h @@ -1,5 +1,5 @@ /* Error constants. Linux specific version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/error-ldbl.h b/lib/libc/include/generic-glibc/bits/error-ldbl.h index c895b69b88..c106667112 100644 --- a/lib/libc/include/generic-glibc/bits/error-ldbl.h +++ b/lib/libc/include/generic-glibc/bits/error-ldbl.h @@ -1,5 +1,5 @@ /* Redirections for error.h functions for -mlong-double-64. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/error.h b/lib/libc/include/generic-glibc/bits/error.h index b4294c24b1..03e0ab55b1 100644 --- a/lib/libc/include/generic-glibc/bits/error.h +++ b/lib/libc/include/generic-glibc/bits/error.h @@ -1,5 +1,5 @@ /* Specializations for error functions. - Copyright (C) 2007-2023 Free Software Foundation, Inc. + Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/eventfd.h b/lib/libc/include/generic-glibc/bits/eventfd.h index 0a67d90b2c..2e8f06eed0 100644 --- a/lib/libc/include/generic-glibc/bits/eventfd.h +++ b/lib/libc/include/generic-glibc/bits/eventfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/fcntl-linux.h b/lib/libc/include/generic-glibc/bits/fcntl-linux.h index b93d1d9a86..37b53f120a 100644 --- a/lib/libc/include/generic-glibc/bits/fcntl-linux.h +++ b/lib/libc/include/generic-glibc/bits/fcntl-linux.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for Linux. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -286,6 +286,7 @@ struct f_owner_ex # define F_SEAL_WRITE 0x0008 /* Prevent writes. */ # define F_SEAL_FUTURE_WRITE 0x0010 /* Prevent future writes while mapped. */ +# define F_SEAL_EXEC 0x0020 /* Prevent chmod modifying exec bits. */ #endif #ifdef __USE_GNU @@ -367,6 +368,17 @@ struct file_handle # define MAX_HANDLE_SZ 128 #endif +#ifdef __USE_GNU +/* Flags for name_to_handle_at. See comment in fcntl.h about the use + of the same AT_* flag bits for different purposes in different + functions. */ +# define AT_HANDLE_FID AT_REMOVEDIR /* File handle is needed + to compare object + identity and may not + be usable to + open_by_handle_at. */ +#endif + __BEGIN_DECLS #ifdef __USE_GNU diff --git a/lib/libc/include/generic-glibc/bits/fcntl.h b/lib/libc/include/generic-glibc/bits/fcntl.h index 2e79057415..b3079ef14a 100644 --- a/lib/libc/include/generic-glibc/bits/fcntl.h +++ b/lib/libc/include/generic-glibc/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for Linux. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/fcntl2.h b/lib/libc/include/generic-glibc/bits/fcntl2.h index 30c541020a..4ddeea3dc5 100644 --- a/lib/libc/include/generic-glibc/bits/fcntl2.h +++ b/lib/libc/include/generic-glibc/bits/fcntl2.h @@ -1,5 +1,5 @@ /* Checking macros for fcntl functions. - Copyright (C) 2007-2023 Free Software Foundation, Inc. + Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/fenv.h b/lib/libc/include/generic-glibc/bits/fenv.h index 009b6f2e16..189b859568 100644 --- a/lib/libc/include/generic-glibc/bits/fenv.h +++ b/lib/libc/include/generic-glibc/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/floatn-common.h b/lib/libc/include/generic-glibc/bits/floatn-common.h index 61a0c8d6a1..f94b11fc92 100644 --- a/lib/libc/include/generic-glibc/bits/floatn-common.h +++ b/lib/libc/include/generic-glibc/bits/floatn-common.h @@ -1,6 +1,6 @@ /* Macros to control TS 18661-3 glibc features where the same definitions are appropriate for all platforms. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/floatn.h b/lib/libc/include/generic-glibc/bits/floatn.h index 62a22bcb27..e1f58983af 100644 --- a/lib/libc/include/generic-glibc/bits/floatn.h +++ b/lib/libc/include/generic-glibc/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features on MIPS platforms. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/flt-eval-method.h b/lib/libc/include/generic-glibc/bits/flt-eval-method.h index 82c890d6ff..afb260e33e 100644 --- a/lib/libc/include/generic-glibc/bits/flt-eval-method.h +++ b/lib/libc/include/generic-glibc/bits/flt-eval-method.h @@ -1,5 +1,5 @@ /* Define __GLIBC_FLT_EVAL_METHOD. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/fp-fast.h b/lib/libc/include/generic-glibc/bits/fp-fast.h index b33245b75c..15bf99f226 100644 --- a/lib/libc/include/generic-glibc/bits/fp-fast.h +++ b/lib/libc/include/generic-glibc/bits/fp-fast.h @@ -1,5 +1,5 @@ /* Define FP_FAST_* macros. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/fp-logb.h b/lib/libc/include/generic-glibc/bits/fp-logb.h index e356f1af08..0188c1e0e2 100644 --- a/lib/libc/include/generic-glibc/bits/fp-logb.h +++ b/lib/libc/include/generic-glibc/bits/fp-logb.h @@ -1,5 +1,5 @@ /* Define __FP_LOGB0_IS_MIN and __FP_LOGBNAN_IS_MIN. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/getopt_core.h b/lib/libc/include/generic-glibc/bits/getopt_core.h index 1008362c19..969449450b 100644 --- a/lib/libc/include/generic-glibc/bits/getopt_core.h +++ b/lib/libc/include/generic-glibc/bits/getopt_core.h @@ -1,5 +1,5 @@ /* Declarations for getopt (basic, portable features only). - Copyright (C) 1989-2023 Free Software Foundation, Inc. + Copyright (C) 1989-2024 Free Software Foundation, Inc. This file is part of the GNU C Library and is also part of gnulib. Patches to this file should be submitted to both projects. diff --git a/lib/libc/include/generic-glibc/bits/getopt_ext.h b/lib/libc/include/generic-glibc/bits/getopt_ext.h index 3fcd300bc4..8e1f673d0f 100644 --- a/lib/libc/include/generic-glibc/bits/getopt_ext.h +++ b/lib/libc/include/generic-glibc/bits/getopt_ext.h @@ -1,5 +1,5 @@ /* Declarations for getopt (GNU extensions). - Copyright (C) 1989-2023 Free Software Foundation, Inc. + Copyright (C) 1989-2024 Free Software Foundation, Inc. This file is part of the GNU C Library and is also part of gnulib. Patches to this file should be submitted to both projects. diff --git a/lib/libc/include/generic-glibc/bits/getopt_posix.h b/lib/libc/include/generic-glibc/bits/getopt_posix.h index 5db63abd31..abb0420fbb 100644 --- a/lib/libc/include/generic-glibc/bits/getopt_posix.h +++ b/lib/libc/include/generic-glibc/bits/getopt_posix.h @@ -1,5 +1,5 @@ /* Declarations for getopt (POSIX compatibility shim). - Copyright (C) 1989-2023 Free Software Foundation, Inc. + Copyright (C) 1989-2024 Free Software Foundation, Inc. Unlike the bulk of the getopt implementation, this file is NOT part of gnulib. diff --git a/lib/libc/include/generic-glibc/bits/hwcap.h b/lib/libc/include/generic-glibc/bits/hwcap.h index 48f2e042d3..e466ca86a4 100644 --- a/lib/libc/include/generic-glibc/bits/hwcap.h +++ b/lib/libc/include/generic-glibc/bits/hwcap.h @@ -1,5 +1,5 @@ /* Defines for bits in AT_HWCAP. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/in.h b/lib/libc/include/generic-glibc/bits/in.h index e4d2d05e8e..ced05216e1 100644 --- a/lib/libc/include/generic-glibc/bits/in.h +++ b/lib/libc/include/generic-glibc/bits/in.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -129,6 +129,7 @@ #define IP_MULTICAST_ALL 49 #define IP_UNICAST_IF 50 #define IP_LOCAL_PORT_RANGE 51 +#define IP_PROTOCOL 52 /* To select the IP level. */ #define SOL_IP 0 diff --git a/lib/libc/include/generic-glibc/bits/indirect-return.h b/lib/libc/include/generic-glibc/bits/indirect-return.h index ccf1b32e5d..b7915cd881 100644 --- a/lib/libc/include/generic-glibc/bits/indirect-return.h +++ b/lib/libc/include/generic-glibc/bits/indirect-return.h @@ -1,5 +1,5 @@ /* Definition of __INDIRECT_RETURN. Generic version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/inotify.h b/lib/libc/include/generic-glibc/bits/inotify.h index 075dfcc0c1..099f5c59b3 100644 --- a/lib/libc/include/generic-glibc/bits/inotify.h +++ b/lib/libc/include/generic-glibc/bits/inotify.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/ioctl-types.h b/lib/libc/include/generic-glibc/bits/ioctl-types.h index c6ac52b363..45aba87ca9 100644 --- a/lib/libc/include/generic-glibc/bits/ioctl-types.h +++ b/lib/libc/include/generic-glibc/bits/ioctl-types.h @@ -1,5 +1,5 @@ /* Structure types for pre-termios terminal ioctls. Linux version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/ioctls.h b/lib/libc/include/generic-glibc/bits/ioctls.h index 386edb867f..fc235221fe 100644 --- a/lib/libc/include/generic-glibc/bits/ioctls.h +++ b/lib/libc/include/generic-glibc/bits/ioctls.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/ipc-perm.h b/lib/libc/include/generic-glibc/bits/ipc-perm.h index b3ff8b80e3..cd2bad14b5 100644 --- a/lib/libc/include/generic-glibc/bits/ipc-perm.h +++ b/lib/libc/include/generic-glibc/bits/ipc-perm.h @@ -1,5 +1,5 @@ /* struct ipc_perm definition. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/ipc.h b/lib/libc/include/generic-glibc/bits/ipc.h index f2092493f2..c979c937a2 100644 --- a/lib/libc/include/generic-glibc/bits/ipc.h +++ b/lib/libc/include/generic-glibc/bits/ipc.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/ipctypes.h b/lib/libc/include/generic-glibc/bits/ipctypes.h index 926918669d..3a2f9415c5 100644 --- a/lib/libc/include/generic-glibc/bits/ipctypes.h +++ b/lib/libc/include/generic-glibc/bits/ipctypes.h @@ -1,5 +1,5 @@ /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. Generic. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/iscanonical.h b/lib/libc/include/generic-glibc/bits/iscanonical.h index 8a9ae51a3c..73902a1c76 100644 --- a/lib/libc/include/generic-glibc/bits/iscanonical.h +++ b/lib/libc/include/generic-glibc/bits/iscanonical.h @@ -1,5 +1,5 @@ /* Define iscanonical macro. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/libc-header-start.h b/lib/libc/include/generic-glibc/bits/libc-header-start.h index 04cf92576f..cac5271539 100644 --- a/lib/libc/include/generic-glibc/bits/libc-header-start.h +++ b/lib/libc/include/generic-glibc/bits/libc-header-start.h @@ -1,5 +1,5 @@ /* Handle feature test macros at the start of a header. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/libm-simd-decl-stubs.h b/lib/libc/include/generic-glibc/bits/libm-simd-decl-stubs.h index d04c6dc005..b590f28d7c 100644 --- a/lib/libc/include/generic-glibc/bits/libm-simd-decl-stubs.h +++ b/lib/libc/include/generic-glibc/bits/libm-simd-decl-stubs.h @@ -1,5 +1,5 @@ /* Empty definitions required for __MATHCALL_VEC unfolding in mathcalls.h. - Copyright (C) 2014-2023 Free Software Foundation, Inc. + Copyright (C) 2014-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/link.h b/lib/libc/include/generic-glibc/bits/link.h index 4859c16397..53d5452bdc 100644 --- a/lib/libc/include/generic-glibc/bits/link.h +++ b/lib/libc/include/generic-glibc/bits/link.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/link_lavcurrent.h b/lib/libc/include/generic-glibc/bits/link_lavcurrent.h index d391df4d9a..6ff83d86c4 100644 --- a/lib/libc/include/generic-glibc/bits/link_lavcurrent.h +++ b/lib/libc/include/generic-glibc/bits/link_lavcurrent.h @@ -1,6 +1,6 @@ /* Data structure for communication from the run-time dynamic linker for loaded ELF shared objects. LAV_CURRENT definition. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/local_lim.h b/lib/libc/include/generic-glibc/bits/local_lim.h index dec2895880..095a48e78a 100644 --- a/lib/libc/include/generic-glibc/bits/local_lim.h +++ b/lib/libc/include/generic-glibc/bits/local_lim.h @@ -1,5 +1,5 @@ /* Minimum guaranteed maximum values for system limits. Linux version. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/locale.h b/lib/libc/include/generic-glibc/bits/locale.h index 971307bf37..d659c83576 100644 --- a/lib/libc/include/generic-glibc/bits/locale.h +++ b/lib/libc/include/generic-glibc/bits/locale.h @@ -1,5 +1,5 @@ /* Definition of locale category symbol values. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/long-double.h b/lib/libc/include/generic-glibc/bits/long-double.h index 5065a57e4b..c14836726a 100644 --- a/lib/libc/include/generic-glibc/bits/long-double.h +++ b/lib/libc/include/generic-glibc/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. MIPS version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/math-vector.h b/lib/libc/include/generic-glibc/bits/math-vector.h index 0df3e75c84..91897979dc 100644 --- a/lib/libc/include/generic-glibc/bits/math-vector.h +++ b/lib/libc/include/generic-glibc/bits/math-vector.h @@ -1,5 +1,5 @@ /* Platform-specific SIMD declarations of math functions. - Copyright (C) 2014-2023 Free Software Foundation, Inc. + Copyright (C) 2014-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/mathcalls-helper-functions.h b/lib/libc/include/generic-glibc/bits/mathcalls-helper-functions.h index 785f4d6d35..c5eda23814 100644 --- a/lib/libc/include/generic-glibc/bits/mathcalls-helper-functions.h +++ b/lib/libc/include/generic-glibc/bits/mathcalls-helper-functions.h @@ -1,5 +1,5 @@ /* Prototype declarations for math classification macros helpers. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/mathcalls-narrow.h b/lib/libc/include/generic-glibc/bits/mathcalls-narrow.h index 789200d1c7..a213cfdd4c 100644 --- a/lib/libc/include/generic-glibc/bits/mathcalls-narrow.h +++ b/lib/libc/include/generic-glibc/bits/mathcalls-narrow.h @@ -1,5 +1,5 @@ /* Declare functions returning a narrower type. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/mathcalls.h b/lib/libc/include/generic-glibc/bits/mathcalls.h index 63a4937b35..246d3c4e88 100644 --- a/lib/libc/include/generic-glibc/bits/mathcalls.h +++ b/lib/libc/include/generic-glibc/bits/mathcalls.h @@ -1,5 +1,5 @@ /* Prototype declarations for math functions; helper file for . - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/mathdef.h b/lib/libc/include/generic-glibc/bits/mathdef.h index bca002de35..b5e9e765a6 100644 --- a/lib/libc/include/generic-glibc/bits/mathdef.h +++ b/lib/libc/include/generic-glibc/bits/mathdef.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/mman-linux.h b/lib/libc/include/generic-glibc/bits/mman-linux.h index fccf35a1e5..9e7a7e0e17 100644 --- a/lib/libc/include/generic-glibc/bits/mman-linux.h +++ b/lib/libc/include/generic-glibc/bits/mman-linux.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux generic version. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/mman-map-flags-generic.h b/lib/libc/include/generic-glibc/bits/mman-map-flags-generic.h index 11e2d10189..f32f3b86a8 100644 --- a/lib/libc/include/generic-glibc/bits/mman-map-flags-generic.h +++ b/lib/libc/include/generic-glibc/bits/mman-map-flags-generic.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/generic version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/mman-shared.h b/lib/libc/include/generic-glibc/bits/mman-shared.h index c1d324dc31..b067a9ade9 100644 --- a/lib/libc/include/generic-glibc/bits/mman-shared.h +++ b/lib/libc/include/generic-glibc/bits/mman-shared.h @@ -1,5 +1,5 @@ /* Memory-mapping-related declarations/definitions, not architecture-specific. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/mman.h b/lib/libc/include/generic-glibc/bits/mman.h index addb5b1033..42fdc2b76a 100644 --- a/lib/libc/include/generic-glibc/bits/mman.h +++ b/lib/libc/include/generic-glibc/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/generic version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/mman_ext.h b/lib/libc/include/generic-glibc/bits/mman_ext.h index c470c06200..4ba11f77bb 100644 --- a/lib/libc/include/generic-glibc/bits/mman_ext.h +++ b/lib/libc/include/generic-glibc/bits/mman_ext.h @@ -1,5 +1,5 @@ /* System-specific extensions of , Linux version. - Copyright (C) 2022-2023 Free Software Foundation, Inc. + Copyright (C) 2022-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/monetary-ldbl.h b/lib/libc/include/generic-glibc/bits/monetary-ldbl.h index 1d9b5f5db6..04aa30f4bc 100644 --- a/lib/libc/include/generic-glibc/bits/monetary-ldbl.h +++ b/lib/libc/include/generic-glibc/bits/monetary-ldbl.h @@ -1,5 +1,5 @@ /* -mlong-double-64 compatibility mode for monetary functions. - Copyright (C) 2006-2023 Free Software Foundation, Inc. + Copyright (C) 2006-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/mqueue.h b/lib/libc/include/generic-glibc/bits/mqueue.h index 0ce1225d40..0796475eb5 100644 --- a/lib/libc/include/generic-glibc/bits/mqueue.h +++ b/lib/libc/include/generic-glibc/bits/mqueue.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2023 Free Software Foundation, Inc. +/* Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/mqueue2.h b/lib/libc/include/generic-glibc/bits/mqueue2.h index c7eb0fdd04..fcef7f1759 100644 --- a/lib/libc/include/generic-glibc/bits/mqueue2.h +++ b/lib/libc/include/generic-glibc/bits/mqueue2.h @@ -1,5 +1,5 @@ /* Checking macros for mq functions. - Copyright (C) 2007-2023 Free Software Foundation, Inc. + Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/msq.h b/lib/libc/include/generic-glibc/bits/msq.h index 506311a7e5..2bb8fd2550 100644 --- a/lib/libc/include/generic-glibc/bits/msq.h +++ b/lib/libc/include/generic-glibc/bits/msq.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/netdb.h b/lib/libc/include/generic-glibc/bits/netdb.h index 87fb100353..94ffc030f7 100644 --- a/lib/libc/include/generic-glibc/bits/netdb.h +++ b/lib/libc/include/generic-glibc/bits/netdb.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/param.h b/lib/libc/include/generic-glibc/bits/param.h index 9780c258d2..462a47c79f 100644 --- a/lib/libc/include/generic-glibc/bits/param.h +++ b/lib/libc/include/generic-glibc/bits/param.h @@ -1,5 +1,5 @@ /* Old-style Unix parameters and limits. Linux version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/platform/features.h b/lib/libc/include/generic-glibc/bits/platform/features.h new file mode 100644 index 0000000000..60f2cff009 --- /dev/null +++ b/lib/libc/include/generic-glibc/bits/platform/features.h @@ -0,0 +1,48 @@ +/* Inline functions for x86 CPU features. + This file is part of the GNU C Library. + Copyright (C) 2024 Free Software Foundation, Inc. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SYS_PLATFORM_X86_H +# error "Never include directly; use instead." +#endif + +/* Bits in the feature_1 field in TCB. */ + +enum +{ + x86_feature_1_ibt = 1U << 0, + x86_feature_1_shstk = 1U << 1 +}; + +static __inline__ _Bool +x86_cpu_cet_active (unsigned int __index) +{ +#ifdef __x86_64__ + unsigned int __feature_1; +# ifdef __LP64__ + __asm__ ("mov %%fs:72, %0" : "=r" (__feature_1)); +# else + __asm__ ("mov %%fs:40, %0" : "=r" (__feature_1)); +# endif + if (__index == x86_cpu_IBT) + return __feature_1 & x86_feature_1_ibt; + else + return __feature_1 & x86_feature_1_shstk; +#else + return false; +#endif +} \ No newline at end of file diff --git a/lib/libc/include/generic-glibc/bits/platform/x86.h b/lib/libc/include/generic-glibc/bits/platform/x86.h index f8051770b3..7406f59949 100644 --- a/lib/libc/include/generic-glibc/bits/platform/x86.h +++ b/lib/libc/include/generic-glibc/bits/platform/x86.h @@ -1,6 +1,6 @@ /* Constants and data structures for x86 CPU features. This file is part of the GNU C Library. - Copyright (C) 2008-2023 Free Software Foundation, Inc. + Copyright (C) 2008-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public @@ -30,7 +30,8 @@ enum CPUID_INDEX_80000008, CPUID_INDEX_7_ECX_1, CPUID_INDEX_19, - CPUID_INDEX_14_ECX_0 + CPUID_INDEX_14_ECX_0, + CPUID_INDEX_24_ECX_0 }; struct cpuid_feature @@ -312,6 +313,7 @@ enum x86_cpu_AVX_NE_CONVERT = x86_cpu_index_7_ecx_1_edx + 5, x86_cpu_AMX_COMPLEX = x86_cpu_index_7_ecx_1_edx + 8, x86_cpu_PREFETCHI = x86_cpu_index_7_ecx_1_edx + 14, + x86_cpu_AVX10 = x86_cpu_index_7_ecx_1_edx + 19, x86_cpu_APX_F = x86_cpu_index_7_ecx_1_edx + 21, x86_cpu_index_19_ebx @@ -325,5 +327,13 @@ enum = (CPUID_INDEX_14_ECX_0 * 8 * 4 * sizeof (unsigned int) + cpuid_register_index_ebx * 8 * sizeof (unsigned int)), - x86_cpu_PTWRITE = x86_cpu_index_14_ecx_0_ebx + 4 + x86_cpu_PTWRITE = x86_cpu_index_14_ecx_0_ebx + 4, + + x86_cpu_index_24_ecx_0_ebx + = (CPUID_INDEX_24_ECX_0 * 8 * 4 * sizeof (unsigned int) + + cpuid_register_index_ebx * 8 * sizeof (unsigned int)), + + x86_cpu_AVX10_XMM = x86_cpu_index_24_ecx_0_ebx + 16, + x86_cpu_AVX10_YMM = x86_cpu_index_24_ecx_0_ebx + 17, + x86_cpu_AVX10_ZMM = x86_cpu_index_24_ecx_0_ebx + 18, }; \ No newline at end of file diff --git a/lib/libc/include/generic-glibc/bits/poll.h b/lib/libc/include/generic-glibc/bits/poll.h index ab960fcdff..642acf7381 100644 --- a/lib/libc/include/generic-glibc/bits/poll.h +++ b/lib/libc/include/generic-glibc/bits/poll.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/poll2.h b/lib/libc/include/generic-glibc/bits/poll2.h index 6be68c7c46..8ef99d1a83 100644 --- a/lib/libc/include/generic-glibc/bits/poll2.h +++ b/lib/libc/include/generic-glibc/bits/poll2.h @@ -1,5 +1,5 @@ /* Checking macros for poll functions. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/posix1_lim.h b/lib/libc/include/generic-glibc/bits/posix1_lim.h index d556207052..5003c232fc 100644 --- a/lib/libc/include/generic-glibc/bits/posix1_lim.h +++ b/lib/libc/include/generic-glibc/bits/posix1_lim.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/posix2_lim.h b/lib/libc/include/generic-glibc/bits/posix2_lim.h index defb8376b0..4a0a058527 100644 --- a/lib/libc/include/generic-glibc/bits/posix2_lim.h +++ b/lib/libc/include/generic-glibc/bits/posix2_lim.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/posix_opt.h b/lib/libc/include/generic-glibc/bits/posix_opt.h index 1be7043d0b..c178329b57 100644 --- a/lib/libc/include/generic-glibc/bits/posix_opt.h +++ b/lib/libc/include/generic-glibc/bits/posix_opt.h @@ -1,5 +1,5 @@ /* Define POSIX options for Linux. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/ppc.h b/lib/libc/include/generic-glibc/bits/ppc.h index 7a28bf261c..d6e0a03e19 100644 --- a/lib/libc/include/generic-glibc/bits/ppc.h +++ b/lib/libc/include/generic-glibc/bits/ppc.h @@ -1,5 +1,5 @@ /* Facilities specific to the PowerPC architecture on Linux - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/printf-ldbl.h b/lib/libc/include/generic-glibc/bits/printf-ldbl.h index 0f1d406e1e..2c9db17e9c 100644 --- a/lib/libc/include/generic-glibc/bits/printf-ldbl.h +++ b/lib/libc/include/generic-glibc/bits/printf-ldbl.h @@ -1,5 +1,5 @@ /* -mlong-double-64 compatibility mode for functions. - Copyright (C) 2006-2023 Free Software Foundation, Inc. + Copyright (C) 2006-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/procfs-extra.h b/lib/libc/include/generic-glibc/bits/procfs-extra.h index 38f764af5f..f53ada61e6 100644 --- a/lib/libc/include/generic-glibc/bits/procfs-extra.h +++ b/lib/libc/include/generic-glibc/bits/procfs-extra.h @@ -1,5 +1,5 @@ /* Extra sys/procfs.h definitions. Generic Linux version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/generic-glibc/bits/procfs-id.h b/lib/libc/include/generic-glibc/bits/procfs-id.h index 26a2efbdbd..7d45f8d1ce 100644 --- a/lib/libc/include/generic-glibc/bits/procfs-id.h +++ b/lib/libc/include/generic-glibc/bits/procfs-id.h @@ -1,5 +1,5 @@ /* Types of pr_uid and pr_gid in struct elf_prpsinfo. Generic Linux version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/generic-glibc/bits/procfs-prregset.h b/lib/libc/include/generic-glibc/bits/procfs-prregset.h index 18127f7eb3..dee869cea5 100644 --- a/lib/libc/include/generic-glibc/bits/procfs-prregset.h +++ b/lib/libc/include/generic-glibc/bits/procfs-prregset.h @@ -1,5 +1,5 @@ /* Types of prgregset_t and prfpregset_t. Generic Linux version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/generic-glibc/bits/procfs.h b/lib/libc/include/generic-glibc/bits/procfs.h index ed08a9ae3d..39c90e50aa 100644 --- a/lib/libc/include/generic-glibc/bits/procfs.h +++ b/lib/libc/include/generic-glibc/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. MIPS version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/pthread_stack_min-dynamic.h b/lib/libc/include/generic-glibc/bits/pthread_stack_min-dynamic.h index 09d1c8b873..93f25471e5 100644 --- a/lib/libc/include/generic-glibc/bits/pthread_stack_min-dynamic.h +++ b/lib/libc/include/generic-glibc/bits/pthread_stack_min-dynamic.h @@ -1,5 +1,5 @@ /* Definition of PTHREAD_STACK_MIN, possibly dynamic. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/pthread_stack_min.h b/lib/libc/include/generic-glibc/bits/pthread_stack_min.h index 9085496e98..319f182adc 100644 --- a/lib/libc/include/generic-glibc/bits/pthread_stack_min.h +++ b/lib/libc/include/generic-glibc/bits/pthread_stack_min.h @@ -1,5 +1,5 @@ /* Definition of PTHREAD_STACK_MIN. Linux version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/pthreadtypes-arch.h b/lib/libc/include/generic-glibc/bits/pthreadtypes-arch.h index 4f52badcce..7d3413ca72 100644 --- a/lib/libc/include/generic-glibc/bits/pthreadtypes-arch.h +++ b/lib/libc/include/generic-glibc/bits/pthreadtypes-arch.h @@ -1,5 +1,5 @@ /* Machine-specific pthread type layouts. Generic version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/generic-glibc/bits/pthreadtypes.h b/lib/libc/include/generic-glibc/bits/pthreadtypes.h index 67a7d79640..2e4843d0e5 100644 --- a/lib/libc/include/generic-glibc/bits/pthreadtypes.h +++ b/lib/libc/include/generic-glibc/bits/pthreadtypes.h @@ -1,5 +1,5 @@ /* Declaration of common pthread types for all architectures. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/ptrace-shared.h b/lib/libc/include/generic-glibc/bits/ptrace-shared.h index 1f432d1aa3..2a79c48417 100644 --- a/lib/libc/include/generic-glibc/bits/ptrace-shared.h +++ b/lib/libc/include/generic-glibc/bits/ptrace-shared.h @@ -1,6 +1,6 @@ /* `ptrace' debugger support interface. Linux version, not architecture-specific. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -130,6 +130,16 @@ struct __ptrace_rseq_configuration __uint32_t pad; }; +/* Argument of PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG and + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG. */ +struct __ptrace_sud_config +{ + __uint64_t mode; + __uint64_t selector; + __uint64_t offset; + __uint64_t len; +}; + /* Perform process tracing functions. REQUEST is one of the values above, and determines the action to be taken. For all requests except PTRACE_TRACEME, PID specifies the process to be diff --git a/lib/libc/include/generic-glibc/bits/resource.h b/lib/libc/include/generic-glibc/bits/resource.h index 21cc08e77a..5e7ce1bf03 100644 --- a/lib/libc/include/generic-glibc/bits/resource.h +++ b/lib/libc/include/generic-glibc/bits/resource.h @@ -1,5 +1,5 @@ /* Bit values & structures for resource limits. Linux version. - Copyright (C) 1994-2023 Free Software Foundation, Inc. + Copyright (C) 1994-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/rseq.h b/lib/libc/include/generic-glibc/bits/rseq.h index 3f7e6fd758..9b9c7040c4 100644 --- a/lib/libc/include/generic-glibc/bits/rseq.h +++ b/lib/libc/include/generic-glibc/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences Linux mips architecture header. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/generic-glibc/bits/sched.h b/lib/libc/include/generic-glibc/bits/sched.h index aaeb4950a0..b5efb8baae 100644 --- a/lib/libc/include/generic-glibc/bits/sched.h +++ b/lib/libc/include/generic-glibc/bits/sched.h @@ -1,6 +1,6 @@ /* Definitions of constants and data structure for POSIX 1003.1b-1993 scheduling interface. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/select-decl.h b/lib/libc/include/generic-glibc/bits/select-decl.h index 19d1335116..4db89cf855 100644 --- a/lib/libc/include/generic-glibc/bits/select-decl.h +++ b/lib/libc/include/generic-glibc/bits/select-decl.h @@ -1,5 +1,5 @@ /* Checking routines for select functions. Declaration only. - Copyright (C) 2023 Free Software Foundation, Inc. + Copyright (C) 2023-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/select.h b/lib/libc/include/generic-glibc/bits/select.h index 684c93c78a..795c15e923 100644 --- a/lib/libc/include/generic-glibc/bits/select.h +++ b/lib/libc/include/generic-glibc/bits/select.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/select2.h b/lib/libc/include/generic-glibc/bits/select2.h index b5577567df..7cd271d437 100644 --- a/lib/libc/include/generic-glibc/bits/select2.h +++ b/lib/libc/include/generic-glibc/bits/select2.h @@ -1,5 +1,5 @@ /* Checking macros for select functions. - Copyright (C) 2011-2023 Free Software Foundation, Inc. + Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/sem.h b/lib/libc/include/generic-glibc/bits/sem.h index dc0bec8396..1712d91d0a 100644 --- a/lib/libc/include/generic-glibc/bits/sem.h +++ b/lib/libc/include/generic-glibc/bits/sem.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/semaphore.h b/lib/libc/include/generic-glibc/bits/semaphore.h index 54a7c74d90..cf54d48f7a 100644 --- a/lib/libc/include/generic-glibc/bits/semaphore.h +++ b/lib/libc/include/generic-glibc/bits/semaphore.h @@ -1,5 +1,5 @@ /* Generic POSIX semaphore type layout - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/setjmp.h b/lib/libc/include/generic-glibc/bits/setjmp.h index 92cdc008a8..909eb0f9b1 100644 --- a/lib/libc/include/generic-glibc/bits/setjmp.h +++ b/lib/libc/include/generic-glibc/bits/setjmp.h @@ -1,5 +1,5 @@ /* Define the machine-dependent type `jmp_buf'. MIPS version. - Copyright (C) 1992-2023 Free Software Foundation, Inc. + Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/setjmp2.h b/lib/libc/include/generic-glibc/bits/setjmp2.h index fcf58ea15f..49ea3d0deb 100644 --- a/lib/libc/include/generic-glibc/bits/setjmp2.h +++ b/lib/libc/include/generic-glibc/bits/setjmp2.h @@ -1,5 +1,5 @@ /* Checking macros for setjmp functions. - Copyright (C) 2009-2023 Free Software Foundation, Inc. + Copyright (C) 2009-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/shm.h b/lib/libc/include/generic-glibc/bits/shm.h index af5e636fde..f11f81a966 100644 --- a/lib/libc/include/generic-glibc/bits/shm.h +++ b/lib/libc/include/generic-glibc/bits/shm.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/shmlba.h b/lib/libc/include/generic-glibc/bits/shmlba.h index 7fc321d6ec..7a5df29b60 100644 --- a/lib/libc/include/generic-glibc/bits/shmlba.h +++ b/lib/libc/include/generic-glibc/bits/shmlba.h @@ -1,5 +1,5 @@ /* Define SHMLBA. Generic version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/sigaction.h b/lib/libc/include/generic-glibc/bits/sigaction.h index 42a8c87aef..1300b9f9b6 100644 --- a/lib/libc/include/generic-glibc/bits/sigaction.h +++ b/lib/libc/include/generic-glibc/bits/sigaction.h @@ -1,5 +1,5 @@ /* The proper definitions for Linux's sigaction. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/sigcontext.h b/lib/libc/include/generic-glibc/bits/sigcontext.h index 300f983ac5..ae6e2c2898 100644 --- a/lib/libc/include/generic-glibc/bits/sigcontext.h +++ b/lib/libc/include/generic-glibc/bits/sigcontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/sigevent-consts.h b/lib/libc/include/generic-glibc/bits/sigevent-consts.h index 24b55eab59..09a5de76f2 100644 --- a/lib/libc/include/generic-glibc/bits/sigevent-consts.h +++ b/lib/libc/include/generic-glibc/bits/sigevent-consts.h @@ -1,5 +1,5 @@ /* sigevent constants. Linux version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/siginfo-consts.h b/lib/libc/include/generic-glibc/bits/siginfo-consts.h index a9de1350b8..046c18f083 100644 --- a/lib/libc/include/generic-glibc/bits/siginfo-consts.h +++ b/lib/libc/include/generic-glibc/bits/siginfo-consts.h @@ -1,5 +1,5 @@ /* siginfo constants. Linux version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -134,8 +134,10 @@ enum # define SEGV_ADIPERR SEGV_ADIPERR SEGV_MTEAERR, /* Asynchronous ARM MTE error. */ # define SEGV_MTEAERR SEGV_MTEAERR - SEGV_MTESERR /* Synchronous ARM MTE exception. */ + SEGV_MTESERR, /* Synchronous ARM MTE exception. */ # define SEGV_MTESERR SEGV_MTESERR + SEGV_CPERR /* Control protection fault. */ +# define SEGV_CPERR SEGV_CPERR }; /* `si_code' values for SIGBUS signal. */ diff --git a/lib/libc/include/generic-glibc/bits/signal_ext.h b/lib/libc/include/generic-glibc/bits/signal_ext.h index f106f2c83a..22f66e89ff 100644 --- a/lib/libc/include/generic-glibc/bits/signal_ext.h +++ b/lib/libc/include/generic-glibc/bits/signal_ext.h @@ -1,5 +1,5 @@ /* System-specific extensions of , Linux version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/signalfd.h b/lib/libc/include/generic-glibc/bits/signalfd.h index 26bca1bf4a..3fd3333bd8 100644 --- a/lib/libc/include/generic-glibc/bits/signalfd.h +++ b/lib/libc/include/generic-glibc/bits/signalfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/signum-arch.h b/lib/libc/include/generic-glibc/bits/signum-arch.h index e268889fc2..518aef8213 100644 --- a/lib/libc/include/generic-glibc/bits/signum-arch.h +++ b/lib/libc/include/generic-glibc/bits/signum-arch.h @@ -1,5 +1,5 @@ /* Signal number definitions. Linux version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/signum-generic.h b/lib/libc/include/generic-glibc/bits/signum-generic.h index 05172b2634..65f65d8ab0 100644 --- a/lib/libc/include/generic-glibc/bits/signum-generic.h +++ b/lib/libc/include/generic-glibc/bits/signum-generic.h @@ -1,5 +1,5 @@ /* Signal number constants. Generic template. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/sigstack.h b/lib/libc/include/generic-glibc/bits/sigstack.h index 25bd7cb9eb..4268f36df4 100644 --- a/lib/libc/include/generic-glibc/bits/sigstack.h +++ b/lib/libc/include/generic-glibc/bits/sigstack.h @@ -1,5 +1,5 @@ /* sigstack, sigaltstack definitions. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/sigstksz.h b/lib/libc/include/generic-glibc/bits/sigstksz.h index 30729be603..cfe87a8db9 100644 --- a/lib/libc/include/generic-glibc/bits/sigstksz.h +++ b/lib/libc/include/generic-glibc/bits/sigstksz.h @@ -1,5 +1,5 @@ /* Definition of MINSIGSTKSZ and SIGSTKSZ. Linux version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/sigthread.h b/lib/libc/include/generic-glibc/bits/sigthread.h index 00cd905429..e72d6932a5 100644 --- a/lib/libc/include/generic-glibc/bits/sigthread.h +++ b/lib/libc/include/generic-glibc/bits/sigthread.h @@ -1,5 +1,5 @@ /* Signal handling function for threaded programs. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/sockaddr.h b/lib/libc/include/generic-glibc/bits/sockaddr.h index a67b661d07..be5b33d00b 100644 --- a/lib/libc/include/generic-glibc/bits/sockaddr.h +++ b/lib/libc/include/generic-glibc/bits/sockaddr.h @@ -1,5 +1,5 @@ /* Definition of struct sockaddr_* common members and sizes, generic version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/socket-constants.h b/lib/libc/include/generic-glibc/bits/socket-constants.h index a7d111ca84..95902eaf02 100644 --- a/lib/libc/include/generic-glibc/bits/socket-constants.h +++ b/lib/libc/include/generic-glibc/bits/socket-constants.h @@ -1,5 +1,5 @@ /* Socket constants which vary among Linux architectures. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/socket.h b/lib/libc/include/generic-glibc/bits/socket.h index e207418f5b..afddf12afc 100644 --- a/lib/libc/include/generic-glibc/bits/socket.h +++ b/lib/libc/include/generic-glibc/bits/socket.h @@ -1,5 +1,5 @@ /* System-specific socket constants and types. Linux version. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -367,6 +367,10 @@ enum #ifdef __USE_GNU , SCM_CREDENTIALS = 0x02 /* Credentials passing. */ # define SCM_CREDENTIALS SCM_CREDENTIALS + , SCM_SECURITY = 0x03 /* Security label. */ +# define SCM_SECURITY SCM_SECURITY + , SCM_PIDFD = 0x04 /* Pidfd. */ +# define SCM_PIDFD SCM_PIDFD #endif }; diff --git a/lib/libc/include/generic-glibc/bits/socket2.h b/lib/libc/include/generic-glibc/bits/socket2.h index 5d7ef6a9dc..158c230ede 100644 --- a/lib/libc/include/generic-glibc/bits/socket2.h +++ b/lib/libc/include/generic-glibc/bits/socket2.h @@ -1,5 +1,5 @@ /* Checking macros for socket functions. - Copyright (C) 2005-2023 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/socket_type.h b/lib/libc/include/generic-glibc/bits/socket_type.h index 0691169e17..e885ccb96b 100644 --- a/lib/libc/include/generic-glibc/bits/socket_type.h +++ b/lib/libc/include/generic-glibc/bits/socket_type.h @@ -1,5 +1,5 @@ /* Define enum __socket_type for generic Linux. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/spawn_ext.h b/lib/libc/include/generic-glibc/bits/spawn_ext.h new file mode 100644 index 0000000000..7955fd9f03 --- /dev/null +++ b/lib/libc/include/generic-glibc/bits/spawn_ext.h @@ -0,0 +1,67 @@ +/* POSIX spawn extensions. Linux version. + Copyright (C) 2023-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SPAWN_H +# error "Never include directly; use instead." +#endif + +__BEGIN_DECLS + +#ifdef __USE_MISC + +/* Get the cgroupsv2 the attribute structure. */ +extern int posix_spawnattr_getcgroup_np (const posix_spawnattr_t * + __restrict __attr, + int *__restrict __cgroup) + __THROW __nonnull ((1, 2)); + +/* Sore the cgroupsv2 the attribute structure. */ +extern int posix_spawnattr_setcgroup_np (posix_spawnattr_t *__attr, + int __cgroup) + __THROW __nonnull ((1)); + +/* Spawn a new process executing PATH with the attributes describes in *ATTRP. + Before running the process perform the actions described in FACTS. Return + a PID file descriptor in PIDFD if process creation was successful and the + argument is non-null. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int pidfd_spawn (int *__restrict __pidfd, + const char *__restrict __path, + const posix_spawn_file_actions_t *__restrict __facts, + const posix_spawnattr_t *__restrict __attrp, + char *const __argv[__restrict_arr], + char *const __envp[__restrict_arr]) + __nonnull ((2, 5)); + +/* Similar to `pidfd_spawn' but search for FILE in the PATH. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int pidfd_spawnp (int *__restrict __pidfd, + const char *__restrict __file, + const posix_spawn_file_actions_t *__restrict __facts, + const posix_spawnattr_t *__restrict __attrp, + char *const __argv[__restrict_arr], + char *const __envp[__restrict_arr]) + __nonnull ((1, 2, 5)); + +#endif /* __USE_MISC */ + +__END_DECLS \ No newline at end of file diff --git a/lib/libc/include/generic-glibc/bits/ss_flags.h b/lib/libc/include/generic-glibc/bits/ss_flags.h index 9e82dfcf6d..88184ab1a4 100644 --- a/lib/libc/include/generic-glibc/bits/ss_flags.h +++ b/lib/libc/include/generic-glibc/bits/ss_flags.h @@ -1,5 +1,5 @@ /* ss_flags values for stack_t. Linux version. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/stab.def b/lib/libc/include/generic-glibc/bits/stab.def index ffd1485d78..feeb60a83d 100644 --- a/lib/libc/include/generic-glibc/bits/stab.def +++ b/lib/libc/include/generic-glibc/bits/stab.def @@ -1,5 +1,5 @@ /* Table of DBX symbol codes for the GNU system. - Copyright (C) 1988, 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1988, 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/stat.h b/lib/libc/include/generic-glibc/bits/stat.h index 850b3872bd..33bced419d 100644 --- a/lib/libc/include/generic-glibc/bits/stat.h +++ b/lib/libc/include/generic-glibc/bits/stat.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/statfs.h b/lib/libc/include/generic-glibc/bits/statfs.h index 55be462a4c..0ee68cb0be 100644 --- a/lib/libc/include/generic-glibc/bits/statfs.h +++ b/lib/libc/include/generic-glibc/bits/statfs.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/statvfs.h b/lib/libc/include/generic-glibc/bits/statvfs.h index 8aab459a7e..448de5056a 100644 --- a/lib/libc/include/generic-glibc/bits/statvfs.h +++ b/lib/libc/include/generic-glibc/bits/statvfs.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -51,7 +51,8 @@ struct statvfs #endif unsigned long int f_flag; unsigned long int f_namemax; - int __f_spare[6]; + unsigned int f_type; + int __f_spare[5]; }; #ifdef __USE_LARGEFILE64 @@ -71,7 +72,8 @@ struct statvfs64 #endif unsigned long int f_flag; unsigned long int f_namemax; - int __f_spare[6]; + unsigned int f_type; + int __f_spare[5]; }; #endif @@ -103,7 +105,9 @@ enum # define ST_NOATIME ST_NOATIME ST_NODIRATIME = 2048, /* Do not update directory access times. */ # define ST_NODIRATIME ST_NODIRATIME - ST_RELATIME = 4096 /* Update atime relative to mtime/ctime. */ + ST_RELATIME = 4096, /* Update atime relative to mtime/ctime. */ # define ST_RELATIME ST_RELATIME + ST_NOSYMFOLLOW = 8192 /* Do not follow symlinks. */ +# define ST_NOSYMFOLLOW ST_NOSYMFOLLOW #endif /* Use GNU. */ }; \ No newline at end of file diff --git a/lib/libc/include/generic-glibc/bits/statx-generic.h b/lib/libc/include/generic-glibc/bits/statx-generic.h index 6b58bc9752..5c6c28e314 100644 --- a/lib/libc/include/generic-glibc/bits/statx-generic.h +++ b/lib/libc/include/generic-glibc/bits/statx-generic.h @@ -1,5 +1,5 @@ /* Generic statx-related definitions and declarations. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/statx.h b/lib/libc/include/generic-glibc/bits/statx.h index 889735fb78..eaf290c938 100644 --- a/lib/libc/include/generic-glibc/bits/statx.h +++ b/lib/libc/include/generic-glibc/bits/statx.h @@ -1,5 +1,5 @@ /* statx-related definitions and declarations. Linux version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/stdint-intn.h b/lib/libc/include/generic-glibc/bits/stdint-intn.h index 4bcdd3bf55..dfc35e0258 100644 --- a/lib/libc/include/generic-glibc/bits/stdint-intn.h +++ b/lib/libc/include/generic-glibc/bits/stdint-intn.h @@ -1,5 +1,5 @@ /* Define intN_t types. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/stdint-least.h b/lib/libc/include/generic-glibc/bits/stdint-least.h new file mode 100644 index 0000000000..b8c59d3851 --- /dev/null +++ b/lib/libc/include/generic-glibc/bits/stdint-least.h @@ -0,0 +1,36 @@ +/* Define int_leastN_t and uint_leastN types. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_STDINT_LEAST_H +#define _BITS_STDINT_LEAST_H 1 + +#include + +/* Signed. */ +typedef __int_least8_t int_least8_t; +typedef __int_least16_t int_least16_t; +typedef __int_least32_t int_least32_t; +typedef __int_least64_t int_least64_t; + +/* Unsigned. */ +typedef __uint_least8_t uint_least8_t; +typedef __uint_least16_t uint_least16_t; +typedef __uint_least32_t uint_least32_t; +typedef __uint_least64_t uint_least64_t; + +#endif /* bits/stdint-least.h */ \ No newline at end of file diff --git a/lib/libc/include/generic-glibc/bits/stdint-uintn.h b/lib/libc/include/generic-glibc/bits/stdint-uintn.h index 24470180d5..8a214b647e 100644 --- a/lib/libc/include/generic-glibc/bits/stdint-uintn.h +++ b/lib/libc/include/generic-glibc/bits/stdint-uintn.h @@ -1,5 +1,5 @@ /* Define uintN_t types. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/stdio-ldbl.h b/lib/libc/include/generic-glibc/bits/stdio-ldbl.h index f4952129d8..10ed3f014c 100644 --- a/lib/libc/include/generic-glibc/bits/stdio-ldbl.h +++ b/lib/libc/include/generic-glibc/bits/stdio-ldbl.h @@ -1,5 +1,5 @@ /* -mlong-double-64 compatibility mode for stdio functions. - Copyright (C) 2006-2023 Free Software Foundation, Inc. + Copyright (C) 2006-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/stdio.h b/lib/libc/include/generic-glibc/bits/stdio.h index 3802c954a4..84f02bd1ac 100644 --- a/lib/libc/include/generic-glibc/bits/stdio.h +++ b/lib/libc/include/generic-glibc/bits/stdio.h @@ -1,5 +1,5 @@ /* Optimizing macros and inline functions for stdio functions. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/stdio2-decl.h b/lib/libc/include/generic-glibc/bits/stdio2-decl.h index c8e242532c..24bd2d1d61 100644 --- a/lib/libc/include/generic-glibc/bits/stdio2-decl.h +++ b/lib/libc/include/generic-glibc/bits/stdio2-decl.h @@ -1,5 +1,5 @@ /* Checking macros for stdio functions. Declarations only. - Copyright (C) 2004-2023 Free Software Foundation, Inc. + Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -47,10 +47,12 @@ extern int __vsnprintf_chk (char *__restrict __s, size_t __n, int __flag, #if __USE_FORTIFY_LEVEL > 1 extern int __fprintf_chk (FILE *__restrict __stream, int __flag, - const char *__restrict __format, ...); + const char *__restrict __format, ...) + __nonnull ((1)); extern int __printf_chk (int __flag, const char *__restrict __format, ...); extern int __vfprintf_chk (FILE *__restrict __stream, int __flag, - const char *__restrict __format, __gnuc_va_list __ap); + const char *__restrict __format, + __gnuc_va_list __ap) __nonnull ((1)); extern int __vprintf_chk (int __flag, const char *__restrict __format, __gnuc_va_list __ap); @@ -103,7 +105,7 @@ extern char *__REDIRECT (__fgets_chk_warn, extern char *__fgets_chk (char *__restrict __s, size_t __size, int __n, FILE *__restrict __stream) - __wur __attr_access ((__write_only__, 1, 3)); + __wur __attr_access ((__write_only__, 1, 3)) __nonnull ((4)); extern size_t __REDIRECT (__fread_alias, (void *__restrict __ptr, size_t __size, @@ -119,7 +121,7 @@ extern size_t __REDIRECT (__fread_chk_warn, extern size_t __fread_chk (void *__restrict __ptr, size_t __ptrlen, size_t __size, size_t __n, - FILE *__restrict __stream) __wur; + FILE *__restrict __stream) __wur __nonnull ((5)); #ifdef __USE_GNU extern char *__REDIRECT_FORTIFY (__fgets_unlocked_alias, @@ -135,7 +137,7 @@ extern char *__REDIRECT (__fgets_unlocked_chk_warn, extern char *__fgets_unlocked_chk (char *__restrict __s, size_t __size, int __n, FILE *__restrict __stream) - __wur __attr_access ((__write_only__, 1, 3)); + __wur __attr_access ((__write_only__, 1, 3)) __nonnull ((4)); #endif #ifdef __USE_MISC @@ -154,7 +156,8 @@ extern size_t __REDIRECT (__fread_unlocked_chk_warn, extern size_t __fread_unlocked_chk (void *__restrict __ptr, size_t __ptrlen, size_t __size, size_t __n, - FILE *__restrict __stream) __wur; + FILE *__restrict __stream) + __wur __nonnull ((5)); #endif #endif /* bits/stdio2-decl.h. */ \ No newline at end of file diff --git a/lib/libc/include/generic-glibc/bits/stdio2.h b/lib/libc/include/generic-glibc/bits/stdio2.h index 4ed100e353..e4a6f5860c 100644 --- a/lib/libc/include/generic-glibc/bits/stdio2.h +++ b/lib/libc/include/generic-glibc/bits/stdio2.h @@ -1,5 +1,5 @@ /* Checking macros for stdio functions. - Copyright (C) 2004-2023 Free Software Foundation, Inc. + Copyright (C) 2004-2024 Free Software 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,7 @@ __NTH (vsnprintf (char *__restrict __s, size_t __n, #if __USE_FORTIFY_LEVEL > 1 # ifdef __va_arg_pack -__fortify_function int +__fortify_function __nonnull ((1)) int fprintf (FILE *__restrict __stream, const char *__restrict __fmt, ...) { return __fprintf_chk (__stream, __USE_FORTIFY_LEVEL - 1, __fmt, @@ -102,7 +102,7 @@ vprintf (const char *__restrict __fmt, __gnuc_va_list __ap) #endif } -__fortify_function int +__fortify_function __nonnull ((1)) int vfprintf (FILE *__restrict __stream, const char *__restrict __fmt, __gnuc_va_list __ap) { @@ -191,7 +191,8 @@ gets (char *__str) } #endif -__fortify_function __wur __fortified_attr_access (__write_only__, 1, 2) char * +__fortify_function __wur __fortified_attr_access (__write_only__, 1, 2) +__nonnull ((3)) char * fgets (char *__restrict __s, int __n, FILE *__restrict __stream) { size_t sz = __glibc_objsize (__s); @@ -202,7 +203,7 @@ fgets (char *__restrict __s, int __n, FILE *__restrict __stream) return __fgets_chk (__s, sz, __n, __stream); } -__fortify_function __wur size_t +__fortify_function __wur __nonnull ((4)) size_t fread (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream) { @@ -215,7 +216,8 @@ fread (void *__restrict __ptr, size_t __size, size_t __n, } #ifdef __USE_GNU -__fortify_function __wur __fortified_attr_access (__write_only__, 1, 2) char * +__fortify_function __wur __fortified_attr_access (__write_only__, 1, 2) +__nonnull ((3)) char * fgets_unlocked (char *__restrict __s, int __n, FILE *__restrict __stream) { size_t sz = __glibc_objsize (__s); @@ -229,7 +231,7 @@ fgets_unlocked (char *__restrict __s, int __n, FILE *__restrict __stream) #ifdef __USE_MISC # undef fread_unlocked -__fortify_function __wur size_t +__fortify_function __wur __nonnull ((4)) size_t fread_unlocked (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream) { diff --git a/lib/libc/include/generic-glibc/bits/stdio_lim.h b/lib/libc/include/generic-glibc/bits/stdio_lim.h index 2486178022..14726cecc1 100644 --- a/lib/libc/include/generic-glibc/bits/stdio_lim.h +++ b/lib/libc/include/generic-glibc/bits/stdio_lim.h @@ -1,5 +1,5 @@ /* System specific stdio.h definitions. Linux version. - Copyright (C) 2023 Free Software Foundation, Inc. + Copyright (C) 2023-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/stdlib-bsearch.h b/lib/libc/include/generic-glibc/bits/stdlib-bsearch.h index 1852b6b10f..9c5c23d2f7 100644 --- a/lib/libc/include/generic-glibc/bits/stdlib-bsearch.h +++ b/lib/libc/include/generic-glibc/bits/stdlib-bsearch.h @@ -1,5 +1,5 @@ /* Perform binary search - inline version. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/stdlib-float.h b/lib/libc/include/generic-glibc/bits/stdlib-float.h index 1803bf2490..80c68515bf 100644 --- a/lib/libc/include/generic-glibc/bits/stdlib-float.h +++ b/lib/libc/include/generic-glibc/bits/stdlib-float.h @@ -1,5 +1,5 @@ /* Floating-point inline functions for stdlib.h. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/stdlib-ldbl.h b/lib/libc/include/generic-glibc/bits/stdlib-ldbl.h index aa2d711e78..0c0ff1f2d4 100644 --- a/lib/libc/include/generic-glibc/bits/stdlib-ldbl.h +++ b/lib/libc/include/generic-glibc/bits/stdlib-ldbl.h @@ -1,5 +1,5 @@ /* -mlong-double-64 compatibility mode for functions. - Copyright (C) 2006-2023 Free Software Foundation, Inc. + Copyright (C) 2006-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/stdlib.h b/lib/libc/include/generic-glibc/bits/stdlib.h index db46378a26..6c688df004 100644 --- a/lib/libc/include/generic-glibc/bits/stdlib.h +++ b/lib/libc/include/generic-glibc/bits/stdlib.h @@ -1,5 +1,5 @@ /* Checking macros for stdlib functions. - Copyright (C) 2005-2023 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/string_fortified.h b/lib/libc/include/generic-glibc/bits/string_fortified.h index b579e51472..64617af6b7 100644 --- a/lib/libc/include/generic-glibc/bits/string_fortified.h +++ b/lib/libc/include/generic-glibc/bits/string_fortified.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2023 Free Software Foundation, Inc. +/* Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/strings_fortified.h b/lib/libc/include/generic-glibc/bits/strings_fortified.h index 5b565e7f93..6f5937b959 100644 --- a/lib/libc/include/generic-glibc/bits/strings_fortified.h +++ b/lib/libc/include/generic-glibc/bits/strings_fortified.h @@ -1,5 +1,5 @@ /* Fortify macros for strings.h functions. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/struct_mutex.h b/lib/libc/include/generic-glibc/bits/struct_mutex.h index bb245e9561..95eb736c58 100644 --- a/lib/libc/include/generic-glibc/bits/struct_mutex.h +++ b/lib/libc/include/generic-glibc/bits/struct_mutex.h @@ -1,5 +1,5 @@ /* Default mutex implementation struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/struct_rwlock.h b/lib/libc/include/generic-glibc/bits/struct_rwlock.h index 1de6d9250c..14fa4482fa 100644 --- a/lib/libc/include/generic-glibc/bits/struct_rwlock.h +++ b/lib/libc/include/generic-glibc/bits/struct_rwlock.h @@ -1,5 +1,5 @@ -/* MIPS internal rwlock struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. +/* Default read-write lock implementation struct definitions. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -16,8 +16,15 @@ License along with the GNU C Library; if not, see . */ -#ifndef _RWLOCK_INTERNAL_H -#define _RWLOCK_INTERNAL_H +#ifndef __RWLOCK_INTERNAL_H +#define __RWLOCK_INTERNAL_H + +#include + +/* Generic struct for both POSIX read-write lock. New ports are expected + to use the default layout, however archictetures can redefine it to add + arch-specific extensions (such as lock-elision). The struct have a size + of 32 bytes on both LP32 and LP64 architectures. */ struct __pthread_rwlock_arch_t { @@ -27,45 +34,28 @@ struct __pthread_rwlock_arch_t unsigned int __writers_futex; unsigned int __pad3; unsigned int __pad4; -#if _MIPS_SIM == _ABI64 - int __cur_writer; - int __shared; - unsigned long int __pad1; - unsigned long int __pad2; - /* FLAGS must stay at this position in the structure to maintain + /* FLAGS must stay at its position in the structure to maintain binary compatibility. */ - unsigned int __flags; -# else -# if __BYTE_ORDER == __BIG_ENDIAN +#if __BYTE_ORDER == __BIG_ENDIAN unsigned char __pad1; unsigned char __pad2; unsigned char __shared; - /* FLAGS must stay at this position in the structure to maintain - binary compatibility. */ unsigned char __flags; -# else - /* FLAGS must stay at this position in the structure to maintain - binary compatibility. */ +#else unsigned char __flags; unsigned char __shared; unsigned char __pad1; unsigned char __pad2; -# endif - int __cur_writer; #endif + int __cur_writer; }; -#if _MIPS_SIM == _ABI64 +#if __BYTE_ORDER == __BIG_ENDIAN # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags -#else -# if __BYTE_ORDER == __BIG_ENDIAN -# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 -# else -# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ +#else +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 -# endif #endif #endif \ No newline at end of file diff --git a/lib/libc/include/generic-glibc/bits/struct_stat.h b/lib/libc/include/generic-glibc/bits/struct_stat.h index b847f5786b..5a4615a475 100644 --- a/lib/libc/include/generic-glibc/bits/struct_stat.h +++ b/lib/libc/include/generic-glibc/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/struct_stat_time64_helper.h b/lib/libc/include/generic-glibc/bits/struct_stat_time64_helper.h index 1ddcd5c116..a305358fad 100644 --- a/lib/libc/include/generic-glibc/bits/struct_stat_time64_helper.h +++ b/lib/libc/include/generic-glibc/bits/struct_stat_time64_helper.h @@ -1,5 +1,5 @@ /* Definition for helper to define struct stat with 64-bit time. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/syscall.h b/lib/libc/include/generic-glibc/bits/syscall.h index 35735b73f6..acf653fcdf 100644 --- a/lib/libc/include/generic-glibc/bits/syscall.h +++ b/lib/libc/include/generic-glibc/bits/syscall.h @@ -1,11 +1,11 @@ /* Generated at libc build time from syscall list. */ -/* The system call list corresponds to kernel 6.4. */ +/* The system call list corresponds to kernel 6.7. */ #ifndef _SYSCALL_H # error "Never use directly; include instead." #endif -#define __GLIBC_LINUX_VERSION_CODE 394240 +#define __GLIBC_LINUX_VERSION_CODE 395008 #ifdef __NR_FAST_atomic_update # define SYS_FAST_atomic_update __NR_FAST_atomic_update @@ -143,6 +143,10 @@ # define SYS_cacheflush __NR_cacheflush #endif +#ifdef __NR_cachestat +# define SYS_cachestat __NR_cachestat +#endif + #ifdef __NR_capget # define SYS_capget __NR_capget #endif @@ -375,6 +379,10 @@ # define SYS_fchmodat __NR_fchmodat #endif +#ifdef __NR_fchmodat2 +# define SYS_fchmodat2 __NR_fchmodat2 +#endif + #ifdef __NR_fchown # define SYS_fchown __NR_fchown #endif @@ -491,14 +499,26 @@ # define SYS_futex __NR_futex #endif +#ifdef __NR_futex_requeue +# define SYS_futex_requeue __NR_futex_requeue +#endif + #ifdef __NR_futex_time64 # define SYS_futex_time64 __NR_futex_time64 #endif +#ifdef __NR_futex_wait +# define SYS_futex_wait __NR_futex_wait +#endif + #ifdef __NR_futex_waitv # define SYS_futex_waitv __NR_futex_waitv #endif +#ifdef __NR_futex_wake +# define SYS_futex_wake __NR_futex_wake +#endif + #ifdef __NR_futimesat # define SYS_futimesat __NR_futimesat #endif @@ -891,6 +911,10 @@ # define SYS_madvise __NR_madvise #endif +#ifdef __NR_map_shadow_stack +# define SYS_map_shadow_stack __NR_map_shadow_stack +#endif + #ifdef __NR_mbind # define SYS_mbind __NR_mbind #endif diff --git a/lib/libc/include/generic-glibc/bits/syslog-decl.h b/lib/libc/include/generic-glibc/bits/syslog-decl.h index cc96f01c8f..7b9f399c75 100644 --- a/lib/libc/include/generic-glibc/bits/syslog-decl.h +++ b/lib/libc/include/generic-glibc/bits/syslog-decl.h @@ -1,5 +1,5 @@ /* Checking routines for syslog functions. Declaration only. - Copyright (C) 2023 Free Software Foundation, Inc. + Copyright (C) 2023-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/syslog-ldbl.h b/lib/libc/include/generic-glibc/bits/syslog-ldbl.h index 254082dd9c..95e7b62c97 100644 --- a/lib/libc/include/generic-glibc/bits/syslog-ldbl.h +++ b/lib/libc/include/generic-glibc/bits/syslog-ldbl.h @@ -1,5 +1,5 @@ /* -mlong-double-64 compatibility mode for syslog functions. - Copyright (C) 2006-2023 Free Software Foundation, Inc. + Copyright (C) 2006-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/syslog-path.h b/lib/libc/include/generic-glibc/bits/syslog-path.h index 1ff11192c2..6cb04cc305 100644 --- a/lib/libc/include/generic-glibc/bits/syslog-path.h +++ b/lib/libc/include/generic-glibc/bits/syslog-path.h @@ -1,5 +1,5 @@ /* -- _PATH_LOG definition - Copyright (C) 2006-2023 Free Software Foundation, Inc. + Copyright (C) 2006-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/syslog.h b/lib/libc/include/generic-glibc/bits/syslog.h index b160d4cd1a..d2a3658f38 100644 --- a/lib/libc/include/generic-glibc/bits/syslog.h +++ b/lib/libc/include/generic-glibc/bits/syslog.h @@ -1,5 +1,5 @@ /* Checking macros for syslog functions. - Copyright (C) 2005-2023 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/sysmacros.h b/lib/libc/include/generic-glibc/bits/sysmacros.h index 4c2b9c3e96..c99913a4bf 100644 --- a/lib/libc/include/generic-glibc/bits/sysmacros.h +++ b/lib/libc/include/generic-glibc/bits/sysmacros.h @@ -1,5 +1,5 @@ /* Definitions of macros to access `dev_t' values. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/termios-baud.h b/lib/libc/include/generic-glibc/bits/termios-baud.h index 18dacc8666..c33b77a099 100644 --- a/lib/libc/include/generic-glibc/bits/termios-baud.h +++ b/lib/libc/include/generic-glibc/bits/termios-baud.h @@ -1,5 +1,5 @@ /* termios baud rate selection definitions. Linux/generic version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/termios-c_cc.h b/lib/libc/include/generic-glibc/bits/termios-c_cc.h index 6463548d10..39a4c4f0a0 100644 --- a/lib/libc/include/generic-glibc/bits/termios-c_cc.h +++ b/lib/libc/include/generic-glibc/bits/termios-c_cc.h @@ -1,5 +1,5 @@ /* termios c_cc symbolic constant definitions. Linux/generic version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/termios-c_cflag.h b/lib/libc/include/generic-glibc/bits/termios-c_cflag.h index bb60e32e42..067e927463 100644 --- a/lib/libc/include/generic-glibc/bits/termios-c_cflag.h +++ b/lib/libc/include/generic-glibc/bits/termios-c_cflag.h @@ -1,5 +1,5 @@ /* termios control mode definitions. Linux/generic version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/termios-c_iflag.h b/lib/libc/include/generic-glibc/bits/termios-c_iflag.h index c102b95892..70e65e10d3 100644 --- a/lib/libc/include/generic-glibc/bits/termios-c_iflag.h +++ b/lib/libc/include/generic-glibc/bits/termios-c_iflag.h @@ -1,5 +1,5 @@ /* termios input mode definitions. Linux/generic version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/termios-c_lflag.h b/lib/libc/include/generic-glibc/bits/termios-c_lflag.h index 7774a67e5b..9293ba1108 100644 --- a/lib/libc/include/generic-glibc/bits/termios-c_lflag.h +++ b/lib/libc/include/generic-glibc/bits/termios-c_lflag.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/generic version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/termios-c_oflag.h b/lib/libc/include/generic-glibc/bits/termios-c_oflag.h index d4f9e4e861..a2a6edfbfc 100644 --- a/lib/libc/include/generic-glibc/bits/termios-c_oflag.h +++ b/lib/libc/include/generic-glibc/bits/termios-c_oflag.h @@ -1,5 +1,5 @@ /* termios output mode definitions. Linux/generic version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/termios-misc.h b/lib/libc/include/generic-glibc/bits/termios-misc.h index 1a7ab9be21..c3eea0bd13 100644 --- a/lib/libc/include/generic-glibc/bits/termios-misc.h +++ b/lib/libc/include/generic-glibc/bits/termios-misc.h @@ -1,5 +1,5 @@ /* termios baud platform specific definitions. Linux/generic version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/termios-struct.h b/lib/libc/include/generic-glibc/bits/termios-struct.h index 380ed81f8b..288639aabf 100644 --- a/lib/libc/include/generic-glibc/bits/termios-struct.h +++ b/lib/libc/include/generic-glibc/bits/termios-struct.h @@ -1,5 +1,5 @@ /* struct termios definition. Linux/generic version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/termios-tcflow.h b/lib/libc/include/generic-glibc/bits/termios-tcflow.h index 1d3e598df4..d886511ac6 100644 --- a/lib/libc/include/generic-glibc/bits/termios-tcflow.h +++ b/lib/libc/include/generic-glibc/bits/termios-tcflow.h @@ -1,5 +1,5 @@ /* termios tcflag symbolic constant definitions. Linux/generic version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/termios.h b/lib/libc/include/generic-glibc/bits/termios.h index 004137f8da..95410d0d2a 100644 --- a/lib/libc/include/generic-glibc/bits/termios.h +++ b/lib/libc/include/generic-glibc/bits/termios.h @@ -1,5 +1,5 @@ /* termios type and macro definitions. Linux version. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/thread-shared-types.h b/lib/libc/include/generic-glibc/bits/thread-shared-types.h index 5b03da2e44..e5419a28e5 100644 --- a/lib/libc/include/generic-glibc/bits/thread-shared-types.h +++ b/lib/libc/include/generic-glibc/bits/thread-shared-types.h @@ -1,5 +1,5 @@ /* Common threading primitives definitions for both POSIX and C11. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/time.h b/lib/libc/include/generic-glibc/bits/time.h index 043b2e03ca..27e5d611cf 100644 --- a/lib/libc/include/generic-glibc/bits/time.h +++ b/lib/libc/include/generic-glibc/bits/time.h @@ -1,5 +1,5 @@ /* System-dependent timing definitions. Linux version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/time64.h b/lib/libc/include/generic-glibc/bits/time64.h index ac4faa0a57..5fe628c92e 100644 --- a/lib/libc/include/generic-glibc/bits/time64.h +++ b/lib/libc/include/generic-glibc/bits/time64.h @@ -1,5 +1,5 @@ /* bits/time64.h -- underlying types for __time64_t. Generic version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/timerfd.h b/lib/libc/include/generic-glibc/bits/timerfd.h index 60cd1b9970..672b357ebc 100644 --- a/lib/libc/include/generic-glibc/bits/timerfd.h +++ b/lib/libc/include/generic-glibc/bits/timerfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2008-2023 Free Software Foundation, Inc. +/* Copyright (C) 2008-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/timesize.h b/lib/libc/include/generic-glibc/bits/timesize.h index 0c8caad8c9..18b68aca08 100644 --- a/lib/libc/include/generic-glibc/bits/timesize.h +++ b/lib/libc/include/generic-glibc/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, Linux/MIPS. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/timex.h b/lib/libc/include/generic-glibc/bits/timex.h index fc267669f6..0eae737310 100644 --- a/lib/libc/include/generic-glibc/bits/timex.h +++ b/lib/libc/include/generic-glibc/bits/timex.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types.h b/lib/libc/include/generic-glibc/bits/types.h index 54d5d7baa2..8ffff8ed67 100644 --- a/lib/libc/include/generic-glibc/bits/types.h +++ b/lib/libc/include/generic-glibc/bits/types.h @@ -1,5 +1,5 @@ /* bits/types.h -- definitions of __*_t types underlying *_t types. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/__locale_t.h b/lib/libc/include/generic-glibc/bits/types/__locale_t.h index 1202f8f720..70828c23c3 100644 --- a/lib/libc/include/generic-glibc/bits/types/__locale_t.h +++ b/lib/libc/include/generic-glibc/bits/types/__locale_t.h @@ -1,5 +1,5 @@ /* Definition of struct __locale_struct and __locale_t. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/__sigval_t.h b/lib/libc/include/generic-glibc/bits/types/__sigval_t.h index bffaae4189..2080376692 100644 --- a/lib/libc/include/generic-glibc/bits/types/__sigval_t.h +++ b/lib/libc/include/generic-glibc/bits/types/__sigval_t.h @@ -1,5 +1,5 @@ /* Define __sigval_t. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/cookie_io_functions_t.h b/lib/libc/include/generic-glibc/bits/types/cookie_io_functions_t.h index 1bc52a1b63..e10389bb4e 100644 --- a/lib/libc/include/generic-glibc/bits/types/cookie_io_functions_t.h +++ b/lib/libc/include/generic-glibc/bits/types/cookie_io_functions_t.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/error_t.h b/lib/libc/include/generic-glibc/bits/types/error_t.h index da549dec48..7fe618e0a3 100644 --- a/lib/libc/include/generic-glibc/bits/types/error_t.h +++ b/lib/libc/include/generic-glibc/bits/types/error_t.h @@ -1,5 +1,5 @@ /* Define error_t. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/locale_t.h b/lib/libc/include/generic-glibc/bits/types/locale_t.h index 9f6b1877a1..0f6d3887a5 100644 --- a/lib/libc/include/generic-glibc/bits/types/locale_t.h +++ b/lib/libc/include/generic-glibc/bits/types/locale_t.h @@ -1,5 +1,5 @@ /* Definition of locale_t. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/stack_t.h b/lib/libc/include/generic-glibc/bits/types/stack_t.h index d2aecf0561..165ebc2fab 100644 --- a/lib/libc/include/generic-glibc/bits/types/stack_t.h +++ b/lib/libc/include/generic-glibc/bits/types/stack_t.h @@ -1,5 +1,5 @@ /* Define stack_t. Linux version. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/struct_FILE.h b/lib/libc/include/generic-glibc/bits/types/struct_FILE.h index 23801cf2a4..1327fd5504 100644 --- a/lib/libc/include/generic-glibc/bits/types/struct_FILE.h +++ b/lib/libc/include/generic-glibc/bits/types/struct_FILE.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/struct___jmp_buf_tag.h b/lib/libc/include/generic-glibc/bits/types/struct___jmp_buf_tag.h index 73f9de32d4..6e22dd7f24 100644 --- a/lib/libc/include/generic-glibc/bits/types/struct___jmp_buf_tag.h +++ b/lib/libc/include/generic-glibc/bits/types/struct___jmp_buf_tag.h @@ -1,5 +1,5 @@ /* Define struct __jmp_buf_tag. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/struct_iovec.h b/lib/libc/include/generic-glibc/bits/types/struct_iovec.h index 8e5186585c..d25a683bcf 100644 --- a/lib/libc/include/generic-glibc/bits/types/struct_iovec.h +++ b/lib/libc/include/generic-glibc/bits/types/struct_iovec.h @@ -1,5 +1,5 @@ /* Define struct iovec. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/struct_msqid64_ds.h b/lib/libc/include/generic-glibc/bits/types/struct_msqid64_ds.h index dada8392ea..6202a46318 100644 --- a/lib/libc/include/generic-glibc/bits/types/struct_msqid64_ds.h +++ b/lib/libc/include/generic-glibc/bits/types/struct_msqid64_ds.h @@ -1,5 +1,5 @@ /* Generic implementation of the SysV message struct msqid64_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/struct_msqid64_ds_helper.h b/lib/libc/include/generic-glibc/bits/types/struct_msqid64_ds_helper.h index 890ad3f8e5..b05fe82a68 100644 --- a/lib/libc/include/generic-glibc/bits/types/struct_msqid64_ds_helper.h +++ b/lib/libc/include/generic-glibc/bits/types/struct_msqid64_ds_helper.h @@ -1,5 +1,5 @@ /* Common definitions for struct msqid_ds with 64-bit time. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/struct_msqid_ds.h b/lib/libc/include/generic-glibc/bits/types/struct_msqid_ds.h index d4d4ceb55c..0f1c608637 100644 --- a/lib/libc/include/generic-glibc/bits/types/struct_msqid_ds.h +++ b/lib/libc/include/generic-glibc/bits/types/struct_msqid_ds.h @@ -1,5 +1,5 @@ /* Generic implementation of the SysV message struct msqid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/struct_rusage.h b/lib/libc/include/generic-glibc/bits/types/struct_rusage.h index d01b6e7495..ad18674b35 100644 --- a/lib/libc/include/generic-glibc/bits/types/struct_rusage.h +++ b/lib/libc/include/generic-glibc/bits/types/struct_rusage.h @@ -1,5 +1,5 @@ /* Define struct rusage. - Copyright (C) 1994-2023 Free Software Foundation, Inc. + Copyright (C) 1994-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/struct_sched_param.h b/lib/libc/include/generic-glibc/bits/types/struct_sched_param.h index ff64400e9d..be36768f4b 100644 --- a/lib/libc/include/generic-glibc/bits/types/struct_sched_param.h +++ b/lib/libc/include/generic-glibc/bits/types/struct_sched_param.h @@ -1,5 +1,5 @@ /* Sched parameter structure. Generic version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/struct_semid64_ds.h b/lib/libc/include/generic-glibc/bits/types/struct_semid64_ds.h index 87f1bbfd55..8780190813 100644 --- a/lib/libc/include/generic-glibc/bits/types/struct_semid64_ds.h +++ b/lib/libc/include/generic-glibc/bits/types/struct_semid64_ds.h @@ -1,5 +1,5 @@ /* Generic implementation of the semaphore struct semid64_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/struct_semid64_ds_helper.h b/lib/libc/include/generic-glibc/bits/types/struct_semid64_ds_helper.h index 33fdab3bd0..70113c69ea 100644 --- a/lib/libc/include/generic-glibc/bits/types/struct_semid64_ds_helper.h +++ b/lib/libc/include/generic-glibc/bits/types/struct_semid64_ds_helper.h @@ -1,5 +1,5 @@ /* Common definitions for struct semid_ds with 64-bit time. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/struct_semid_ds.h b/lib/libc/include/generic-glibc/bits/types/struct_semid_ds.h index ddc82015c8..7439615437 100644 --- a/lib/libc/include/generic-glibc/bits/types/struct_semid_ds.h +++ b/lib/libc/include/generic-glibc/bits/types/struct_semid_ds.h @@ -1,5 +1,5 @@ /* Generic implementation of the semaphore struct semid_ds. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/struct_shmid64_ds.h b/lib/libc/include/generic-glibc/bits/types/struct_shmid64_ds.h index 5246141fc4..77221535e2 100644 --- a/lib/libc/include/generic-glibc/bits/types/struct_shmid64_ds.h +++ b/lib/libc/include/generic-glibc/bits/types/struct_shmid64_ds.h @@ -1,5 +1,5 @@ /* Generic implementation of the shared memory struct shmid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/struct_shmid64_ds_helper.h b/lib/libc/include/generic-glibc/bits/types/struct_shmid64_ds_helper.h index da5a35ee1b..b9f5af7799 100644 --- a/lib/libc/include/generic-glibc/bits/types/struct_shmid64_ds_helper.h +++ b/lib/libc/include/generic-glibc/bits/types/struct_shmid64_ds_helper.h @@ -1,5 +1,5 @@ /* Common definitions for struct semid_ds with 64-bit time. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/struct_shmid_ds.h b/lib/libc/include/generic-glibc/bits/types/struct_shmid_ds.h index 7a35a2f75a..d60cd29eb7 100644 --- a/lib/libc/include/generic-glibc/bits/types/struct_shmid_ds.h +++ b/lib/libc/include/generic-glibc/bits/types/struct_shmid_ds.h @@ -1,5 +1,5 @@ /* Generic implementation of the shared memory struct shmid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/struct_sigstack.h b/lib/libc/include/generic-glibc/bits/types/struct_sigstack.h index 56cf58e4f8..a8660a2811 100644 --- a/lib/libc/include/generic-glibc/bits/types/struct_sigstack.h +++ b/lib/libc/include/generic-glibc/bits/types/struct_sigstack.h @@ -1,5 +1,5 @@ /* Define struct sigstack. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/struct_statx.h b/lib/libc/include/generic-glibc/bits/types/struct_statx.h index 41ae595f75..a31c77f50a 100644 --- a/lib/libc/include/generic-glibc/bits/types/struct_statx.h +++ b/lib/libc/include/generic-glibc/bits/types/struct_statx.h @@ -1,5 +1,5 @@ /* Definition of the generic version of struct statx. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/types/struct_statx_timestamp.h b/lib/libc/include/generic-glibc/bits/types/struct_statx_timestamp.h index 1e99a5f286..9db9f6c068 100644 --- a/lib/libc/include/generic-glibc/bits/types/struct_statx_timestamp.h +++ b/lib/libc/include/generic-glibc/bits/types/struct_statx_timestamp.h @@ -1,5 +1,5 @@ /* Definition of the generic version of struct statx_timestamp. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/typesizes.h b/lib/libc/include/generic-glibc/bits/typesizes.h index 483428043e..4c384e8691 100644 --- a/lib/libc/include/generic-glibc/bits/typesizes.h +++ b/lib/libc/include/generic-glibc/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. MIPS version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/uintn-identity.h b/lib/libc/include/generic-glibc/bits/uintn-identity.h index c424c783d6..f719964beb 100644 --- a/lib/libc/include/generic-glibc/bits/uintn-identity.h +++ b/lib/libc/include/generic-glibc/bits/uintn-identity.h @@ -1,5 +1,5 @@ /* Inline functions to return unsigned integer values unchanged. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/uio-ext.h b/lib/libc/include/generic-glibc/bits/uio-ext.h index 5323492484..7b83bc4b0a 100644 --- a/lib/libc/include/generic-glibc/bits/uio-ext.h +++ b/lib/libc/include/generic-glibc/bits/uio-ext.h @@ -1,5 +1,5 @@ /* Operating system-specific extensions to sys/uio.h - Linux version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/uio_lim.h b/lib/libc/include/generic-glibc/bits/uio_lim.h index 5bbbe25d65..e1b62190d1 100644 --- a/lib/libc/include/generic-glibc/bits/uio_lim.h +++ b/lib/libc/include/generic-glibc/bits/uio_lim.h @@ -1,5 +1,5 @@ /* Implementation limits related to sys/uio.h - Linux version. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/unistd-decl.h b/lib/libc/include/generic-glibc/bits/unistd-decl.h index d06ca053a1..28f5ef4f79 100644 --- a/lib/libc/include/generic-glibc/bits/unistd-decl.h +++ b/lib/libc/include/generic-glibc/bits/unistd-decl.h @@ -1,5 +1,5 @@ /* Checking routines for unistd functions. Declaration only. - Copyright (C) 2023 Free Software Foundation, Inc. + Copyright (C) 2023-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/unistd.h b/lib/libc/include/generic-glibc/bits/unistd.h index 964ffd374e..8d8548f0be 100644 --- a/lib/libc/include/generic-glibc/bits/unistd.h +++ b/lib/libc/include/generic-glibc/bits/unistd.h @@ -1,5 +1,5 @@ /* Checking macros for unistd functions. - Copyright (C) 2005-2023 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/unistd_ext.h b/lib/libc/include/generic-glibc/bits/unistd_ext.h index 95fd6fc316..721a332f51 100644 --- a/lib/libc/include/generic-glibc/bits/unistd_ext.h +++ b/lib/libc/include/generic-glibc/bits/unistd_ext.h @@ -1,5 +1,5 @@ /* System-specific extensions of , Linux version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/utmp.h b/lib/libc/include/generic-glibc/bits/utmp.h index 8172fb2e80..1250304ece 100644 --- a/lib/libc/include/generic-glibc/bits/utmp.h +++ b/lib/libc/include/generic-glibc/bits/utmp.h @@ -1,5 +1,5 @@ /* The `struct utmp' type, describing entries in the utmp file. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/utmpx.h b/lib/libc/include/generic-glibc/bits/utmpx.h index 86649eafac..caac097e55 100644 --- a/lib/libc/include/generic-glibc/bits/utmpx.h +++ b/lib/libc/include/generic-glibc/bits/utmpx.h @@ -1,5 +1,5 @@ /* Structures and definitions for the user accounting database. GNU version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/utsname.h b/lib/libc/include/generic-glibc/bits/utsname.h index 59c73981bd..4e9f022781 100644 --- a/lib/libc/include/generic-glibc/bits/utsname.h +++ b/lib/libc/include/generic-glibc/bits/utsname.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/waitflags.h b/lib/libc/include/generic-glibc/bits/waitflags.h index ca6b771fce..f379d2c86d 100644 --- a/lib/libc/include/generic-glibc/bits/waitflags.h +++ b/lib/libc/include/generic-glibc/bits/waitflags.h @@ -1,5 +1,5 @@ /* Definitions of flag bits for `waitpid' et al. - Copyright (C) 1992-2023 Free Software Foundation, Inc. + Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/waitstatus.h b/lib/libc/include/generic-glibc/bits/waitstatus.h index 4678684ccb..86b096d698 100644 --- a/lib/libc/include/generic-glibc/bits/waitstatus.h +++ b/lib/libc/include/generic-glibc/bits/waitstatus.h @@ -1,5 +1,5 @@ /* Definitions of status bits for `wait' et al. - Copyright (C) 1992-2023 Free Software Foundation, Inc. + Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/wchar-ldbl.h b/lib/libc/include/generic-glibc/bits/wchar-ldbl.h index 24db821fa5..6b377659f1 100644 --- a/lib/libc/include/generic-glibc/bits/wchar-ldbl.h +++ b/lib/libc/include/generic-glibc/bits/wchar-ldbl.h @@ -1,5 +1,5 @@ /* -mlong-double-64 compatibility mode for functions. - Copyright (C) 2006-2023 Free Software Foundation, Inc. + Copyright (C) 2006-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/wchar.h b/lib/libc/include/generic-glibc/bits/wchar.h index 154b61c449..4f7b624495 100644 --- a/lib/libc/include/generic-glibc/bits/wchar.h +++ b/lib/libc/include/generic-glibc/bits/wchar.h @@ -1,5 +1,5 @@ /* wchar_t type related definitions. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/wchar2-decl.h b/lib/libc/include/generic-glibc/bits/wchar2-decl.h index 3747c241d1..f21490ed23 100644 --- a/lib/libc/include/generic-glibc/bits/wchar2-decl.h +++ b/lib/libc/include/generic-glibc/bits/wchar2-decl.h @@ -1,5 +1,5 @@ /* Checking macros for wchar functions. Declarations only. - Copyright (C) 2004-2023 Free Software Foundation, Inc. + Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/wchar2.h b/lib/libc/include/generic-glibc/bits/wchar2.h index a41e87d777..59efb0bdac 100644 --- a/lib/libc/include/generic-glibc/bits/wchar2.h +++ b/lib/libc/include/generic-glibc/bits/wchar2.h @@ -1,5 +1,5 @@ /* Checking macros for wchar functions. - Copyright (C) 2005-2023 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/wctype-wchar.h b/lib/libc/include/generic-glibc/bits/wctype-wchar.h index b02fd4a3c1..3f27538b9a 100644 --- a/lib/libc/include/generic-glibc/bits/wctype-wchar.h +++ b/lib/libc/include/generic-glibc/bits/wctype-wchar.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/wordsize.h b/lib/libc/include/generic-glibc/bits/wordsize.h index 275ac586da..d970b65edf 100644 --- a/lib/libc/include/generic-glibc/bits/wordsize.h +++ b/lib/libc/include/generic-glibc/bits/wordsize.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/bits/xopen_lim.h b/lib/libc/include/generic-glibc/bits/xopen_lim.h index 30a41354e0..86f0eb469d 100644 --- a/lib/libc/include/generic-glibc/bits/xopen_lim.h +++ b/lib/libc/include/generic-glibc/bits/xopen_lim.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/byteswap.h b/lib/libc/include/generic-glibc/byteswap.h index 10398f4770..195990c7c9 100644 --- a/lib/libc/include/generic-glibc/byteswap.h +++ b/lib/libc/include/generic-glibc/byteswap.h @@ -1,5 +1,5 @@ /* Swap byte order for 16, 32 and 64 bit values - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/complex.h b/lib/libc/include/generic-glibc/complex.h index 996f05bbea..2ffb19cdf9 100644 --- a/lib/libc/include/generic-glibc/complex.h +++ b/lib/libc/include/generic-glibc/complex.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/cpio.h b/lib/libc/include/generic-glibc/cpio.h index 85945c2a2e..a2e396cf6b 100644 --- a/lib/libc/include/generic-glibc/cpio.h +++ b/lib/libc/include/generic-glibc/cpio.h @@ -1,6 +1,6 @@ /* Extended cpio format from POSIX.1. This file is part of the GNU C Library. - Copyright (C) 1992-2023 Free Software Foundation, Inc. + Copyright (C) 1992-2024 Free Software Foundation, Inc. NOTE: The canonical source of this file is maintained with the GNU cpio. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/ctype.h b/lib/libc/include/generic-glibc/ctype.h index 2f600ead41..1c44847f46 100644 --- a/lib/libc/include/generic-glibc/ctype.h +++ b/lib/libc/include/generic-glibc/ctype.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/dirent.h b/lib/libc/include/generic-glibc/dirent.h index c253b6eec2..9140ded024 100644 --- a/lib/libc/include/generic-glibc/dirent.h +++ b/lib/libc/include/generic-glibc/dirent.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/dlfcn.h b/lib/libc/include/generic-glibc/dlfcn.h index 53ff12dc21..eff91b9435 100644 --- a/lib/libc/include/generic-glibc/dlfcn.h +++ b/lib/libc/include/generic-glibc/dlfcn.h @@ -1,5 +1,5 @@ /* User functions for run-time dynamic loading. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/elf.h b/lib/libc/include/generic-glibc/elf.h index 85a0eed6d6..834416cc8b 100644 --- a/lib/libc/include/generic-glibc/elf.h +++ b/lib/libc/include/generic-glibc/elf.h @@ -1,5 +1,5 @@ /* This file defines standard ELF types, structures, and macros. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -791,9 +791,12 @@ typedef struct Register */ #define NT_PPC_PKEY 0x110 /* Memory Protection Keys registers. */ +#define NT_PPC_DEXCR 0x111 /* PowerPC DEXCR registers. */ +#define NT_PPC_HASHKEYR 0x112 /* PowerPC HASHKEYR register. */ #define NT_386_TLS 0x200 /* i386 TLS slots (struct user_desc) */ #define NT_386_IOPERM 0x201 /* x86 io permission bitmap (1=deny) */ #define NT_X86_XSTATE 0x202 /* x86 extended state using xsave */ +#define NT_X86_SHSTK 0x204 /* x86 SHSTK state */ #define NT_S390_HIGH_GPRS 0x300 /* s390 upper register halves */ #define NT_S390_TIMER 0x301 /* s390 timer register */ #define NT_S390_TODCMP 0x302 /* s390 TOD clock comparator register */ @@ -832,6 +835,8 @@ typedef struct #define NT_MIPS_DSP 0x800 /* MIPS DSP ASE registers. */ #define NT_MIPS_FP_MODE 0x801 /* MIPS floating-point mode. */ #define NT_MIPS_MSA 0x802 /* MIPS SIMD registers. */ +#define NT_RISCV_CSR 0x900 /* RISC-V Control and Status Registers */ +#define NT_RISCV_VECTOR 0x901 /* RISC-V vector registers */ #define NT_LOONGARCH_CPUCFG 0xa00 /* LoongArch CPU config registers. */ #define NT_LOONGARCH_CSR 0xa01 /* LoongArch control and status registers. */ @@ -841,6 +846,8 @@ typedef struct SIMD Extension registers. */ #define NT_LOONGARCH_LBT 0xa04 /* LoongArch Loongson Binary Translation registers. */ +#define NT_LOONGARCH_HW_BREAK 0xa05 /* LoongArch hardware breakpoint registers */ +#define NT_LOONGARCH_HW_WATCH 0xa06 /* LoongArch hardware watchpoint registers */ /* Legal values for the note segment descriptor types for object files. */ @@ -1685,11 +1692,25 @@ typedef struct #define EF_MIPS_PIC 2 /* Contains PIC code. */ #define EF_MIPS_CPIC 4 /* Uses PIC calling sequence. */ #define EF_MIPS_XGOT 8 -#define EF_MIPS_64BIT_WHIRL 16 +#define EF_MIPS_UCODE 16 #define EF_MIPS_ABI2 32 #define EF_MIPS_ABI_ON32 64 +#define EF_MIPS_OPTIONS_FIRST 0x00000080 /* Process the .MIPS.options + section first by ld. */ +#define EF_MIPS_32BITMODE 0x00000100 /* Indicates code compiled for + a 64-bit machine in 32-bit + mode (regs are 32-bits + wide). */ #define EF_MIPS_FP64 512 /* Uses FP64 (12 callee-saved). */ #define EF_MIPS_NAN2008 1024 /* Uses IEEE 754-2008 NaN encoding. */ +#define EF_MIPS_ARCH_ASE 0x0f000000 /* Architectural Extensions + used by this file. */ +#define EF_MIPS_ARCH_ASE_MDMX 0x08000000 /* Use MDMX multimedia + extensions. */ +#define EF_MIPS_ARCH_ASE_M16 0x04000000 /* Use MIPS-16 ISA + extensions. */ +#define EF_MIPS_ARCH_ASE_MICROMIPS 0x02000000 /* Use MICROMIPS ISA + extensions. */ #define EF_MIPS_ARCH 0xf0000000 /* MIPS architecture level. */ /* Legal values for MIPS architecture level. */ @@ -1703,6 +1724,38 @@ typedef struct #define EF_MIPS_ARCH_64 0x60000000 /* MIPS64 code. */ #define EF_MIPS_ARCH_32R2 0x70000000 /* MIPS32r2 code. */ #define EF_MIPS_ARCH_64R2 0x80000000 /* MIPS64r2 code. */ +#define EF_MIPS_ARCH_32R6 0x90000000 /* MIPS32r6 code. */ +#define EF_MIPS_ARCH_64R6 0xa0000000 /* MIPS64r6 code. */ +#define EF_MIPS_ABI 0x0000F000 /* The ABI of the file. Also + see EF_MIPS_ABI2 above. */ +#define EF_MIPS_ABI_O32 0x00001000 /* The original o32 abi. */ +#define EF_MIPS_ABI_O64 0x00002000 /* O32 extended to work on + 64 bit architectures. */ +#define EF_MIPS_ABI_EABI32 0x00003000 /* EABI in 32 bit mode. */ +#define EF_MIPS_ABI_EABI64 0x00004000 /* EABI in 64 bit mode. */ +#define EF_MIPS_MACH 0x00FF0000 +#define EF_MIPS_MACH_3900 0x00810000 +#define EF_MIPS_MACH_4010 0x00820000 +#define EF_MIPS_MACH_4100 0x00830000 +#define EF_MIPS_MACH_ALLEGREX 0x00840000 +#define EF_MIPS_MACH_4650 0x00850000 +#define EF_MIPS_MACH_4120 0x00870000 +#define EF_MIPS_MACH_4111 0x00880000 +#define EF_MIPS_MACH_SB1 0x008a0000 +#define EF_MIPS_MACH_OCTEON 0x008b0000 +#define EF_MIPS_MACH_XLR 0x008c0000 +#define EF_MIPS_MACH_OCTEON2 0x008d0000 +#define EF_MIPS_MACH_OCTEON3 0x008e0000 +#define EF_MIPS_MACH_5400 0x00910000 +#define EF_MIPS_MACH_5900 0x00920000 +#define EF_MIPS_MACH_IAMR2 0x00930000 +#define EF_MIPS_MACH_5500 0x00980000 +#define EF_MIPS_MACH_9000 0x00990000 +#define EF_MIPS_MACH_LS2E 0x00A00000 +#define EF_MIPS_MACH_LS2F 0x00A10000 +#define EF_MIPS_MACH_GS464 0x00A20000 +#define EF_MIPS_MACH_GS464E 0x00A30000 +#define EF_MIPS_MACH_GS264E 0x00A40000 /* The following are unofficial names and should not be used. */ @@ -1763,6 +1816,7 @@ typedef struct #define SHT_MIPS_EH_REGION 0x70000027 #define SHT_MIPS_XLATE_OLD 0x70000028 #define SHT_MIPS_PDR_EXCEPTION 0x70000029 +#define SHT_MIPS_ABIFLAGS 0x7000002a #define SHT_MIPS_XHASH 0x7000002b /* Legal values for sh_flags field of Elf32_Shdr. */ @@ -1931,10 +1985,68 @@ typedef struct #define R_MIPS_TLS_TPREL_HI16 49 /* TP-relative offset, high 16 bits */ #define R_MIPS_TLS_TPREL_LO16 50 /* TP-relative offset, low 16 bits */ #define R_MIPS_GLOB_DAT 51 +#define R_MIPS_PC21_S2 60 +#define R_MIPS_PC26_S2 61 +#define R_MIPS_PC18_S3 62 +#define R_MIPS_PC19_S2 63 +#define R_MIPS_PCHI16 64 +#define R_MIPS_PCLO16 65 +#define R_MIPS16_26 100 +#define R_MIPS16_GPREL 101 +#define R_MIPS16_GOT16 102 +#define R_MIPS16_CALL16 103 +#define R_MIPS16_HI16 104 +#define R_MIPS16_LO16 105 +#define R_MIPS16_TLS_GD 106 +#define R_MIPS16_TLS_LDM 107 +#define R_MIPS16_TLS_DTPREL_HI16 108 +#define R_MIPS16_TLS_DTPREL_LO16 109 +#define R_MIPS16_TLS_GOTTPREL 110 +#define R_MIPS16_TLS_TPREL_HI16 111 +#define R_MIPS16_TLS_TPREL_LO16 112 +#define R_MIPS16_PC16_S1 113 #define R_MIPS_COPY 126 #define R_MIPS_JUMP_SLOT 127 +#define R_MIPS_RELATIVE 128 +#define R_MICROMIPS_26_S1 133 +#define R_MICROMIPS_HI16 134 +#define R_MICROMIPS_LO16 135 +#define R_MICROMIPS_GPREL16 136 +#define R_MICROMIPS_LITERAL 137 +#define R_MICROMIPS_GOT16 138 +#define R_MICROMIPS_PC7_S1 139 +#define R_MICROMIPS_PC10_S1 140 +#define R_MICROMIPS_PC16_S1 141 +#define R_MICROMIPS_CALL16 142 +#define R_MICROMIPS_GOT_DISP 145 +#define R_MICROMIPS_GOT_PAGE 146 +#define R_MICROMIPS_GOT_OFST 147 +#define R_MICROMIPS_GOT_HI16 148 +#define R_MICROMIPS_GOT_LO16 149 +#define R_MICROMIPS_SUB 150 +#define R_MICROMIPS_HIGHER 151 +#define R_MICROMIPS_HIGHEST 152 +#define R_MICROMIPS_CALL_HI16 153 +#define R_MICROMIPS_CALL_LO16 154 +#define R_MICROMIPS_SCN_DISP 155 +#define R_MICROMIPS_JALR 156 +#define R_MICROMIPS_HI0_LO16 157 +#define R_MICROMIPS_TLS_GD 162 +#define R_MICROMIPS_TLS_LDM 163 +#define R_MICROMIPS_TLS_DTPREL_HI16 164 +#define R_MICROMIPS_TLS_DTPREL_LO16 165 +#define R_MICROMIPS_TLS_GOTTPREL 166 +#define R_MICROMIPS_TLS_TPREL_HI16 169 +#define R_MICROMIPS_TLS_TPREL_LO16 170 +#define R_MICROMIPS_GPREL7_S2 172 +#define R_MICROMIPS_PC23_S2 173 +#define R_MIPS_PC32 248 +#define R_MIPS_EH 249 +#define R_MIPS_GNU_REL16_S2 250 +#define R_MIPS_GNU_VTINHERIT 253 +#define R_MIPS_GNU_VTENTRY 254 /* Keep this the last entry. */ -#define R_MIPS_NUM 128 +#define R_MIPS_NUM 255 /* Legal values for p_type field of Elf32_Phdr. */ @@ -3527,6 +3639,11 @@ enum /* x86-64 sh_type values. */ #define SHT_X86_64_UNWIND 0x70000001 /* Unwind information. */ +/* x86-64 d_tag values. */ +#define DT_X86_64_PLT (DT_LOPROC + 0) +#define DT_X86_64_PLTSZ (DT_LOPROC + 1) +#define DT_X86_64_PLTENT (DT_LOPROC + 3) +#define DT_X86_64_NUM 4 /* AM33 relocations. */ #define R_MN10300_NONE 0 /* No reloc. */ @@ -4205,6 +4322,15 @@ enum #define R_LARCH_TLS_GD_HI20 98 #define R_LARCH_32_PCREL 99 #define R_LARCH_RELAX 100 +#define R_LARCH_DELETE 101 +#define R_LARCH_ALIGN 102 +#define R_LARCH_PCREL20_S2 103 +#define R_LARCH_CFA 104 +#define R_LARCH_ADD6 105 +#define R_LARCH_SUB6 106 +#define R_LARCH_ADD_ULEB128 107 +#define R_LARCH_SUB_ULEB128 108 +#define R_LARCH_64_PCREL 109 /* ARC specific declarations. */ diff --git a/lib/libc/include/generic-glibc/endian.h b/lib/libc/include/generic-glibc/endian.h index a121c174d5..b888f848ed 100644 --- a/lib/libc/include/generic-glibc/endian.h +++ b/lib/libc/include/generic-glibc/endian.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/envz.h b/lib/libc/include/generic-glibc/envz.h index 7380ed1b74..704a95192d 100644 --- a/lib/libc/include/generic-glibc/envz.h +++ b/lib/libc/include/generic-glibc/envz.h @@ -1,5 +1,5 @@ /* Routines for dealing with '\0' separated environment vectors - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/err.h b/lib/libc/include/generic-glibc/err.h index ac65ae3e79..885bbdefbb 100644 --- a/lib/libc/include/generic-glibc/err.h +++ b/lib/libc/include/generic-glibc/err.h @@ -1,5 +1,5 @@ /* 4.4BSD utility functions for error messages. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/errno.h b/lib/libc/include/generic-glibc/errno.h index 8a7960188d..33fb6fa41b 100644 --- a/lib/libc/include/generic-glibc/errno.h +++ b/lib/libc/include/generic-glibc/errno.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/error.h b/lib/libc/include/generic-glibc/error.h index 8b4b655ba0..1a24380aec 100644 --- a/lib/libc/include/generic-glibc/error.h +++ b/lib/libc/include/generic-glibc/error.h @@ -1,5 +1,5 @@ /* Declaration for error-reporting function - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/execinfo.h b/lib/libc/include/generic-glibc/execinfo.h index d9ed82cca7..7159228d29 100644 --- a/lib/libc/include/generic-glibc/execinfo.h +++ b/lib/libc/include/generic-glibc/execinfo.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/fcntl.h b/lib/libc/include/generic-glibc/fcntl.h index 778cb8b031..112483f91c 100644 --- a/lib/libc/include/generic-glibc/fcntl.h +++ b/lib/libc/include/generic-glibc/fcntl.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -167,11 +167,6 @@ typedef __pid_t pid_t; effective IDs, not real IDs. */ #endif - -/* fcntl was a simple symbol until glibc 2.27 inclusive. - * glibc 2.28 onwards converted it to a macro when compiled with - * USE_LARGEFILE64. */ -#if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 28) || __GLIBC__ > 2 /* Do the file control operation described by CMD on FD. The remaining arguments are interpreted depending on CMD. @@ -202,9 +197,6 @@ extern int __fcntl_time64 (int __fd, int __request, ...) __THROW; # define fcntl __fcntl_time64 # endif #endif -#else /* glibc 2.27 or lower */ -extern int fcntl (int __fd, int __cmd, ...); -#endif /* Open FILE and return a new file descriptor for it, or -1 on error. OFLAG determines the type of access used. If O_CREAT or O_TMPFILE is set diff --git a/lib/libc/include/generic-glibc/features-time64.h b/lib/libc/include/generic-glibc/features-time64.h index 68ef417efd..20332bcc40 100644 --- a/lib/libc/include/generic-glibc/features-time64.h +++ b/lib/libc/include/generic-glibc/features-time64.h @@ -1,5 +1,5 @@ /* Features part to handle 64-bit time_t support. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/features.h b/lib/libc/include/generic-glibc/features.h index 3fbbc14192..e02588bcd2 100644 --- a/lib/libc/include/generic-glibc/features.h +++ b/lib/libc/include/generic-glibc/features.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -159,14 +159,6 @@ # define __KERNEL_STRICT_NAMES #endif -/* Major and minor version number of the GNU C library package. Use - these macros to test for features in specific releases. */ -#define __GLIBC__ 2 -/* Zig patch: we pass `-D__GLIBC_MINOR__=XX` depending on the target. */ - -#define __GLIBC_PREREQ(maj, min) \ - ((__GLIBC__ << 16) + __GLIBC_MINOR__ >= ((maj) << 16) + (min)) - /* Convenience macro to test the version of gcc. Use like this: #if __GNUC_PREREQ (2,8) @@ -230,12 +222,8 @@ # define _DEFAULT_SOURCE 1 # undef _ATFILE_SOURCE # define _ATFILE_SOURCE 1 - -# if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 34) || __GLIBC__ > 2 # undef _DYNAMIC_STACK_SIZE_SOURCE # define _DYNAMIC_STACK_SIZE_SOURCE 1 -# endif - #endif /* If nothing (other than _GNU_SOURCE and _DEFAULT_SOURCE) is defined, @@ -468,10 +456,7 @@ instance, with GCC, -std=gnu11 will have C99-compliant scanf with or without -D_GNU_SOURCE, but -std=c89 -D_GNU_SOURCE will have the old extension. */ -#if (__GLIBC__ == 2 && __GLIBC_MINOR__ < 7) -/* support for ISOC99 was added in glibc-2.7 */ -# define __GLIBC_USE_DEPRECATED_SCANF 1 -#elif (defined __USE_GNU \ +#if (defined __USE_GNU \ && (defined __cplusplus \ ? (__cplusplus < 201103L && !defined __GXX_EXPERIMENTAL_CXX0X__) \ : (!defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L))) @@ -480,11 +465,6 @@ # define __GLIBC_USE_DEPRECATED_SCANF 0 #endif - -/* support for ISO C2X strtol was added in 2.38 - * glibc commit 64924422a99690d147a166b4de3103f3bf3eaf6c - */ -#if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 38) || __GLIBC__ > 2 /* ISO C2X added support for a 0b or 0B prefix on binary constants as inputs to strtol-family functions (base 0 or 2). This macro is used to condition redirection in headers to allow that redirection @@ -495,9 +475,6 @@ #else # define __GLIBC_USE_C2X_STRTOL 0 #endif -#else /* glibc 2.37 or lower */ -# define __GLIBC_USE_C2X_STRTOL 0 -#endif /* Get definitions of __STDC_* predefined macros, if the compiler has not preincluded this header automatically. */ @@ -512,6 +489,14 @@ #undef __GNU_LIBRARY__ #define __GNU_LIBRARY__ 6 +/* Major and minor version number of the GNU C library package. Use + these macros to test for features in specific releases. */ +#define __GLIBC__ 2 +#define __GLIBC_MINOR__ 39 + +#define __GLIBC_PREREQ(maj, min) \ + ((__GLIBC__ << 16) + __GLIBC_MINOR__ >= ((maj) << 16) + (min)) + /* This is here only because every header file already includes this one. */ #ifndef __ASSEMBLER__ # ifndef _SYS_CDEFS_H @@ -542,4 +527,4 @@ #include -#endif /* features.h */ +#endif /* features.h */ \ No newline at end of file diff --git a/lib/libc/include/generic-glibc/fenv.h b/lib/libc/include/generic-glibc/fenv.h index 081cac0ecc..cbcea517f4 100644 --- a/lib/libc/include/generic-glibc/fenv.h +++ b/lib/libc/include/generic-glibc/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/finclude/math-vector-fortran.h b/lib/libc/include/generic-glibc/finclude/math-vector-fortran.h index 3ac3c6f253..1e017cdcf3 100644 --- a/lib/libc/include/generic-glibc/finclude/math-vector-fortran.h +++ b/lib/libc/include/generic-glibc/finclude/math-vector-fortran.h @@ -1,5 +1,5 @@ ! Platform-specific declarations of SIMD math functions for Fortran. -*- f90 -*- -! Copyright (C) 2019-2023 Free Software Foundation, Inc. +! Copyright (C) 2019-2024 Free Software Foundation, Inc. ! This file is part of the GNU C Library. ! ! The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/fmtmsg.h b/lib/libc/include/generic-glibc/fmtmsg.h index da9e9a2b53..70549062f1 100644 --- a/lib/libc/include/generic-glibc/fmtmsg.h +++ b/lib/libc/include/generic-glibc/fmtmsg.h @@ -1,5 +1,5 @@ /* Message display handling. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/fnmatch.h b/lib/libc/include/generic-glibc/fnmatch.h index 2472a0075a..ed6d41c08f 100644 --- a/lib/libc/include/generic-glibc/fnmatch.h +++ b/lib/libc/include/generic-glibc/fnmatch.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/fpregdef.h b/lib/libc/include/generic-glibc/fpregdef.h index b78efa58be..5b6d51c7e6 100644 --- a/lib/libc/include/generic-glibc/fpregdef.h +++ b/lib/libc/include/generic-glibc/fpregdef.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/fpu_control.h b/lib/libc/include/generic-glibc/fpu_control.h index 73334a41a8..b8de49528b 100644 --- a/lib/libc/include/generic-glibc/fpu_control.h +++ b/lib/libc/include/generic-glibc/fpu_control.h @@ -1,5 +1,5 @@ /* FPU control word bits. Mips version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/fts.h b/lib/libc/include/generic-glibc/fts.h index 18c153b420..0cce8838a5 100644 --- a/lib/libc/include/generic-glibc/fts.h +++ b/lib/libc/include/generic-glibc/fts.h @@ -1,5 +1,5 @@ /* File tree traversal functions declarations. - Copyright (C) 1994-2023 Free Software Foundation, Inc. + Copyright (C) 1994-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/ftw.h b/lib/libc/include/generic-glibc/ftw.h index ea1490482a..ad6d0ece6c 100644 --- a/lib/libc/include/generic-glibc/ftw.h +++ b/lib/libc/include/generic-glibc/ftw.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/gconv.h b/lib/libc/include/generic-glibc/gconv.h index 46fb3fab48..c73b1cb72c 100644 --- a/lib/libc/include/generic-glibc/gconv.h +++ b/lib/libc/include/generic-glibc/gconv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/getopt.h b/lib/libc/include/generic-glibc/getopt.h index dfaf7b0757..a849431830 100644 --- a/lib/libc/include/generic-glibc/getopt.h +++ b/lib/libc/include/generic-glibc/getopt.h @@ -1,5 +1,5 @@ /* Declarations for getopt. - Copyright (C) 1989-2023 Free Software Foundation, Inc. + Copyright (C) 1989-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. Unlike the bulk of the getopt implementation, this file is NOT part of gnulib; gnulib also has a getopt.h but it is different. diff --git a/lib/libc/include/generic-glibc/glob.h b/lib/libc/include/generic-glibc/glob.h index a0f8156156..8a67ac9b3c 100644 --- a/lib/libc/include/generic-glibc/glob.h +++ b/lib/libc/include/generic-glibc/glob.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/gnu-versions.h b/lib/libc/include/generic-glibc/gnu-versions.h index 110e1acc0c..c30f6f1142 100644 --- a/lib/libc/include/generic-glibc/gnu-versions.h +++ b/lib/libc/include/generic-glibc/gnu-versions.h @@ -1,5 +1,5 @@ /* Header with interface version macros for library pieces copied elsewhere. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/gnu/lib-names-32.h b/lib/libc/include/generic-glibc/gnu/lib-names-32.h index 61122a2b06..af615a3d9f 100644 --- a/lib/libc/include/generic-glibc/gnu/lib-names-32.h +++ b/lib/libc/include/generic-glibc/gnu/lib-names-32.h @@ -6,7 +6,6 @@ #define LD_SO "ld.so.1" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/generic-glibc/gnu/lib-names-hard.h b/lib/libc/include/generic-glibc/gnu/lib-names-hard.h index 13a873c5d2..393a0f91f4 100644 --- a/lib/libc/include/generic-glibc/gnu/lib-names-hard.h +++ b/lib/libc/include/generic-glibc/gnu/lib-names-hard.h @@ -7,7 +7,6 @@ #define LD_SO "ld-linux-armhf.so.3" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/generic-glibc/gnu/lib-names-n32_hard.h b/lib/libc/include/generic-glibc/gnu/lib-names-n32_hard.h index f65868f500..2d2d46e4f5 100644 --- a/lib/libc/include/generic-glibc/gnu/lib-names-n32_hard.h +++ b/lib/libc/include/generic-glibc/gnu/lib-names-n32_hard.h @@ -6,7 +6,6 @@ #define LD_SO "ld.so.1" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/generic-glibc/gnu/lib-names-n64_hard.h b/lib/libc/include/generic-glibc/gnu/lib-names-n64_hard.h index 6a0aca7bee..3d54531391 100644 --- a/lib/libc/include/generic-glibc/gnu/lib-names-n64_hard.h +++ b/lib/libc/include/generic-glibc/gnu/lib-names-n64_hard.h @@ -6,7 +6,6 @@ #define LD_SO "ld.so.1" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/generic-glibc/gnu/lib-names-o32_hard.h b/lib/libc/include/generic-glibc/gnu/lib-names-o32_hard.h index da37326c05..ab69cdcb7c 100644 --- a/lib/libc/include/generic-glibc/gnu/lib-names-o32_hard.h +++ b/lib/libc/include/generic-glibc/gnu/lib-names-o32_hard.h @@ -6,7 +6,6 @@ #define LD_SO "ld.so.1" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/generic-glibc/gnu/lib-names-o32_soft.h b/lib/libc/include/generic-glibc/gnu/lib-names-o32_soft.h index 8cb4e356d1..9be4d1e620 100644 --- a/lib/libc/include/generic-glibc/gnu/lib-names-o32_soft.h +++ b/lib/libc/include/generic-glibc/gnu/lib-names-o32_soft.h @@ -6,7 +6,6 @@ #define LD_SO "ld.so.1" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/generic-glibc/gnu/lib-names-soft.h b/lib/libc/include/generic-glibc/gnu/lib-names-soft.h index 10795569f1..c7a7132350 100644 --- a/lib/libc/include/generic-glibc/gnu/lib-names-soft.h +++ b/lib/libc/include/generic-glibc/gnu/lib-names-soft.h @@ -7,7 +7,6 @@ #define LD_SO "ld-linux.so.3" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/generic-glibc/gnu/libc-version.h b/lib/libc/include/generic-glibc/gnu/libc-version.h index 8da47d45f6..1d67ea0fdc 100644 --- a/lib/libc/include/generic-glibc/gnu/libc-version.h +++ b/lib/libc/include/generic-glibc/gnu/libc-version.h @@ -1,5 +1,5 @@ /* Interface to GNU libc specific functions for version information. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/grp.h b/lib/libc/include/generic-glibc/grp.h index 530d5d360d..c06462b09c 100644 --- a/lib/libc/include/generic-glibc/grp.h +++ b/lib/libc/include/generic-glibc/grp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/gshadow.h b/lib/libc/include/generic-glibc/gshadow.h index 865acf1188..ff76860f2c 100644 --- a/lib/libc/include/generic-glibc/gshadow.h +++ b/lib/libc/include/generic-glibc/gshadow.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2009-2023 Free Software Foundation, Inc. +/* Copyright (C) 2009-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/iconv.h b/lib/libc/include/generic-glibc/iconv.h index a1ec717601..4e22692f3d 100644 --- a/lib/libc/include/generic-glibc/iconv.h +++ b/lib/libc/include/generic-glibc/iconv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/ieee754.h b/lib/libc/include/generic-glibc/ieee754.h index 56cf582de3..494b41a4d5 100644 --- a/lib/libc/include/generic-glibc/ieee754.h +++ b/lib/libc/include/generic-glibc/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/ifaddrs.h b/lib/libc/include/generic-glibc/ifaddrs.h index c6c1969456..b55694f9ab 100644 --- a/lib/libc/include/generic-glibc/ifaddrs.h +++ b/lib/libc/include/generic-glibc/ifaddrs.h @@ -1,5 +1,5 @@ /* ifaddrs.h -- declarations for getting network interface addresses - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/inttypes.h b/lib/libc/include/generic-glibc/inttypes.h index 4842806502..77992e0a09 100644 --- a/lib/libc/include/generic-glibc/inttypes.h +++ b/lib/libc/include/generic-glibc/inttypes.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/langinfo.h b/lib/libc/include/generic-glibc/langinfo.h index 3e85bea96e..ff161c47c6 100644 --- a/lib/libc/include/generic-glibc/langinfo.h +++ b/lib/libc/include/generic-glibc/langinfo.h @@ -1,5 +1,5 @@ /* Access to locale-dependent parameters. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/libgen.h b/lib/libc/include/generic-glibc/libgen.h index 1408bd6096..94aa048e0b 100644 --- a/lib/libc/include/generic-glibc/libgen.h +++ b/lib/libc/include/generic-glibc/libgen.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/libintl.h b/lib/libc/include/generic-glibc/libintl.h index 77f9b709be..5a4435ed13 100644 --- a/lib/libc/include/generic-glibc/libintl.h +++ b/lib/libc/include/generic-glibc/libintl.h @@ -1,5 +1,5 @@ /* Message catalogs for internationalization. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. This file is derived from the file libgettext.h in the GNU gettext package. diff --git a/lib/libc/include/generic-glibc/limits.h b/lib/libc/include/generic-glibc/limits.h index 2634f227d2..84e814e568 100644 --- a/lib/libc/include/generic-glibc/limits.h +++ b/lib/libc/include/generic-glibc/limits.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/link.h b/lib/libc/include/generic-glibc/link.h index ec9ba1f451..aa1c9cb6a8 100644 --- a/lib/libc/include/generic-glibc/link.h +++ b/lib/libc/include/generic-glibc/link.h @@ -1,6 +1,6 @@ /* Data structure for communication from the run-time dynamic linker for loaded ELF shared objects. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/locale.h b/lib/libc/include/generic-glibc/locale.h index 11d7ab1d59..5c32b9d434 100644 --- a/lib/libc/include/generic-glibc/locale.h +++ b/lib/libc/include/generic-glibc/locale.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/malloc.h b/lib/libc/include/generic-glibc/malloc.h index 79c0d21fc8..cd4f33981f 100644 --- a/lib/libc/include/generic-glibc/malloc.h +++ b/lib/libc/include/generic-glibc/malloc.h @@ -1,5 +1,5 @@ /* Prototypes and definition for malloc implementation. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. Copyright The GNU Toolchain Authors. This file is part of the GNU C Library. @@ -51,11 +51,6 @@ __THROW __attribute_malloc__ __attribute_alloc_size__ ((1, 2)) __wur; extern void *realloc (void *__ptr, size_t __size) __THROW __attribute_warn_unused_result__ __attribute_alloc_size__ ((2)); -/* - * reallocarray introduced in glibc 2.26 - * https://sourceware.org/git/?p=glibc.git;a=commit;h=2e0bbbfbf95fc9e22692e93658a6fbdd2d4554da - */ -#if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 26) || __GLIBC__ > 2 /* Re-allocate the previously allocated block in PTR, making the new block large enough for NMEMB elements of SIZE bytes each. */ /* __attribute_malloc__ is not used, because if reallocarray returns @@ -64,7 +59,6 @@ __THROW __attribute_warn_unused_result__ __attribute_alloc_size__ ((2)); extern void *reallocarray (void *__ptr, size_t __nmemb, size_t __size) __THROW __attribute_warn_unused_result__ __attribute_alloc_size__ ((2, 3)) __attr_dealloc_free; -#endif /* glibc v2.26 and later */ /* Free a block allocated by `malloc', `realloc' or `calloc'. */ extern void free (void *__ptr) __THROW; diff --git a/lib/libc/include/generic-glibc/math.h b/lib/libc/include/generic-glibc/math.h index 43ca8b1c96..9c9b38521f 100644 --- a/lib/libc/include/generic-glibc/math.h +++ b/lib/libc/include/generic-glibc/math.h @@ -1,5 +1,5 @@ /* Declarations for math functions. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/mcheck.h b/lib/libc/include/generic-glibc/mcheck.h index 76a0845d6d..165cc6c97a 100644 --- a/lib/libc/include/generic-glibc/mcheck.h +++ b/lib/libc/include/generic-glibc/mcheck.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/memory.h b/lib/libc/include/generic-glibc/memory.h index c279da778d..2dd7699315 100644 --- a/lib/libc/include/generic-glibc/memory.h +++ b/lib/libc/include/generic-glibc/memory.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/mntent.h b/lib/libc/include/generic-glibc/mntent.h index d8cfcbbb2f..0aee8b1c47 100644 --- a/lib/libc/include/generic-glibc/mntent.h +++ b/lib/libc/include/generic-glibc/mntent.h @@ -1,5 +1,5 @@ /* Utilities for reading/writing fstab, mtab, etc. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/monetary.h b/lib/libc/include/generic-glibc/monetary.h index 8288cd75b4..4259180f43 100644 --- a/lib/libc/include/generic-glibc/monetary.h +++ b/lib/libc/include/generic-glibc/monetary.h @@ -1,5 +1,5 @@ /* Header file for monetary value formatting functions. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/mqueue.h b/lib/libc/include/generic-glibc/mqueue.h index de56bf731c..373634f6f8 100644 --- a/lib/libc/include/generic-glibc/mqueue.h +++ b/lib/libc/include/generic-glibc/mqueue.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2023 Free Software Foundation, Inc. +/* Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/net/ethernet.h b/lib/libc/include/generic-glibc/net/ethernet.h index d42a9d7ff8..d0d7c470b5 100644 --- a/lib/libc/include/generic-glibc/net/ethernet.h +++ b/lib/libc/include/generic-glibc/net/ethernet.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/net/if.h b/lib/libc/include/generic-glibc/net/if.h index c60cfd375b..cc655375ff 100644 --- a/lib/libc/include/generic-glibc/net/if.h +++ b/lib/libc/include/generic-glibc/net/if.h @@ -1,5 +1,5 @@ /* net/if.h -- declarations for inquiring about network interfaces - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/net/if_arp.h b/lib/libc/include/generic-glibc/net/if_arp.h index 064a415f8e..e11ad3cb3f 100644 --- a/lib/libc/include/generic-glibc/net/if_arp.h +++ b/lib/libc/include/generic-glibc/net/if_arp.h @@ -1,5 +1,5 @@ /* Definitions for Address Resolution Protocol. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/net/if_packet.h b/lib/libc/include/generic-glibc/net/if_packet.h index fae22ac723..8e1980166e 100644 --- a/lib/libc/include/generic-glibc/net/if_packet.h +++ b/lib/libc/include/generic-glibc/net/if_packet.h @@ -1,5 +1,5 @@ /* Definitions for use with Linux SOCK_PACKET sockets. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/net/if_shaper.h b/lib/libc/include/generic-glibc/net/if_shaper.h index 0a7413c4f5..b37675aa42 100644 --- a/lib/libc/include/generic-glibc/net/if_shaper.h +++ b/lib/libc/include/generic-glibc/net/if_shaper.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/net/if_slip.h b/lib/libc/include/generic-glibc/net/if_slip.h index 59eff20c70..99ab1a6bf0 100644 --- a/lib/libc/include/generic-glibc/net/if_slip.h +++ b/lib/libc/include/generic-glibc/net/if_slip.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/net/route.h b/lib/libc/include/generic-glibc/net/route.h index 756165aade..6ab10dd224 100644 --- a/lib/libc/include/generic-glibc/net/route.h +++ b/lib/libc/include/generic-glibc/net/route.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netash/ash.h b/lib/libc/include/generic-glibc/netash/ash.h index b2fdb5334f..5dd1073047 100644 --- a/lib/libc/include/generic-glibc/netash/ash.h +++ b/lib/libc/include/generic-glibc/netash/ash.h @@ -1,5 +1,5 @@ /* Definitions for use with Linux AF_ASH sockets. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netatalk/at.h b/lib/libc/include/generic-glibc/netatalk/at.h index cf81e8b24c..eba1e5717a 100644 --- a/lib/libc/include/generic-glibc/netatalk/at.h +++ b/lib/libc/include/generic-glibc/netatalk/at.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netax25/ax25.h b/lib/libc/include/generic-glibc/netax25/ax25.h index dbf2088b08..fa42b81600 100644 --- a/lib/libc/include/generic-glibc/netax25/ax25.h +++ b/lib/libc/include/generic-glibc/netax25/ax25.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netdb.h b/lib/libc/include/generic-glibc/netdb.h index 00e98215dd..acece975a6 100644 --- a/lib/libc/include/generic-glibc/netdb.h +++ b/lib/libc/include/generic-glibc/netdb.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/neteconet/ec.h b/lib/libc/include/generic-glibc/neteconet/ec.h index b2dcf94973..c6eab7ef31 100644 --- a/lib/libc/include/generic-glibc/neteconet/ec.h +++ b/lib/libc/include/generic-glibc/neteconet/ec.h @@ -1,5 +1,5 @@ /* Definitions for use with Linux AF_ECONET sockets. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netinet/ether.h b/lib/libc/include/generic-glibc/netinet/ether.h index aca26e0f5e..2a60378ab8 100644 --- a/lib/libc/include/generic-glibc/netinet/ether.h +++ b/lib/libc/include/generic-glibc/netinet/ether.h @@ -1,5 +1,5 @@ /* Functions for storing Ethernet addresses in ASCII and mapping to hostnames. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netinet/icmp6.h b/lib/libc/include/generic-glibc/netinet/icmp6.h index bc9185ad85..cbd405b7b3 100644 --- a/lib/libc/include/generic-glibc/netinet/icmp6.h +++ b/lib/libc/include/generic-glibc/netinet/icmp6.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netinet/if_ether.h b/lib/libc/include/generic-glibc/netinet/if_ether.h index 4fc6c42a81..5992f6d075 100644 --- a/lib/libc/include/generic-glibc/netinet/if_ether.h +++ b/lib/libc/include/generic-glibc/netinet/if_ether.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netinet/if_fddi.h b/lib/libc/include/generic-glibc/netinet/if_fddi.h index 2cdaf41355..f56f6b2ae6 100644 --- a/lib/libc/include/generic-glibc/netinet/if_fddi.h +++ b/lib/libc/include/generic-glibc/netinet/if_fddi.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netinet/if_tr.h b/lib/libc/include/generic-glibc/netinet/if_tr.h index 77479bf723..72639a6734 100644 --- a/lib/libc/include/generic-glibc/netinet/if_tr.h +++ b/lib/libc/include/generic-glibc/netinet/if_tr.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netinet/igmp.h b/lib/libc/include/generic-glibc/netinet/igmp.h index 2938450e93..b4e7c888d6 100644 --- a/lib/libc/include/generic-glibc/netinet/igmp.h +++ b/lib/libc/include/generic-glibc/netinet/igmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netinet/in.h b/lib/libc/include/generic-glibc/netinet/in.h index e9f43e7c3b..a5cf100abe 100644 --- a/lib/libc/include/generic-glibc/netinet/in.h +++ b/lib/libc/include/generic-glibc/netinet/in.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netinet/in_systm.h b/lib/libc/include/generic-glibc/netinet/in_systm.h index 42c8c0eea7..4837ef8a0e 100644 --- a/lib/libc/include/generic-glibc/netinet/in_systm.h +++ b/lib/libc/include/generic-glibc/netinet/in_systm.h @@ -1,5 +1,5 @@ /* System specific type definitions for networking code. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netinet/ip.h b/lib/libc/include/generic-glibc/netinet/ip.h index 2d1333a58c..83a1d07118 100644 --- a/lib/libc/include/generic-glibc/netinet/ip.h +++ b/lib/libc/include/generic-glibc/netinet/ip.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -191,6 +191,11 @@ struct ip_timestamp */ #define IPTOS_DSCP_VA 0xb0 +/* + * Lower-Effort Per-Hop Behavior DSCP code point from RFC-8622, Section 12. + */ +#define IPTOS_DSCP_LE 0x04 + /* * In RFC 2474, Section 4.2.2.1, the Class Selector Codepoints subsume * the old ToS Precedence values. diff --git a/lib/libc/include/generic-glibc/netinet/ip6.h b/lib/libc/include/generic-glibc/netinet/ip6.h index 6b0a304bda..a127f54df1 100644 --- a/lib/libc/include/generic-glibc/netinet/ip6.h +++ b/lib/libc/include/generic-glibc/netinet/ip6.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netinet/ip_icmp.h b/lib/libc/include/generic-glibc/netinet/ip_icmp.h index c9c238ea4b..785b2d6ca1 100644 --- a/lib/libc/include/generic-glibc/netinet/ip_icmp.h +++ b/lib/libc/include/generic-glibc/netinet/ip_icmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netinet/tcp.h b/lib/libc/include/generic-glibc/netinet/tcp.h index 24e7b973f1..65ee87a041 100644 --- a/lib/libc/include/generic-glibc/netinet/tcp.h +++ b/lib/libc/include/generic-glibc/netinet/tcp.h @@ -272,6 +272,7 @@ struct tcp_info /* tcp_md5sig extension flags for TCP_MD5SIG_EXT. */ #define TCP_MD5SIG_FLAG_PREFIX 1 /* Address prefix length. */ +#define TCP_MD5SIG_FLAG_IFINDEX 2 /* Ifindex set. */ struct tcp_md5sig { @@ -279,7 +280,7 @@ struct tcp_md5sig uint8_t tcpm_flags; /* Extension flags. */ uint8_t tcpm_prefixlen; /* Address prefix. */ uint16_t tcpm_keylen; /* Key length. */ - uint32_t __tcpm_pad; /* Zero. */ + int tcpm_ifindex; /* Device index for scope. */ uint8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN]; /* Key (binary). */ }; diff --git a/lib/libc/include/generic-glibc/netinet/udp.h b/lib/libc/include/generic-glibc/netinet/udp.h index 772ee96cd0..de83c60c6a 100644 --- a/lib/libc/include/generic-glibc/netinet/udp.h +++ b/lib/libc/include/generic-glibc/netinet/udp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netipx/ipx.h b/lib/libc/include/generic-glibc/netipx/ipx.h index 9f4bebeecb..6e1e0e1d77 100644 --- a/lib/libc/include/generic-glibc/netipx/ipx.h +++ b/lib/libc/include/generic-glibc/netipx/ipx.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netiucv/iucv.h b/lib/libc/include/generic-glibc/netiucv/iucv.h index 1d667a5d39..fceca5cec9 100644 --- a/lib/libc/include/generic-glibc/netiucv/iucv.h +++ b/lib/libc/include/generic-glibc/netiucv/iucv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netpacket/packet.h b/lib/libc/include/generic-glibc/netpacket/packet.h index 9f4b7f6f8e..896763d883 100644 --- a/lib/libc/include/generic-glibc/netpacket/packet.h +++ b/lib/libc/include/generic-glibc/netpacket/packet.h @@ -1,5 +1,5 @@ /* Definitions for use with Linux AF_PACKET sockets. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -64,6 +64,7 @@ struct sockaddr_ll #define PACKET_ROLLOVER_STATS 21 #define PACKET_FANOUT_DATA 22 #define PACKET_IGNORE_OUTGOING 23 +#define PACKET_VNET_HDR_SZ 24 struct packet_mreq { diff --git a/lib/libc/include/generic-glibc/netrom/netrom.h b/lib/libc/include/generic-glibc/netrom/netrom.h index 6cf3049ca2..67799a91fd 100644 --- a/lib/libc/include/generic-glibc/netrom/netrom.h +++ b/lib/libc/include/generic-glibc/netrom/netrom.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/netrose/rose.h b/lib/libc/include/generic-glibc/netrose/rose.h index f267c2e980..4bef23495c 100644 --- a/lib/libc/include/generic-glibc/netrose/rose.h +++ b/lib/libc/include/generic-glibc/netrose/rose.h @@ -1,5 +1,5 @@ /* Definitions for Rose packet radio address family. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/nl_types.h b/lib/libc/include/generic-glibc/nl_types.h index d5167e4d0d..d317a1283d 100644 --- a/lib/libc/include/generic-glibc/nl_types.h +++ b/lib/libc/include/generic-glibc/nl_types.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/nss.h b/lib/libc/include/generic-glibc/nss.h index f66ddd1d12..a8ba95e25d 100644 --- a/lib/libc/include/generic-glibc/nss.h +++ b/lib/libc/include/generic-glibc/nss.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/obstack.h b/lib/libc/include/generic-glibc/obstack.h index ad5c63c8de..09ef3c52f1 100644 --- a/lib/libc/include/generic-glibc/obstack.h +++ b/lib/libc/include/generic-glibc/obstack.h @@ -1,5 +1,5 @@ /* obstack.h - object stack macros - Copyright (C) 1988-2023 Free Software Foundation, Inc. + Copyright (C) 1988-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/printf.h b/lib/libc/include/generic-glibc/printf.h index 9ae7291735..ca0f2e7a5e 100644 --- a/lib/libc/include/generic-glibc/printf.h +++ b/lib/libc/include/generic-glibc/printf.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/proc_service.h b/lib/libc/include/generic-glibc/proc_service.h index a6e39ae949..a153a25d60 100644 --- a/lib/libc/include/generic-glibc/proc_service.h +++ b/lib/libc/include/generic-glibc/proc_service.h @@ -1,5 +1,5 @@ /* Callback interface for libthread_db, functions users must define. - Copyright (C) 1999-2023 Free Software Foundation, Inc. + Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/pthread.h b/lib/libc/include/generic-glibc/pthread.h index 0e810cb8ca..2d2faf0e9e 100644 --- a/lib/libc/include/generic-glibc/pthread.h +++ b/lib/libc/include/generic-glibc/pthread.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/pty.h b/lib/libc/include/generic-glibc/pty.h index d3503256d8..62f87d18a5 100644 --- a/lib/libc/include/generic-glibc/pty.h +++ b/lib/libc/include/generic-glibc/pty.h @@ -1,5 +1,5 @@ /* Functions for pseudo TTY handling. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/pwd.h b/lib/libc/include/generic-glibc/pwd.h index d8bd58eeed..a3251d258a 100644 --- a/lib/libc/include/generic-glibc/pwd.h +++ b/lib/libc/include/generic-glibc/pwd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/re_comp.h b/lib/libc/include/generic-glibc/re_comp.h index 46183ab944..93530386e0 100644 --- a/lib/libc/include/generic-glibc/re_comp.h +++ b/lib/libc/include/generic-glibc/re_comp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/regdef.h b/lib/libc/include/generic-glibc/regdef.h index ee87471085..42cc889556 100644 --- a/lib/libc/include/generic-glibc/regdef.h +++ b/lib/libc/include/generic-glibc/regdef.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1994-2023 Free Software Foundation, Inc. +/* Copyright (C) 1994-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/regex.h b/lib/libc/include/generic-glibc/regex.h index d2b8592e9f..ab884e6732 100644 --- a/lib/libc/include/generic-glibc/regex.h +++ b/lib/libc/include/generic-glibc/regex.h @@ -1,6 +1,6 @@ /* Definitions for data structures and routines for the regular expression library. - Copyright (C) 1985, 1989-2023 Free Software Foundation, Inc. + Copyright (C) 1985, 1989-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/regexp.h b/lib/libc/include/generic-glibc/regexp.h index 2915d19d06..7b60c4ef46 100644 --- a/lib/libc/include/generic-glibc/regexp.h +++ b/lib/libc/include/generic-glibc/regexp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/resolv.h b/lib/libc/include/generic-glibc/resolv.h index 1969fb7f32..f25d325a10 100644 --- a/lib/libc/include/generic-glibc/resolv.h +++ b/lib/libc/include/generic-glibc/resolv.h @@ -170,35 +170,6 @@ __END_DECLS #define res_init __res_init #define res_isourserver __res_isourserver -/* In glibc 2.33 and earlier res_search, res_nsearch, res_query, res_nquery, - * res_querydomain, res_nquerydomain, dn_skipname, dn_comp, dn_expand were - * #define'd to __res_search, __res_nsearch, etc. glibc 2.34 onwards removes - * the macros and exposes the symbols directly. New glibc exposes compat - * symbols with underscores for backwards compatibility. Applications linked to - * glibc 2.34+ are expected to use the non-underscored symbols. - * - * It is enough to bring the macros back when compiling against the older glibc - * versions. - * - * See glibc commits: - * - ea9878ec271c791880fcbbe519d70c42f8113750 res_* - * - 391e02236b931132c0e8b5ba4c3b087c2aaa1044 dn_skipname - * - fd8a87c0c1932de591e7ad108ff6288a4b6b18c9 dn_comp - * - 640bbdf71c6f10ac26252ac67a22902e26657bd8 dn_expand - */ -#if (__GLIBC__ == 2 && __GLIBC_MINOR__ < 34) -#define res_search __res_search -#define res_nsearch __res_nsearch -#define res_query __res_query -#define res_nquery __res_nquery -#define res_querydomain __res_querydomain -#define res_nquerydomain __res_nquerydomain -#define dn_skipname __dn_skipname -#define dn_comp __dn_comp -#define dn_expand __dn_expand -#endif -/* end glibc compat hacks */ - #ifdef _LIBC # define __RESOLV_DEPRECATED # define __RESOLV_DEPRECATED_MSG(msg) @@ -335,4 +306,4 @@ void res_nclose (res_state) __THROW; __END_DECLS -#endif /* !_RESOLV_H_ */ +#endif /* !_RESOLV_H_ */ \ No newline at end of file diff --git a/lib/libc/include/generic-glibc/sched.h b/lib/libc/include/generic-glibc/sched.h index a15d76c034..299d86ec73 100644 --- a/lib/libc/include/generic-glibc/sched.h +++ b/lib/libc/include/generic-glibc/sched.h @@ -1,5 +1,5 @@ /* Definitions for POSIX 1003.1b-1993 (aka POSIX.4) scheduling interface. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/scsi/scsi.h b/lib/libc/include/generic-glibc/scsi/scsi.h index a06d41d7f9..72d1a1ddd7 100644 --- a/lib/libc/include/generic-glibc/scsi/scsi.h +++ b/lib/libc/include/generic-glibc/scsi/scsi.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/scsi/scsi_ioctl.h b/lib/libc/include/generic-glibc/scsi/scsi_ioctl.h index 78463ed44e..be735ab862 100644 --- a/lib/libc/include/generic-glibc/scsi/scsi_ioctl.h +++ b/lib/libc/include/generic-glibc/scsi/scsi_ioctl.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/scsi/sg.h b/lib/libc/include/generic-glibc/scsi/sg.h index e200ba6a43..ac1e76adc0 100644 --- a/lib/libc/include/generic-glibc/scsi/sg.h +++ b/lib/libc/include/generic-glibc/scsi/sg.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/search.h b/lib/libc/include/generic-glibc/search.h index 9f7ab23bb6..fece627349 100644 --- a/lib/libc/include/generic-glibc/search.h +++ b/lib/libc/include/generic-glibc/search.h @@ -1,5 +1,5 @@ /* Declarations for System V style searching functions. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/semaphore.h b/lib/libc/include/generic-glibc/semaphore.h index 38145b1c1a..f6ace43081 100644 --- a/lib/libc/include/generic-glibc/semaphore.h +++ b/lib/libc/include/generic-glibc/semaphore.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/setjmp.h b/lib/libc/include/generic-glibc/setjmp.h index bb28128e4f..e70f8daf43 100644 --- a/lib/libc/include/generic-glibc/setjmp.h +++ b/lib/libc/include/generic-glibc/setjmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sgidefs.h b/lib/libc/include/generic-glibc/sgidefs.h index 5ae1c89689..8074c7e9d0 100644 --- a/lib/libc/include/generic-glibc/sgidefs.h +++ b/lib/libc/include/generic-glibc/sgidefs.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sgtty.h b/lib/libc/include/generic-glibc/sgtty.h index 190aa5e672..d2bf758252 100644 --- a/lib/libc/include/generic-glibc/sgtty.h +++ b/lib/libc/include/generic-glibc/sgtty.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/shadow.h b/lib/libc/include/generic-glibc/shadow.h index 35e4e2393b..277bfbc8df 100644 --- a/lib/libc/include/generic-glibc/shadow.h +++ b/lib/libc/include/generic-glibc/shadow.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/signal.h b/lib/libc/include/generic-glibc/signal.h index f0a0452fe8..0a454d13ff 100644 --- a/lib/libc/include/generic-glibc/signal.h +++ b/lib/libc/include/generic-glibc/signal.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/spawn.h b/lib/libc/include/generic-glibc/spawn.h index 4993e789ab..efcb02c2ec 100644 --- a/lib/libc/include/generic-glibc/spawn.h +++ b/lib/libc/include/generic-glibc/spawn.h @@ -1,5 +1,5 @@ /* Definitions for POSIX spawn interface. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software 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,8 @@ typedef struct sigset_t __ss; struct sched_param __sp; int __policy; - int __pad[16]; + int __cgroup; + int __pad[15]; } posix_spawnattr_t; @@ -59,6 +60,7 @@ typedef struct #ifdef __USE_GNU # define POSIX_SPAWN_USEVFORK 0x40 # define POSIX_SPAWN_SETSID 0x80 +# define POSIX_SPAWN_SETCGROUP 0x100 #endif @@ -231,4 +233,6 @@ posix_spawn_file_actions_addtcsetpgrp_np (posix_spawn_file_actions_t *, __END_DECLS +#include + #endif /* spawn.h */ \ No newline at end of file diff --git a/lib/libc/include/generic-glibc/stdbit.h b/lib/libc/include/generic-glibc/stdbit.h new file mode 100644 index 0000000000..cd5f073a8b --- /dev/null +++ b/lib/libc/include/generic-glibc/stdbit.h @@ -0,0 +1,792 @@ +/* ISO C23 Standard: 7.18 - Bit and byte utilities . + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _STDBIT_H +#define _STDBIT_H 1 + +#include +#include +#include +#include +#include +/* In C23, defines only an implementation-namespace macro, + so is OK to include here. Before C23, including allows + the header to use bool rather than _Bool unconditionally, and so to + compile as C++ (although the type-generic macros are not a good + form of type-generic interface for C++). */ +#include +#define __need_size_t +#include + +#define __STDC_VERSION_STDBIT_H__ 202311L + +#define __STDC_ENDIAN_LITTLE__ __LITTLE_ENDIAN +#define __STDC_ENDIAN_BIG__ __BIG_ENDIAN +#define __STDC_ENDIAN_NATIVE__ __BYTE_ORDER + +__BEGIN_DECLS + +/* Use __pacify_uint16 (N) instead of (uint16_t) (N) when the cast is helpful + only to pacify older GCC (e.g., GCC 10 -Wconversion) or non-GCC (e.g + clang -Wimplicit-int-conversion). */ +#if __GNUC_PREREQ (11, 0) +# define __pacify_uint8(n) (n) +# define __pacify_uint16(n) (n) +#else +# define __pacify_uint8(n) ((uint8_t) (n)) +# define __pacify_uint16(n) ((uint16_t) (n)) +#endif + +/* Count leading zeros. */ +extern unsigned int stdc_leading_zeros_uc (unsigned char __x) + __THROW __attribute_const__; +extern unsigned int stdc_leading_zeros_us (unsigned short __x) + __THROW __attribute_const__; +extern unsigned int stdc_leading_zeros_ui (unsigned int __x) + __THROW __attribute_const__; +extern unsigned int stdc_leading_zeros_ul (unsigned long int __x) + __THROW __attribute_const__; +__extension__ +extern unsigned int stdc_leading_zeros_ull (unsigned long long int __x) + __THROW __attribute_const__; +#define stdc_leading_zeros(x) \ + (stdc_leading_zeros_ull (x) \ + - (unsigned int) (8 * (sizeof (0ULL) - sizeof (x)))) + +#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll) +static __always_inline unsigned int +__clz64_inline (uint64_t __x) +{ + return __x == 0 ? 64U : (unsigned int) __builtin_clzll (__x); +} + +static __always_inline unsigned int +__clz32_inline (uint32_t __x) +{ + return __x == 0 ? 32U : (unsigned int) __builtin_clz (__x); +} + +static __always_inline unsigned int +__clz16_inline (uint16_t __x) +{ + return __clz32_inline (__x) - 16; +} + +static __always_inline unsigned int +__clz8_inline (uint8_t __x) +{ + return __clz32_inline (__x) - 24; +} + +# define stdc_leading_zeros_uc(x) (__clz8_inline (x)) +# define stdc_leading_zeros_us(x) (__clz16_inline (x)) +# define stdc_leading_zeros_ui(x) (__clz32_inline (x)) +# if __WORDSIZE == 64 +# define stdc_leading_zeros_ul(x) (__clz64_inline (x)) +# else +# define stdc_leading_zeros_ul(x) (__clz32_inline (x)) +# endif +# define stdc_leading_zeros_ull(x) (__clz64_inline (x)) +#endif + +/* Count leading ones. */ +extern unsigned int stdc_leading_ones_uc (unsigned char __x) + __THROW __attribute_const__; +extern unsigned int stdc_leading_ones_us (unsigned short __x) + __THROW __attribute_const__; +extern unsigned int stdc_leading_ones_ui (unsigned int __x) + __THROW __attribute_const__; +extern unsigned int stdc_leading_ones_ul (unsigned long int __x) + __THROW __attribute_const__; +__extension__ +extern unsigned int stdc_leading_ones_ull (unsigned long long int __x) + __THROW __attribute_const__; +#define stdc_leading_ones(x) \ + (stdc_leading_ones_ull ((unsigned long long int) (x) \ + << 8 * (sizeof (0ULL) - sizeof (x)))) + +#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll) +static __always_inline unsigned int +__clo64_inline (uint64_t __x) +{ + return __clz64_inline (~__x); +} + +static __always_inline unsigned int +__clo32_inline (uint32_t __x) +{ + return __clz32_inline (~__x); +} + +static __always_inline unsigned int +__clo16_inline (uint16_t __x) +{ + return __clz16_inline (__pacify_uint16 (~__x)); +} + +static __always_inline unsigned int +__clo8_inline (uint8_t __x) +{ + return __clz8_inline (__pacify_uint8 (~__x)); +} + +# define stdc_leading_ones_uc(x) (__clo8_inline (x)) +# define stdc_leading_ones_us(x) (__clo16_inline (x)) +# define stdc_leading_ones_ui(x) (__clo32_inline (x)) +# if __WORDSIZE == 64 +# define stdc_leading_ones_ul(x) (__clo64_inline (x)) +# else +# define stdc_leading_ones_ul(x) (__clo32_inline (x)) +# endif +# define stdc_leading_ones_ull(x) (__clo64_inline (x)) +#endif + +/* Count trailing zeros. */ +extern unsigned int stdc_trailing_zeros_uc (unsigned char __x) + __THROW __attribute_const__; +extern unsigned int stdc_trailing_zeros_us (unsigned short __x) + __THROW __attribute_const__; +extern unsigned int stdc_trailing_zeros_ui (unsigned int __x) + __THROW __attribute_const__; +extern unsigned int stdc_trailing_zeros_ul (unsigned long int __x) + __THROW __attribute_const__; +__extension__ +extern unsigned int stdc_trailing_zeros_ull (unsigned long long int __x) + __THROW __attribute_const__; +#define stdc_trailing_zeros(x) \ + (sizeof (x) == 8 ? stdc_trailing_zeros_ull (x) \ + : sizeof (x) == 4 ? stdc_trailing_zeros_ui (x) \ + : sizeof (x) == 2 ? stdc_trailing_zeros_us (__pacify_uint16 (x)) \ + : stdc_trailing_zeros_uc (__pacify_uint8 (x))) + +#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_ctzll) +static __always_inline unsigned int +__ctz64_inline (uint64_t __x) +{ + return __x == 0 ? 64U : (unsigned int) __builtin_ctzll (__x); +} + +static __always_inline unsigned int +__ctz32_inline (uint32_t __x) +{ + return __x == 0 ? 32U : (unsigned int) __builtin_ctz (__x); +} + +static __always_inline unsigned int +__ctz16_inline (uint16_t __x) +{ + return __x == 0 ? 16U : (unsigned int) __builtin_ctz (__x); +} + +static __always_inline unsigned int +__ctz8_inline (uint8_t __x) +{ + return __x == 0 ? 8U : (unsigned int) __builtin_ctz (__x); +} + +# define stdc_trailing_zeros_uc(x) (__ctz8_inline (x)) +# define stdc_trailing_zeros_us(x) (__ctz16_inline (x)) +# define stdc_trailing_zeros_ui(x) (__ctz32_inline (x)) +# if __WORDSIZE == 64 +# define stdc_trailing_zeros_ul(x) (__ctz64_inline (x)) +# else +# define stdc_trailing_zeros_ul(x) (__ctz32_inline (x)) +# endif +# define stdc_trailing_zeros_ull(x) (__ctz64_inline (x)) +#endif + +/* Count trailing ones. */ +extern unsigned int stdc_trailing_ones_uc (unsigned char __x) + __THROW __attribute_const__; +extern unsigned int stdc_trailing_ones_us (unsigned short __x) + __THROW __attribute_const__; +extern unsigned int stdc_trailing_ones_ui (unsigned int __x) + __THROW __attribute_const__; +extern unsigned int stdc_trailing_ones_ul (unsigned long int __x) + __THROW __attribute_const__; +__extension__ +extern unsigned int stdc_trailing_ones_ull (unsigned long long int __x) + __THROW __attribute_const__; +#define stdc_trailing_ones(x) (stdc_trailing_ones_ull (x)) + +#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_ctzll) +static __always_inline unsigned int +__cto64_inline (uint64_t __x) +{ + return __ctz64_inline (~__x); +} + +static __always_inline unsigned int +__cto32_inline (uint32_t __x) +{ + return __ctz32_inline (~__x); +} + +static __always_inline unsigned int +__cto16_inline (uint16_t __x) +{ + return __ctz16_inline (__pacify_uint16 (~__x)); +} + +static __always_inline unsigned int +__cto8_inline (uint8_t __x) +{ + return __ctz8_inline (__pacify_uint8 (~__x)); +} + +# define stdc_trailing_ones_uc(x) (__cto8_inline (x)) +# define stdc_trailing_ones_us(x) (__cto16_inline (x)) +# define stdc_trailing_ones_ui(x) (__cto32_inline (x)) +# if __WORDSIZE == 64 +# define stdc_trailing_ones_ul(x) (__cto64_inline (x)) +# else +# define stdc_trailing_ones_ul(x) (__cto32_inline (x)) +# endif +# define stdc_trailing_ones_ull(x) (__cto64_inline (x)) +#endif + +/* First leading zero. */ +extern unsigned int stdc_first_leading_zero_uc (unsigned char __x) + __THROW __attribute_const__; +extern unsigned int stdc_first_leading_zero_us (unsigned short __x) + __THROW __attribute_const__; +extern unsigned int stdc_first_leading_zero_ui (unsigned int __x) + __THROW __attribute_const__; +extern unsigned int stdc_first_leading_zero_ul (unsigned long int __x) + __THROW __attribute_const__; +__extension__ +extern unsigned int stdc_first_leading_zero_ull (unsigned long long int __x) + __THROW __attribute_const__; +#define stdc_first_leading_zero(x) \ + (sizeof (x) == 8 ? stdc_first_leading_zero_ull (x) \ + : sizeof (x) == 4 ? stdc_first_leading_zero_ui (x) \ + : sizeof (x) == 2 ? stdc_first_leading_zero_us (__pacify_uint16 (x)) \ + : stdc_first_leading_zero_uc (__pacify_uint8 (x))) + +#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll) +static __always_inline unsigned int +__flz64_inline (uint64_t __x) +{ + return __x == (uint64_t) -1 ? 0 : 1 + __clo64_inline (__x); +} + +static __always_inline unsigned int +__flz32_inline (uint32_t __x) +{ + return __x == (uint32_t) -1 ? 0 : 1 + __clo32_inline (__x); +} + +static __always_inline unsigned int +__flz16_inline (uint16_t __x) +{ + return __x == (uint16_t) -1 ? 0 : 1 + __clo16_inline (__x); +} + +static __always_inline unsigned int +__flz8_inline (uint8_t __x) +{ + return __x == (uint8_t) -1 ? 0 : 1 + __clo8_inline (__x); +} + +# define stdc_first_leading_zero_uc(x) (__flz8_inline (x)) +# define stdc_first_leading_zero_us(x) (__flz16_inline (x)) +# define stdc_first_leading_zero_ui(x) (__flz32_inline (x)) +# if __WORDSIZE == 64 +# define stdc_first_leading_zero_ul(x) (__flz64_inline (x)) +# else +# define stdc_first_leading_zero_ul(x) (__flz32_inline (x)) +# endif +# define stdc_first_leading_zero_ull(x) (__flz64_inline (x)) +#endif + +/* First leading one. */ +extern unsigned int stdc_first_leading_one_uc (unsigned char __x) + __THROW __attribute_const__; +extern unsigned int stdc_first_leading_one_us (unsigned short __x) + __THROW __attribute_const__; +extern unsigned int stdc_first_leading_one_ui (unsigned int __x) + __THROW __attribute_const__; +extern unsigned int stdc_first_leading_one_ul (unsigned long int __x) + __THROW __attribute_const__; +__extension__ +extern unsigned int stdc_first_leading_one_ull (unsigned long long int __x) + __THROW __attribute_const__; +#define stdc_first_leading_one(x) \ + (sizeof (x) == 8 ? stdc_first_leading_one_ull (x) \ + : sizeof (x) == 4 ? stdc_first_leading_one_ui (x) \ + : sizeof (x) == 2 ? stdc_first_leading_one_us (__pacify_uint16 (x)) \ + : stdc_first_leading_one_uc (__pacify_uint8 (x))) + +#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll) +static __always_inline unsigned int +__flo64_inline (uint64_t __x) +{ + return __x == 0 ? 0 : 1 + __clz64_inline (__x); +} + +static __always_inline unsigned int +__flo32_inline (uint32_t __x) +{ + return __x == 0 ? 0 : 1 + __clz32_inline (__x); +} + +static __always_inline unsigned int +__flo16_inline (uint16_t __x) +{ + return __x == 0 ? 0 : 1 + __clz16_inline (__x); +} + +static __always_inline unsigned int +__flo8_inline (uint8_t __x) +{ + return __x == 0 ? 0 : 1 + __clz8_inline (__x); +} + +# define stdc_first_leading_one_uc(x) (__flo8_inline (x)) +# define stdc_first_leading_one_us(x) (__flo16_inline (x)) +# define stdc_first_leading_one_ui(x) (__flo32_inline (x)) +# if __WORDSIZE == 64 +# define stdc_first_leading_one_ul(x) (__flo64_inline (x)) +# else +# define stdc_first_leading_one_ul(x) (__flo32_inline (x)) +# endif +# define stdc_first_leading_one_ull(x) (__flo64_inline (x)) +#endif + +/* First trailing zero. */ +extern unsigned int stdc_first_trailing_zero_uc (unsigned char __x) + __THROW __attribute_const__; +extern unsigned int stdc_first_trailing_zero_us (unsigned short __x) + __THROW __attribute_const__; +extern unsigned int stdc_first_trailing_zero_ui (unsigned int __x) + __THROW __attribute_const__; +extern unsigned int stdc_first_trailing_zero_ul (unsigned long int __x) + __THROW __attribute_const__; +__extension__ +extern unsigned int stdc_first_trailing_zero_ull (unsigned long long int __x) + __THROW __attribute_const__; +#define stdc_first_trailing_zero(x) \ + (sizeof (x) == 8 ? stdc_first_trailing_zero_ull (x) \ + : sizeof (x) == 4 ? stdc_first_trailing_zero_ui (x) \ + : sizeof (x) == 2 ? stdc_first_trailing_zero_us (__pacify_uint16 (x)) \ + : stdc_first_trailing_zero_uc (__pacify_uint8 (x))) + +#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_ctzll) +static __always_inline unsigned int +__ftz64_inline (uint64_t __x) +{ + return __x == (uint64_t) -1 ? 0 : 1 + __cto64_inline (__x); +} + +static __always_inline unsigned int +__ftz32_inline (uint32_t __x) +{ + return __x == (uint32_t) -1 ? 0 : 1 + __cto32_inline (__x); +} + +static __always_inline unsigned int +__ftz16_inline (uint16_t __x) +{ + return __x == (uint16_t) -1 ? 0 : 1 + __cto16_inline (__x); +} + +static __always_inline unsigned int +__ftz8_inline (uint8_t __x) +{ + return __x == (uint8_t) -1 ? 0 : 1 + __cto8_inline (__x); +} + +# define stdc_first_trailing_zero_uc(x) (__ftz8_inline (x)) +# define stdc_first_trailing_zero_us(x) (__ftz16_inline (x)) +# define stdc_first_trailing_zero_ui(x) (__ftz32_inline (x)) +# if __WORDSIZE == 64 +# define stdc_first_trailing_zero_ul(x) (__ftz64_inline (x)) +# else +# define stdc_first_trailing_zero_ul(x) (__ftz32_inline (x)) +# endif +# define stdc_first_trailing_zero_ull(x) (__ftz64_inline (x)) +#endif + +/* First trailing one. */ +extern unsigned int stdc_first_trailing_one_uc (unsigned char __x) + __THROW __attribute_const__; +extern unsigned int stdc_first_trailing_one_us (unsigned short __x) + __THROW __attribute_const__; +extern unsigned int stdc_first_trailing_one_ui (unsigned int __x) + __THROW __attribute_const__; +extern unsigned int stdc_first_trailing_one_ul (unsigned long int __x) + __THROW __attribute_const__; +__extension__ +extern unsigned int stdc_first_trailing_one_ull (unsigned long long int __x) + __THROW __attribute_const__; +#define stdc_first_trailing_one(x) \ + (sizeof (x) == 8 ? stdc_first_trailing_one_ull (x) \ + : sizeof (x) == 4 ? stdc_first_trailing_one_ui (x) \ + : sizeof (x) == 2 ? stdc_first_trailing_one_us (__pacify_uint16 (x)) \ + : stdc_first_trailing_one_uc (__pacify_uint8 (x))) + +#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_ctzll) +static __always_inline unsigned int +__fto64_inline (uint64_t __x) +{ + return __x == 0 ? 0 : 1 + __ctz64_inline (__x); +} + +static __always_inline unsigned int +__fto32_inline (uint32_t __x) +{ + return __x == 0 ? 0 : 1 + __ctz32_inline (__x); +} + +static __always_inline unsigned int +__fto16_inline (uint16_t __x) +{ + return __x == 0 ? 0 : 1 + __ctz16_inline (__x); +} + +static __always_inline unsigned int +__fto8_inline (uint8_t __x) +{ + return __x == 0 ? 0 : 1 + __ctz8_inline (__x); +} + +# define stdc_first_trailing_one_uc(x) (__fto8_inline (x)) +# define stdc_first_trailing_one_us(x) (__fto16_inline (x)) +# define stdc_first_trailing_one_ui(x) (__fto32_inline (x)) +# if __WORDSIZE == 64 +# define stdc_first_trailing_one_ul(x) (__fto64_inline (x)) +# else +# define stdc_first_trailing_one_ul(x) (__fto32_inline (x)) +# endif +# define stdc_first_trailing_one_ull(x) (__fto64_inline (x)) +#endif + +/* Count zeros. */ +extern unsigned int stdc_count_zeros_uc (unsigned char __x) + __THROW __attribute_const__; +extern unsigned int stdc_count_zeros_us (unsigned short __x) + __THROW __attribute_const__; +extern unsigned int stdc_count_zeros_ui (unsigned int __x) + __THROW __attribute_const__; +extern unsigned int stdc_count_zeros_ul (unsigned long int __x) + __THROW __attribute_const__; +__extension__ +extern unsigned int stdc_count_zeros_ull (unsigned long long int __x) + __THROW __attribute_const__; +#define stdc_count_zeros(x) \ + (stdc_count_zeros_ull (x) \ + - (unsigned int) (8 * (sizeof (0ULL) - sizeof (x)))) + +#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_popcountll) +static __always_inline unsigned int +__cz64_inline (uint64_t __x) +{ + return 64U - (unsigned int) __builtin_popcountll (__x); +} + +static __always_inline unsigned int +__cz32_inline (uint32_t __x) +{ + return 32U - (unsigned int) __builtin_popcount (__x); +} + +static __always_inline unsigned int +__cz16_inline (uint16_t __x) +{ + return 16U - (unsigned int) __builtin_popcount (__x); +} + +static __always_inline unsigned int +__cz8_inline (uint8_t __x) +{ + return 8U - (unsigned int) __builtin_popcount (__x); +} + +# define stdc_count_zeros_uc(x) (__cz8_inline (x)) +# define stdc_count_zeros_us(x) (__cz16_inline (x)) +# define stdc_count_zeros_ui(x) (__cz32_inline (x)) +# if __WORDSIZE == 64 +# define stdc_count_zeros_ul(x) (__cz64_inline (x)) +# else +# define stdc_count_zeros_ul(x) (__cz32_inline (x)) +# endif +# define stdc_count_zeros_ull(x) (__cz64_inline (x)) +#endif + +/* Count ones. */ +extern unsigned int stdc_count_ones_uc (unsigned char __x) + __THROW __attribute_const__; +extern unsigned int stdc_count_ones_us (unsigned short __x) + __THROW __attribute_const__; +extern unsigned int stdc_count_ones_ui (unsigned int __x) + __THROW __attribute_const__; +extern unsigned int stdc_count_ones_ul (unsigned long int __x) + __THROW __attribute_const__; +__extension__ +extern unsigned int stdc_count_ones_ull (unsigned long long int __x) + __THROW __attribute_const__; +#define stdc_count_ones(x) (stdc_count_ones_ull (x)) + +#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_popcountll) +static __always_inline unsigned int +__co64_inline (uint64_t __x) +{ + return (unsigned int) __builtin_popcountll (__x); +} + +static __always_inline unsigned int +__co32_inline (uint32_t __x) +{ + return (unsigned int) __builtin_popcount (__x); +} + +static __always_inline unsigned int +__co16_inline (uint16_t __x) +{ + return (unsigned int) __builtin_popcount (__x); +} + +static __always_inline unsigned int +__co8_inline (uint8_t __x) +{ + return (unsigned int) __builtin_popcount (__x); +} + +# define stdc_count_ones_uc(x) (__co8_inline (x)) +# define stdc_count_ones_us(x) (__co16_inline (x)) +# define stdc_count_ones_ui(x) (__co32_inline (x)) +# if __WORDSIZE == 64 +# define stdc_count_ones_ul(x) (__co64_inline (x)) +# else +# define stdc_count_ones_ul(x) (__co32_inline (x)) +# endif +# define stdc_count_ones_ull(x) (__co64_inline (x)) +#endif + +/* Single-bit check. */ +extern bool stdc_has_single_bit_uc (unsigned char __x) + __THROW __attribute_const__; +extern bool stdc_has_single_bit_us (unsigned short __x) + __THROW __attribute_const__; +extern bool stdc_has_single_bit_ui (unsigned int __x) + __THROW __attribute_const__; +extern bool stdc_has_single_bit_ul (unsigned long int __x) + __THROW __attribute_const__; +__extension__ +extern bool stdc_has_single_bit_ull (unsigned long long int __x) + __THROW __attribute_const__; +#define stdc_has_single_bit(x) \ + ((bool) (sizeof (x) <= sizeof (unsigned int) \ + ? stdc_has_single_bit_ui (x) \ + : stdc_has_single_bit_ull (x))) + +static __always_inline bool +__hsb64_inline (uint64_t __x) +{ + return (__x ^ (__x - 1)) > __x - 1; +} + +static __always_inline bool +__hsb32_inline (uint32_t __x) +{ + return (__x ^ (__x - 1)) > __x - 1; +} + +static __always_inline bool +__hsb16_inline (uint16_t __x) +{ + return (__x ^ (__x - 1)) > __x - 1; +} + +static __always_inline bool +__hsb8_inline (uint8_t __x) +{ + return (__x ^ (__x - 1)) > __x - 1; +} + +#define stdc_has_single_bit_uc(x) (__hsb8_inline (x)) +#define stdc_has_single_bit_us(x) (__hsb16_inline (x)) +#define stdc_has_single_bit_ui(x) (__hsb32_inline (x)) +#if __WORDSIZE == 64 +# define stdc_has_single_bit_ul(x) (__hsb64_inline (x)) +#else +# define stdc_has_single_bit_ul(x) (__hsb32_inline (x)) +#endif +#define stdc_has_single_bit_ull(x) (__hsb64_inline (x)) + +/* Bit width. */ +extern unsigned int stdc_bit_width_uc (unsigned char __x) + __THROW __attribute_const__; +extern unsigned int stdc_bit_width_us (unsigned short __x) + __THROW __attribute_const__; +extern unsigned int stdc_bit_width_ui (unsigned int __x) + __THROW __attribute_const__; +extern unsigned int stdc_bit_width_ul (unsigned long int __x) + __THROW __attribute_const__; +__extension__ +extern unsigned int stdc_bit_width_ull (unsigned long long int __x) + __THROW __attribute_const__; +#define stdc_bit_width(x) (stdc_bit_width_ull (x)) + +#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll) +static __always_inline unsigned int +__bw64_inline (uint64_t __x) +{ + return 64 - __clz64_inline (__x); +} + +static __always_inline unsigned int +__bw32_inline (uint32_t __x) +{ + return 32 - __clz32_inline (__x); +} + +static __always_inline unsigned int +__bw16_inline (uint16_t __x) +{ + return 16 - __clz16_inline (__x); +} + +static __always_inline unsigned int +__bw8_inline (uint8_t __x) +{ + return 8 - __clz8_inline (__x); +} + +# define stdc_bit_width_uc(x) (__bw8_inline (x)) +# define stdc_bit_width_us(x) (__bw16_inline (x)) +# define stdc_bit_width_ui(x) (__bw32_inline (x)) +# if __WORDSIZE == 64 +# define stdc_bit_width_ul(x) (__bw64_inline (x)) +# else +# define stdc_bit_width_ul(x) (__bw32_inline (x)) +# endif +# define stdc_bit_width_ull(x) (__bw64_inline (x)) +#endif + +/* Bit floor. */ +extern unsigned char stdc_bit_floor_uc (unsigned char __x) + __THROW __attribute_const__; +extern unsigned short stdc_bit_floor_us (unsigned short __x) + __THROW __attribute_const__; +extern unsigned int stdc_bit_floor_ui (unsigned int __x) + __THROW __attribute_const__; +extern unsigned long int stdc_bit_floor_ul (unsigned long int __x) + __THROW __attribute_const__; +__extension__ +extern unsigned long long int stdc_bit_floor_ull (unsigned long long int __x) + __THROW __attribute_const__; +#define stdc_bit_floor(x) ((__typeof (x)) stdc_bit_floor_ull (x)) + +#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll) +static __always_inline uint64_t +__bf64_inline (uint64_t __x) +{ + return __x == 0 ? 0 : ((uint64_t) 1) << (__bw64_inline (__x) - 1); +} + +static __always_inline uint32_t +__bf32_inline (uint32_t __x) +{ + return __x == 0 ? 0 : ((uint32_t) 1) << (__bw32_inline (__x) - 1); +} + +static __always_inline uint16_t +__bf16_inline (uint16_t __x) +{ + return __pacify_uint16 (__x == 0 + ? 0 : ((uint16_t) 1) << (__bw16_inline (__x) - 1)); +} + +static __always_inline uint8_t +__bf8_inline (uint8_t __x) +{ + return __pacify_uint8 (__x == 0 + ? 0 : ((uint8_t) 1) << (__bw8_inline (__x) - 1)); +} + +# define stdc_bit_floor_uc(x) ((unsigned char) __bf8_inline (x)) +# define stdc_bit_floor_us(x) ((unsigned short) __bf16_inline (x)) +# define stdc_bit_floor_ui(x) ((unsigned int) __bf32_inline (x)) +# if __WORDSIZE == 64 +# define stdc_bit_floor_ul(x) ((unsigned long int) __bf64_inline (x)) +# else +# define stdc_bit_floor_ul(x) ((unsigned long int) __bf32_inline (x)) +# endif +# define stdc_bit_floor_ull(x) ((unsigned long long int) __bf64_inline (x)) +#endif + +/* Bit ceiling. */ +extern unsigned char stdc_bit_ceil_uc (unsigned char __x) + __THROW __attribute_const__; +extern unsigned short stdc_bit_ceil_us (unsigned short __x) + __THROW __attribute_const__; +extern unsigned int stdc_bit_ceil_ui (unsigned int __x) + __THROW __attribute_const__; +extern unsigned long int stdc_bit_ceil_ul (unsigned long int __x) + __THROW __attribute_const__; +__extension__ +extern unsigned long long int stdc_bit_ceil_ull (unsigned long long int __x) + __THROW __attribute_const__; +#define stdc_bit_ceil(x) ((__typeof (x)) stdc_bit_ceil_ull (x)) + +#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll) +static __always_inline uint64_t +__bc64_inline (uint64_t __x) +{ + return __x <= 1 ? 1 : ((uint64_t) 2) << (__bw64_inline (__x - 1) - 1); +} + +static __always_inline uint32_t +__bc32_inline (uint32_t __x) +{ + return __x <= 1 ? 1 : ((uint32_t) 2) << (__bw32_inline (__x - 1) - 1); +} + +static __always_inline uint16_t +__bc16_inline (uint16_t __x) +{ + return __pacify_uint16 (__x <= 1 + ? 1 + : ((uint16_t) 2) + << (__bw16_inline ((uint16_t) (__x - 1)) - 1)); +} + +static __always_inline uint8_t +__bc8_inline (uint8_t __x) +{ + return __pacify_uint8 (__x <= 1 + ? 1 + : ((uint8_t) 2) + << (__bw8_inline ((uint8_t) (__x - 1)) - 1)); +} + +# define stdc_bit_ceil_uc(x) ((unsigned char) __bc8_inline (x)) +# define stdc_bit_ceil_us(x) ((unsigned short) __bc16_inline (x)) +# define stdc_bit_ceil_ui(x) ((unsigned int) __bc32_inline (x)) +# if __WORDSIZE == 64 +# define stdc_bit_ceil_ul(x) ((unsigned long int) __bc64_inline (x)) +# else +# define stdc_bit_ceil_ul(x) ((unsigned long int) __bc32_inline (x)) +# endif +# define stdc_bit_ceil_ull(x) ((unsigned long long int) __bc64_inline (x)) +#endif + +__END_DECLS + +#endif /* _STDBIT_H */ \ No newline at end of file diff --git a/lib/libc/include/generic-glibc/stdc-predef.h b/lib/libc/include/generic-glibc/stdc-predef.h index 56f91d9578..1284c82bbd 100644 --- a/lib/libc/include/generic-glibc/stdc-predef.h +++ b/lib/libc/include/generic-glibc/stdc-predef.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/stdint.h b/lib/libc/include/generic-glibc/stdint.h index ab0f1beaa1..51a9328ca1 100644 --- a/lib/libc/include/generic-glibc/stdint.h +++ b/lib/libc/include/generic-glibc/stdint.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -38,18 +38,7 @@ /* Small types. */ - -/* Signed. */ -typedef __int_least8_t int_least8_t; -typedef __int_least16_t int_least16_t; -typedef __int_least32_t int_least32_t; -typedef __int_least64_t int_least64_t; - -/* Unsigned. */ -typedef __uint_least8_t uint_least8_t; -typedef __uint_least16_t uint_least16_t; -typedef __uint_least32_t uint_least32_t; -typedef __uint_least64_t uint_least64_t; +#include /* Fast types. */ diff --git a/lib/libc/include/generic-glibc/stdio.h b/lib/libc/include/generic-glibc/stdio.h index 4c0d28f74f..ad074c30c7 100644 --- a/lib/libc/include/generic-glibc/stdio.h +++ b/lib/libc/include/generic-glibc/stdio.h @@ -1,5 +1,6 @@ /* Define ISO C stdio on top of C++ iostreams. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. + Copyright The GNU Toolchain Authors. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -278,7 +279,7 @@ extern FILE *__REDIRECT (fopen, (const char *__restrict __filename, extern FILE *__REDIRECT (freopen, (const char *__restrict __filename, const char *__restrict __modes, FILE *__restrict __stream), freopen64) - __wur; + __wur __nonnull ((3)); # else # define fopen fopen64 # define freopen freopen64 @@ -330,21 +331,22 @@ extern __FILE *open_wmemstream (wchar_t **__bufloc, size_t *__sizeloc) __THROW /* If BUF is NULL, make STREAM unbuffered. Else make it use buffer BUF, of size BUFSIZ. */ -extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) __THROW; +extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) __THROW + __nonnull ((1)); /* Make STREAM use buffering mode MODE. If BUF is not NULL, use N bytes of it for buffering; else allocate an internal buffer N bytes long. */ extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf, - int __modes, size_t __n) __THROW; + int __modes, size_t __n) __THROW __nonnull ((1)); #ifdef __USE_MISC /* If BUF is NULL, make STREAM unbuffered. Else make it use SIZE bytes of BUF for buffering. */ extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf, - size_t __size) __THROW; + size_t __size) __THROW __nonnull ((1)); /* Make STREAM line-buffered. */ -extern void setlinebuf (FILE *__stream) __THROW; +extern void setlinebuf (FILE *__stream) __THROW __nonnull ((1)); #endif @@ -353,7 +355,7 @@ extern void setlinebuf (FILE *__stream) __THROW; This function is a possible cancellation point and therefore not marked with __THROW. */ extern int fprintf (FILE *__restrict __stream, - const char *__restrict __format, ...); + const char *__restrict __format, ...) __nonnull ((1)); /* Write formatted output to stdout. This function is a possible cancellation point and therefore not @@ -368,7 +370,7 @@ extern int sprintf (char *__restrict __s, This function is a possible cancellation point and therefore not marked with __THROW. */ extern int vfprintf (FILE *__restrict __s, const char *__restrict __format, - __gnuc_va_list __arg); + __gnuc_va_list __arg) __nonnull ((1)); /* Write formatted output to stdout from argument list ARG. This function is a possible cancellation point and therefore not @@ -418,7 +420,7 @@ extern int dprintf (int __fd, const char *__restrict __fmt, ...) This function is a possible cancellation point and therefore not marked with __THROW. */ extern int fscanf (FILE *__restrict __stream, - const char *__restrict __format, ...) __wur; + const char *__restrict __format, ...) __wur __nonnull ((1)); /* Read formatted input from stdin. This function is a possible cancellation point and therefore not @@ -439,7 +441,7 @@ extern int sscanf (const char *__restrict __s, # ifdef __REDIRECT extern int __REDIRECT (fscanf, (FILE *__restrict __stream, const char *__restrict __format, ...), - __isoc23_fscanf) __wur; + __isoc23_fscanf) __wur __nonnull ((1)); extern int __REDIRECT (scanf, (const char *__restrict __format, ...), __isoc23_scanf) __wur; extern int __REDIRECT_NTH (sscanf, (const char *__restrict __s, @@ -447,7 +449,8 @@ extern int __REDIRECT_NTH (sscanf, (const char *__restrict __s, __isoc23_sscanf); # else extern int __isoc23_fscanf (FILE *__restrict __stream, - const char *__restrict __format, ...) __wur; + const char *__restrict __format, ...) __wur + __nonnull ((1)); extern int __isoc23_scanf (const char *__restrict __format, ...) __wur; extern int __isoc23_sscanf (const char *__restrict __s, const char *__restrict __format, ...) __THROW; @@ -459,7 +462,7 @@ extern int __isoc23_sscanf (const char *__restrict __s, # ifdef __REDIRECT extern int __REDIRECT (fscanf, (FILE *__restrict __stream, const char *__restrict __format, ...), - __isoc99_fscanf) __wur; + __isoc99_fscanf) __wur __nonnull ((1)); extern int __REDIRECT (scanf, (const char *__restrict __format, ...), __isoc99_scanf) __wur; extern int __REDIRECT_NTH (sscanf, (const char *__restrict __s, @@ -467,7 +470,8 @@ extern int __REDIRECT_NTH (sscanf, (const char *__restrict __s, __isoc99_sscanf); # else extern int __isoc99_fscanf (FILE *__restrict __stream, - const char *__restrict __format, ...) __wur; + const char *__restrict __format, ...) __wur + __nonnull ((1)); extern int __isoc99_scanf (const char *__restrict __format, ...) __wur; extern int __isoc99_sscanf (const char *__restrict __s, const char *__restrict __format, ...) __THROW; @@ -485,7 +489,7 @@ extern int __isoc99_sscanf (const char *__restrict __s, marked with __THROW. */ extern int vfscanf (FILE *__restrict __s, const char *__restrict __format, __gnuc_va_list __arg) - __attribute__ ((__format__ (__scanf__, 2, 0))) __wur; + __attribute__ ((__format__ (__scanf__, 2, 0))) __wur __nonnull ((1)); /* Read formatted input from stdin into argument list ARG. @@ -508,7 +512,7 @@ extern int __REDIRECT (vfscanf, (FILE *__restrict __s, const char *__restrict __format, __gnuc_va_list __arg), __isoc23_vfscanf) - __attribute__ ((__format__ (__scanf__, 2, 0))) __wur; + __attribute__ ((__format__ (__scanf__, 2, 0))) __wur __nonnull ((1)); extern int __REDIRECT (vscanf, (const char *__restrict __format, __gnuc_va_list __arg), __isoc23_vscanf) __attribute__ ((__format__ (__scanf__, 1, 0))) __wur; @@ -520,7 +524,7 @@ extern int __REDIRECT_NTH (vsscanf, # elif !defined __REDIRECT extern int __isoc23_vfscanf (FILE *__restrict __s, const char *__restrict __format, - __gnuc_va_list __arg) __wur; + __gnuc_va_list __arg) __wur __nonnull ((1)); extern int __isoc23_vscanf (const char *__restrict __format, __gnuc_va_list __arg) __wur; extern int __isoc23_vsscanf (const char *__restrict __s, @@ -537,7 +541,7 @@ extern int __REDIRECT (vfscanf, (FILE *__restrict __s, const char *__restrict __format, __gnuc_va_list __arg), __isoc99_vfscanf) - __attribute__ ((__format__ (__scanf__, 2, 0))) __wur; + __attribute__ ((__format__ (__scanf__, 2, 0))) __wur __nonnull ((1)); extern int __REDIRECT (vscanf, (const char *__restrict __format, __gnuc_va_list __arg), __isoc99_vscanf) __attribute__ ((__format__ (__scanf__, 1, 0))) __wur; @@ -549,7 +553,7 @@ extern int __REDIRECT_NTH (vsscanf, # elif !defined __REDIRECT extern int __isoc99_vfscanf (FILE *__restrict __s, const char *__restrict __format, - __gnuc_va_list __arg) __wur; + __gnuc_va_list __arg) __wur __nonnull ((1)); extern int __isoc99_vscanf (const char *__restrict __format, __gnuc_va_list __arg) __wur; extern int __isoc99_vsscanf (const char *__restrict __s, @@ -568,8 +572,8 @@ extern int __isoc99_vsscanf (const char *__restrict __s, These functions are possible cancellation points and therefore not marked with __THROW. */ -extern int fgetc (FILE *__stream); -extern int getc (FILE *__stream); +extern int fgetc (FILE *__stream) __nonnull ((1)); +extern int getc (FILE *__stream) __nonnull ((1)); /* Read a character from stdin. @@ -582,7 +586,7 @@ extern int getchar (void); These functions are possible cancellation points and therefore not marked with __THROW. */ -extern int getc_unlocked (FILE *__stream); +extern int getc_unlocked (FILE *__stream) __nonnull ((1)); extern int getchar_unlocked (void); #endif /* Use POSIX. */ @@ -593,7 +597,7 @@ extern int getchar_unlocked (void); cancellation point. But due to similarity with an POSIX interface or due to the implementation it is a cancellation point and therefore not marked with __THROW. */ -extern int fgetc_unlocked (FILE *__stream); +extern int fgetc_unlocked (FILE *__stream) __nonnull ((1)); #endif /* Use MISC. */ @@ -604,8 +608,8 @@ extern int fgetc_unlocked (FILE *__stream); These functions is a possible cancellation point and therefore not marked with __THROW. */ -extern int fputc (int __c, FILE *__stream); -extern int putc (int __c, FILE *__stream); +extern int fputc (int __c, FILE *__stream) __nonnull ((2)); +extern int putc (int __c, FILE *__stream) __nonnull ((2)); /* Write a character to stdout. @@ -620,7 +624,7 @@ extern int putchar (int __c); cancellation point. But due to similarity with an POSIX interface or due to the implementation it is a cancellation point and therefore not marked with __THROW. */ -extern int fputc_unlocked (int __c, FILE *__stream); +extern int fputc_unlocked (int __c, FILE *__stream) __nonnull ((2)); #endif /* Use MISC. */ #ifdef __USE_POSIX199506 @@ -628,7 +632,7 @@ extern int fputc_unlocked (int __c, FILE *__stream); These functions are possible cancellation points and therefore not marked with __THROW. */ -extern int putc_unlocked (int __c, FILE *__stream); +extern int putc_unlocked (int __c, FILE *__stream) __nonnull ((2)); extern int putchar_unlocked (int __c); #endif /* Use POSIX. */ @@ -636,10 +640,10 @@ extern int putchar_unlocked (int __c); #if defined __USE_MISC \ || (defined __USE_XOPEN && !defined __USE_XOPEN2K) /* Get a word (int) from STREAM. */ -extern int getw (FILE *__stream); +extern int getw (FILE *__stream) __nonnull ((1)); /* Write a word (int) to STREAM. */ -extern int putw (int __w, FILE *__stream); +extern int putw (int __w, FILE *__stream) __nonnull ((2)); #endif @@ -648,7 +652,7 @@ extern int putw (int __w, FILE *__stream); This function is a possible cancellation point and therefore not marked with __THROW. */ extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream) - __wur __fortified_attr_access (__write_only__, 1, 2); + __wur __fortified_attr_access (__write_only__, 1, 2) __nonnull ((3)); #if __GLIBC_USE (DEPRECATED_GETS) /* Get a newline-terminated string from stdin, removing the newline. @@ -672,7 +676,7 @@ extern char *gets (char *__s) __wur __attribute_deprecated__; therefore not marked with __THROW. */ extern char *fgets_unlocked (char *__restrict __s, int __n, FILE *__restrict __stream) __wur - __fortified_attr_access (__write_only__, 1, 2); + __fortified_attr_access (__write_only__, 1, 2) __nonnull ((3)); #endif @@ -689,10 +693,10 @@ extern char *fgets_unlocked (char *__restrict __s, int __n, therefore not marked with __THROW. */ extern __ssize_t __getdelim (char **__restrict __lineptr, size_t *__restrict __n, int __delimiter, - FILE *__restrict __stream) __wur; + FILE *__restrict __stream) __wur __nonnull ((4)); extern __ssize_t getdelim (char **__restrict __lineptr, size_t *__restrict __n, int __delimiter, - FILE *__restrict __stream) __wur; + FILE *__restrict __stream) __wur __nonnull ((4)); /* Like `getdelim', but reads up to a newline. @@ -702,7 +706,7 @@ extern __ssize_t getdelim (char **__restrict __lineptr, therefore not marked with __THROW. */ extern __ssize_t getline (char **__restrict __lineptr, size_t *__restrict __n, - FILE *__restrict __stream) __wur; + FILE *__restrict __stream) __wur __nonnull ((3)); #endif @@ -710,7 +714,8 @@ extern __ssize_t getline (char **__restrict __lineptr, This function is a possible cancellation point and therefore not marked with __THROW. */ -extern int fputs (const char *__restrict __s, FILE *__restrict __stream); +extern int fputs (const char *__restrict __s, FILE *__restrict __stream) + __nonnull ((2)); /* Write a string, followed by a newline, to stdout. @@ -723,7 +728,7 @@ extern int puts (const char *__s); This function is a possible cancellation point and therefore not marked with __THROW. */ -extern int ungetc (int __c, FILE *__stream); +extern int ungetc (int __c, FILE *__stream) __nonnull ((2)); /* Read chunks of generic data from STREAM. @@ -731,13 +736,14 @@ extern int ungetc (int __c, FILE *__stream); This function is a possible cancellation point and therefore not marked with __THROW. */ extern size_t fread (void *__restrict __ptr, size_t __size, - size_t __n, FILE *__restrict __stream) __wur; + size_t __n, FILE *__restrict __stream) __wur + __nonnull((4)); /* Write chunks of generic data to STREAM. This function is a possible cancellation point and therefore not marked with __THROW. */ extern size_t fwrite (const void *__restrict __ptr, size_t __size, - size_t __n, FILE *__restrict __s); + size_t __n, FILE *__restrict __s) __nonnull((4)); #ifdef __USE_GNU /* This function does the same as `fputs' but does not lock the stream. @@ -747,7 +753,7 @@ extern size_t fwrite (const void *__restrict __ptr, size_t __size, or due to the implementation it is a cancellation point and therefore not marked with __THROW. */ extern int fputs_unlocked (const char *__restrict __s, - FILE *__restrict __stream); + FILE *__restrict __stream) __nonnull ((2)); #endif #ifdef __USE_MISC @@ -758,9 +764,11 @@ extern int fputs_unlocked (const char *__restrict __s, or due to the implementation they are cancellation points and therefore not marked with __THROW. */ extern size_t fread_unlocked (void *__restrict __ptr, size_t __size, - size_t __n, FILE *__restrict __stream) __wur; + size_t __n, FILE *__restrict __stream) __wur + __nonnull ((4)); extern size_t fwrite_unlocked (const void *__restrict __ptr, size_t __size, - size_t __n, FILE *__restrict __stream); + size_t __n, FILE *__restrict __stream) + __nonnull ((4)); #endif @@ -768,17 +776,18 @@ extern size_t fwrite_unlocked (const void *__restrict __ptr, size_t __size, This function is a possible cancellation point and therefore not marked with __THROW. */ -extern int fseek (FILE *__stream, long int __off, int __whence); +extern int fseek (FILE *__stream, long int __off, int __whence) + __nonnull ((1)); /* Return the current position of STREAM. This function is a possible cancellation point and therefore not marked with __THROW. */ -extern long int ftell (FILE *__stream) __wur; +extern long int ftell (FILE *__stream) __wur __nonnull ((1)); /* Rewind to the beginning of STREAM. This function is a possible cancellation point and therefore not marked with __THROW. */ -extern void rewind (FILE *__stream); +extern void rewind (FILE *__stream) __nonnull ((1)); /* The Single Unix Specification, Version 2, specifies an alternative, more adequate interface for the two functions above which deal with @@ -791,18 +800,20 @@ extern void rewind (FILE *__stream); This function is a possible cancellation point and therefore not marked with __THROW. */ -extern int fseeko (FILE *__stream, __off_t __off, int __whence); +extern int fseeko (FILE *__stream, __off_t __off, int __whence) + __nonnull ((1)); /* Return the current position of STREAM. This function is a possible cancellation point and therefore not marked with __THROW. */ -extern __off_t ftello (FILE *__stream) __wur; +extern __off_t ftello (FILE *__stream) __wur __nonnull ((1)); # else # ifdef __REDIRECT extern int __REDIRECT (fseeko, (FILE *__stream, __off64_t __off, int __whence), - fseeko64); -extern __off64_t __REDIRECT (ftello, (FILE *__stream), ftello64); + fseeko64) __nonnull ((1)); +extern __off64_t __REDIRECT (ftello, (FILE *__stream), ftello64) + __nonnull ((1)); # else # define fseeko fseeko64 # define ftello ftello64 @@ -815,18 +826,21 @@ extern __off64_t __REDIRECT (ftello, (FILE *__stream), ftello64); This function is a possible cancellation point and therefore not marked with __THROW. */ -extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos); +extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos) + __nonnull ((1)); /* Set STREAM's position. This function is a possible cancellation point and therefore not marked with __THROW. */ -extern int fsetpos (FILE *__stream, const fpos_t *__pos); +extern int fsetpos (FILE *__stream, const fpos_t *__pos) __nonnull ((1)); #else # ifdef __REDIRECT extern int __REDIRECT (fgetpos, (FILE *__restrict __stream, - fpos_t *__restrict __pos), fgetpos64); + fpos_t *__restrict __pos), fgetpos64) + __nonnull ((1)); extern int __REDIRECT (fsetpos, - (FILE *__stream, const fpos_t *__pos), fsetpos64); + (FILE *__stream, const fpos_t *__pos), fsetpos64) + __nonnull ((1)); # else # define fgetpos fgetpos64 # define fsetpos fsetpos64 @@ -834,24 +848,26 @@ extern int __REDIRECT (fsetpos, #endif #ifdef __USE_LARGEFILE64 -extern int fseeko64 (FILE *__stream, __off64_t __off, int __whence); -extern __off64_t ftello64 (FILE *__stream) __wur; -extern int fgetpos64 (FILE *__restrict __stream, fpos64_t *__restrict __pos); -extern int fsetpos64 (FILE *__stream, const fpos64_t *__pos); +extern int fseeko64 (FILE *__stream, __off64_t __off, int __whence) + __nonnull ((1)); +extern __off64_t ftello64 (FILE *__stream) __wur __nonnull ((1)); +extern int fgetpos64 (FILE *__restrict __stream, fpos64_t *__restrict __pos) + __nonnull ((1)); +extern int fsetpos64 (FILE *__stream, const fpos64_t *__pos) __nonnull ((1)); #endif /* Clear the error and EOF indicators for STREAM. */ -extern void clearerr (FILE *__stream) __THROW; +extern void clearerr (FILE *__stream) __THROW __nonnull ((1)); /* Return the EOF indicator for STREAM. */ -extern int feof (FILE *__stream) __THROW __wur; +extern int feof (FILE *__stream) __THROW __wur __nonnull ((1)); /* Return the error indicator for STREAM. */ -extern int ferror (FILE *__stream) __THROW __wur; +extern int ferror (FILE *__stream) __THROW __wur __nonnull ((1)); #ifdef __USE_MISC /* Faster versions when locking is not required. */ -extern void clearerr_unlocked (FILE *__stream) __THROW; -extern int feof_unlocked (FILE *__stream) __THROW __wur; -extern int ferror_unlocked (FILE *__stream) __THROW __wur; +extern void clearerr_unlocked (FILE *__stream) __THROW __nonnull ((1)); +extern int feof_unlocked (FILE *__stream) __THROW __wur __nonnull ((1)); +extern int ferror_unlocked (FILE *__stream) __THROW __wur __nonnull ((1)); #endif @@ -864,12 +880,12 @@ extern void perror (const char *__s) __COLD; #ifdef __USE_POSIX /* Return the system file descriptor for STREAM. */ -extern int fileno (FILE *__stream) __THROW __wur; +extern int fileno (FILE *__stream) __THROW __wur __nonnull ((1)); #endif /* Use POSIX. */ #ifdef __USE_MISC /* Faster version when locking is not required. */ -extern int fileno_unlocked (FILE *__stream) __THROW __wur; +extern int fileno_unlocked (FILE *__stream) __THROW __wur __nonnull ((1)); #endif @@ -878,7 +894,7 @@ extern int fileno_unlocked (FILE *__stream) __THROW __wur; This function is a possible cancellation point and therefore not marked with __THROW. */ -extern int pclose (FILE *__stream); +extern int pclose (FILE *__stream) __nonnull ((1)); /* Create a new stream connected to a pipe running the given command. @@ -922,14 +938,14 @@ extern int obstack_vprintf (struct obstack *__restrict __obstack, /* These are defined in POSIX.1:1996. */ /* Acquire ownership of STREAM. */ -extern void flockfile (FILE *__stream) __THROW; +extern void flockfile (FILE *__stream) __THROW __nonnull ((1)); /* Try to acquire ownership of STREAM but do not block if it is not possible. */ -extern int ftrylockfile (FILE *__stream) __THROW __wur; +extern int ftrylockfile (FILE *__stream) __THROW __wur __nonnull ((1)); /* Relinquish the ownership granted for STREAM. */ -extern void funlockfile (FILE *__stream) __THROW; +extern void funlockfile (FILE *__stream) __THROW __nonnull ((1)); #endif /* POSIX */ #if defined __USE_XOPEN && !defined __USE_XOPEN2K && !defined __USE_GNU diff --git a/lib/libc/include/generic-glibc/stdio_ext.h b/lib/libc/include/generic-glibc/stdio_ext.h index f1e8432842..ed654cae6c 100644 --- a/lib/libc/include/generic-glibc/stdio_ext.h +++ b/lib/libc/include/generic-glibc/stdio_ext.h @@ -1,5 +1,5 @@ /* Functions to access FILE structure internals. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/stdlib.h b/lib/libc/include/generic-glibc/stdlib.h index 4f3886ab00..5fe67ad4b2 100644 --- a/lib/libc/include/generic-glibc/stdlib.h +++ b/lib/libc/include/generic-glibc/stdlib.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. Copyright The GNU Toolchain Authors. This file is part of the GNU C Library. @@ -686,11 +686,6 @@ extern void *realloc (void *__ptr, size_t __size) /* Free a block allocated by `malloc', `realloc' or `calloc'. */ extern void free (void *__ptr) __THROW; -/* - * reallocarray introduced in glibc 2.26 - * https://sourceware.org/git/?p=glibc.git;a=commit;h=2e0bbbfbf95fc9e22692e93658a6fbdd2d4554da - */ -#if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 26) || __GLIBC__ > 2 #ifdef __USE_MISC /* Re-allocate the previously allocated block in PTR, making the new block large enough for NMEMB elements of SIZE bytes each. */ @@ -706,7 +701,6 @@ extern void *reallocarray (void *__ptr, size_t __nmemb, size_t __size) extern void *reallocarray (void *__ptr, size_t __nmemb, size_t __size) __THROW __attr_dealloc (reallocarray, 1); #endif -#endif /* glibc v2.26 and later */ #ifdef __USE_MISC # include diff --git a/lib/libc/include/generic-glibc/string.h b/lib/libc/include/generic-glibc/string.h index 353754d0c4..d1daa78bfc 100644 --- a/lib/libc/include/generic-glibc/string.h +++ b/lib/libc/include/generic-glibc/string.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -501,11 +501,6 @@ extern char *stpncpy (char *__restrict __dest, __THROW __nonnull ((1, 2)); #endif -/* - * strlcpy and strlcat introduced in glibc 2.38 - * https://sourceware.org/git/?p=glibc.git;a=commit;h=2e0bbbfbf95fc9e22692e93658a6fbdd2d4554da - */ -#if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 38) || __GLIBC__ > 2 #ifdef __USE_MISC /* Copy at most N - 1 characters from SRC to DEST. */ extern size_t strlcpy (char *__restrict __dest, @@ -518,7 +513,6 @@ extern size_t strlcat (char *__restrict __dest, const char *__restrict __src, size_t __n) __THROW __nonnull ((1, 2)) __attr_access ((__read_write__, 1, 3)); #endif -#endif /* glibc v2.38 and later */ #ifdef __USE_GNU /* Compare S1 and S2 as strings holding name & indices/version numbers. */ diff --git a/lib/libc/include/generic-glibc/strings.h b/lib/libc/include/generic-glibc/strings.h index 2f210da8a6..f0232a5d71 100644 --- a/lib/libc/include/generic-glibc/strings.h +++ b/lib/libc/include/generic-glibc/strings.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/acct.h b/lib/libc/include/generic-glibc/sys/acct.h index 346bcdbb86..bc49153821 100644 --- a/lib/libc/include/generic-glibc/sys/acct.h +++ b/lib/libc/include/generic-glibc/sys/acct.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/asm.h b/lib/libc/include/generic-glibc/sys/asm.h index c1c8e325b6..6822a34801 100644 --- a/lib/libc/include/generic-glibc/sys/asm.h +++ b/lib/libc/include/generic-glibc/sys/asm.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/auxv.h b/lib/libc/include/generic-glibc/sys/auxv.h index 9d3a20adc8..4b5c316c96 100644 --- a/lib/libc/include/generic-glibc/sys/auxv.h +++ b/lib/libc/include/generic-glibc/sys/auxv.h @@ -1,5 +1,5 @@ /* Access to the auxiliary vector. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/cachectl.h b/lib/libc/include/generic-glibc/sys/cachectl.h index cf65e8599d..7c39d85a7c 100644 --- a/lib/libc/include/generic-glibc/sys/cachectl.h +++ b/lib/libc/include/generic-glibc/sys/cachectl.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/cdefs.h b/lib/libc/include/generic-glibc/sys/cdefs.h index e1b8d983dc..63cae29ee4 100644 --- a/lib/libc/include/generic-glibc/sys/cdefs.h +++ b/lib/libc/include/generic-glibc/sys/cdefs.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. Copyright The GNU Toolchain Authors. This file is part of the GNU C Library. diff --git a/lib/libc/include/generic-glibc/sys/debugreg.h b/lib/libc/include/generic-glibc/sys/debugreg.h index a379309e14..230bca72f8 100644 --- a/lib/libc/include/generic-glibc/sys/debugreg.h +++ b/lib/libc/include/generic-glibc/sys/debugreg.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2023 Free Software Foundation, Inc. +/* Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/dir.h b/lib/libc/include/generic-glibc/sys/dir.h index 5b1fe74c80..48d2515dba 100644 --- a/lib/libc/include/generic-glibc/sys/dir.h +++ b/lib/libc/include/generic-glibc/sys/dir.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/elf.h b/lib/libc/include/generic-glibc/sys/elf.h index 458bed022e..4dc42f9ade 100644 --- a/lib/libc/include/generic-glibc/sys/elf.h +++ b/lib/libc/include/generic-glibc/sys/elf.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/epoll.h b/lib/libc/include/generic-glibc/sys/epoll.h index a301552849..bae8290a8a 100644 --- a/lib/libc/include/generic-glibc/sys/epoll.h +++ b/lib/libc/include/generic-glibc/sys/epoll.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/eventfd.h b/lib/libc/include/generic-glibc/sys/eventfd.h index d8d51ad530..4a87b48fe6 100644 --- a/lib/libc/include/generic-glibc/sys/eventfd.h +++ b/lib/libc/include/generic-glibc/sys/eventfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/fanotify.h b/lib/libc/include/generic-glibc/sys/fanotify.h index d18862c581..bb9846c7ea 100644 --- a/lib/libc/include/generic-glibc/sys/fanotify.h +++ b/lib/libc/include/generic-glibc/sys/fanotify.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2010-2023 Free Software Foundation, Inc. +/* Copyright (C) 2010-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/file.h b/lib/libc/include/generic-glibc/sys/file.h index 664ddfbe7e..7574237d4c 100644 --- a/lib/libc/include/generic-glibc/sys/file.h +++ b/lib/libc/include/generic-glibc/sys/file.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/fpregdef.h b/lib/libc/include/generic-glibc/sys/fpregdef.h index b2b01cf807..9cf537d942 100644 --- a/lib/libc/include/generic-glibc/sys/fpregdef.h +++ b/lib/libc/include/generic-glibc/sys/fpregdef.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/fsuid.h b/lib/libc/include/generic-glibc/sys/fsuid.h index cdfb3863a1..cf0ef0ac14 100644 --- a/lib/libc/include/generic-glibc/sys/fsuid.h +++ b/lib/libc/include/generic-glibc/sys/fsuid.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/gmon_out.h b/lib/libc/include/generic-glibc/sys/gmon_out.h index 803e7dda9f..10d1204585 100644 --- a/lib/libc/include/generic-glibc/sys/gmon_out.h +++ b/lib/libc/include/generic-glibc/sys/gmon_out.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/ifunc.h b/lib/libc/include/generic-glibc/sys/ifunc.h index 0c1e8745fc..92cbd7b999 100644 --- a/lib/libc/include/generic-glibc/sys/ifunc.h +++ b/lib/libc/include/generic-glibc/sys/ifunc.h @@ -1,5 +1,5 @@ /* Definitions used by AArch64 indirect function resolvers. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/inotify.h b/lib/libc/include/generic-glibc/sys/inotify.h index e124248463..7a52157bc7 100644 --- a/lib/libc/include/generic-glibc/sys/inotify.h +++ b/lib/libc/include/generic-glibc/sys/inotify.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/io.h b/lib/libc/include/generic-glibc/sys/io.h index 905202470e..624e0f9e07 100644 --- a/lib/libc/include/generic-glibc/sys/io.h +++ b/lib/libc/include/generic-glibc/sys/io.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/ioctl.h b/lib/libc/include/generic-glibc/sys/ioctl.h index 2abd52e2bf..26faa524b6 100644 --- a/lib/libc/include/generic-glibc/sys/ioctl.h +++ b/lib/libc/include/generic-glibc/sys/ioctl.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/ipc.h b/lib/libc/include/generic-glibc/sys/ipc.h index f907605dee..76aecca53d 100644 --- a/lib/libc/include/generic-glibc/sys/ipc.h +++ b/lib/libc/include/generic-glibc/sys/ipc.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/kd.h b/lib/libc/include/generic-glibc/sys/kd.h index 06489c91c7..50acccf3a4 100644 --- a/lib/libc/include/generic-glibc/sys/kd.h +++ b/lib/libc/include/generic-glibc/sys/kd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/klog.h b/lib/libc/include/generic-glibc/sys/klog.h index cd4fa1a404..a1e42eb02f 100644 --- a/lib/libc/include/generic-glibc/sys/klog.h +++ b/lib/libc/include/generic-glibc/sys/klog.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/mman.h b/lib/libc/include/generic-glibc/sys/mman.h index c542c16eb2..8ffb47f346 100644 --- a/lib/libc/include/generic-glibc/sys/mman.h +++ b/lib/libc/include/generic-glibc/sys/mman.h @@ -1,5 +1,5 @@ /* Definitions for BSD-style memory management. - Copyright (C) 1994-2023 Free Software Foundation, Inc. + Copyright (C) 1994-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/mount.h b/lib/libc/include/generic-glibc/sys/mount.h index 76853a30ab..0fdc9f3ad0 100644 --- a/lib/libc/include/generic-glibc/sys/mount.h +++ b/lib/libc/include/generic-glibc/sys/mount.h @@ -1,5 +1,5 @@ /* Header file for mounting/unmount Linux filesystems. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -226,6 +226,7 @@ struct mount_attr #define MOVE_MOUNT_T_AUTOMOUNTS 0x00000020 /* Follow automounts on to path */ #define MOVE_MOUNT_T_EMPTY_PATH 0x00000040 /* Empty to path permitted */ #define MOVE_MOUNT_SET_GROUP 0x00000100 /* Set sharing group instead */ +#define MOVE_MOUNT_BENEATH 0x00000200 /* Mount beneath top mount */ /* fspick flags. */ @@ -255,6 +256,8 @@ enum fsconfig_command # define FSCONFIG_CMD_CREATE FSCONFIG_CMD_CREATE FSCONFIG_CMD_RECONFIGURE = 7, /* Invoke superblock reconfiguration */ # define FSCONFIG_CMD_RECONFIGURE FSCONFIG_CMD_RECONFIGURE + FSCONFIG_CMD_CREATE_EXCL = 8, /* Create new superblock, fail if reusing existing superblock */ +# define FSCONFIG_CMD_CREATE_EXCL FSCONFIG_CMD_CREATE_EXCL }; #endif diff --git a/lib/libc/include/generic-glibc/sys/msg.h b/lib/libc/include/generic-glibc/sys/msg.h index 00cb8b53c0..48361b24b7 100644 --- a/lib/libc/include/generic-glibc/sys/msg.h +++ b/lib/libc/include/generic-glibc/sys/msg.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/mtio.h b/lib/libc/include/generic-glibc/sys/mtio.h index d31cbb3338..56798888b9 100644 --- a/lib/libc/include/generic-glibc/sys/mtio.h +++ b/lib/libc/include/generic-glibc/sys/mtio.h @@ -1,5 +1,5 @@ /* Structures and definitions for magnetic tape I/O control commands. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/param.h b/lib/libc/include/generic-glibc/sys/param.h index 14b2c6ab10..444c1b471e 100644 --- a/lib/libc/include/generic-glibc/sys/param.h +++ b/lib/libc/include/generic-glibc/sys/param.h @@ -1,5 +1,5 @@ /* Compatibility header for old-style Unix parameters and limits. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/pci.h b/lib/libc/include/generic-glibc/sys/pci.h index 74d03ce8f8..1ddb2d2959 100644 --- a/lib/libc/include/generic-glibc/sys/pci.h +++ b/lib/libc/include/generic-glibc/sys/pci.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/perm.h b/lib/libc/include/generic-glibc/sys/perm.h index 07720ba97d..e89a57f987 100644 --- a/lib/libc/include/generic-glibc/sys/perm.h +++ b/lib/libc/include/generic-glibc/sys/perm.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/personality.h b/lib/libc/include/generic-glibc/sys/personality.h index dab756ec19..456f2e4304 100644 --- a/lib/libc/include/generic-glibc/sys/personality.h +++ b/lib/libc/include/generic-glibc/sys/personality.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/pidfd.h b/lib/libc/include/generic-glibc/sys/pidfd.h index bb596f3217..c70dfe5044 100644 --- a/lib/libc/include/generic-glibc/sys/pidfd.h +++ b/lib/libc/include/generic-glibc/sys/pidfd.h @@ -1,5 +1,5 @@ /* Wrapper for file descriptors that refers to a process functions. - Copyright (C) 2022-2023 Free Software Foundation, Inc. + Copyright (C) 2022-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -46,4 +46,8 @@ extern int pidfd_getfd (int __pidfd, int __targetfd, extern int pidfd_send_signal (int __pidfd, int __sig, siginfo_t *__info, unsigned int __flags) __THROW; +/* Query the process ID (PID) from process descriptor FD. Return the PID + or -1 in case of an error. */ +extern pid_t pidfd_getpid (int __fd) __THROW; + #endif /* _PIDFD_H */ \ No newline at end of file diff --git a/lib/libc/include/generic-glibc/sys/platform/ppc.h b/lib/libc/include/generic-glibc/sys/platform/ppc.h index 60b363e260..fb96b49af5 100644 --- a/lib/libc/include/generic-glibc/sys/platform/ppc.h +++ b/lib/libc/include/generic-glibc/sys/platform/ppc.h @@ -1,5 +1,5 @@ /* Facilities specific to the PowerPC architecture - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/platform/x86.h b/lib/libc/include/generic-glibc/sys/platform/x86.h index 6fd1d5e69e..d89486d356 100644 --- a/lib/libc/include/generic-glibc/sys/platform/x86.h +++ b/lib/libc/include/generic-glibc/sys/platform/x86.h @@ -1,6 +1,6 @@ /* Data structure for x86 CPU features. This file is part of the GNU C Library. - Copyright (C) 2008-2023 Free Software Foundation, Inc. + Copyright (C) 2008-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public @@ -22,6 +22,7 @@ #include #include #include +#include __BEGIN_DECLS @@ -45,6 +46,9 @@ x86_cpu_present (unsigned int __index) static __inline__ _Bool x86_cpu_active (unsigned int __index) { + if (__index == x86_cpu_IBT || __index == x86_cpu_SHSTK) + return x86_cpu_cet_active (__index); + const struct cpuid_feature *__ptr = __x86_get_cpuid_feature_leaf (__index / (8 * sizeof (unsigned int) * 4)); unsigned int __reg diff --git a/lib/libc/include/generic-glibc/sys/poll.h b/lib/libc/include/generic-glibc/sys/poll.h index 63e91f371d..31103eb0d4 100644 --- a/lib/libc/include/generic-glibc/sys/poll.h +++ b/lib/libc/include/generic-glibc/sys/poll.h @@ -1,5 +1,5 @@ /* Compatibility definitions for System V `poll' interface. - Copyright (C) 1994-2023 Free Software Foundation, Inc. + Copyright (C) 1994-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/prctl.h b/lib/libc/include/generic-glibc/sys/prctl.h index 30f68508b4..db18187ff7 100644 --- a/lib/libc/include/generic-glibc/sys/prctl.h +++ b/lib/libc/include/generic-glibc/sys/prctl.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/procfs.h b/lib/libc/include/generic-glibc/sys/procfs.h index 0d977c6093..afc35076c9 100644 --- a/lib/libc/include/generic-glibc/sys/procfs.h +++ b/lib/libc/include/generic-glibc/sys/procfs.h @@ -1,5 +1,5 @@ /* Definitions for core files and libthread_db. Generic Linux version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/generic-glibc/sys/profil.h b/lib/libc/include/generic-glibc/sys/profil.h index e1be307f80..a161b2253a 100644 --- a/lib/libc/include/generic-glibc/sys/profil.h +++ b/lib/libc/include/generic-glibc/sys/profil.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2023 Free Software Foundation, Inc. +/* Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/ptrace.h b/lib/libc/include/generic-glibc/sys/ptrace.h index df5abb9b13..750cc3a630 100644 --- a/lib/libc/include/generic-glibc/sys/ptrace.h +++ b/lib/libc/include/generic-glibc/sys/ptrace.h @@ -1,5 +1,5 @@ /* `ptrace' debugger support interface. Linux version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -174,8 +174,18 @@ enum __ptrace_request #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO /* Get rseq configuration information. */ - PTRACE_GET_RSEQ_CONFIGURATION = 0x420f + PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION + + /* Set configuration for syscall user dispatch. */ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, +#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG + + /* Get configuration for syscall user dispatch. */ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 +#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG }; diff --git a/lib/libc/include/generic-glibc/sys/quota.h b/lib/libc/include/generic-glibc/sys/quota.h index e6f75ae761..8171e26082 100644 --- a/lib/libc/include/generic-glibc/sys/quota.h +++ b/lib/libc/include/generic-glibc/sys/quota.h @@ -1,5 +1,5 @@ /* This just represents the non-kernel parts of . - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/random.h b/lib/libc/include/generic-glibc/sys/random.h index 403123daca..274989bc47 100644 --- a/lib/libc/include/generic-glibc/sys/random.h +++ b/lib/libc/include/generic-glibc/sys/random.h @@ -1,5 +1,5 @@ /* Interfaces for obtaining random bytes. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/raw.h b/lib/libc/include/generic-glibc/sys/raw.h index 354a4058f4..e02b94223d 100644 --- a/lib/libc/include/generic-glibc/sys/raw.h +++ b/lib/libc/include/generic-glibc/sys/raw.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/reboot.h b/lib/libc/include/generic-glibc/sys/reboot.h index 1fabf2891a..da22eed122 100644 --- a/lib/libc/include/generic-glibc/sys/reboot.h +++ b/lib/libc/include/generic-glibc/sys/reboot.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/reg.h b/lib/libc/include/generic-glibc/sys/reg.h index 1a702ec561..8fddcc95ff 100644 --- a/lib/libc/include/generic-glibc/sys/reg.h +++ b/lib/libc/include/generic-glibc/sys/reg.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2023 Free Software Foundation, Inc. +/* Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/regdef.h b/lib/libc/include/generic-glibc/sys/regdef.h index b050c6cc74..a01aa7af90 100644 --- a/lib/libc/include/generic-glibc/sys/regdef.h +++ b/lib/libc/include/generic-glibc/sys/regdef.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/resource.h b/lib/libc/include/generic-glibc/sys/resource.h index ed68e25c62..e622c410d4 100644 --- a/lib/libc/include/generic-glibc/sys/resource.h +++ b/lib/libc/include/generic-glibc/sys/resource.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/rseq.h b/lib/libc/include/generic-glibc/sys/rseq.h index 66e1da2635..f9389f946b 100644 --- a/lib/libc/include/generic-glibc/sys/rseq.h +++ b/lib/libc/include/generic-glibc/sys/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences exported symbols. Linux header. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/generic-glibc/sys/select.h b/lib/libc/include/generic-glibc/sys/select.h index 28e9c7296a..4e53805974 100644 --- a/lib/libc/include/generic-glibc/sys/select.h +++ b/lib/libc/include/generic-glibc/sys/select.h @@ -1,5 +1,5 @@ /* `fd_set' type and related macros, and `select'/`pselect' declarations. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/sem.h b/lib/libc/include/generic-glibc/sys/sem.h index c9536e39c9..f2d76469f6 100644 --- a/lib/libc/include/generic-glibc/sys/sem.h +++ b/lib/libc/include/generic-glibc/sys/sem.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/sendfile.h b/lib/libc/include/generic-glibc/sys/sendfile.h index 5ff2124bd6..11b4364286 100644 --- a/lib/libc/include/generic-glibc/sys/sendfile.h +++ b/lib/libc/include/generic-glibc/sys/sendfile.h @@ -1,5 +1,5 @@ /* sendfile -- copy data directly from one file descriptor to another - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/shm.h b/lib/libc/include/generic-glibc/sys/shm.h index 180b0ac4f9..7de7c55545 100644 --- a/lib/libc/include/generic-glibc/sys/shm.h +++ b/lib/libc/include/generic-glibc/sys/shm.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/signalfd.h b/lib/libc/include/generic-glibc/sys/signalfd.h index dc3a1837a1..819e00474b 100644 --- a/lib/libc/include/generic-glibc/sys/signalfd.h +++ b/lib/libc/include/generic-glibc/sys/signalfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/single_threaded.h b/lib/libc/include/generic-glibc/sys/single_threaded.h index 9a8d7e3b26..0c44b234e3 100644 --- a/lib/libc/include/generic-glibc/sys/single_threaded.h +++ b/lib/libc/include/generic-glibc/sys/single_threaded.h @@ -1,5 +1,5 @@ /* Support for single-thread optimizations. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/socket.h b/lib/libc/include/generic-glibc/sys/socket.h index 95191e5a72..a57bd7b2c0 100644 --- a/lib/libc/include/generic-glibc/sys/socket.h +++ b/lib/libc/include/generic-glibc/sys/socket.h @@ -1,5 +1,5 @@ /* Declarations of socket constants, types, and functions. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/stat.h b/lib/libc/include/generic-glibc/sys/stat.h index ff14795887..bc4671341a 100644 --- a/lib/libc/include/generic-glibc/sys/stat.h +++ b/lib/libc/include/generic-glibc/sys/stat.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -251,7 +251,7 @@ extern int __REDIRECT_NTH (fstat64, (int __fd, struct stat64 *__buf), __nonnull ((2)); # else # define stat64 __stat64_time64 -# define fstat64 __fstat64_time +# define fstat64 __fstat64_time64 # endif # endif #endif diff --git a/lib/libc/include/generic-glibc/sys/statfs.h b/lib/libc/include/generic-glibc/sys/statfs.h index 325983a5ff..d975a113ec 100644 --- a/lib/libc/include/generic-glibc/sys/statfs.h +++ b/lib/libc/include/generic-glibc/sys/statfs.h @@ -1,5 +1,5 @@ /* Definitions for getting information about a filesystem. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/statvfs.h b/lib/libc/include/generic-glibc/sys/statvfs.h index 69cf6c56a2..2fb4d3587b 100644 --- a/lib/libc/include/generic-glibc/sys/statvfs.h +++ b/lib/libc/include/generic-glibc/sys/statvfs.h @@ -1,5 +1,5 @@ /* Definitions for getting information about a filesystem. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/swap.h b/lib/libc/include/generic-glibc/sys/swap.h index 69de00829b..437c34657b 100644 --- a/lib/libc/include/generic-glibc/sys/swap.h +++ b/lib/libc/include/generic-glibc/sys/swap.h @@ -1,5 +1,5 @@ /* Calls to enable and disable swapping on specified locations. Linux version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/syscall.h b/lib/libc/include/generic-glibc/sys/syscall.h index 30dfa08d86..25390026d6 100644 --- a/lib/libc/include/generic-glibc/sys/syscall.h +++ b/lib/libc/include/generic-glibc/sys/syscall.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/sysinfo.h b/lib/libc/include/generic-glibc/sys/sysinfo.h index 6af957b1ef..ddf34b3ba1 100644 --- a/lib/libc/include/generic-glibc/sys/sysinfo.h +++ b/lib/libc/include/generic-glibc/sys/sysinfo.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/sysmacros.h b/lib/libc/include/generic-glibc/sys/sysmacros.h index fe90fa086c..2c700aba23 100644 --- a/lib/libc/include/generic-glibc/sys/sysmacros.h +++ b/lib/libc/include/generic-glibc/sys/sysmacros.h @@ -1,5 +1,5 @@ /* Definitions of macros to access `dev_t' values. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/sysmips.h b/lib/libc/include/generic-glibc/sys/sysmips.h index 05b5b11961..288e16c71f 100644 --- a/lib/libc/include/generic-glibc/sys/sysmips.h +++ b/lib/libc/include/generic-glibc/sys/sysmips.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/tas.h b/lib/libc/include/generic-glibc/sys/tas.h index c8fa82ba2a..fdb832c7bd 100644 --- a/lib/libc/include/generic-glibc/sys/tas.h +++ b/lib/libc/include/generic-glibc/sys/tas.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2000-2023 Free Software Foundation, Inc. +/* Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/time.h b/lib/libc/include/generic-glibc/sys/time.h index ffee313631..f526bfcb05 100644 --- a/lib/libc/include/generic-glibc/sys/time.h +++ b/lib/libc/include/generic-glibc/sys/time.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/timeb.h b/lib/libc/include/generic-glibc/sys/timeb.h index 084dfb5b7b..d35dc06a4a 100644 --- a/lib/libc/include/generic-glibc/sys/timeb.h +++ b/lib/libc/include/generic-glibc/sys/timeb.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1994-2023 Free Software Foundation, Inc. +/* Copyright (C) 1994-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/timerfd.h b/lib/libc/include/generic-glibc/sys/timerfd.h index b64ffabcab..6f934dd44d 100644 --- a/lib/libc/include/generic-glibc/sys/timerfd.h +++ b/lib/libc/include/generic-glibc/sys/timerfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2008-2023 Free Software Foundation, Inc. +/* Copyright (C) 2008-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/times.h b/lib/libc/include/generic-glibc/sys/times.h index 0170b4e080..60d32cd29a 100644 --- a/lib/libc/include/generic-glibc/sys/times.h +++ b/lib/libc/include/generic-glibc/sys/times.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/timex.h b/lib/libc/include/generic-glibc/sys/timex.h index 2754e0392f..67329909ea 100644 --- a/lib/libc/include/generic-glibc/sys/timex.h +++ b/lib/libc/include/generic-glibc/sys/timex.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/types.h b/lib/libc/include/generic-glibc/sys/types.h index 5a2bb5d824..2253d344ab 100644 --- a/lib/libc/include/generic-glibc/sys/types.h +++ b/lib/libc/include/generic-glibc/sys/types.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/ucontext.h b/lib/libc/include/generic-glibc/sys/ucontext.h index ebd085c568..f8c078b50c 100644 --- a/lib/libc/include/generic-glibc/sys/ucontext.h +++ b/lib/libc/include/generic-glibc/sys/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/generic-glibc/sys/uio.h b/lib/libc/include/generic-glibc/sys/uio.h index f01744a0b7..5d7d7d1549 100644 --- a/lib/libc/include/generic-glibc/sys/uio.h +++ b/lib/libc/include/generic-glibc/sys/uio.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/un.h b/lib/libc/include/generic-glibc/sys/un.h index bf87d46495..96b15615af 100644 --- a/lib/libc/include/generic-glibc/sys/un.h +++ b/lib/libc/include/generic-glibc/sys/un.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/user.h b/lib/libc/include/generic-glibc/sys/user.h index 128ccc11a6..5451ca5eea 100644 --- a/lib/libc/include/generic-glibc/sys/user.h +++ b/lib/libc/include/generic-glibc/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/utsname.h b/lib/libc/include/generic-glibc/sys/utsname.h index 2e840965c8..9c6b74af89 100644 --- a/lib/libc/include/generic-glibc/sys/utsname.h +++ b/lib/libc/include/generic-glibc/sys/utsname.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/vlimit.h b/lib/libc/include/generic-glibc/sys/vlimit.h index 25bf526796..1c82a77018 100644 --- a/lib/libc/include/generic-glibc/sys/vlimit.h +++ b/lib/libc/include/generic-glibc/sys/vlimit.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/vm86.h b/lib/libc/include/generic-glibc/sys/vm86.h index 474c120bb0..3f2030b0f1 100644 --- a/lib/libc/include/generic-glibc/sys/vm86.h +++ b/lib/libc/include/generic-glibc/sys/vm86.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/wait.h b/lib/libc/include/generic-glibc/sys/wait.h index 8437391ea2..b460b76439 100644 --- a/lib/libc/include/generic-glibc/sys/wait.h +++ b/lib/libc/include/generic-glibc/sys/wait.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/sys/xattr.h b/lib/libc/include/generic-glibc/sys/xattr.h index ba6cf21f6c..c597cf7b28 100644 --- a/lib/libc/include/generic-glibc/sys/xattr.h +++ b/lib/libc/include/generic-glibc/sys/xattr.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/tar.h b/lib/libc/include/generic-glibc/tar.h index f98994ec58..ca96ff4cde 100644 --- a/lib/libc/include/generic-glibc/tar.h +++ b/lib/libc/include/generic-glibc/tar.h @@ -1,5 +1,5 @@ /* Extended tar format from POSIX.1. - Copyright (C) 1992-2023 Free Software Foundation, Inc. + Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/termios.h b/lib/libc/include/generic-glibc/termios.h index 5d42f1aeb0..44dd5a72b2 100644 --- a/lib/libc/include/generic-glibc/termios.h +++ b/lib/libc/include/generic-glibc/termios.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/tgmath.h b/lib/libc/include/generic-glibc/tgmath.h index c7378a1f75..e799b375d2 100644 --- a/lib/libc/include/generic-glibc/tgmath.h +++ b/lib/libc/include/generic-glibc/tgmath.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/thread_db.h b/lib/libc/include/generic-glibc/thread_db.h index 51405a6088..abd5c27249 100644 --- a/lib/libc/include/generic-glibc/thread_db.h +++ b/lib/libc/include/generic-glibc/thread_db.h @@ -1,5 +1,5 @@ /* thread_db.h -- interface to libthread_db.so library for debugging -lpthread - Copyright (C) 1999-2023 Free Software Foundation, Inc. + Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/threads.h b/lib/libc/include/generic-glibc/threads.h index 11e0f1949b..2d3c129da5 100644 --- a/lib/libc/include/generic-glibc/threads.h +++ b/lib/libc/include/generic-glibc/threads.h @@ -1,5 +1,5 @@ /* ISO C11 Standard: 7.26 - Thread support library . - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/time.h b/lib/libc/include/generic-glibc/time.h index d1da751b91..6ac5cc738d 100644 --- a/lib/libc/include/generic-glibc/time.h +++ b/lib/libc/include/generic-glibc/time.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/uchar.h b/lib/libc/include/generic-glibc/uchar.h index f0ce22f0da..0c14a4b64c 100644 --- a/lib/libc/include/generic-glibc/uchar.h +++ b/lib/libc/include/generic-glibc/uchar.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2011-2023 Free Software Foundation, Inc. +/* Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/ucontext.h b/lib/libc/include/generic-glibc/ucontext.h index 808dfd76cc..e74a00422e 100644 --- a/lib/libc/include/generic-glibc/ucontext.h +++ b/lib/libc/include/generic-glibc/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/ulimit.h b/lib/libc/include/generic-glibc/ulimit.h index 0c9390dade..073b0291cc 100644 --- a/lib/libc/include/generic-glibc/ulimit.h +++ b/lib/libc/include/generic-glibc/ulimit.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/unistd.h b/lib/libc/include/generic-glibc/unistd.h index 5a1e9856da..8688f6c445 100644 --- a/lib/libc/include/generic-glibc/unistd.h +++ b/lib/libc/include/generic-glibc/unistd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -1155,7 +1155,10 @@ extern int fdatasync (int __fildes); user database. SALT selects the one-way function to use, and ensures that no two users' hashes are the same, even if they use the same passphrase. The return value points to static storage - which will be overwritten by the next call to crypt. */ + which will be overwritten by the next call to crypt. + + This declaration is deprecated; applications should include + instead. */ extern char *crypt (const char *__key, const char *__salt) __THROW __nonnull ((1, 2)); #endif diff --git a/lib/libc/include/generic-glibc/utime.h b/lib/libc/include/generic-glibc/utime.h index 78b8090138..e0ed75cb7f 100644 --- a/lib/libc/include/generic-glibc/utime.h +++ b/lib/libc/include/generic-glibc/utime.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/utmp.h b/lib/libc/include/generic-glibc/utmp.h index d0629dc44c..39b89320a1 100644 --- a/lib/libc/include/generic-glibc/utmp.h +++ b/lib/libc/include/generic-glibc/utmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1993-2023 Free Software Foundation, Inc. +/* Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/utmpx.h b/lib/libc/include/generic-glibc/utmpx.h index 923c678925..a30d48a8dd 100644 --- a/lib/libc/include/generic-glibc/utmpx.h +++ b/lib/libc/include/generic-glibc/utmpx.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/values.h b/lib/libc/include/generic-glibc/values.h index a5712b9daf..356e0c5829 100644 --- a/lib/libc/include/generic-glibc/values.h +++ b/lib/libc/include/generic-glibc/values.h @@ -1,5 +1,5 @@ /* Old compatibility names for and constants. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/wchar.h b/lib/libc/include/generic-glibc/wchar.h index f0b80c8bb1..5ce50b40eb 100644 --- a/lib/libc/include/generic-glibc/wchar.h +++ b/lib/libc/include/generic-glibc/wchar.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/wctype.h b/lib/libc/include/generic-glibc/wctype.h index 24457c2000..f8afdd9589 100644 --- a/lib/libc/include/generic-glibc/wctype.h +++ b/lib/libc/include/generic-glibc/wctype.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/generic-glibc/wordexp.h b/lib/libc/include/generic-glibc/wordexp.h index 1d3ddfc0b1..756963217b 100644 --- a/lib/libc/include/generic-glibc/wordexp.h +++ b/lib/libc/include/generic-glibc/wordexp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/endianness.h b/lib/libc/include/loongarch64-linux-gnu/bits/endianness.h new file mode 100644 index 0000000000..989463fb5d --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/endianness.h @@ -0,0 +1,11 @@ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 + +#ifndef _BITS_ENDIAN_H +#error "Never use directly; include instead." +#endif + +/* LoongArch is little-endian. */ +#define __BYTE_ORDER __LITTLE_ENDIAN + +#endif /* bits/endianness.h */ \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/fcntl.h b/lib/libc/include/loongarch64-linux-gnu/bits/fcntl.h new file mode 100644 index 0000000000..bbbde65d43 --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/fcntl.h @@ -0,0 +1,61 @@ +/* O_*, F_*, FD_* bit values for the generic Linux/LoongArch ABI. + Copyright (C) 2022-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _FCNTL_H +#error "Never use directly; include instead." +#endif + +#include + +/* In 64-bit ISA files are always with 64bit off_t and F_*LK64 are the same as + non-64-bit versions. It will need to be revised for 128-bit. */ +#if __WORDSIZE == 64 +#define __O_LARGEFILE 0 + +#define F_GETLK64 5 /* Get record locking info. */ +#define F_SETLK64 6 /* Set record locking info (non-blocking). */ +#define F_SETLKW64 7 /* Set record locking info (blocking). */ +#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 + +/* Include generic Linux declarations. */ +#include \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/fenv.h b/lib/libc/include/loongarch64-linux-gnu/bits/fenv.h new file mode 100644 index 0000000000..63e56faf1b --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/fenv.h @@ -0,0 +1,90 @@ +/* Floating point environment. + Copyright (C) 2022-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _FENV_H +#error "Never use directly; include instead." +#endif + +/* Define bits representing the exception. We use the bit positions + of the appropriate bits in the FPU control word. */ +enum +{ + FE_INEXACT = +#define FE_INEXACT 0x010000 + FE_INEXACT, + FE_UNDERFLOW = +#define FE_UNDERFLOW 0x020000 + FE_UNDERFLOW, + FE_OVERFLOW = +#define FE_OVERFLOW 0x040000 + FE_OVERFLOW, + FE_DIVBYZERO = +#define FE_DIVBYZERO 0x080000 + FE_DIVBYZERO, + FE_INVALID = +#define FE_INVALID 0x100000 + FE_INVALID, +}; + +#define FE_ALL_EXCEPT \ + (FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) + +/* The LoongArch FPU supports all of the four defined rounding modes. We + use again the bit positions in the FPU control word as the values + for the appropriate macros. */ +enum +{ + FE_TONEAREST = +#define FE_TONEAREST 0x000 + FE_TONEAREST, + FE_TOWARDZERO = +#define FE_TOWARDZERO 0x100 + FE_TOWARDZERO, + FE_UPWARD = +#define FE_UPWARD 0x200 + FE_UPWARD, + FE_DOWNWARD = +#define FE_DOWNWARD 0x300 + FE_DOWNWARD +}; + +/* Type representing exception flags. */ +typedef unsigned int fexcept_t; + +/* Type representing floating-point environment. This function corresponds + to the layout of the block written by the `fstenv'. */ +typedef struct +{ + unsigned int __fp_control_register; +} fenv_t; + +/* If the default argument is used we use this value. */ +#define FE_DFL_ENV ((const fenv_t *) -1) + +#ifdef __USE_GNU +/* Floating-point environment where none of the exception is masked. */ +#define FE_NOMASK_ENV ((const fenv_t *) -257) +#endif + +#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) +/* Type representing floating-point control modes. */ +typedef unsigned int femode_t; + +/* Default floating-point control modes. */ +#define FE_DFL_MODE ((const femode_t *) -1L) +#endif \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/floatn.h b/lib/libc/include/loongarch64-linux-gnu/bits/floatn.h new file mode 100644 index 0000000000..20c1af5c2e --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/floatn.h @@ -0,0 +1,97 @@ +/* Macros to control TS 18661-3 glibc features on ldbl-128 platforms. + Copyright (C) 2017-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_FLOATN_H +#define _BITS_FLOATN_H + +#include +#include + +/* Defined to 1 if the current compiler invocation provides a + floating-point type with the IEEE 754 binary128 format, and this + glibc includes corresponding *f128 interfaces for it. */ +#ifndef __NO_LONG_DOUBLE_MATH +# define __HAVE_FLOAT128 1 +#else +/* glibc does not support _Float128 for platforms where long double is + normally binary128 when building with long double as binary64. + GCC's default for supported scalar modes does not support it either + in that case. */ +# define __HAVE_FLOAT128 0 +#endif + +/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct + from the default float, double and long double types in this glibc. */ +#define __HAVE_DISTINCT_FLOAT128 0 + +/* Defined to 1 if the current compiler invocation provides a + floating-point type with the right format for _Float64x, and this + glibc includes corresponding *f64x interfaces for it. */ +#define __HAVE_FLOAT64X __HAVE_FLOAT128 + +/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format + of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has + the format of _Float128, which must be different from that of long + double. */ +#define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128 + +#ifndef __ASSEMBLER__ + +/* Defined to concatenate the literal suffix to be used with _Float128 + types, if __HAVE_FLOAT128 is 1. */ +# if __HAVE_FLOAT128 +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +/* The literal suffix f128 exists only since GCC 7.0. */ +# define __f128(x) x##l +# else +# define __f128(x) x##f128 +# endif +# endif + +/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ +# if __HAVE_FLOAT128 +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +# define __CFLOAT128 _Complex long double +# else +# define __CFLOAT128 _Complex _Float128 +# endif +# endif + +/* The remaining of this file provides support for older compilers. */ +# if __HAVE_FLOAT128 + +/* The type _Float128 exists only since GCC 7.0. */ +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +typedef long double _Float128; +# endif + +/* Various built-in functions do not exist before GCC 7.0. */ +# if !__GNUC_PREREQ (7, 0) +# define __builtin_huge_valf128() (__builtin_huge_vall ()) +# define __builtin_inff128() (__builtin_infl ()) +# define __builtin_nanf128(x) (__builtin_nanl (x)) +# define __builtin_nansf128(x) (__builtin_nansl (x)) +# endif + +# endif + +#endif /* !__ASSEMBLER__. */ + +#include + +#endif /* _BITS_FLOATN_H */ \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/hwcap.h b/lib/libc/include/loongarch64-linux-gnu/bits/hwcap.h new file mode 100644 index 0000000000..3b3d1ad463 --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/hwcap.h @@ -0,0 +1,38 @@ +/* Defines for bits in AT_HWCAP. LoongArch64 Linux version. + Copyright (C) 2022-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#if !defined (_SYS_AUXV_H) +# error "Never include directly; use instead." +#endif + +/* The following must match the kernel's . */ +/* HWCAP flags */ +#define HWCAP_LOONGARCH_CPUCFG (1 << 0) +#define HWCAP_LOONGARCH_LAM (1 << 1) +#define HWCAP_LOONGARCH_UAL (1 << 2) +#define HWCAP_LOONGARCH_FPU (1 << 3) +#define HWCAP_LOONGARCH_LSX (1 << 4) +#define HWCAP_LOONGARCH_LASX (1 << 5) +#define HWCAP_LOONGARCH_CRC32 (1 << 6) +#define HWCAP_LOONGARCH_COMPLEX (1 << 7) +#define HWCAP_LOONGARCH_CRYPTO (1 << 8) +#define HWCAP_LOONGARCH_LVZ (1 << 9) +#define HWCAP_LOONGARCH_LBT_X86 (1 << 10) +#define HWCAP_LOONGARCH_LBT_ARM (1 << 11) +#define HWCAP_LOONGARCH_LBT_MIPS (1 << 12) +#define HWCAP_LOONGARCH_PTW (1 << 13) \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/link.h b/lib/libc/include/loongarch64-linux-gnu/bits/link.h new file mode 100644 index 0000000000..821a54fe54 --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/link.h @@ -0,0 +1,76 @@ +/* Machine-specific declarations for dynamic linker interface. + Copyright (C) 2022-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _LINK_H +#error "Never include directly; use instead." +#endif + +#ifndef __loongarch_soft_float +typedef float La_loongarch_vr + __attribute__ ((__vector_size__ (16), __aligned__ (16))); +typedef float La_loongarch_xr + __attribute__ ((__vector_size__ (32), __aligned__ (16))); + +typedef union +{ + double fpreg[4]; + La_loongarch_vr vr[2]; + La_loongarch_xr xr[1]; +} La_loongarch_vector __attribute__ ((__aligned__ (16))); +#endif + +typedef struct La_loongarch_regs +{ + unsigned long int lr_reg[8]; /* a0 - a7 */ +#ifndef __loongarch_soft_float + La_loongarch_vector lr_vec[8]; /* fa0 - fa7 or vr0 - vr7 or xr0 - xr7*/ +#endif + unsigned long int lr_ra; + unsigned long int lr_sp; +} La_loongarch_regs; + +/* Return values for calls from PLT on LoongArch. */ +typedef struct La_loongarch_retval +{ + unsigned long int lrv_a0; + unsigned long int lrv_a1; +#ifndef __loongarch_soft_float + La_loongarch_vector lrv_vec0; + La_loongarch_vector lrv_vec1; +#endif +} La_loongarch_retval; + +__BEGIN_DECLS + +extern ElfW (Addr) la_loongarch_gnu_pltenter (ElfW (Sym) *__sym, + unsigned int __ndx, + uintptr_t *__refcook, + uintptr_t *__defcook, + La_loongarch_regs *__regs, + unsigned int *__flags, + const char *__symname, + long int *__framesizep); +extern unsigned int la_loongarch_gnu_pltexit (ElfW (Sym) *__sym, + unsigned int __ndx, + uintptr_t *__refcook, + uintptr_t *__defcook, + const La_loongarch_regs *__inregs, + La_loongarch_retval *__outregs, + const char *__symname); + +__END_DECLS \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/link_lavcurrent.h b/lib/libc/include/loongarch64-linux-gnu/bits/link_lavcurrent.h new file mode 100644 index 0000000000..36d637cd1f --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/link_lavcurrent.h @@ -0,0 +1,25 @@ +/* Data structure for communication from the run-time dynamic linker for + loaded ELF shared objects. LAV_CURRENT definition. + Copyright (C) 2023-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _LINK_H +# error "Never include directly; use instead." +#endif + +/* Version numbers for la_version handshake interface. */ +#define LAV_CURRENT 3 \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/long-double.h b/lib/libc/include/loongarch64-linux-gnu/bits/long-double.h new file mode 100644 index 0000000000..a83f6c746f --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/long-double.h @@ -0,0 +1,21 @@ +/* Properties of long double type. ldbl-128 version. + Copyright (C) 2016-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* long double is distinct from double, so there is nothing to + define here. */ +#define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/procfs.h b/lib/libc/include/loongarch64-linux-gnu/bits/procfs.h new file mode 100644 index 0000000000..4371fd0a8f --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/procfs.h @@ -0,0 +1,52 @@ +/* Types for registers for sys/procfs.h. + Copyright (C) 2022-2024 Free Software Foundation, Inc. + + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _SYS_PROCFS_H +# error "Never include directly; use instead." +#endif + +/* Type for a general-purpose register. */ +typedef __uint64_t elf_greg_t; + +/* And the whole bunch of them. We could have used `struct + pt_regs' directly in the typedef, but tradition says that + the register set is an array, which does have some peculiar + semantics, so leave it that way. */ +#define ELF_NGREG (sizeof (struct user_regs_struct) / sizeof (elf_greg_t)) +typedef elf_greg_t elf_gregset_t[ELF_NGREG]; + +#define ELF_NFPREG 34 /* 32 FPRs + 8-byte byte-vec for fcc + 4-byte FCR */ +typedef union +{ + double d; + float f; +} elf_fpreg_t; +typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG]; + +typedef union +{ + double d[2]; + float f[4]; +} __attribute__ ((__aligned__ (16))) elf_lsxregset_t[32]; + +typedef union +{ + double d[4]; + float f[8]; +} __attribute__ ((__aligned__ (32))) elf_lasxregset_t[32]; \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/pthread_stack_min.h b/lib/libc/include/loongarch64-linux-gnu/bits/pthread_stack_min.h new file mode 100644 index 0000000000..4a05d0d8a5 --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/pthread_stack_min.h @@ -0,0 +1,20 @@ +/* Definition of PTHREAD_STACK_MIN. LoongArch Linux version. + Copyright (C) 2022-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2.1 of the + License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +/* Minimum size for a thread. At least two pages with 64k pages. */ +#define PTHREAD_STACK_MIN 131072 \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/rseq.h b/lib/libc/include/loongarch64-linux-gnu/bits/rseq.h new file mode 100644 index 0000000000..5ea695ad1c --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/rseq.h @@ -0,0 +1,29 @@ +/* Restartable Sequences architecture header. Stub version. + Copyright (C) 2021-2024 Free Software Foundation, Inc. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SYS_RSEQ_H +# error "Never use directly; include instead." +#endif + +/* RSEQ_SIG is a signature required before each abort handler code. + + It is a 32-bit value that maps to actual architecture code compiled + into applications and libraries. It needs to be defined for each + architecture. When choosing this value, it needs to be taken into + account that generating invalid instructions may have ill effects on + tools like objdump, and may also have impact on the CPU speculative + execution efficiency in some cases. */ \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/setjmp.h b/lib/libc/include/loongarch64-linux-gnu/bits/setjmp.h new file mode 100644 index 0000000000..59214222c8 --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/setjmp.h @@ -0,0 +1,42 @@ +/* Define the machine-dependent type `jmp_buf'. + Copyright (C) 2022-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _LOONGARCH_BITS_SETJMP_H +#define _LOONGARCH_BITS_SETJMP_H + +typedef struct __jmp_buf_internal_tag +{ + /* Program counter. */ + long int __pc; + /* Stack pointer. */ + long int __sp; + /* Reserved */ + long int __x; + /* Frame pointer. */ + long int __fp; + /* Callee-saved registers. */ + long int __regs[9]; + +#ifndef __loongarch_soft_float + /* Callee-saved floating point registers. */ + double __fpregs[8]; +#endif + +} __jmp_buf[1]; + +#endif /* _LOONGARCH_BITS_SETJMP_H */ \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/shmlba.h b/lib/libc/include/loongarch64-linux-gnu/bits/shmlba.h new file mode 100644 index 0000000000..166f19c016 --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/shmlba.h @@ -0,0 +1,24 @@ +/* Define SHMLBA. LoongArch version. + Copyright (C) 2023-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SYS_SHM_H +# error "Never use directly; include instead." +#endif + +/* Segment low boundary address multiple. */ +#define SHMLBA 0x10000 \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/sigstack.h b/lib/libc/include/loongarch64-linux-gnu/bits/sigstack.h new file mode 100644 index 0000000000..af2933a8ce --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/sigstack.h @@ -0,0 +1,32 @@ +/* sigstack, sigaltstack definitions. + Copyright (C) 2022-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_SIGSTACK_H +#define _BITS_SIGSTACK_H 1 + +#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H +# error "Never include this file directly. Use instead" +#endif + +/* Minimum stack size for a signal handler. */ +#define MINSIGSTKSZ 4096 + +/* System default stack size. */ +#define SIGSTKSZ 16384 + +#endif /* bits/sigstack.h */ \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/struct_stat.h b/lib/libc/include/loongarch64-linux-gnu/bits/struct_stat.h new file mode 100644 index 0000000000..c8e2d78b57 --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/struct_stat.h @@ -0,0 +1,127 @@ +/* Definition for struct stat. + Copyright (C) 2020-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#if !defined _SYS_STAT_H && !defined _FCNTL_H +# error "Never include directly; use instead." +#endif + +#ifndef _BITS_STRUCT_STAT_H +#define _BITS_STRUCT_STAT_H 1 + +#include +#include + +#if defined __USE_FILE_OFFSET64 +# define __field64(type, type64, name) type64 name +#elif __WORDSIZE == 64 || defined __INO_T_MATCHES_INO64_T +# if defined __INO_T_MATCHES_INO64_T && !defined __OFF_T_MATCHES_OFF64_T +# error "ino_t and off_t must both be the same type" +# endif +# define __field64(type, type64, name) type name +#elif __BYTE_ORDER == __LITTLE_ENDIAN +# define __field64(type, type64, name) \ + type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad +#else +# define __field64(type, type64, name) \ + int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name +#endif + +struct stat + { + __dev_t st_dev; /* Device. */ + __field64(__ino_t, __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. */ + __dev_t __pad1; + __field64(__off_t, __off64_t, st_size); /* Size of file, in bytes. */ + __blksize_t st_blksize; /* Optimal block size for I/O. */ + int __pad2; + __field64(__blkcnt_t, __blkcnt64_t, st_blocks); /* 512-byte blocks */ +#ifdef __USE_XOPEN2K8 + /* Nanosecond resolution timestamps are stored in a format + equivalent to 'struct timespec'. This is the type used + whenever possible but the Unix namespace rules do not allow the + identifier 'timespec' to appear in the header. + Therefore we have to handle the use of this header in strictly + standard-compliant sources special. */ + struct timespec st_atim; /* Time of last access. */ + struct timespec st_mtim; /* Time of last modification. */ + struct timespec st_ctim; /* Time of last status change. */ +# define st_atime st_atim.tv_sec /* Backward compatibility. */ +# define st_mtime st_mtim.tv_sec +# define st_ctime st_ctim.tv_sec +#else + __time_t st_atime; /* Time of last access. */ + unsigned long int st_atimensec; /* Nscecs of last access. */ + __time_t st_mtime; /* Time of last modification. */ + unsigned long int st_mtimensec; /* Nsecs of last modification. */ + __time_t st_ctime; /* Time of last status change. */ + unsigned long int st_ctimensec; /* Nsecs of last status change. */ +#endif + int __glibc_reserved[2]; + }; + +#undef __field64 + +#ifdef __USE_LARGEFILE64 +struct stat64 + { + __dev_t st_dev; /* Device. */ + __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. */ + __dev_t __pad1; + __off64_t st_size; /* Size of file, in bytes. */ + __blksize_t st_blksize; /* Optimal block size for I/O. */ + int __pad2; + __blkcnt64_t st_blocks; /* Nr. 512-byte blocks allocated. */ +#ifdef __USE_XOPEN2K8 + /* Nanosecond resolution timestamps are stored in a format + equivalent to 'struct timespec'. This is the type used + whenever possible but the Unix namespace rules do not allow the + identifier 'timespec' to appear in the header. + Therefore we have to handle the use of this header in strictly + standard-compliant sources special. */ + struct timespec st_atim; /* Time of last access. */ + struct timespec st_mtim; /* Time of last modification. */ + struct timespec st_ctim; /* Time of last status change. */ +#else + __time_t st_atime; /* Time of last access. */ + unsigned long int st_atimensec; /* Nscecs of last access. */ + __time_t st_mtime; /* Time of last modification. */ + unsigned long int st_mtimensec; /* Nsecs of last modification. */ + __time_t st_ctime; /* Time of last status change. */ + unsigned long int st_ctimensec; /* Nsecs of last status change. */ +#endif + int __glibc_reserved[2]; + }; +#endif + +/* Tell code we have these members. */ +#define _STATBUF_ST_BLKSIZE +#define _STATBUF_ST_RDEV +/* Nanosecond resolution time values are supported. */ +#define _STATBUF_ST_NSEC + +#endif /* _BITS_STRUCT_STAT_H */ \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/timesize.h b/lib/libc/include/loongarch64-linux-gnu/bits/timesize.h new file mode 100644 index 0000000000..17f828ecfe --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/timesize.h @@ -0,0 +1,20 @@ +/* Bit size of the time_t type at glibc build time, general case. + Copyright (C) 2018-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* Size in bits of the 'time_t' type of the default ABI. */ +#define __TIMESIZE 64 \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/typesizes.h b/lib/libc/include/loongarch64-linux-gnu/bits/typesizes.h new file mode 100644 index 0000000000..d875caa94e --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/typesizes.h @@ -0,0 +1,107 @@ +/* bits/typesizes.h -- underlying types for *_t. For the generic Linux ABI. + Copyright (C) 2011-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _BITS_TYPES_H +# error "Never include directly; use instead." +#endif + +#ifndef _BITS_TYPESIZES_H +#define _BITS_TYPESIZES_H 1 + +/* See for the meaning of these macros. This file exists so + that need not vary across different GNU platforms. */ +#if __TIMESIZE == 64 && __WORDSIZE == 32 +/* These are the "new" y2038 types defined for architectures added after + the 5.1 kernel. */ +# define __INO_T_TYPE __UQUAD_TYPE +# define __OFF_T_TYPE __SQUAD_TYPE +# define __RLIM_T_TYPE __UQUAD_TYPE +# define __BLKCNT_T_TYPE __SQUAD_TYPE +# define __FSBLKCNT_T_TYPE __UQUAD_TYPE +# define __FSFILCNT_T_TYPE __UQUAD_TYPE +# define __TIME_T_TYPE __SQUAD_TYPE +# define __SUSECONDS_T_TYPE __SQUAD_TYPE +#else +# define __INO_T_TYPE __ULONGWORD_TYPE +# define __OFF_T_TYPE __SLONGWORD_TYPE +# define __RLIM_T_TYPE __ULONGWORD_TYPE +# define __BLKCNT_T_TYPE __SLONGWORD_TYPE +# define __FSBLKCNT_T_TYPE __ULONGWORD_TYPE +# define __FSFILCNT_T_TYPE __ULONGWORD_TYPE +# define __TIME_T_TYPE __SLONGWORD_TYPE +# define __SUSECONDS_T_TYPE __SLONGWORD_TYPE +#endif + +#define __DEV_T_TYPE __UQUAD_TYPE +#define __UID_T_TYPE __U32_TYPE +#define __GID_T_TYPE __U32_TYPE +#define __INO64_T_TYPE __UQUAD_TYPE +#define __MODE_T_TYPE __U32_TYPE +#define __NLINK_T_TYPE __U32_TYPE +#define __OFF64_T_TYPE __SQUAD_TYPE +#define __PID_T_TYPE __S32_TYPE +#define __RLIM64_T_TYPE __UQUAD_TYPE +#define __BLKCNT64_T_TYPE __SQUAD_TYPE +#define __FSBLKCNT64_T_TYPE __UQUAD_TYPE +#define __FSFILCNT64_T_TYPE __UQUAD_TYPE +#define __FSWORD_T_TYPE __SWORD_TYPE +#define __ID_T_TYPE __U32_TYPE +#define __CLOCK_T_TYPE __SLONGWORD_TYPE +#define __USECONDS_T_TYPE __U32_TYPE +#define __SUSECONDS64_T_TYPE __SQUAD_TYPE +#define __DADDR_T_TYPE __S32_TYPE +#define __KEY_T_TYPE __S32_TYPE +#define __CLOCKID_T_TYPE __S32_TYPE +#define __TIMER_T_TYPE void * +#define __BLKSIZE_T_TYPE __S32_TYPE +#define __FSID_T_TYPE struct { int __val[2]; } +#define __SSIZE_T_TYPE __SWORD_TYPE +#define __SYSCALL_SLONG_TYPE __SLONGWORD_TYPE +#define __SYSCALL_ULONG_TYPE __ULONGWORD_TYPE +#define __CPU_MASK_TYPE __ULONGWORD_TYPE + +#if defined __LP64__ || (__TIMESIZE == 64 && __WORDSIZE == 32) +/* Tell the libc code that off_t and off64_t are actually the same type + for all ABI purposes, even if possibly expressed as different base types + for C type-checking purposes. */ +# define __OFF_T_MATCHES_OFF64_T 1 + +/* Same for ino_t and ino64_t. */ +# define __INO_T_MATCHES_INO64_T 1 + +/* And for __rlim_t and __rlim64_t. */ +# define __RLIM_T_MATCHES_RLIM64_T 1 + +/* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ +# define __STATFS_MATCHES_STATFS64 1 + +/* And for getitimer, setitimer and rusage */ +# define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 (__WORDSIZE == 64) +#else +# define __RLIM_T_MATCHES_RLIM64_T 0 + +# define __STATFS_MATCHES_STATFS64 0 + +# define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 +#endif + +/* Number of descriptors that can fit in an `fd_set'. */ +#define __FD_SETSIZE 1024 + + +#endif /* bits/typesizes.h */ \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/bits/wordsize.h b/lib/libc/include/loongarch64-linux-gnu/bits/wordsize.h new file mode 100644 index 0000000000..98996fdf03 --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/bits/wordsize.h @@ -0,0 +1,19 @@ +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#define __WORDSIZE 64 +#define __WORDSIZE_TIME64_COMPAT32 0 \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/fpu_control.h b/lib/libc/include/loongarch64-linux-gnu/fpu_control.h new file mode 100644 index 0000000000..815ebcc78b --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/fpu_control.h @@ -0,0 +1,119 @@ +/* FPU control word bits. + Copyright (C) 2022-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _FPU_CONTROL_H +#define _FPU_CONTROL_H + +/* LoongArch FPU floating point control register bits. + * + * 31-29 -> reserved (read as 0, can not changed by software) + * 28 -> cause bit for invalid exception + * 27 -> cause bit for division by zero exception + * 26 -> cause bit for overflow exception + * 25 -> cause bit for underflow exception + * 24 -> cause bit for inexact exception + * 23-21 -> reserved (read as 0, can not changed by software) + * 20 -> flag invalid exception + * 19 -> flag division by zero exception + * 18 -> flag overflow exception + * 17 -> flag underflow exception + * 16 -> flag inexact exception + * 9-8 -> rounding control + * 7-5 -> reserved (read as 0, can not changed by software) + * 4 -> enable exception for invalid exception + * 3 -> enable exception for division by zero exception + * 2 -> enable exception for overflow exception + * 1 -> enable exception for underflow exception + * 0 -> enable exception for inexact exception + * + * + * Rounding Control: + * 00 - rounding ties to even (RNE) + * 01 - rounding toward zero (RZ) + * 10 - rounding (up) toward plus infinity (RP) + * 11 - rounding (down) toward minus infinity (RM) + */ + +#include + +#ifdef __loongarch_soft_float + +#define _FPU_RESERVED 0xffffffff +#define _FPU_DEFAULT 0x00000000 +typedef unsigned int fpu_control_t; +#define _FPU_GETCW(cw) (cw) = 0 +#define _FPU_SETCW(cw) (void) (cw) +extern fpu_control_t __fpu_control; + +#else /* __loongarch_soft_float */ + +/* Masks for interrupts. */ +#define _FPU_MASK_V 0x10 /* Invalid operation */ +#define _FPU_MASK_Z 0x08 /* Division by zero */ +#define _FPU_MASK_O 0x04 /* Overflow */ +#define _FPU_MASK_U 0x02 /* Underflow */ +#define _FPU_MASK_I 0x01 /* Inexact operation */ + +/* Flush denormalized numbers to zero. */ +#define _FPU_FLUSH_TZ 0x1000000 + +/* Rounding control. */ +#define _FPU_RC_NEAREST 0x000 /* RECOMMENDED */ +#define _FPU_RC_ZERO 0x100 +#define _FPU_RC_UP 0x200 +#define _FPU_RC_DOWN 0x300 +/* Mask for rounding control. */ +#define _FPU_RC_MASK 0x300 + +#define _FPU_RESERVED 0x0 + +#define _FPU_DEFAULT 0x0 +#define _FPU_IEEE 0x1F + +/* Type of the control word. */ +typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__SI__))); + +/* Macros for accessing the hardware control word. */ +extern fpu_control_t __loongarch_fpu_getcw (void) __THROW; +extern void __loongarch_fpu_setcw (fpu_control_t) __THROW; +#define _FPU_GETCW(cw) __asm__ volatile ("movfcsr2gr %0,$r0" : "=r"(cw)) +#define _FPU_SETCW(cw) __asm__ volatile ("movgr2fcsr $r0,%0" : : "r"(cw)) + +/* Default control word set at startup. */ +extern fpu_control_t __fpu_control; + +# define _FCLASS_SNAN (1 << 0) +# define _FCLASS_QNAN (1 << 1) +# define _FCLASS_MINF (1 << 2) +# define _FCLASS_MNORM (1 << 3) +# define _FCLASS_MSUBNORM (1 << 4) +# define _FCLASS_MZERO (1 << 5) +# define _FCLASS_PINF (1 << 6) +# define _FCLASS_PNORM (1 << 7) +# define _FCLASS_PSUBNORM (1 << 8) +# define _FCLASS_PZERO (1 << 9) + +# define _FCLASS_ZERO (_FCLASS_MZERO | _FCLASS_PZERO) +# define _FCLASS_SUBNORM (_FCLASS_MSUBNORM | _FCLASS_PSUBNORM) +# define _FCLASS_NORM (_FCLASS_MNORM | _FCLASS_PNORM) +# define _FCLASS_INF (_FCLASS_MINF | _FCLASS_PINF) +# define _FCLASS_NAN (_FCLASS_SNAN | _FCLASS_QNAN) + +#endif /* __loongarch_soft_float */ + +#endif /* fpu_control.h */ \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/gnu/lib-names-lp64d.h b/lib/libc/include/loongarch64-linux-gnu/gnu/lib-names-lp64d.h new file mode 100644 index 0000000000..8f030679c8 --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/gnu/lib-names-lp64d.h @@ -0,0 +1,27 @@ +/* This file is automatically generated. */ +#ifndef __GNU_LIB_NAMES_H +# error "Never use directly; include instead." +#endif + +#define LD_LINUX_LOONGARCH_LP64D_SO "ld-linux-loongarch-lp64d.so.1" +#define LD_SO "ld-linux-loongarch-lp64d.so.1" +#define LIBANL_SO "libanl.so.1" +#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" +#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" +#define LIBC_SO "libc.so.6" +#define LIBDL_SO "libdl.so.2" +#define LIBGCC_S_SO "libgcc_s.so.1" +#define LIBMVEC_SO "libmvec.so.1" +#define LIBM_SO "libm.so.6" +#define LIBNSL_SO "libnsl.so.1" +#define LIBNSS_COMPAT_SO "libnss_compat.so.2" +#define LIBNSS_DB_SO "libnss_db.so.2" +#define LIBNSS_DNS_SO "libnss_dns.so.2" +#define LIBNSS_FILES_SO "libnss_files.so.2" +#define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" +#define LIBNSS_LDAP_SO "libnss_ldap.so.2" +#define LIBPTHREAD_SO "libpthread.so.0" +#define LIBRESOLV_SO "libresolv.so.2" +#define LIBRT_SO "librt.so.1" +#define LIBTHREAD_DB_SO "libthread_db.so.1" +#define LIBUTIL_SO "libutil.so.1" \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/gnu/lib-names.h b/lib/libc/include/loongarch64-linux-gnu/gnu/lib-names.h new file mode 100644 index 0000000000..c3eba41e09 --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/gnu/lib-names.h @@ -0,0 +1,16 @@ +/* This file is automatically generated. + It defines macros to allow user program to find the shared + library files which come as part of GNU libc. */ +#ifndef __GNU_LIB_NAMES_H +#define __GNU_LIB_NAMES_H 1 + +#include + +#if __WORDSIZE == 64 && defined __loongarch_soft_float +# include +#endif +#if __WORDSIZE == 64 && defined __loongarch_double_float +# include +#endif + +#endif /* gnu/lib-names.h */ \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/gnu/stubs-lp64d.h b/lib/libc/include/loongarch64-linux-gnu/gnu/stubs-lp64d.h new file mode 100644 index 0000000000..4c2911dd6d --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/gnu/stubs-lp64d.h @@ -0,0 +1,21 @@ +/* This file is automatically generated. + It defines a symbol `__stub_FUNCTION' for each function + in the C library which is a stub, meaning it will fail + every time called, usually setting errno to ENOSYS. */ + +#ifdef _LIBC + #error Applications may not define the macro _LIBC +#endif + +#define __stub___compat_bdflush +#define __stub___compat_create_module +#define __stub___compat_get_kernel_syms +#define __stub___compat_query_module +#define __stub___compat_uselib +#define __stub_chflags +#define __stub_fchflags +#define __stub_gtty +#define __stub_revoke +#define __stub_setlogin +#define __stub_sigreturn +#define __stub_stty \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/gnu/stubs.h b/lib/libc/include/loongarch64-linux-gnu/gnu/stubs.h new file mode 100644 index 0000000000..ea3f10c421 --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/gnu/stubs.h @@ -0,0 +1,12 @@ +/* This file is automatically generated. + This file selects the right generated file of `__stub_FUNCTION' macros + based on the architecture being compiled for. */ + +#include + +#if __WORDSIZE == 64 && defined __loongarch_soft_float +# include +#endif +#if __WORDSIZE == 64 && defined __loongarch_double_float +# include +#endif \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/ieee754.h b/lib/libc/include/loongarch64-linux-gnu/ieee754.h new file mode 100644 index 0000000000..b1e2ec7dc6 --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/ieee754.h @@ -0,0 +1,170 @@ +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _IEEE754_H +#define _IEEE754_H 1 + +#include + +#include + +__BEGIN_DECLS + +union ieee754_float + { + float f; + + /* This is the IEEE 754 single-precision format. */ + struct + { +#if __BYTE_ORDER == __BIG_ENDIAN + unsigned int negative:1; + unsigned int exponent:8; + unsigned int mantissa:23; +#endif /* Big endian. */ +#if __BYTE_ORDER == __LITTLE_ENDIAN + unsigned int mantissa:23; + unsigned int exponent:8; + unsigned int negative:1; +#endif /* Little endian. */ + } ieee; + + /* This format makes it easier to see if a NaN is a signalling NaN. */ + struct + { +#if __BYTE_ORDER == __BIG_ENDIAN + unsigned int negative:1; + unsigned int exponent:8; + unsigned int quiet_nan:1; + unsigned int mantissa:22; +#endif /* Big endian. */ +#if __BYTE_ORDER == __LITTLE_ENDIAN + unsigned int mantissa:22; + unsigned int quiet_nan:1; + unsigned int exponent:8; + unsigned int negative:1; +#endif /* Little endian. */ + } ieee_nan; + }; + +#define IEEE754_FLOAT_BIAS 0x7f /* Added to exponent. */ + + +union ieee754_double + { + double d; + + /* This is the IEEE 754 double-precision format. */ + struct + { +#if __BYTE_ORDER == __BIG_ENDIAN + unsigned int negative:1; + unsigned int exponent:11; + /* Together these comprise the mantissa. */ + unsigned int mantissa0:20; + unsigned int mantissa1:32; +#endif /* Big endian. */ +#if __BYTE_ORDER == __LITTLE_ENDIAN + /* Together these comprise the mantissa. */ + unsigned int mantissa1:32; + unsigned int mantissa0:20; + unsigned int exponent:11; + unsigned int negative:1; +#endif /* Little endian. */ + } ieee; + + /* This format makes it easier to see if a NaN is a signalling NaN. */ + struct + { +#if __BYTE_ORDER == __BIG_ENDIAN + unsigned int negative:1; + unsigned int exponent:11; + unsigned int quiet_nan:1; + /* Together these comprise the mantissa. */ + unsigned int mantissa0:19; + unsigned int mantissa1:32; +#else + /* Together these comprise the mantissa. */ + unsigned int mantissa1:32; + unsigned int mantissa0:19; + unsigned int quiet_nan:1; + unsigned int exponent:11; + unsigned int negative:1; +#endif + } ieee_nan; + }; + +#define IEEE754_DOUBLE_BIAS 0x3ff /* Added to exponent. */ + + +union ieee854_long_double + { + long double d; + + /* This is the IEEE 854 quad-precision format. */ + struct + { +#if __BYTE_ORDER == __BIG_ENDIAN + unsigned int negative:1; + unsigned int exponent:15; + /* Together these comprise the mantissa. */ + unsigned int mantissa0:16; + unsigned int mantissa1:32; + unsigned int mantissa2:32; + unsigned int mantissa3:32; +#endif /* Big endian. */ +#if __BYTE_ORDER == __LITTLE_ENDIAN + /* Together these comprise the mantissa. */ + unsigned int mantissa3:32; + unsigned int mantissa2:32; + unsigned int mantissa1:32; + unsigned int mantissa0:16; + unsigned int exponent:15; + unsigned int negative:1; +#endif /* Little endian. */ + } ieee; + + /* This format makes it easier to see if a NaN is a signalling NaN. */ + struct + { +#if __BYTE_ORDER == __BIG_ENDIAN + unsigned int negative:1; + unsigned int exponent:15; + unsigned int quiet_nan:1; + /* Together these comprise the mantissa. */ + unsigned int mantissa0:15; + unsigned int mantissa1:32; + unsigned int mantissa2:32; + unsigned int mantissa3:32; +#else + /* Together these comprise the mantissa. */ + unsigned int mantissa3:32; + unsigned int mantissa2:32; + unsigned int mantissa1:32; + unsigned int mantissa0:15; + unsigned int quiet_nan:1; + unsigned int exponent:15; + unsigned int negative:1; +#endif + } ieee_nan; + }; + +#define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ + +__END_DECLS + +#endif /* ieee754.h */ \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/sys/asm.h b/lib/libc/include/loongarch64-linux-gnu/sys/asm.h new file mode 100644 index 0000000000..282831f10d --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/sys/asm.h @@ -0,0 +1,78 @@ +/* Miscellaneous macros. + Copyright (C) 2022-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _SYS_ASM_H +#define _SYS_ASM_H + +#include +#include + +/* Macros to handle different pointer/register sizes for 32/64-bit code. */ +#define SZREG 8 +#define SZFREG 8 +#define SZVREG 16 +#define SZXREG 32 +#define REG_L ld.d +#define REG_S st.d +#define SRLI srli.d +#define SLLI slli.d +#define ADDI addi.d +#define ADD add.d +#define SUB sub.d +#define BSTRINS bstrins.d +#define LI li.d +#define FREG_L fld.d +#define FREG_S fst.d + +/* Declare leaf routine. + The usage of macro LEAF/ENTRY is as follows: + 1. LEAF(fcn) -- the align value of fcn is .align 3 (default value) + 2. LEAF(fcn, 6) -- the align value of fcn is .align 6 +*/ +#define LEAF_IMPL(symbol, aln, ...) \ + .text; \ + .globl symbol; \ + .align aln; \ + .type symbol, @function; \ +symbol: \ + cfi_startproc; + + +#define LEAF(...) LEAF_IMPL(__VA_ARGS__, 3) +#define ENTRY(...) LEAF(__VA_ARGS__) + +#define LEAF_NO_ALIGN(symbol) \ + .text; \ + .globl symbol; \ + .type symbol, @function; \ +symbol: \ + cfi_startproc; + +#define ENTRY_NO_ALIGN(symbol) LEAF_NO_ALIGN(symbol) + + +/* Mark end of function. */ +#undef END +#define END(function) \ + cfi_endproc; \ + .size function, .- function; + +/* Stack alignment. */ +#define ALMASK ~15 + +#endif /* sys/asm.h */ \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/sys/ucontext.h b/lib/libc/include/loongarch64-linux-gnu/sys/ucontext.h new file mode 100644 index 0000000000..5db0d1e09e --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/sys/ucontext.h @@ -0,0 +1,64 @@ +/* struct ucontext definition. + Copyright (C) 2022-2024 Free Software Foundation, Inc. + + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +/* Don't rely on this, the interface is currently messed up and may need to + be broken to be fixed. */ +#ifndef _SYS_UCONTEXT_H +#define _SYS_UCONTEXT_H 1 + +#include + +#include +#include + +#ifdef __USE_MISC +#define LARCH_NGREG 32 + +#define LARCH_REG_RA 1 +#define LARCH_REG_SP 3 +#define LARCH_REG_S0 23 +#define LARCH_REG_S1 24 +#define LARCH_REG_A0 4 +#define LARCH_REG_S2 25 +#define LARCH_REG_NARGS 8 + +typedef unsigned long int greg_t; +/* Container for all general registers. */ +typedef greg_t gregset_t[32]; +#endif + +typedef struct mcontext_t +{ + unsigned long long __pc; + unsigned long long __gregs[32]; + unsigned int __flags; + unsigned long long __extcontext[0] __attribute__((__aligned__(16))); +} mcontext_t; + +/* Userlevel context. */ +typedef struct ucontext_t +{ + unsigned long int __uc_flags; + struct ucontext_t *uc_link; + stack_t uc_stack; + sigset_t uc_sigmask; + mcontext_t uc_mcontext; +} ucontext_t; + +#endif /* sys/ucontext.h */ \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-gnu/sys/user.h b/lib/libc/include/loongarch64-linux-gnu/sys/user.h new file mode 100644 index 0000000000..5dff8a5443 --- /dev/null +++ b/lib/libc/include/loongarch64-linux-gnu/sys/user.h @@ -0,0 +1,42 @@ +/* struct user_regs_struct definition for LoongArch. + Copyright (C) 2022-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SYS_USER_H +#define _SYS_USER_H 1 + +#include + +struct user_regs_struct +{ + /* Saved main processor registers. */ + uint64_t regs[32]; + + /* Saved special registers. */ + uint64_t orig_a0; + uint64_t csr_era; + uint64_t csr_badv; + uint64_t reserved[10]; +}; + +struct user_fp_struct { + uint64_t fpr[32]; + uint64_t fcc; + uint32_t fcsr; +}; + +#endif /* _SYS_USER_H */ \ No newline at end of file diff --git a/lib/libc/include/m68k-linux-gnu/bits/fcntl.h b/lib/libc/include/m68k-linux-gnu/bits/fcntl.h index d4998e10e7..a92e820177 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/fcntl.h +++ b/lib/libc/include/m68k-linux-gnu/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for Linux. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/bits/fenv.h b/lib/libc/include/m68k-linux-gnu/bits/fenv.h index 9581e3fb68..f2ca6cafda 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/fenv.h +++ b/lib/libc/include/m68k-linux-gnu/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/bits/floatn.h b/lib/libc/include/m68k-linux-gnu/bits/floatn.h index 7efc644d53..7f308138a7 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/floatn.h +++ b/lib/libc/include/m68k-linux-gnu/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/bits/flt-eval-method.h b/lib/libc/include/m68k-linux-gnu/bits/flt-eval-method.h index 25523e9cb1..d0b04257d1 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/flt-eval-method.h +++ b/lib/libc/include/m68k-linux-gnu/bits/flt-eval-method.h @@ -1,5 +1,5 @@ /* Define __GLIBC_FLT_EVAL_METHOD. M68K version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/bits/fp-logb.h b/lib/libc/include/m68k-linux-gnu/bits/fp-logb.h index c7f77a39d8..6f0805579f 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/fp-logb.h +++ b/lib/libc/include/m68k-linux-gnu/bits/fp-logb.h @@ -1,5 +1,5 @@ /* Define __FP_LOGB0_IS_MIN and __FP_LOGBNAN_IS_MIN. M68K version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/bits/iscanonical.h b/lib/libc/include/m68k-linux-gnu/bits/iscanonical.h index d7e7ae35cb..127ab6bbdc 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/iscanonical.h +++ b/lib/libc/include/m68k-linux-gnu/bits/iscanonical.h @@ -1,5 +1,5 @@ /* Define iscanonical macro. ldbl-96 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/bits/link.h b/lib/libc/include/m68k-linux-gnu/bits/link.h index 8d9d3f9eae..7e2676afee 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/link.h +++ b/lib/libc/include/m68k-linux-gnu/bits/link.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/bits/long-double.h b/lib/libc/include/m68k-linux-gnu/bits/long-double.h index 3839f69a6f..f4de255f19 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/long-double.h +++ b/lib/libc/include/m68k-linux-gnu/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. ldbl-96 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/bits/poll.h b/lib/libc/include/m68k-linux-gnu/bits/poll.h index 4b921c84ba..9db55ab054 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/poll.h +++ b/lib/libc/include/m68k-linux-gnu/bits/poll.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/bits/procfs-id.h b/lib/libc/include/m68k-linux-gnu/bits/procfs-id.h index d6259ff0f9..c08fc73d36 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/procfs-id.h +++ b/lib/libc/include/m68k-linux-gnu/bits/procfs-id.h @@ -1,5 +1,5 @@ /* Types of pr_uid and pr_gid in struct elf_prpsinfo. M68K version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/m68k-linux-gnu/bits/procfs.h b/lib/libc/include/m68k-linux-gnu/bits/procfs.h index e86115963e..26ca5f121b 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/procfs.h +++ b/lib/libc/include/m68k-linux-gnu/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. M68K version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/bits/pthreadtypes-arch.h b/lib/libc/include/m68k-linux-gnu/bits/pthreadtypes-arch.h index aa6b609c18..4698486f3b 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/pthreadtypes-arch.h +++ b/lib/libc/include/m68k-linux-gnu/bits/pthreadtypes-arch.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2010-2023 Free Software Foundation, Inc. +/* Copyright (C) 2010-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/bits/rseq.h b/lib/libc/include/m68k-linux-gnu/bits/rseq.h index fe2e400300..5ea695ad1c 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/rseq.h +++ b/lib/libc/include/m68k-linux-gnu/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences architecture header. Stub version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/m68k-linux-gnu/bits/semaphore.h b/lib/libc/include/m68k-linux-gnu/bits/semaphore.h index 1640ab5b86..7b5637f945 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/semaphore.h +++ b/lib/libc/include/m68k-linux-gnu/bits/semaphore.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2010-2023 Free Software Foundation, Inc. +/* Copyright (C) 2010-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/bits/setjmp.h b/lib/libc/include/m68k-linux-gnu/bits/setjmp.h index c918976d76..7724c07866 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/setjmp.h +++ b/lib/libc/include/m68k-linux-gnu/bits/setjmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/bits/sockaddr.h b/lib/libc/include/m68k-linux-gnu/bits/sockaddr.h index 6805858bd2..0ef5d475dc 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/sockaddr.h +++ b/lib/libc/include/m68k-linux-gnu/bits/sockaddr.h @@ -1,5 +1,5 @@ /* Definition of struct sockaddr_* members and sizes, Linux/m68k version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/bits/struct_rwlock.h b/lib/libc/include/m68k-linux-gnu/bits/struct_rwlock.h deleted file mode 100644 index 91b0a3b012..0000000000 --- a/lib/libc/include/m68k-linux-gnu/bits/struct_rwlock.h +++ /dev/null @@ -1,61 +0,0 @@ -/* Default read-write lock implementation struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef __RWLOCK_INTERNAL_H -#define __RWLOCK_INTERNAL_H - -#include - -/* Generic struct for both POSIX read-write lock. New ports are expected - to use the default layout, however archictetures can redefine it to add - arch-specific extensions (such as lock-elision). The struct have a size - of 32 bytes on both LP32 and LP64 architectures. */ - -struct __pthread_rwlock_arch_t -{ - unsigned int __readers; - unsigned int __writers; - unsigned int __wrphase_futex; - unsigned int __writers_futex; - unsigned int __pad3; - unsigned int __pad4; - /* FLAGS must stay at its position in the structure to maintain - binary compatibility. */ -#if __BYTE_ORDER == __BIG_ENDIAN - unsigned char __pad1; - unsigned char __pad2; - unsigned char __shared; - unsigned char __flags; -#else - unsigned char __flags; - unsigned char __shared; - unsigned char __pad1; - unsigned char __pad2; -#endif - int __cur_writer; -}; - -#if __BYTE_ORDER == __BIG_ENDIAN -# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ - 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 -#else -# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ - 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 -#endif - -#endif \ No newline at end of file diff --git a/lib/libc/include/m68k-linux-gnu/bits/struct_stat.h b/lib/libc/include/m68k-linux-gnu/bits/struct_stat.h index d8ec6bce18..a05ae8acad 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/struct_stat.h +++ b/lib/libc/include/m68k-linux-gnu/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/bits/timesize.h b/lib/libc/include/m68k-linux-gnu/bits/timesize.h index 0cfda60758..adbef6ccad 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/timesize.h +++ b/lib/libc/include/m68k-linux-gnu/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, Linux/m68k. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/bits/typesizes.h b/lib/libc/include/m68k-linux-gnu/bits/typesizes.h index 990809f077..dc4c8c8b6c 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/typesizes.h +++ b/lib/libc/include/m68k-linux-gnu/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. m68k version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/bits/wordsize.h b/lib/libc/include/m68k-linux-gnu/bits/wordsize.h index 229f48ad0d..3a4baec808 100644 --- a/lib/libc/include/m68k-linux-gnu/bits/wordsize.h +++ b/lib/libc/include/m68k-linux-gnu/bits/wordsize.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/fpu_control.h b/lib/libc/include/m68k-linux-gnu/fpu_control.h index 14abc3b546..05714d3386 100644 --- a/lib/libc/include/m68k-linux-gnu/fpu_control.h +++ b/lib/libc/include/m68k-linux-gnu/fpu_control.h @@ -1,5 +1,5 @@ /* 68k FPU control word definitions. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/gnu/lib-names.h b/lib/libc/include/m68k-linux-gnu/gnu/lib-names.h index 779009e7b6..f72e37a69b 100644 --- a/lib/libc/include/m68k-linux-gnu/gnu/lib-names.h +++ b/lib/libc/include/m68k-linux-gnu/gnu/lib-names.h @@ -7,7 +7,6 @@ #define LD_SO "ld.so.1" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/m68k-linux-gnu/sys/reg.h b/lib/libc/include/m68k-linux-gnu/sys/reg.h index b6fe7a745a..9b0cdc6974 100644 --- a/lib/libc/include/m68k-linux-gnu/sys/reg.h +++ b/lib/libc/include/m68k-linux-gnu/sys/reg.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/sys/ucontext.h b/lib/libc/include/m68k-linux-gnu/sys/ucontext.h index 98b6f768e3..33f1896cc1 100644 --- a/lib/libc/include/m68k-linux-gnu/sys/ucontext.h +++ b/lib/libc/include/m68k-linux-gnu/sys/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/m68k-linux-gnu/sys/user.h b/lib/libc/include/m68k-linux-gnu/sys/user.h index 97bb9aea1f..35544b3d56 100644 --- a/lib/libc/include/m68k-linux-gnu/sys/user.h +++ b/lib/libc/include/m68k-linux-gnu/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2008-2023 Free Software Foundation, Inc. +/* Copyright (C) 2008-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/dlfcn.h b/lib/libc/include/mips-linux-gnueabi/bits/dlfcn.h index a487e012c5..365f640332 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/dlfcn.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/dlfcn.h @@ -1,5 +1,5 @@ /* System dependent definitions for run-time dynamic loading. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/errno.h b/lib/libc/include/mips-linux-gnueabi/bits/errno.h index 59718e55f9..164daf7c40 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/errno.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/errno.h @@ -1,5 +1,5 @@ /* Error constants. MIPS/Linux specific version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/eventfd.h b/lib/libc/include/mips-linux-gnueabi/bits/eventfd.h index f874f0bfe6..9fa7aae89c 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/eventfd.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/eventfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/inotify.h b/lib/libc/include/mips-linux-gnueabi/bits/inotify.h index d27e1ee586..fd60b352e4 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/inotify.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/inotify.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/ioctl-types.h b/lib/libc/include/mips-linux-gnueabi/bits/ioctl-types.h index bcbccc1208..949d722e49 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/ioctl-types.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/ioctl-types.h @@ -1,5 +1,5 @@ /* Structure types for pre-termios terminal ioctls. Linux/MIPS version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/ipctypes.h b/lib/libc/include/mips-linux-gnueabi/bits/ipctypes.h index bbd3c52989..7382c8b807 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/ipctypes.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/ipctypes.h @@ -1,5 +1,5 @@ /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/mman.h b/lib/libc/include/mips-linux-gnueabi/bits/mman.h index 5de9744832..909f88e930 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/mman.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/MIPS version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/poll.h b/lib/libc/include/mips-linux-gnueabi/bits/poll.h index 4b921c84ba..9db55ab054 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/poll.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/poll.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/pthread_stack_min.h b/lib/libc/include/mips-linux-gnueabi/bits/pthread_stack_min.h index 7624eb42f5..2d25e48396 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/pthread_stack_min.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/pthread_stack_min.h @@ -1,5 +1,5 @@ /* Definition of PTHREAD_STACK_MIN. MIPS Linux version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/pthreadtypes-arch.h b/lib/libc/include/mips-linux-gnueabi/bits/pthreadtypes-arch.h index 3462039663..9c87459430 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/pthreadtypes-arch.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/pthreadtypes-arch.h @@ -1,5 +1,5 @@ /* Machine-specific pthread type layouts. MIPS version. - Copyright (C) 2005-2023 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/resource.h b/lib/libc/include/mips-linux-gnueabi/bits/resource.h index b47567d6dd..4813808e9e 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/resource.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/resource.h @@ -1,5 +1,5 @@ /* Bit values & structures for resource limits. Linux/MIPS version. - Copyright (C) 1994-2023 Free Software Foundation, Inc. + Copyright (C) 1994-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/semaphore.h b/lib/libc/include/mips-linux-gnueabi/bits/semaphore.h index 62f7bfebea..03db9e1b6f 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/semaphore.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/semaphore.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/shmlba.h b/lib/libc/include/mips-linux-gnueabi/bits/shmlba.h index 3c6b45352a..0a73b76ff0 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/shmlba.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/shmlba.h @@ -1,5 +1,5 @@ /* Define SHMLBA. MIPS version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/sigaction.h b/lib/libc/include/mips-linux-gnueabi/bits/sigaction.h index 5ae13b5f11..20b4671d29 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/sigaction.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/sigaction.h @@ -1,5 +1,5 @@ /* The proper definitions for Linux/MIPS's sigaction. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/sigcontext.h b/lib/libc/include/mips-linux-gnueabi/bits/sigcontext.h index 6f5ef74986..36fc930f33 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/sigcontext.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/sigcontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/mips-linux-gnueabi/bits/signalfd.h b/lib/libc/include/mips-linux-gnueabi/bits/signalfd.h index 2709bea4eb..3a67fccd58 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/signalfd.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/signalfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/signum-arch.h b/lib/libc/include/mips-linux-gnueabi/bits/signum-arch.h index 97e8248998..8d58c9687f 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/signum-arch.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/signum-arch.h @@ -1,5 +1,5 @@ /* Signal number definitions. Linux/MIPS version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/socket-constants.h b/lib/libc/include/mips-linux-gnueabi/bits/socket-constants.h index 492fdbf258..377e5fba63 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/socket-constants.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/socket-constants.h @@ -1,5 +1,5 @@ /* Socket constants which vary among Linux architectures. Version for MIPS. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/socket_type.h b/lib/libc/include/mips-linux-gnueabi/bits/socket_type.h index fd12df6edd..4ef2f565db 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/socket_type.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/socket_type.h @@ -1,5 +1,5 @@ /* Define enum __socket_type for Linux/MIPS. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/statfs.h b/lib/libc/include/mips-linux-gnueabi/bits/statfs.h index 0643bba28f..48722ded59 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/statfs.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/statfs.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/struct_mutex.h b/lib/libc/include/mips-linux-gnueabi/bits/struct_mutex.h index 9ce0ec7309..6b7b7208c6 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/struct_mutex.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/struct_mutex.h @@ -1,5 +1,5 @@ /* MIPS internal mutex struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabi/bits/struct_rwlock.h b/lib/libc/include/mips-linux-gnueabi/bits/struct_rwlock.h similarity index 61% rename from lib/libc/include/arm-linux-gnueabi/bits/struct_rwlock.h rename to lib/libc/include/mips-linux-gnueabi/bits/struct_rwlock.h index 91b0a3b012..bb58e127e5 100644 --- a/lib/libc/include/arm-linux-gnueabi/bits/struct_rwlock.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/struct_rwlock.h @@ -1,5 +1,5 @@ -/* Default read-write lock implementation struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. +/* MIPS internal rwlock struct definitions. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -16,15 +16,8 @@ License along with the GNU C Library; if not, see . */ -#ifndef __RWLOCK_INTERNAL_H -#define __RWLOCK_INTERNAL_H - -#include - -/* Generic struct for both POSIX read-write lock. New ports are expected - to use the default layout, however archictetures can redefine it to add - arch-specific extensions (such as lock-elision). The struct have a size - of 32 bytes on both LP32 and LP64 architectures. */ +#ifndef _RWLOCK_INTERNAL_H +#define _RWLOCK_INTERNAL_H struct __pthread_rwlock_arch_t { @@ -34,28 +27,45 @@ struct __pthread_rwlock_arch_t unsigned int __writers_futex; unsigned int __pad3; unsigned int __pad4; - /* FLAGS must stay at its position in the structure to maintain - binary compatibility. */ -#if __BYTE_ORDER == __BIG_ENDIAN - unsigned char __pad1; - unsigned char __pad2; - unsigned char __shared; - unsigned char __flags; -#else - unsigned char __flags; - unsigned char __shared; - unsigned char __pad1; - unsigned char __pad2; -#endif +#if _MIPS_SIM == _ABI64 int __cur_writer; + int __shared; + unsigned long int __pad1; + unsigned long int __pad2; + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned int __flags; +# else +# if __BYTE_ORDER == __BIG_ENDIAN + unsigned char __pad1; + unsigned char __pad2; + unsigned char __shared; + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned char __flags; +# else + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned char __flags; + unsigned char __shared; + unsigned char __pad1; + unsigned char __pad2; +# endif + int __cur_writer; +#endif }; -#if __BYTE_ORDER == __BIG_ENDIAN +#if _MIPS_SIM == _ABI64 # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ - 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags #else -# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ +# if __BYTE_ORDER == __BIG_ENDIAN +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 +# else +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 +# endif #endif #endif \ No newline at end of file diff --git a/lib/libc/include/mips-linux-gnueabi/bits/termios-c_cc.h b/lib/libc/include/mips-linux-gnueabi/bits/termios-c_cc.h index 00debdaab1..107ce1aa5a 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/termios-c_cc.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/termios-c_cc.h @@ -1,5 +1,5 @@ /* termios c_cc symbolic constant definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/termios-c_lflag.h b/lib/libc/include/mips-linux-gnueabi/bits/termios-c_lflag.h index 3b2600dd17..c02ed9742f 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/termios-c_lflag.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/termios-c_lflag.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/termios-struct.h b/lib/libc/include/mips-linux-gnueabi/bits/termios-struct.h index c784a9efb0..e02dcaec28 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/termios-struct.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/termios-struct.h @@ -1,5 +1,5 @@ /* struct termios definition. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/termios-tcflow.h b/lib/libc/include/mips-linux-gnueabi/bits/termios-tcflow.h index 58b3497473..80e5ae674e 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/termios-tcflow.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/termios-tcflow.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/timerfd.h b/lib/libc/include/mips-linux-gnueabi/bits/timerfd.h index d48cd13775..7b3a70004f 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/timerfd.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/timerfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2008-2023 Free Software Foundation, Inc. +/* Copyright (C) 2008-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/types/stack_t.h b/lib/libc/include/mips-linux-gnueabi/bits/types/stack_t.h index 6129ea23cd..864c44b004 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/types/stack_t.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/types/stack_t.h @@ -1,5 +1,5 @@ /* Define stack_t. MIPS Linux version. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/types/struct_msqid_ds.h b/lib/libc/include/mips-linux-gnueabi/bits/types/struct_msqid_ds.h index 957a980853..1e4d4868f2 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/types/struct_msqid_ds.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/types/struct_msqid_ds.h @@ -1,5 +1,5 @@ /* Linux/MIPS implementation of the SysV message struct msqid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/types/struct_semid_ds.h b/lib/libc/include/mips-linux-gnueabi/bits/types/struct_semid_ds.h index 7429ac9b50..1a780c0b62 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/types/struct_semid_ds.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/types/struct_semid_ds.h @@ -1,5 +1,5 @@ /* MIPS implementation of the semaphore struct semid_ds - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/bits/types/struct_shmid_ds.h b/lib/libc/include/mips-linux-gnueabi/bits/types/struct_shmid_ds.h index 81c914a9ea..b54474f413 100644 --- a/lib/libc/include/mips-linux-gnueabi/bits/types/struct_shmid_ds.h +++ b/lib/libc/include/mips-linux-gnueabi/bits/types/struct_shmid_ds.h @@ -1,5 +1,5 @@ /* Linux/MIPS implementation of the shared memory struct shmid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabi/ieee754.h b/lib/libc/include/mips-linux-gnueabi/ieee754.h index 2676970c34..1ebef9733c 100644 --- a/lib/libc/include/mips-linux-gnueabi/ieee754.h +++ b/lib/libc/include/mips-linux-gnueabi/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/dlfcn.h b/lib/libc/include/mips-linux-gnueabihf/bits/dlfcn.h index a487e012c5..365f640332 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/dlfcn.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/dlfcn.h @@ -1,5 +1,5 @@ /* System dependent definitions for run-time dynamic loading. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/errno.h b/lib/libc/include/mips-linux-gnueabihf/bits/errno.h index 59718e55f9..164daf7c40 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/errno.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/errno.h @@ -1,5 +1,5 @@ /* Error constants. MIPS/Linux specific version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/eventfd.h b/lib/libc/include/mips-linux-gnueabihf/bits/eventfd.h index f874f0bfe6..9fa7aae89c 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/eventfd.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/eventfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/inotify.h b/lib/libc/include/mips-linux-gnueabihf/bits/inotify.h index d27e1ee586..fd60b352e4 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/inotify.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/inotify.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/ioctl-types.h b/lib/libc/include/mips-linux-gnueabihf/bits/ioctl-types.h index bcbccc1208..949d722e49 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/ioctl-types.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/ioctl-types.h @@ -1,5 +1,5 @@ /* Structure types for pre-termios terminal ioctls. Linux/MIPS version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/ipctypes.h b/lib/libc/include/mips-linux-gnueabihf/bits/ipctypes.h index bbd3c52989..7382c8b807 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/ipctypes.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/ipctypes.h @@ -1,5 +1,5 @@ /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/mman.h b/lib/libc/include/mips-linux-gnueabihf/bits/mman.h index 5de9744832..909f88e930 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/mman.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/MIPS version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/poll.h b/lib/libc/include/mips-linux-gnueabihf/bits/poll.h index 4b921c84ba..9db55ab054 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/poll.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/poll.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/pthread_stack_min.h b/lib/libc/include/mips-linux-gnueabihf/bits/pthread_stack_min.h index 7624eb42f5..2d25e48396 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/pthread_stack_min.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/pthread_stack_min.h @@ -1,5 +1,5 @@ /* Definition of PTHREAD_STACK_MIN. MIPS Linux version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/pthreadtypes-arch.h b/lib/libc/include/mips-linux-gnueabihf/bits/pthreadtypes-arch.h index 3462039663..9c87459430 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/pthreadtypes-arch.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/pthreadtypes-arch.h @@ -1,5 +1,5 @@ /* Machine-specific pthread type layouts. MIPS version. - Copyright (C) 2005-2023 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/resource.h b/lib/libc/include/mips-linux-gnueabihf/bits/resource.h index b47567d6dd..4813808e9e 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/resource.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/resource.h @@ -1,5 +1,5 @@ /* Bit values & structures for resource limits. Linux/MIPS version. - Copyright (C) 1994-2023 Free Software Foundation, Inc. + Copyright (C) 1994-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/semaphore.h b/lib/libc/include/mips-linux-gnueabihf/bits/semaphore.h index 62f7bfebea..03db9e1b6f 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/semaphore.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/semaphore.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/shmlba.h b/lib/libc/include/mips-linux-gnueabihf/bits/shmlba.h index 3c6b45352a..0a73b76ff0 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/shmlba.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/shmlba.h @@ -1,5 +1,5 @@ /* Define SHMLBA. MIPS version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/sigaction.h b/lib/libc/include/mips-linux-gnueabihf/bits/sigaction.h index 5ae13b5f11..20b4671d29 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/sigaction.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/sigaction.h @@ -1,5 +1,5 @@ /* The proper definitions for Linux/MIPS's sigaction. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/sigcontext.h b/lib/libc/include/mips-linux-gnueabihf/bits/sigcontext.h index 6f5ef74986..36fc930f33 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/sigcontext.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/sigcontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/signalfd.h b/lib/libc/include/mips-linux-gnueabihf/bits/signalfd.h index 2709bea4eb..3a67fccd58 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/signalfd.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/signalfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/signum-arch.h b/lib/libc/include/mips-linux-gnueabihf/bits/signum-arch.h index 97e8248998..8d58c9687f 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/signum-arch.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/signum-arch.h @@ -1,5 +1,5 @@ /* Signal number definitions. Linux/MIPS version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/socket-constants.h b/lib/libc/include/mips-linux-gnueabihf/bits/socket-constants.h index 492fdbf258..377e5fba63 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/socket-constants.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/socket-constants.h @@ -1,5 +1,5 @@ /* Socket constants which vary among Linux architectures. Version for MIPS. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/socket_type.h b/lib/libc/include/mips-linux-gnueabihf/bits/socket_type.h index fd12df6edd..4ef2f565db 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/socket_type.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/socket_type.h @@ -1,5 +1,5 @@ /* Define enum __socket_type for Linux/MIPS. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/statfs.h b/lib/libc/include/mips-linux-gnueabihf/bits/statfs.h index 0643bba28f..48722ded59 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/statfs.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/statfs.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/struct_mutex.h b/lib/libc/include/mips-linux-gnueabihf/bits/struct_mutex.h index 9ce0ec7309..6b7b7208c6 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/struct_mutex.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/struct_mutex.h @@ -1,5 +1,5 @@ /* MIPS internal mutex struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/arm-linux-gnueabihf/bits/struct_rwlock.h b/lib/libc/include/mips-linux-gnueabihf/bits/struct_rwlock.h similarity index 61% rename from lib/libc/include/arm-linux-gnueabihf/bits/struct_rwlock.h rename to lib/libc/include/mips-linux-gnueabihf/bits/struct_rwlock.h index 91b0a3b012..bb58e127e5 100644 --- a/lib/libc/include/arm-linux-gnueabihf/bits/struct_rwlock.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/struct_rwlock.h @@ -1,5 +1,5 @@ -/* Default read-write lock implementation struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. +/* MIPS internal rwlock struct definitions. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -16,15 +16,8 @@ License along with the GNU C Library; if not, see . */ -#ifndef __RWLOCK_INTERNAL_H -#define __RWLOCK_INTERNAL_H - -#include - -/* Generic struct for both POSIX read-write lock. New ports are expected - to use the default layout, however archictetures can redefine it to add - arch-specific extensions (such as lock-elision). The struct have a size - of 32 bytes on both LP32 and LP64 architectures. */ +#ifndef _RWLOCK_INTERNAL_H +#define _RWLOCK_INTERNAL_H struct __pthread_rwlock_arch_t { @@ -34,28 +27,45 @@ struct __pthread_rwlock_arch_t unsigned int __writers_futex; unsigned int __pad3; unsigned int __pad4; - /* FLAGS must stay at its position in the structure to maintain - binary compatibility. */ -#if __BYTE_ORDER == __BIG_ENDIAN - unsigned char __pad1; - unsigned char __pad2; - unsigned char __shared; - unsigned char __flags; -#else - unsigned char __flags; - unsigned char __shared; - unsigned char __pad1; - unsigned char __pad2; -#endif +#if _MIPS_SIM == _ABI64 int __cur_writer; + int __shared; + unsigned long int __pad1; + unsigned long int __pad2; + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned int __flags; +# else +# if __BYTE_ORDER == __BIG_ENDIAN + unsigned char __pad1; + unsigned char __pad2; + unsigned char __shared; + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned char __flags; +# else + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned char __flags; + unsigned char __shared; + unsigned char __pad1; + unsigned char __pad2; +# endif + int __cur_writer; +#endif }; -#if __BYTE_ORDER == __BIG_ENDIAN +#if _MIPS_SIM == _ABI64 # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ - 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags #else -# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ +# if __BYTE_ORDER == __BIG_ENDIAN +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 +# else +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 +# endif #endif #endif \ No newline at end of file diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/termios-c_cc.h b/lib/libc/include/mips-linux-gnueabihf/bits/termios-c_cc.h index 00debdaab1..107ce1aa5a 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/termios-c_cc.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/termios-c_cc.h @@ -1,5 +1,5 @@ /* termios c_cc symbolic constant definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/termios-c_lflag.h b/lib/libc/include/mips-linux-gnueabihf/bits/termios-c_lflag.h index 3b2600dd17..c02ed9742f 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/termios-c_lflag.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/termios-c_lflag.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/termios-struct.h b/lib/libc/include/mips-linux-gnueabihf/bits/termios-struct.h index c784a9efb0..e02dcaec28 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/termios-struct.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/termios-struct.h @@ -1,5 +1,5 @@ /* struct termios definition. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/termios-tcflow.h b/lib/libc/include/mips-linux-gnueabihf/bits/termios-tcflow.h index 58b3497473..80e5ae674e 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/termios-tcflow.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/termios-tcflow.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/timerfd.h b/lib/libc/include/mips-linux-gnueabihf/bits/timerfd.h index d48cd13775..7b3a70004f 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/timerfd.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/timerfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2008-2023 Free Software Foundation, Inc. +/* Copyright (C) 2008-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/types/stack_t.h b/lib/libc/include/mips-linux-gnueabihf/bits/types/stack_t.h index 6129ea23cd..864c44b004 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/types/stack_t.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/types/stack_t.h @@ -1,5 +1,5 @@ /* Define stack_t. MIPS Linux version. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/types/struct_msqid_ds.h b/lib/libc/include/mips-linux-gnueabihf/bits/types/struct_msqid_ds.h index 957a980853..1e4d4868f2 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/types/struct_msqid_ds.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/types/struct_msqid_ds.h @@ -1,5 +1,5 @@ /* Linux/MIPS implementation of the SysV message struct msqid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/types/struct_semid_ds.h b/lib/libc/include/mips-linux-gnueabihf/bits/types/struct_semid_ds.h index 7429ac9b50..1a780c0b62 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/types/struct_semid_ds.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/types/struct_semid_ds.h @@ -1,5 +1,5 @@ /* MIPS implementation of the semaphore struct semid_ds - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/bits/types/struct_shmid_ds.h b/lib/libc/include/mips-linux-gnueabihf/bits/types/struct_shmid_ds.h index 81c914a9ea..b54474f413 100644 --- a/lib/libc/include/mips-linux-gnueabihf/bits/types/struct_shmid_ds.h +++ b/lib/libc/include/mips-linux-gnueabihf/bits/types/struct_shmid_ds.h @@ -1,5 +1,5 @@ /* Linux/MIPS implementation of the shared memory struct shmid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips-linux-gnueabihf/ieee754.h b/lib/libc/include/mips-linux-gnueabihf/ieee754.h index 2676970c34..1ebef9733c 100644 --- a/lib/libc/include/mips-linux-gnueabihf/ieee754.h +++ b/lib/libc/include/mips-linux-gnueabihf/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/dlfcn.h b/lib/libc/include/mips64-linux-gnuabi64/bits/dlfcn.h index a487e012c5..365f640332 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/dlfcn.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/dlfcn.h @@ -1,5 +1,5 @@ /* System dependent definitions for run-time dynamic loading. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/errno.h b/lib/libc/include/mips64-linux-gnuabi64/bits/errno.h index 59718e55f9..164daf7c40 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/errno.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/errno.h @@ -1,5 +1,5 @@ /* Error constants. MIPS/Linux specific version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/eventfd.h b/lib/libc/include/mips64-linux-gnuabi64/bits/eventfd.h index f874f0bfe6..9fa7aae89c 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/eventfd.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/eventfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/inotify.h b/lib/libc/include/mips64-linux-gnuabi64/bits/inotify.h index d27e1ee586..fd60b352e4 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/inotify.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/inotify.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/ioctl-types.h b/lib/libc/include/mips64-linux-gnuabi64/bits/ioctl-types.h index bcbccc1208..949d722e49 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/ioctl-types.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/ioctl-types.h @@ -1,5 +1,5 @@ /* Structure types for pre-termios terminal ioctls. Linux/MIPS version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/ipctypes.h b/lib/libc/include/mips64-linux-gnuabi64/bits/ipctypes.h index bbd3c52989..7382c8b807 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/ipctypes.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/ipctypes.h @@ -1,5 +1,5 @@ /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/mman.h b/lib/libc/include/mips64-linux-gnuabi64/bits/mman.h index 5de9744832..909f88e930 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/mman.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/MIPS version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/poll.h b/lib/libc/include/mips64-linux-gnuabi64/bits/poll.h index 4b921c84ba..9db55ab054 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/poll.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/poll.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/pthread_stack_min.h b/lib/libc/include/mips64-linux-gnuabi64/bits/pthread_stack_min.h index 7624eb42f5..2d25e48396 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/pthread_stack_min.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/pthread_stack_min.h @@ -1,5 +1,5 @@ /* Definition of PTHREAD_STACK_MIN. MIPS Linux version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/pthreadtypes-arch.h b/lib/libc/include/mips64-linux-gnuabi64/bits/pthreadtypes-arch.h index 3462039663..9c87459430 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/pthreadtypes-arch.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/pthreadtypes-arch.h @@ -1,5 +1,5 @@ /* Machine-specific pthread type layouts. MIPS version. - Copyright (C) 2005-2023 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/resource.h b/lib/libc/include/mips64-linux-gnuabi64/bits/resource.h index b47567d6dd..4813808e9e 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/resource.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/resource.h @@ -1,5 +1,5 @@ /* Bit values & structures for resource limits. Linux/MIPS version. - Copyright (C) 1994-2023 Free Software Foundation, Inc. + Copyright (C) 1994-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/semaphore.h b/lib/libc/include/mips64-linux-gnuabi64/bits/semaphore.h index 62f7bfebea..03db9e1b6f 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/semaphore.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/semaphore.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/shmlba.h b/lib/libc/include/mips64-linux-gnuabi64/bits/shmlba.h index 3c6b45352a..0a73b76ff0 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/shmlba.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/shmlba.h @@ -1,5 +1,5 @@ /* Define SHMLBA. MIPS version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/sigaction.h b/lib/libc/include/mips64-linux-gnuabi64/bits/sigaction.h index 5ae13b5f11..20b4671d29 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/sigaction.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/sigaction.h @@ -1,5 +1,5 @@ /* The proper definitions for Linux/MIPS's sigaction. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/sigcontext.h b/lib/libc/include/mips64-linux-gnuabi64/bits/sigcontext.h index 6f5ef74986..36fc930f33 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/sigcontext.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/sigcontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/signalfd.h b/lib/libc/include/mips64-linux-gnuabi64/bits/signalfd.h index 2709bea4eb..3a67fccd58 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/signalfd.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/signalfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/signum-arch.h b/lib/libc/include/mips64-linux-gnuabi64/bits/signum-arch.h index 97e8248998..8d58c9687f 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/signum-arch.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/signum-arch.h @@ -1,5 +1,5 @@ /* Signal number definitions. Linux/MIPS version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/socket-constants.h b/lib/libc/include/mips64-linux-gnuabi64/bits/socket-constants.h index 492fdbf258..377e5fba63 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/socket-constants.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/socket-constants.h @@ -1,5 +1,5 @@ /* Socket constants which vary among Linux architectures. Version for MIPS. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/socket_type.h b/lib/libc/include/mips64-linux-gnuabi64/bits/socket_type.h index fd12df6edd..4ef2f565db 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/socket_type.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/socket_type.h @@ -1,5 +1,5 @@ /* Define enum __socket_type for Linux/MIPS. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/statfs.h b/lib/libc/include/mips64-linux-gnuabi64/bits/statfs.h index 0643bba28f..48722ded59 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/statfs.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/statfs.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/struct_mutex.h b/lib/libc/include/mips64-linux-gnuabi64/bits/struct_mutex.h index 9ce0ec7309..6b7b7208c6 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/struct_mutex.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/struct_mutex.h @@ -1,5 +1,5 @@ /* MIPS internal mutex struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabi/bits/struct_rwlock.h b/lib/libc/include/mips64-linux-gnuabi64/bits/struct_rwlock.h similarity index 61% rename from lib/libc/include/armeb-linux-gnueabi/bits/struct_rwlock.h rename to lib/libc/include/mips64-linux-gnuabi64/bits/struct_rwlock.h index 91b0a3b012..bb58e127e5 100644 --- a/lib/libc/include/armeb-linux-gnueabi/bits/struct_rwlock.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/struct_rwlock.h @@ -1,5 +1,5 @@ -/* Default read-write lock implementation struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. +/* MIPS internal rwlock struct definitions. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -16,15 +16,8 @@ License along with the GNU C Library; if not, see . */ -#ifndef __RWLOCK_INTERNAL_H -#define __RWLOCK_INTERNAL_H - -#include - -/* Generic struct for both POSIX read-write lock. New ports are expected - to use the default layout, however archictetures can redefine it to add - arch-specific extensions (such as lock-elision). The struct have a size - of 32 bytes on both LP32 and LP64 architectures. */ +#ifndef _RWLOCK_INTERNAL_H +#define _RWLOCK_INTERNAL_H struct __pthread_rwlock_arch_t { @@ -34,28 +27,45 @@ struct __pthread_rwlock_arch_t unsigned int __writers_futex; unsigned int __pad3; unsigned int __pad4; - /* FLAGS must stay at its position in the structure to maintain - binary compatibility. */ -#if __BYTE_ORDER == __BIG_ENDIAN - unsigned char __pad1; - unsigned char __pad2; - unsigned char __shared; - unsigned char __flags; -#else - unsigned char __flags; - unsigned char __shared; - unsigned char __pad1; - unsigned char __pad2; -#endif +#if _MIPS_SIM == _ABI64 int __cur_writer; + int __shared; + unsigned long int __pad1; + unsigned long int __pad2; + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned int __flags; +# else +# if __BYTE_ORDER == __BIG_ENDIAN + unsigned char __pad1; + unsigned char __pad2; + unsigned char __shared; + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned char __flags; +# else + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned char __flags; + unsigned char __shared; + unsigned char __pad1; + unsigned char __pad2; +# endif + int __cur_writer; +#endif }; -#if __BYTE_ORDER == __BIG_ENDIAN +#if _MIPS_SIM == _ABI64 # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ - 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags #else -# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ +# if __BYTE_ORDER == __BIG_ENDIAN +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 +# else +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 +# endif #endif #endif \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/termios-c_cc.h b/lib/libc/include/mips64-linux-gnuabi64/bits/termios-c_cc.h index 00debdaab1..107ce1aa5a 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/termios-c_cc.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/termios-c_cc.h @@ -1,5 +1,5 @@ /* termios c_cc symbolic constant definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/termios-c_lflag.h b/lib/libc/include/mips64-linux-gnuabi64/bits/termios-c_lflag.h index 3b2600dd17..c02ed9742f 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/termios-c_lflag.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/termios-c_lflag.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/termios-struct.h b/lib/libc/include/mips64-linux-gnuabi64/bits/termios-struct.h index c784a9efb0..e02dcaec28 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/termios-struct.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/termios-struct.h @@ -1,5 +1,5 @@ /* struct termios definition. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/termios-tcflow.h b/lib/libc/include/mips64-linux-gnuabi64/bits/termios-tcflow.h index 58b3497473..80e5ae674e 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/termios-tcflow.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/termios-tcflow.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/timerfd.h b/lib/libc/include/mips64-linux-gnuabi64/bits/timerfd.h index d48cd13775..7b3a70004f 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/timerfd.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/timerfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2008-2023 Free Software Foundation, Inc. +/* Copyright (C) 2008-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/types/stack_t.h b/lib/libc/include/mips64-linux-gnuabi64/bits/types/stack_t.h index 6129ea23cd..864c44b004 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/types/stack_t.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/types/stack_t.h @@ -1,5 +1,5 @@ /* Define stack_t. MIPS Linux version. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_msqid_ds.h b/lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_msqid_ds.h index 957a980853..1e4d4868f2 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_msqid_ds.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_msqid_ds.h @@ -1,5 +1,5 @@ /* Linux/MIPS implementation of the SysV message struct msqid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_semid_ds.h b/lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_semid_ds.h index 7429ac9b50..1a780c0b62 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_semid_ds.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_semid_ds.h @@ -1,5 +1,5 @@ /* MIPS implementation of the semaphore struct semid_ds - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_shmid_ds.h b/lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_shmid_ds.h index 81c914a9ea..b54474f413 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_shmid_ds.h +++ b/lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_shmid_ds.h @@ -1,5 +1,5 @@ /* Linux/MIPS implementation of the shared memory struct shmid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabi64/ieee754.h b/lib/libc/include/mips64-linux-gnuabi64/ieee754.h index 2676970c34..1ebef9733c 100644 --- a/lib/libc/include/mips64-linux-gnuabi64/ieee754.h +++ b/lib/libc/include/mips64-linux-gnuabi64/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/dlfcn.h b/lib/libc/include/mips64-linux-gnuabin32/bits/dlfcn.h index a487e012c5..365f640332 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/dlfcn.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/dlfcn.h @@ -1,5 +1,5 @@ /* System dependent definitions for run-time dynamic loading. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/errno.h b/lib/libc/include/mips64-linux-gnuabin32/bits/errno.h index 59718e55f9..164daf7c40 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/errno.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/errno.h @@ -1,5 +1,5 @@ /* Error constants. MIPS/Linux specific version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/eventfd.h b/lib/libc/include/mips64-linux-gnuabin32/bits/eventfd.h index f874f0bfe6..9fa7aae89c 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/eventfd.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/eventfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/inotify.h b/lib/libc/include/mips64-linux-gnuabin32/bits/inotify.h index d27e1ee586..fd60b352e4 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/inotify.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/inotify.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/ioctl-types.h b/lib/libc/include/mips64-linux-gnuabin32/bits/ioctl-types.h index bcbccc1208..949d722e49 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/ioctl-types.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/ioctl-types.h @@ -1,5 +1,5 @@ /* Structure types for pre-termios terminal ioctls. Linux/MIPS version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/ipctypes.h b/lib/libc/include/mips64-linux-gnuabin32/bits/ipctypes.h index bbd3c52989..7382c8b807 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/ipctypes.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/ipctypes.h @@ -1,5 +1,5 @@ /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/mman.h b/lib/libc/include/mips64-linux-gnuabin32/bits/mman.h index 5de9744832..909f88e930 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/mman.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/MIPS version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/poll.h b/lib/libc/include/mips64-linux-gnuabin32/bits/poll.h index 4b921c84ba..9db55ab054 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/poll.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/poll.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/pthread_stack_min.h b/lib/libc/include/mips64-linux-gnuabin32/bits/pthread_stack_min.h index 7624eb42f5..2d25e48396 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/pthread_stack_min.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/pthread_stack_min.h @@ -1,5 +1,5 @@ /* Definition of PTHREAD_STACK_MIN. MIPS Linux version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/pthreadtypes-arch.h b/lib/libc/include/mips64-linux-gnuabin32/bits/pthreadtypes-arch.h index 3462039663..9c87459430 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/pthreadtypes-arch.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/pthreadtypes-arch.h @@ -1,5 +1,5 @@ /* Machine-specific pthread type layouts. MIPS version. - Copyright (C) 2005-2023 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/resource.h b/lib/libc/include/mips64-linux-gnuabin32/bits/resource.h index b47567d6dd..4813808e9e 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/resource.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/resource.h @@ -1,5 +1,5 @@ /* Bit values & structures for resource limits. Linux/MIPS version. - Copyright (C) 1994-2023 Free Software Foundation, Inc. + Copyright (C) 1994-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/semaphore.h b/lib/libc/include/mips64-linux-gnuabin32/bits/semaphore.h index 62f7bfebea..03db9e1b6f 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/semaphore.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/semaphore.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/shmlba.h b/lib/libc/include/mips64-linux-gnuabin32/bits/shmlba.h index 3c6b45352a..0a73b76ff0 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/shmlba.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/shmlba.h @@ -1,5 +1,5 @@ /* Define SHMLBA. MIPS version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/sigaction.h b/lib/libc/include/mips64-linux-gnuabin32/bits/sigaction.h index 5ae13b5f11..20b4671d29 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/sigaction.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/sigaction.h @@ -1,5 +1,5 @@ /* The proper definitions for Linux/MIPS's sigaction. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/sigcontext.h b/lib/libc/include/mips64-linux-gnuabin32/bits/sigcontext.h index 6f5ef74986..36fc930f33 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/sigcontext.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/sigcontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/signalfd.h b/lib/libc/include/mips64-linux-gnuabin32/bits/signalfd.h index 2709bea4eb..3a67fccd58 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/signalfd.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/signalfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/signum-arch.h b/lib/libc/include/mips64-linux-gnuabin32/bits/signum-arch.h index 97e8248998..8d58c9687f 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/signum-arch.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/signum-arch.h @@ -1,5 +1,5 @@ /* Signal number definitions. Linux/MIPS version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/socket-constants.h b/lib/libc/include/mips64-linux-gnuabin32/bits/socket-constants.h index 492fdbf258..377e5fba63 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/socket-constants.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/socket-constants.h @@ -1,5 +1,5 @@ /* Socket constants which vary among Linux architectures. Version for MIPS. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/socket_type.h b/lib/libc/include/mips64-linux-gnuabin32/bits/socket_type.h index fd12df6edd..4ef2f565db 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/socket_type.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/socket_type.h @@ -1,5 +1,5 @@ /* Define enum __socket_type for Linux/MIPS. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/statfs.h b/lib/libc/include/mips64-linux-gnuabin32/bits/statfs.h index 0643bba28f..48722ded59 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/statfs.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/statfs.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/struct_mutex.h b/lib/libc/include/mips64-linux-gnuabin32/bits/struct_mutex.h index 9ce0ec7309..6b7b7208c6 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/struct_mutex.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/struct_mutex.h @@ -1,5 +1,5 @@ /* MIPS internal mutex struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/armeb-linux-gnueabihf/bits/struct_rwlock.h b/lib/libc/include/mips64-linux-gnuabin32/bits/struct_rwlock.h similarity index 61% rename from lib/libc/include/armeb-linux-gnueabihf/bits/struct_rwlock.h rename to lib/libc/include/mips64-linux-gnuabin32/bits/struct_rwlock.h index 91b0a3b012..bb58e127e5 100644 --- a/lib/libc/include/armeb-linux-gnueabihf/bits/struct_rwlock.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/struct_rwlock.h @@ -1,5 +1,5 @@ -/* Default read-write lock implementation struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. +/* MIPS internal rwlock struct definitions. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -16,15 +16,8 @@ License along with the GNU C Library; if not, see . */ -#ifndef __RWLOCK_INTERNAL_H -#define __RWLOCK_INTERNAL_H - -#include - -/* Generic struct for both POSIX read-write lock. New ports are expected - to use the default layout, however archictetures can redefine it to add - arch-specific extensions (such as lock-elision). The struct have a size - of 32 bytes on both LP32 and LP64 architectures. */ +#ifndef _RWLOCK_INTERNAL_H +#define _RWLOCK_INTERNAL_H struct __pthread_rwlock_arch_t { @@ -34,28 +27,45 @@ struct __pthread_rwlock_arch_t unsigned int __writers_futex; unsigned int __pad3; unsigned int __pad4; - /* FLAGS must stay at its position in the structure to maintain - binary compatibility. */ -#if __BYTE_ORDER == __BIG_ENDIAN - unsigned char __pad1; - unsigned char __pad2; - unsigned char __shared; - unsigned char __flags; -#else - unsigned char __flags; - unsigned char __shared; - unsigned char __pad1; - unsigned char __pad2; -#endif +#if _MIPS_SIM == _ABI64 int __cur_writer; + int __shared; + unsigned long int __pad1; + unsigned long int __pad2; + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned int __flags; +# else +# if __BYTE_ORDER == __BIG_ENDIAN + unsigned char __pad1; + unsigned char __pad2; + unsigned char __shared; + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned char __flags; +# else + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned char __flags; + unsigned char __shared; + unsigned char __pad1; + unsigned char __pad2; +# endif + int __cur_writer; +#endif }; -#if __BYTE_ORDER == __BIG_ENDIAN +#if _MIPS_SIM == _ABI64 # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ - 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags #else -# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ +# if __BYTE_ORDER == __BIG_ENDIAN +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 +# else +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 +# endif #endif #endif \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/termios-c_cc.h b/lib/libc/include/mips64-linux-gnuabin32/bits/termios-c_cc.h index 00debdaab1..107ce1aa5a 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/termios-c_cc.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/termios-c_cc.h @@ -1,5 +1,5 @@ /* termios c_cc symbolic constant definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/termios-c_lflag.h b/lib/libc/include/mips64-linux-gnuabin32/bits/termios-c_lflag.h index 3b2600dd17..c02ed9742f 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/termios-c_lflag.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/termios-c_lflag.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/termios-struct.h b/lib/libc/include/mips64-linux-gnuabin32/bits/termios-struct.h index c784a9efb0..e02dcaec28 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/termios-struct.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/termios-struct.h @@ -1,5 +1,5 @@ /* struct termios definition. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/termios-tcflow.h b/lib/libc/include/mips64-linux-gnuabin32/bits/termios-tcflow.h index 58b3497473..80e5ae674e 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/termios-tcflow.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/termios-tcflow.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/timerfd.h b/lib/libc/include/mips64-linux-gnuabin32/bits/timerfd.h index d48cd13775..7b3a70004f 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/timerfd.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/timerfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2008-2023 Free Software Foundation, Inc. +/* Copyright (C) 2008-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/types/stack_t.h b/lib/libc/include/mips64-linux-gnuabin32/bits/types/stack_t.h index 6129ea23cd..864c44b004 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/types/stack_t.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/types/stack_t.h @@ -1,5 +1,5 @@ /* Define stack_t. MIPS Linux version. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_msqid_ds.h b/lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_msqid_ds.h index 957a980853..1e4d4868f2 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_msqid_ds.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_msqid_ds.h @@ -1,5 +1,5 @@ /* Linux/MIPS implementation of the SysV message struct msqid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_semid_ds.h b/lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_semid_ds.h index 7429ac9b50..1a780c0b62 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_semid_ds.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_semid_ds.h @@ -1,5 +1,5 @@ /* MIPS implementation of the semaphore struct semid_ds - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_shmid_ds.h b/lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_shmid_ds.h index 81c914a9ea..b54474f413 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_shmid_ds.h +++ b/lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_shmid_ds.h @@ -1,5 +1,5 @@ /* Linux/MIPS implementation of the shared memory struct shmid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64-linux-gnuabin32/ieee754.h b/lib/libc/include/mips64-linux-gnuabin32/ieee754.h index 2676970c34..1ebef9733c 100644 --- a/lib/libc/include/mips64-linux-gnuabin32/ieee754.h +++ b/lib/libc/include/mips64-linux-gnuabin32/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/dlfcn.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/dlfcn.h index a487e012c5..365f640332 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/dlfcn.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/dlfcn.h @@ -1,5 +1,5 @@ /* System dependent definitions for run-time dynamic loading. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/errno.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/errno.h index 59718e55f9..164daf7c40 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/errno.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/errno.h @@ -1,5 +1,5 @@ /* Error constants. MIPS/Linux specific version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/eventfd.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/eventfd.h index f874f0bfe6..9fa7aae89c 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/eventfd.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/eventfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/inotify.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/inotify.h index d27e1ee586..fd60b352e4 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/inotify.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/inotify.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/ioctl-types.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/ioctl-types.h index bcbccc1208..949d722e49 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/ioctl-types.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/ioctl-types.h @@ -1,5 +1,5 @@ /* Structure types for pre-termios terminal ioctls. Linux/MIPS version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/ipctypes.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/ipctypes.h index bbd3c52989..7382c8b807 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/ipctypes.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/ipctypes.h @@ -1,5 +1,5 @@ /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/mman.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/mman.h index 5de9744832..909f88e930 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/mman.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/MIPS version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/poll.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/poll.h index 4b921c84ba..9db55ab054 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/poll.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/poll.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/pthread_stack_min.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/pthread_stack_min.h index 7624eb42f5..2d25e48396 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/pthread_stack_min.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/pthread_stack_min.h @@ -1,5 +1,5 @@ /* Definition of PTHREAD_STACK_MIN. MIPS Linux version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/pthreadtypes-arch.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/pthreadtypes-arch.h index 3462039663..9c87459430 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/pthreadtypes-arch.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/pthreadtypes-arch.h @@ -1,5 +1,5 @@ /* Machine-specific pthread type layouts. MIPS version. - Copyright (C) 2005-2023 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/resource.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/resource.h index b47567d6dd..4813808e9e 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/resource.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/resource.h @@ -1,5 +1,5 @@ /* Bit values & structures for resource limits. Linux/MIPS version. - Copyright (C) 1994-2023 Free Software Foundation, Inc. + Copyright (C) 1994-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/semaphore.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/semaphore.h index 62f7bfebea..03db9e1b6f 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/semaphore.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/semaphore.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/shmlba.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/shmlba.h index 3c6b45352a..0a73b76ff0 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/shmlba.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/shmlba.h @@ -1,5 +1,5 @@ /* Define SHMLBA. MIPS version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/sigaction.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/sigaction.h index 5ae13b5f11..20b4671d29 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/sigaction.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/sigaction.h @@ -1,5 +1,5 @@ /* The proper definitions for Linux/MIPS's sigaction. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/sigcontext.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/sigcontext.h index 6f5ef74986..36fc930f33 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/sigcontext.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/sigcontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/signalfd.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/signalfd.h index 2709bea4eb..3a67fccd58 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/signalfd.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/signalfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/signum-arch.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/signum-arch.h index 97e8248998..8d58c9687f 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/signum-arch.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/signum-arch.h @@ -1,5 +1,5 @@ /* Signal number definitions. Linux/MIPS version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/socket-constants.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/socket-constants.h index 492fdbf258..377e5fba63 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/socket-constants.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/socket-constants.h @@ -1,5 +1,5 @@ /* Socket constants which vary among Linux architectures. Version for MIPS. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/socket_type.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/socket_type.h index fd12df6edd..4ef2f565db 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/socket_type.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/socket_type.h @@ -1,5 +1,5 @@ /* Define enum __socket_type for Linux/MIPS. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/statfs.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/statfs.h index 0643bba28f..48722ded59 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/statfs.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/statfs.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/struct_mutex.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/struct_mutex.h index 9ce0ec7309..6b7b7208c6 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/struct_mutex.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/struct_mutex.h @@ -1,5 +1,5 @@ /* MIPS internal mutex struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/struct_rwlock.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/struct_rwlock.h new file mode 100644 index 0000000000..bb58e127e5 --- /dev/null +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/struct_rwlock.h @@ -0,0 +1,71 @@ +/* MIPS internal rwlock struct definitions. + Copyright (C) 2019-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _RWLOCK_INTERNAL_H +#define _RWLOCK_INTERNAL_H + +struct __pthread_rwlock_arch_t +{ + unsigned int __readers; + unsigned int __writers; + unsigned int __wrphase_futex; + unsigned int __writers_futex; + unsigned int __pad3; + unsigned int __pad4; +#if _MIPS_SIM == _ABI64 + int __cur_writer; + int __shared; + unsigned long int __pad1; + unsigned long int __pad2; + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned int __flags; +# else +# if __BYTE_ORDER == __BIG_ENDIAN + unsigned char __pad1; + unsigned char __pad2; + unsigned char __shared; + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned char __flags; +# else + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned char __flags; + unsigned char __shared; + unsigned char __pad1; + unsigned char __pad2; +# endif + int __cur_writer; +#endif +}; + +#if _MIPS_SIM == _ABI64 +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags +#else +# if __BYTE_ORDER == __BIG_ENDIAN +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 +# else +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 +# endif +#endif + +#endif \ No newline at end of file diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/termios-c_cc.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/termios-c_cc.h index 00debdaab1..107ce1aa5a 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/termios-c_cc.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/termios-c_cc.h @@ -1,5 +1,5 @@ /* termios c_cc symbolic constant definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/termios-c_lflag.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/termios-c_lflag.h index 3b2600dd17..c02ed9742f 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/termios-c_lflag.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/termios-c_lflag.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/termios-struct.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/termios-struct.h index c784a9efb0..e02dcaec28 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/termios-struct.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/termios-struct.h @@ -1,5 +1,5 @@ /* struct termios definition. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/termios-tcflow.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/termios-tcflow.h index 58b3497473..80e5ae674e 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/termios-tcflow.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/termios-tcflow.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/timerfd.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/timerfd.h index d48cd13775..7b3a70004f 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/timerfd.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/timerfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2008-2023 Free Software Foundation, Inc. +/* Copyright (C) 2008-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/types/stack_t.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/types/stack_t.h index 6129ea23cd..864c44b004 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/types/stack_t.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/types/stack_t.h @@ -1,5 +1,5 @@ /* Define stack_t. MIPS Linux version. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_msqid_ds.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_msqid_ds.h index 957a980853..1e4d4868f2 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_msqid_ds.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_msqid_ds.h @@ -1,5 +1,5 @@ /* Linux/MIPS implementation of the SysV message struct msqid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_semid_ds.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_semid_ds.h index 7429ac9b50..1a780c0b62 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_semid_ds.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_semid_ds.h @@ -1,5 +1,5 @@ /* MIPS implementation of the semaphore struct semid_ds - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_shmid_ds.h b/lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_shmid_ds.h index 81c914a9ea..b54474f413 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_shmid_ds.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_shmid_ds.h @@ -1,5 +1,5 @@ /* Linux/MIPS implementation of the shared memory struct shmid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabi64/ieee754.h b/lib/libc/include/mips64el-linux-gnuabi64/ieee754.h index 2676970c34..1ebef9733c 100644 --- a/lib/libc/include/mips64el-linux-gnuabi64/ieee754.h +++ b/lib/libc/include/mips64el-linux-gnuabi64/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/dlfcn.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/dlfcn.h index a487e012c5..365f640332 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/dlfcn.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/dlfcn.h @@ -1,5 +1,5 @@ /* System dependent definitions for run-time dynamic loading. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/errno.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/errno.h index 59718e55f9..164daf7c40 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/errno.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/errno.h @@ -1,5 +1,5 @@ /* Error constants. MIPS/Linux specific version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/eventfd.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/eventfd.h index f874f0bfe6..9fa7aae89c 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/eventfd.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/eventfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/inotify.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/inotify.h index d27e1ee586..fd60b352e4 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/inotify.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/inotify.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/ioctl-types.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/ioctl-types.h index bcbccc1208..949d722e49 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/ioctl-types.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/ioctl-types.h @@ -1,5 +1,5 @@ /* Structure types for pre-termios terminal ioctls. Linux/MIPS version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/ipctypes.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/ipctypes.h index bbd3c52989..7382c8b807 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/ipctypes.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/ipctypes.h @@ -1,5 +1,5 @@ /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/mman.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/mman.h index 5de9744832..909f88e930 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/mman.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/MIPS version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/poll.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/poll.h index 4b921c84ba..9db55ab054 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/poll.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/poll.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/pthread_stack_min.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/pthread_stack_min.h index 7624eb42f5..2d25e48396 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/pthread_stack_min.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/pthread_stack_min.h @@ -1,5 +1,5 @@ /* Definition of PTHREAD_STACK_MIN. MIPS Linux version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/pthreadtypes-arch.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/pthreadtypes-arch.h index 3462039663..9c87459430 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/pthreadtypes-arch.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/pthreadtypes-arch.h @@ -1,5 +1,5 @@ /* Machine-specific pthread type layouts. MIPS version. - Copyright (C) 2005-2023 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/resource.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/resource.h index b47567d6dd..4813808e9e 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/resource.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/resource.h @@ -1,5 +1,5 @@ /* Bit values & structures for resource limits. Linux/MIPS version. - Copyright (C) 1994-2023 Free Software Foundation, Inc. + Copyright (C) 1994-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/semaphore.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/semaphore.h index 62f7bfebea..03db9e1b6f 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/semaphore.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/semaphore.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/shmlba.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/shmlba.h index 3c6b45352a..0a73b76ff0 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/shmlba.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/shmlba.h @@ -1,5 +1,5 @@ /* Define SHMLBA. MIPS version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/sigaction.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/sigaction.h index 5ae13b5f11..20b4671d29 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/sigaction.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/sigaction.h @@ -1,5 +1,5 @@ /* The proper definitions for Linux/MIPS's sigaction. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/sigcontext.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/sigcontext.h index 6f5ef74986..36fc930f33 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/sigcontext.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/sigcontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/signalfd.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/signalfd.h index 2709bea4eb..3a67fccd58 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/signalfd.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/signalfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/signum-arch.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/signum-arch.h index 97e8248998..8d58c9687f 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/signum-arch.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/signum-arch.h @@ -1,5 +1,5 @@ /* Signal number definitions. Linux/MIPS version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/socket-constants.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/socket-constants.h index 492fdbf258..377e5fba63 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/socket-constants.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/socket-constants.h @@ -1,5 +1,5 @@ /* Socket constants which vary among Linux architectures. Version for MIPS. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/socket_type.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/socket_type.h index fd12df6edd..4ef2f565db 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/socket_type.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/socket_type.h @@ -1,5 +1,5 @@ /* Define enum __socket_type for Linux/MIPS. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/statfs.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/statfs.h index 0643bba28f..48722ded59 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/statfs.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/statfs.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/struct_mutex.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/struct_mutex.h index 9ce0ec7309..6b7b7208c6 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/struct_mutex.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/struct_mutex.h @@ -1,5 +1,5 @@ /* MIPS internal mutex struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/struct_rwlock.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/struct_rwlock.h new file mode 100644 index 0000000000..bb58e127e5 --- /dev/null +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/struct_rwlock.h @@ -0,0 +1,71 @@ +/* MIPS internal rwlock struct definitions. + Copyright (C) 2019-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _RWLOCK_INTERNAL_H +#define _RWLOCK_INTERNAL_H + +struct __pthread_rwlock_arch_t +{ + unsigned int __readers; + unsigned int __writers; + unsigned int __wrphase_futex; + unsigned int __writers_futex; + unsigned int __pad3; + unsigned int __pad4; +#if _MIPS_SIM == _ABI64 + int __cur_writer; + int __shared; + unsigned long int __pad1; + unsigned long int __pad2; + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned int __flags; +# else +# if __BYTE_ORDER == __BIG_ENDIAN + unsigned char __pad1; + unsigned char __pad2; + unsigned char __shared; + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned char __flags; +# else + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned char __flags; + unsigned char __shared; + unsigned char __pad1; + unsigned char __pad2; +# endif + int __cur_writer; +#endif +}; + +#if _MIPS_SIM == _ABI64 +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags +#else +# if __BYTE_ORDER == __BIG_ENDIAN +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 +# else +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 +# endif +#endif + +#endif \ No newline at end of file diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/termios-c_cc.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/termios-c_cc.h index 00debdaab1..107ce1aa5a 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/termios-c_cc.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/termios-c_cc.h @@ -1,5 +1,5 @@ /* termios c_cc symbolic constant definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/termios-c_lflag.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/termios-c_lflag.h index 3b2600dd17..c02ed9742f 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/termios-c_lflag.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/termios-c_lflag.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/termios-struct.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/termios-struct.h index c784a9efb0..e02dcaec28 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/termios-struct.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/termios-struct.h @@ -1,5 +1,5 @@ /* struct termios definition. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/termios-tcflow.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/termios-tcflow.h index 58b3497473..80e5ae674e 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/termios-tcflow.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/termios-tcflow.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/timerfd.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/timerfd.h index d48cd13775..7b3a70004f 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/timerfd.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/timerfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2008-2023 Free Software Foundation, Inc. +/* Copyright (C) 2008-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/types/stack_t.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/types/stack_t.h index 6129ea23cd..864c44b004 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/types/stack_t.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/types/stack_t.h @@ -1,5 +1,5 @@ /* Define stack_t. MIPS Linux version. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_msqid_ds.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_msqid_ds.h index 957a980853..1e4d4868f2 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_msqid_ds.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_msqid_ds.h @@ -1,5 +1,5 @@ /* Linux/MIPS implementation of the SysV message struct msqid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_semid_ds.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_semid_ds.h index 7429ac9b50..1a780c0b62 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_semid_ds.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_semid_ds.h @@ -1,5 +1,5 @@ /* MIPS implementation of the semaphore struct semid_ds - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_shmid_ds.h b/lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_shmid_ds.h index 81c914a9ea..b54474f413 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_shmid_ds.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_shmid_ds.h @@ -1,5 +1,5 @@ /* Linux/MIPS implementation of the shared memory struct shmid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mips64el-linux-gnuabin32/ieee754.h b/lib/libc/include/mips64el-linux-gnuabin32/ieee754.h index 2676970c34..1ebef9733c 100644 --- a/lib/libc/include/mips64el-linux-gnuabin32/ieee754.h +++ b/lib/libc/include/mips64el-linux-gnuabin32/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/dlfcn.h b/lib/libc/include/mipsel-linux-gnueabi/bits/dlfcn.h index a487e012c5..365f640332 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/dlfcn.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/dlfcn.h @@ -1,5 +1,5 @@ /* System dependent definitions for run-time dynamic loading. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/errno.h b/lib/libc/include/mipsel-linux-gnueabi/bits/errno.h index 59718e55f9..164daf7c40 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/errno.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/errno.h @@ -1,5 +1,5 @@ /* Error constants. MIPS/Linux specific version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/eventfd.h b/lib/libc/include/mipsel-linux-gnueabi/bits/eventfd.h index f874f0bfe6..9fa7aae89c 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/eventfd.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/eventfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/inotify.h b/lib/libc/include/mipsel-linux-gnueabi/bits/inotify.h index d27e1ee586..fd60b352e4 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/inotify.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/inotify.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/ioctl-types.h b/lib/libc/include/mipsel-linux-gnueabi/bits/ioctl-types.h index bcbccc1208..949d722e49 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/ioctl-types.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/ioctl-types.h @@ -1,5 +1,5 @@ /* Structure types for pre-termios terminal ioctls. Linux/MIPS version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/ipctypes.h b/lib/libc/include/mipsel-linux-gnueabi/bits/ipctypes.h index bbd3c52989..7382c8b807 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/ipctypes.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/ipctypes.h @@ -1,5 +1,5 @@ /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/mman.h b/lib/libc/include/mipsel-linux-gnueabi/bits/mman.h index 5de9744832..909f88e930 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/mman.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/MIPS version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/poll.h b/lib/libc/include/mipsel-linux-gnueabi/bits/poll.h index 4b921c84ba..9db55ab054 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/poll.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/poll.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/pthread_stack_min.h b/lib/libc/include/mipsel-linux-gnueabi/bits/pthread_stack_min.h index 7624eb42f5..2d25e48396 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/pthread_stack_min.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/pthread_stack_min.h @@ -1,5 +1,5 @@ /* Definition of PTHREAD_STACK_MIN. MIPS Linux version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/pthreadtypes-arch.h b/lib/libc/include/mipsel-linux-gnueabi/bits/pthreadtypes-arch.h index 3462039663..9c87459430 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/pthreadtypes-arch.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/pthreadtypes-arch.h @@ -1,5 +1,5 @@ /* Machine-specific pthread type layouts. MIPS version. - Copyright (C) 2005-2023 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/resource.h b/lib/libc/include/mipsel-linux-gnueabi/bits/resource.h index b47567d6dd..4813808e9e 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/resource.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/resource.h @@ -1,5 +1,5 @@ /* Bit values & structures for resource limits. Linux/MIPS version. - Copyright (C) 1994-2023 Free Software Foundation, Inc. + Copyright (C) 1994-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/semaphore.h b/lib/libc/include/mipsel-linux-gnueabi/bits/semaphore.h index 62f7bfebea..03db9e1b6f 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/semaphore.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/semaphore.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/shmlba.h b/lib/libc/include/mipsel-linux-gnueabi/bits/shmlba.h index 3c6b45352a..0a73b76ff0 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/shmlba.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/shmlba.h @@ -1,5 +1,5 @@ /* Define SHMLBA. MIPS version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/sigaction.h b/lib/libc/include/mipsel-linux-gnueabi/bits/sigaction.h index 5ae13b5f11..20b4671d29 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/sigaction.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/sigaction.h @@ -1,5 +1,5 @@ /* The proper definitions for Linux/MIPS's sigaction. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/sigcontext.h b/lib/libc/include/mipsel-linux-gnueabi/bits/sigcontext.h index 6f5ef74986..36fc930f33 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/sigcontext.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/sigcontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/signalfd.h b/lib/libc/include/mipsel-linux-gnueabi/bits/signalfd.h index 2709bea4eb..3a67fccd58 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/signalfd.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/signalfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/signum-arch.h b/lib/libc/include/mipsel-linux-gnueabi/bits/signum-arch.h index 97e8248998..8d58c9687f 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/signum-arch.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/signum-arch.h @@ -1,5 +1,5 @@ /* Signal number definitions. Linux/MIPS version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/socket-constants.h b/lib/libc/include/mipsel-linux-gnueabi/bits/socket-constants.h index 492fdbf258..377e5fba63 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/socket-constants.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/socket-constants.h @@ -1,5 +1,5 @@ /* Socket constants which vary among Linux architectures. Version for MIPS. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/socket_type.h b/lib/libc/include/mipsel-linux-gnueabi/bits/socket_type.h index fd12df6edd..4ef2f565db 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/socket_type.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/socket_type.h @@ -1,5 +1,5 @@ /* Define enum __socket_type for Linux/MIPS. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/statfs.h b/lib/libc/include/mipsel-linux-gnueabi/bits/statfs.h index 0643bba28f..48722ded59 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/statfs.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/statfs.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/struct_mutex.h b/lib/libc/include/mipsel-linux-gnueabi/bits/struct_mutex.h index 9ce0ec7309..6b7b7208c6 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/struct_mutex.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/struct_mutex.h @@ -1,5 +1,5 @@ /* MIPS internal mutex struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/struct_rwlock.h b/lib/libc/include/mipsel-linux-gnueabi/bits/struct_rwlock.h new file mode 100644 index 0000000000..bb58e127e5 --- /dev/null +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/struct_rwlock.h @@ -0,0 +1,71 @@ +/* MIPS internal rwlock struct definitions. + Copyright (C) 2019-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _RWLOCK_INTERNAL_H +#define _RWLOCK_INTERNAL_H + +struct __pthread_rwlock_arch_t +{ + unsigned int __readers; + unsigned int __writers; + unsigned int __wrphase_futex; + unsigned int __writers_futex; + unsigned int __pad3; + unsigned int __pad4; +#if _MIPS_SIM == _ABI64 + int __cur_writer; + int __shared; + unsigned long int __pad1; + unsigned long int __pad2; + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned int __flags; +# else +# if __BYTE_ORDER == __BIG_ENDIAN + unsigned char __pad1; + unsigned char __pad2; + unsigned char __shared; + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned char __flags; +# else + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned char __flags; + unsigned char __shared; + unsigned char __pad1; + unsigned char __pad2; +# endif + int __cur_writer; +#endif +}; + +#if _MIPS_SIM == _ABI64 +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags +#else +# if __BYTE_ORDER == __BIG_ENDIAN +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 +# else +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 +# endif +#endif + +#endif \ No newline at end of file diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/termios-c_cc.h b/lib/libc/include/mipsel-linux-gnueabi/bits/termios-c_cc.h index 00debdaab1..107ce1aa5a 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/termios-c_cc.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/termios-c_cc.h @@ -1,5 +1,5 @@ /* termios c_cc symbolic constant definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/termios-c_lflag.h b/lib/libc/include/mipsel-linux-gnueabi/bits/termios-c_lflag.h index 3b2600dd17..c02ed9742f 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/termios-c_lflag.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/termios-c_lflag.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/termios-struct.h b/lib/libc/include/mipsel-linux-gnueabi/bits/termios-struct.h index c784a9efb0..e02dcaec28 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/termios-struct.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/termios-struct.h @@ -1,5 +1,5 @@ /* struct termios definition. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/termios-tcflow.h b/lib/libc/include/mipsel-linux-gnueabi/bits/termios-tcflow.h index 58b3497473..80e5ae674e 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/termios-tcflow.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/termios-tcflow.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/timerfd.h b/lib/libc/include/mipsel-linux-gnueabi/bits/timerfd.h index d48cd13775..7b3a70004f 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/timerfd.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/timerfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2008-2023 Free Software Foundation, Inc. +/* Copyright (C) 2008-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/types/stack_t.h b/lib/libc/include/mipsel-linux-gnueabi/bits/types/stack_t.h index 6129ea23cd..864c44b004 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/types/stack_t.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/types/stack_t.h @@ -1,5 +1,5 @@ /* Define stack_t. MIPS Linux version. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_msqid_ds.h b/lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_msqid_ds.h index 957a980853..1e4d4868f2 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_msqid_ds.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_msqid_ds.h @@ -1,5 +1,5 @@ /* Linux/MIPS implementation of the SysV message struct msqid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_semid_ds.h b/lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_semid_ds.h index 7429ac9b50..1a780c0b62 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_semid_ds.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_semid_ds.h @@ -1,5 +1,5 @@ /* MIPS implementation of the semaphore struct semid_ds - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_shmid_ds.h b/lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_shmid_ds.h index 81c914a9ea..b54474f413 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_shmid_ds.h +++ b/lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_shmid_ds.h @@ -1,5 +1,5 @@ /* Linux/MIPS implementation of the shared memory struct shmid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabi/ieee754.h b/lib/libc/include/mipsel-linux-gnueabi/ieee754.h index 2676970c34..1ebef9733c 100644 --- a/lib/libc/include/mipsel-linux-gnueabi/ieee754.h +++ b/lib/libc/include/mipsel-linux-gnueabi/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/dlfcn.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/dlfcn.h index a487e012c5..365f640332 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/dlfcn.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/dlfcn.h @@ -1,5 +1,5 @@ /* System dependent definitions for run-time dynamic loading. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/errno.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/errno.h index 59718e55f9..164daf7c40 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/errno.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/errno.h @@ -1,5 +1,5 @@ /* Error constants. MIPS/Linux specific version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/eventfd.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/eventfd.h index f874f0bfe6..9fa7aae89c 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/eventfd.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/eventfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/inotify.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/inotify.h index d27e1ee586..fd60b352e4 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/inotify.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/inotify.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/ioctl-types.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/ioctl-types.h index bcbccc1208..949d722e49 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/ioctl-types.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/ioctl-types.h @@ -1,5 +1,5 @@ /* Structure types for pre-termios terminal ioctls. Linux/MIPS version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/ipctypes.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/ipctypes.h index bbd3c52989..7382c8b807 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/ipctypes.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/ipctypes.h @@ -1,5 +1,5 @@ /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/mman.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/mman.h index 5de9744832..909f88e930 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/mman.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/MIPS version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/poll.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/poll.h index 4b921c84ba..9db55ab054 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/poll.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/poll.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/pthread_stack_min.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/pthread_stack_min.h index 7624eb42f5..2d25e48396 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/pthread_stack_min.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/pthread_stack_min.h @@ -1,5 +1,5 @@ /* Definition of PTHREAD_STACK_MIN. MIPS Linux version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/pthreadtypes-arch.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/pthreadtypes-arch.h index 3462039663..9c87459430 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/pthreadtypes-arch.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/pthreadtypes-arch.h @@ -1,5 +1,5 @@ /* Machine-specific pthread type layouts. MIPS version. - Copyright (C) 2005-2023 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/resource.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/resource.h index b47567d6dd..4813808e9e 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/resource.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/resource.h @@ -1,5 +1,5 @@ /* Bit values & structures for resource limits. Linux/MIPS version. - Copyright (C) 1994-2023 Free Software Foundation, Inc. + Copyright (C) 1994-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/semaphore.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/semaphore.h index 62f7bfebea..03db9e1b6f 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/semaphore.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/semaphore.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/shmlba.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/shmlba.h index 3c6b45352a..0a73b76ff0 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/shmlba.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/shmlba.h @@ -1,5 +1,5 @@ /* Define SHMLBA. MIPS version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/sigaction.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/sigaction.h index 5ae13b5f11..20b4671d29 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/sigaction.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/sigaction.h @@ -1,5 +1,5 @@ /* The proper definitions for Linux/MIPS's sigaction. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/sigcontext.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/sigcontext.h index 6f5ef74986..36fc930f33 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/sigcontext.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/sigcontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/signalfd.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/signalfd.h index 2709bea4eb..3a67fccd58 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/signalfd.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/signalfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/signum-arch.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/signum-arch.h index 97e8248998..8d58c9687f 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/signum-arch.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/signum-arch.h @@ -1,5 +1,5 @@ /* Signal number definitions. Linux/MIPS version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/socket-constants.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/socket-constants.h index 492fdbf258..377e5fba63 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/socket-constants.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/socket-constants.h @@ -1,5 +1,5 @@ /* Socket constants which vary among Linux architectures. Version for MIPS. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/socket_type.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/socket_type.h index fd12df6edd..4ef2f565db 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/socket_type.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/socket_type.h @@ -1,5 +1,5 @@ /* Define enum __socket_type for Linux/MIPS. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/statfs.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/statfs.h index 0643bba28f..48722ded59 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/statfs.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/statfs.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/struct_mutex.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/struct_mutex.h index 9ce0ec7309..6b7b7208c6 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/struct_mutex.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/struct_mutex.h @@ -1,5 +1,5 @@ /* MIPS internal mutex struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/struct_rwlock.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/struct_rwlock.h new file mode 100644 index 0000000000..bb58e127e5 --- /dev/null +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/struct_rwlock.h @@ -0,0 +1,71 @@ +/* MIPS internal rwlock struct definitions. + Copyright (C) 2019-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _RWLOCK_INTERNAL_H +#define _RWLOCK_INTERNAL_H + +struct __pthread_rwlock_arch_t +{ + unsigned int __readers; + unsigned int __writers; + unsigned int __wrphase_futex; + unsigned int __writers_futex; + unsigned int __pad3; + unsigned int __pad4; +#if _MIPS_SIM == _ABI64 + int __cur_writer; + int __shared; + unsigned long int __pad1; + unsigned long int __pad2; + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned int __flags; +# else +# if __BYTE_ORDER == __BIG_ENDIAN + unsigned char __pad1; + unsigned char __pad2; + unsigned char __shared; + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned char __flags; +# else + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned char __flags; + unsigned char __shared; + unsigned char __pad1; + unsigned char __pad2; +# endif + int __cur_writer; +#endif +}; + +#if _MIPS_SIM == _ABI64 +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags +#else +# if __BYTE_ORDER == __BIG_ENDIAN +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 +# else +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 +# endif +#endif + +#endif \ No newline at end of file diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/termios-c_cc.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/termios-c_cc.h index 00debdaab1..107ce1aa5a 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/termios-c_cc.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/termios-c_cc.h @@ -1,5 +1,5 @@ /* termios c_cc symbolic constant definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/termios-c_lflag.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/termios-c_lflag.h index 3b2600dd17..c02ed9742f 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/termios-c_lflag.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/termios-c_lflag.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/termios-struct.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/termios-struct.h index c784a9efb0..e02dcaec28 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/termios-struct.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/termios-struct.h @@ -1,5 +1,5 @@ /* struct termios definition. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/termios-tcflow.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/termios-tcflow.h index 58b3497473..80e5ae674e 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/termios-tcflow.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/termios-tcflow.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/mips version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/timerfd.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/timerfd.h index d48cd13775..7b3a70004f 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/timerfd.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/timerfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2008-2023 Free Software Foundation, Inc. +/* Copyright (C) 2008-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/types/stack_t.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/types/stack_t.h index 6129ea23cd..864c44b004 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/types/stack_t.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/types/stack_t.h @@ -1,5 +1,5 @@ /* Define stack_t. MIPS Linux version. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_msqid_ds.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_msqid_ds.h index 957a980853..1e4d4868f2 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_msqid_ds.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_msqid_ds.h @@ -1,5 +1,5 @@ /* Linux/MIPS implementation of the SysV message struct msqid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_semid_ds.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_semid_ds.h index 7429ac9b50..1a780c0b62 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_semid_ds.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_semid_ds.h @@ -1,5 +1,5 @@ /* MIPS implementation of the semaphore struct semid_ds - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_shmid_ds.h b/lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_shmid_ds.h index 81c914a9ea..b54474f413 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_shmid_ds.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_shmid_ds.h @@ -1,5 +1,5 @@ /* Linux/MIPS implementation of the shared memory struct shmid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/mipsel-linux-gnueabihf/ieee754.h b/lib/libc/include/mipsel-linux-gnueabihf/ieee754.h index 2676970c34..1ebef9733c 100644 --- a/lib/libc/include/mipsel-linux-gnueabihf/ieee754.h +++ b/lib/libc/include/mipsel-linux-gnueabihf/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/environments.h b/lib/libc/include/powerpc-linux-gnueabi/bits/environments.h index b5c0cf16aa..39a7b5b3c9 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/environments.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/environments.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/fcntl.h b/lib/libc/include/powerpc-linux-gnueabi/bits/fcntl.h index 9d5fb2d79a..7e4a045a4f 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/fcntl.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for Linux/PowerPC. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -33,7 +33,7 @@ # define __O_LARGEFILE 0200000 #endif -#if __WORDSIZE == 64 +#if __WORDSIZE == 64 && !defined __USE_FILE_OFFSET64 # define F_GETLK 5 # define F_SETLK 6 # define F_SETLKW 7 diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/fenv.h b/lib/libc/include/powerpc-linux-gnueabi/bits/fenv.h index e3737480fe..df090306de 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/fenv.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/floatn.h b/lib/libc/include/powerpc-linux-gnueabi/bits/floatn.h index 9a382593aa..bcbd14ee88 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/floatn.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features on powerpc. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/fp-fast.h b/lib/libc/include/powerpc-linux-gnueabi/bits/fp-fast.h index ae6bf92fa6..c0d1f9b4c3 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/fp-fast.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/fp-fast.h @@ -1,5 +1,5 @@ /* Define FP_FAST_* macros. PowerPC version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/hwcap.h b/lib/libc/include/powerpc-linux-gnueabi/bits/hwcap.h index 658ed53cb4..da1926f2a7 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/hwcap.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/hwcap.h @@ -1,5 +1,5 @@ /* Defines for bits in AT_HWCAP and AT_HWCAP2. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/ioctl-types.h b/lib/libc/include/powerpc-linux-gnueabi/bits/ioctl-types.h index 6f4ec38e1b..86e866c458 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/ioctl-types.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/ioctl-types.h @@ -1,5 +1,5 @@ /* Structure types for pre-termios terminal ioctls. Linux/powerpc version. - Copyright (C) 2014-2023 Free Software Foundation, Inc. + Copyright (C) 2014-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/ipc-perm.h b/lib/libc/include/powerpc-linux-gnueabi/bits/ipc-perm.h index 06ba41e02c..c72a0a20ca 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/ipc-perm.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/ipc-perm.h @@ -1,5 +1,5 @@ /* struct ipc_perm definition. Linux/powerpc version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/iscanonical.h b/lib/libc/include/powerpc-linux-gnueabi/bits/iscanonical.h index 42d01898fe..42e944435a 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/iscanonical.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/iscanonical.h @@ -1,5 +1,5 @@ /* Define iscanonical macro. ldbl-128ibm version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/link.h b/lib/libc/include/powerpc-linux-gnueabi/bits/link.h index 7bc884809f..c72ea30ad8 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/link.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/link.h @@ -1,5 +1,5 @@ /* Machine-specific declarations for dynamic linker interface. PowerPC version - Copyright (C) 2004-2023 Free Software Foundation, Inc. + Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/long-double.h b/lib/libc/include/powerpc-linux-gnueabi/bits/long-double.h index 270ba4d0c3..29196107bd 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/long-double.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. ldbl-opt version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/mman.h b/lib/libc/include/powerpc-linux-gnueabi/bits/mman.h index bfd947e262..b29d3ea4d4 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/mman.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/PowerPC version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/procfs.h b/lib/libc/include/powerpc-linux-gnueabi/bits/procfs.h index 3a96bab178..81755cb37e 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/procfs.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. PowerPC version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/pthread_stack_min.h b/lib/libc/include/powerpc-linux-gnueabi/bits/pthread_stack_min.h index b579aabf71..e114466064 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/pthread_stack_min.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/pthread_stack_min.h @@ -1,5 +1,5 @@ /* Definition of PTHREAD_STACK_MIN. Linux/PPC version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/rseq.h b/lib/libc/include/powerpc-linux-gnueabi/bits/rseq.h index 5442eae04e..89b6e021c8 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/rseq.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences Linux powerpc architecture header. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/setjmp.h b/lib/libc/include/powerpc-linux-gnueabi/bits/setjmp.h index 4f4a3b3c86..7469fa4b1f 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/setjmp.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/setjmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/sigstack.h b/lib/libc/include/powerpc-linux-gnueabi/bits/sigstack.h index 5b629acd87..7a8ae559f0 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/sigstack.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/sigstack.h @@ -1,5 +1,5 @@ /* sigstack, sigaltstack definitions. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/socket-constants.h b/lib/libc/include/powerpc-linux-gnueabi/bits/socket-constants.h index 2047f7066d..f027d74d2e 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/socket-constants.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/socket-constants.h @@ -1,5 +1,5 @@ /* Socket constants which vary among Linux architectures. Version for POWER. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/struct_mutex.h b/lib/libc/include/powerpc-linux-gnueabi/bits/struct_mutex.h index 55e161158c..7019c3e0df 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/struct_mutex.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/struct_mutex.h @@ -1,5 +1,5 @@ /* PowerPC internal mutex struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/struct_rwlock.h b/lib/libc/include/powerpc-linux-gnueabi/bits/struct_rwlock.h index 14a741d3b9..970f14ae29 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/struct_rwlock.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/struct_rwlock.h @@ -1,5 +1,5 @@ /* PowerPC internal rwlock struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/struct_stat.h b/lib/libc/include/powerpc-linux-gnueabi/bits/struct_stat.h index 4556a09198..b457cf1ad2 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/struct_stat.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/termios-baud.h b/lib/libc/include/powerpc-linux-gnueabi/bits/termios-baud.h index 20b51e0fbd..42caf36967 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/termios-baud.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/termios-baud.h @@ -1,5 +1,5 @@ /* termios baud rate selection definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_cc.h b/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_cc.h index 2156d51f74..4a274e3ea8 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_cc.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_cc.h @@ -1,5 +1,5 @@ /* termios c_cc symbolic constant definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_cflag.h b/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_cflag.h index bcf4ca1ceb..0834d008fd 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_cflag.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_cflag.h @@ -1,5 +1,5 @@ /* termios control mode definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_iflag.h b/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_iflag.h index d3153f38d1..fca2795611 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_iflag.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_iflag.h @@ -1,5 +1,5 @@ /* termios input mode definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_lflag.h b/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_lflag.h index 212ea4f773..a29e7fff31 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_lflag.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_lflag.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_oflag.h b/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_oflag.h index aad4871344..b6ee5b8240 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_oflag.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_oflag.h @@ -1,5 +1,5 @@ /* termios output mode definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/termios-misc.h b/lib/libc/include/powerpc-linux-gnueabi/bits/termios-misc.h index 3b0c67b2fc..1a887fdb7f 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/termios-misc.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/termios-misc.h @@ -1,5 +1,5 @@ /* termios baud platform specific definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/timesize.h b/lib/libc/include/powerpc-linux-gnueabi/bits/timesize.h index 46ff2940e4..0f62c224b3 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/timesize.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, Linux/PowerPC. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_msqid_ds.h b/lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_msqid_ds.h index 3662f1fcd0..a868b0d3f0 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_msqid_ds.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_msqid_ds.h @@ -1,5 +1,5 @@ /* Linux/PowerPC implementation of the SysV message struct msqid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_semid_ds.h b/lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_semid_ds.h index 3976a51bb4..752ee29004 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_semid_ds.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_semid_ds.h @@ -1,5 +1,5 @@ /* PowerPC implementation of the semaphore struct semid_ds. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_shmid_ds.h b/lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_shmid_ds.h index b30672d8b9..0512a74821 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_shmid_ds.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_shmid_ds.h @@ -1,5 +1,5 @@ /* Linux/PowerPC implementation of the shared memory struct shmid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/bits/typesizes.h b/lib/libc/include/powerpc-linux-gnueabi/bits/typesizes.h index 2d8c19edb4..c25801fba6 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/bits/typesizes.h +++ b/lib/libc/include/powerpc-linux-gnueabi/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. PowerPC version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/fpu_control.h b/lib/libc/include/powerpc-linux-gnueabi/fpu_control.h index 4b9525d96b..1f60f59332 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/fpu_control.h +++ b/lib/libc/include/powerpc-linux-gnueabi/fpu_control.h @@ -1,5 +1,5 @@ /* FPU control word definitions. PowerPC version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/ieee754.h b/lib/libc/include/powerpc-linux-gnueabi/ieee754.h index 1169f4b24f..4251903568 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/ieee754.h +++ b/lib/libc/include/powerpc-linux-gnueabi/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/sys/ptrace.h b/lib/libc/include/powerpc-linux-gnueabi/sys/ptrace.h index 478282bf8d..37a713e31b 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/sys/ptrace.h +++ b/lib/libc/include/powerpc-linux-gnueabi/sys/ptrace.h @@ -1,5 +1,5 @@ /* `ptrace' debugger support interface. Linux/PowerPC version. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -40,6 +40,7 @@ __BEGIN_DECLS # undef PTRACE_GETSIGINFO # undef PTRACE_GETSIGMASK # undef PTRACE_GET_SYSCALL_INFO +# undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG # undef PTRACE_GETVRREGS # undef PTRACE_GETVSRREGS # undef PTRACE_INTERRUPT @@ -62,6 +63,7 @@ __BEGIN_DECLS # undef PTRACE_SETREGSET # undef PTRACE_SETSIGINFO # undef PTRACE_SETSIGMASK +# undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG # undef PTRACE_SETVRREGS # undef PTRACE_SETVSRREGS # undef PTRACE_SINGLEBLOCK @@ -265,8 +267,18 @@ enum __ptrace_request #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO /* Get rseq configuration information. */ - PTRACE_GET_RSEQ_CONFIGURATION = 0x420f + PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION + + /* Set configuration for syscall user dispatch. */ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, +#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG + + /* Get configuration for syscall user dispatch. */ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 +#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG }; diff --git a/lib/libc/include/powerpc-linux-gnueabi/sys/ucontext.h b/lib/libc/include/powerpc-linux-gnueabi/sys/ucontext.h index e868d0bb66..a4c964da86 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/sys/ucontext.h +++ b/lib/libc/include/powerpc-linux-gnueabi/sys/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabi/sys/user.h b/lib/libc/include/powerpc-linux-gnueabi/sys/user.h index 5c485b637b..fde8036739 100644 --- a/lib/libc/include/powerpc-linux-gnueabi/sys/user.h +++ b/lib/libc/include/powerpc-linux-gnueabi/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/environments.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/environments.h index b5c0cf16aa..39a7b5b3c9 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/environments.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/environments.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/fcntl.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/fcntl.h index 9d5fb2d79a..7e4a045a4f 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/fcntl.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for Linux/PowerPC. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -33,7 +33,7 @@ # define __O_LARGEFILE 0200000 #endif -#if __WORDSIZE == 64 +#if __WORDSIZE == 64 && !defined __USE_FILE_OFFSET64 # define F_GETLK 5 # define F_SETLK 6 # define F_SETLKW 7 diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/fenv.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/fenv.h index e3737480fe..df090306de 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/fenv.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/floatn.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/floatn.h index 9a382593aa..bcbd14ee88 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/floatn.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features on powerpc. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/fp-fast.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/fp-fast.h index ae6bf92fa6..c0d1f9b4c3 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/fp-fast.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/fp-fast.h @@ -1,5 +1,5 @@ /* Define FP_FAST_* macros. PowerPC version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/hwcap.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/hwcap.h index 658ed53cb4..da1926f2a7 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/hwcap.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/hwcap.h @@ -1,5 +1,5 @@ /* Defines for bits in AT_HWCAP and AT_HWCAP2. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/ioctl-types.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/ioctl-types.h index 6f4ec38e1b..86e866c458 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/ioctl-types.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/ioctl-types.h @@ -1,5 +1,5 @@ /* Structure types for pre-termios terminal ioctls. Linux/powerpc version. - Copyright (C) 2014-2023 Free Software Foundation, Inc. + Copyright (C) 2014-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/ipc-perm.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/ipc-perm.h index 06ba41e02c..c72a0a20ca 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/ipc-perm.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/ipc-perm.h @@ -1,5 +1,5 @@ /* struct ipc_perm definition. Linux/powerpc version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/iscanonical.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/iscanonical.h index 42d01898fe..42e944435a 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/iscanonical.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/iscanonical.h @@ -1,5 +1,5 @@ /* Define iscanonical macro. ldbl-128ibm version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/link.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/link.h index 7bc884809f..c72ea30ad8 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/link.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/link.h @@ -1,5 +1,5 @@ /* Machine-specific declarations for dynamic linker interface. PowerPC version - Copyright (C) 2004-2023 Free Software Foundation, Inc. + Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/long-double.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/long-double.h index 270ba4d0c3..29196107bd 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/long-double.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. ldbl-opt version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/mman.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/mman.h index bfd947e262..b29d3ea4d4 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/mman.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/PowerPC version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/procfs.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/procfs.h index 3a96bab178..81755cb37e 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/procfs.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. PowerPC version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/pthread_stack_min.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/pthread_stack_min.h index b579aabf71..e114466064 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/pthread_stack_min.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/pthread_stack_min.h @@ -1,5 +1,5 @@ /* Definition of PTHREAD_STACK_MIN. Linux/PPC version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/rseq.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/rseq.h index 5442eae04e..89b6e021c8 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/rseq.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences Linux powerpc architecture header. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/setjmp.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/setjmp.h index 4f4a3b3c86..7469fa4b1f 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/setjmp.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/setjmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/sigstack.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/sigstack.h index 5b629acd87..7a8ae559f0 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/sigstack.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/sigstack.h @@ -1,5 +1,5 @@ /* sigstack, sigaltstack definitions. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/socket-constants.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/socket-constants.h index 2047f7066d..f027d74d2e 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/socket-constants.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/socket-constants.h @@ -1,5 +1,5 @@ /* Socket constants which vary among Linux architectures. Version for POWER. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/struct_mutex.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/struct_mutex.h index 55e161158c..7019c3e0df 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/struct_mutex.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/struct_mutex.h @@ -1,5 +1,5 @@ /* PowerPC internal mutex struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/struct_rwlock.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/struct_rwlock.h index 14a741d3b9..970f14ae29 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/struct_rwlock.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/struct_rwlock.h @@ -1,5 +1,5 @@ /* PowerPC internal rwlock struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/struct_stat.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/struct_stat.h index 4556a09198..b457cf1ad2 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/struct_stat.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-baud.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-baud.h index 20b51e0fbd..42caf36967 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-baud.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-baud.h @@ -1,5 +1,5 @@ /* termios baud rate selection definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_cc.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_cc.h index 2156d51f74..4a274e3ea8 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_cc.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_cc.h @@ -1,5 +1,5 @@ /* termios c_cc symbolic constant definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_cflag.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_cflag.h index bcf4ca1ceb..0834d008fd 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_cflag.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_cflag.h @@ -1,5 +1,5 @@ /* termios control mode definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_iflag.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_iflag.h index d3153f38d1..fca2795611 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_iflag.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_iflag.h @@ -1,5 +1,5 @@ /* termios input mode definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_lflag.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_lflag.h index 212ea4f773..a29e7fff31 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_lflag.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_lflag.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_oflag.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_oflag.h index aad4871344..b6ee5b8240 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_oflag.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_oflag.h @@ -1,5 +1,5 @@ /* termios output mode definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-misc.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-misc.h index 3b0c67b2fc..1a887fdb7f 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-misc.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/termios-misc.h @@ -1,5 +1,5 @@ /* termios baud platform specific definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/timesize.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/timesize.h index 46ff2940e4..0f62c224b3 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/timesize.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, Linux/PowerPC. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_msqid_ds.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_msqid_ds.h index 3662f1fcd0..a868b0d3f0 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_msqid_ds.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_msqid_ds.h @@ -1,5 +1,5 @@ /* Linux/PowerPC implementation of the SysV message struct msqid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_semid_ds.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_semid_ds.h index 3976a51bb4..752ee29004 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_semid_ds.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_semid_ds.h @@ -1,5 +1,5 @@ /* PowerPC implementation of the semaphore struct semid_ds. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_shmid_ds.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_shmid_ds.h index b30672d8b9..0512a74821 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_shmid_ds.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_shmid_ds.h @@ -1,5 +1,5 @@ /* Linux/PowerPC implementation of the shared memory struct shmid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/bits/typesizes.h b/lib/libc/include/powerpc-linux-gnueabihf/bits/typesizes.h index 2d8c19edb4..c25801fba6 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/bits/typesizes.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. PowerPC version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/fpu_control.h b/lib/libc/include/powerpc-linux-gnueabihf/fpu_control.h index 4b9525d96b..1f60f59332 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/fpu_control.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/fpu_control.h @@ -1,5 +1,5 @@ /* FPU control word definitions. PowerPC version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/ieee754.h b/lib/libc/include/powerpc-linux-gnueabihf/ieee754.h index 1169f4b24f..4251903568 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/ieee754.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/sys/ptrace.h b/lib/libc/include/powerpc-linux-gnueabihf/sys/ptrace.h index 478282bf8d..37a713e31b 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/sys/ptrace.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/sys/ptrace.h @@ -1,5 +1,5 @@ /* `ptrace' debugger support interface. Linux/PowerPC version. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -40,6 +40,7 @@ __BEGIN_DECLS # undef PTRACE_GETSIGINFO # undef PTRACE_GETSIGMASK # undef PTRACE_GET_SYSCALL_INFO +# undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG # undef PTRACE_GETVRREGS # undef PTRACE_GETVSRREGS # undef PTRACE_INTERRUPT @@ -62,6 +63,7 @@ __BEGIN_DECLS # undef PTRACE_SETREGSET # undef PTRACE_SETSIGINFO # undef PTRACE_SETSIGMASK +# undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG # undef PTRACE_SETVRREGS # undef PTRACE_SETVSRREGS # undef PTRACE_SINGLEBLOCK @@ -265,8 +267,18 @@ enum __ptrace_request #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO /* Get rseq configuration information. */ - PTRACE_GET_RSEQ_CONFIGURATION = 0x420f + PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION + + /* Set configuration for syscall user dispatch. */ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, +#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG + + /* Get configuration for syscall user dispatch. */ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 +#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG }; diff --git a/lib/libc/include/powerpc-linux-gnueabihf/sys/ucontext.h b/lib/libc/include/powerpc-linux-gnueabihf/sys/ucontext.h index e868d0bb66..a4c964da86 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/sys/ucontext.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/sys/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc-linux-gnueabihf/sys/user.h b/lib/libc/include/powerpc-linux-gnueabihf/sys/user.h index 5c485b637b..fde8036739 100644 --- a/lib/libc/include/powerpc-linux-gnueabihf/sys/user.h +++ b/lib/libc/include/powerpc-linux-gnueabihf/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/environments.h b/lib/libc/include/powerpc64-linux-gnu/bits/environments.h index b5c0cf16aa..39a7b5b3c9 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/environments.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/environments.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/fcntl.h b/lib/libc/include/powerpc64-linux-gnu/bits/fcntl.h index 9d5fb2d79a..7e4a045a4f 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/fcntl.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for Linux/PowerPC. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -33,7 +33,7 @@ # define __O_LARGEFILE 0200000 #endif -#if __WORDSIZE == 64 +#if __WORDSIZE == 64 && !defined __USE_FILE_OFFSET64 # define F_GETLK 5 # define F_SETLK 6 # define F_SETLKW 7 diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/fenv.h b/lib/libc/include/powerpc64-linux-gnu/bits/fenv.h index e3737480fe..df090306de 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/fenv.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/floatn.h b/lib/libc/include/powerpc64-linux-gnu/bits/floatn.h index 9a382593aa..bcbd14ee88 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/floatn.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features on powerpc. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/fp-fast.h b/lib/libc/include/powerpc64-linux-gnu/bits/fp-fast.h index ae6bf92fa6..c0d1f9b4c3 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/fp-fast.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/fp-fast.h @@ -1,5 +1,5 @@ /* Define FP_FAST_* macros. PowerPC version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/hwcap.h b/lib/libc/include/powerpc64-linux-gnu/bits/hwcap.h index 658ed53cb4..da1926f2a7 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/hwcap.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/hwcap.h @@ -1,5 +1,5 @@ /* Defines for bits in AT_HWCAP and AT_HWCAP2. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/ioctl-types.h b/lib/libc/include/powerpc64-linux-gnu/bits/ioctl-types.h index 6f4ec38e1b..86e866c458 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/ioctl-types.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/ioctl-types.h @@ -1,5 +1,5 @@ /* Structure types for pre-termios terminal ioctls. Linux/powerpc version. - Copyright (C) 2014-2023 Free Software Foundation, Inc. + Copyright (C) 2014-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/ipc-perm.h b/lib/libc/include/powerpc64-linux-gnu/bits/ipc-perm.h index 06ba41e02c..c72a0a20ca 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/ipc-perm.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/ipc-perm.h @@ -1,5 +1,5 @@ /* struct ipc_perm definition. Linux/powerpc version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/iscanonical.h b/lib/libc/include/powerpc64-linux-gnu/bits/iscanonical.h index 42d01898fe..42e944435a 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/iscanonical.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/iscanonical.h @@ -1,5 +1,5 @@ /* Define iscanonical macro. ldbl-128ibm version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/link.h b/lib/libc/include/powerpc64-linux-gnu/bits/link.h index 7bc884809f..c72ea30ad8 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/link.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/link.h @@ -1,5 +1,5 @@ /* Machine-specific declarations for dynamic linker interface. PowerPC version - Copyright (C) 2004-2023 Free Software Foundation, Inc. + Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/long-double.h b/lib/libc/include/powerpc64-linux-gnu/bits/long-double.h index 270ba4d0c3..29196107bd 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/long-double.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. ldbl-opt version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/mman.h b/lib/libc/include/powerpc64-linux-gnu/bits/mman.h index bfd947e262..b29d3ea4d4 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/mman.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/PowerPC version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/procfs.h b/lib/libc/include/powerpc64-linux-gnu/bits/procfs.h index 3a96bab178..81755cb37e 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/procfs.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. PowerPC version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/pthread_stack_min.h b/lib/libc/include/powerpc64-linux-gnu/bits/pthread_stack_min.h index b579aabf71..e114466064 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/pthread_stack_min.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/pthread_stack_min.h @@ -1,5 +1,5 @@ /* Definition of PTHREAD_STACK_MIN. Linux/PPC version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/rseq.h b/lib/libc/include/powerpc64-linux-gnu/bits/rseq.h index 5442eae04e..89b6e021c8 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/rseq.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences Linux powerpc architecture header. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/setjmp.h b/lib/libc/include/powerpc64-linux-gnu/bits/setjmp.h index 4f4a3b3c86..7469fa4b1f 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/setjmp.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/setjmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/sigstack.h b/lib/libc/include/powerpc64-linux-gnu/bits/sigstack.h index 5b629acd87..7a8ae559f0 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/sigstack.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/sigstack.h @@ -1,5 +1,5 @@ /* sigstack, sigaltstack definitions. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/socket-constants.h b/lib/libc/include/powerpc64-linux-gnu/bits/socket-constants.h index 2047f7066d..f027d74d2e 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/socket-constants.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/socket-constants.h @@ -1,5 +1,5 @@ /* Socket constants which vary among Linux architectures. Version for POWER. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/struct_mutex.h b/lib/libc/include/powerpc64-linux-gnu/bits/struct_mutex.h index 55e161158c..7019c3e0df 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/struct_mutex.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/struct_mutex.h @@ -1,5 +1,5 @@ /* PowerPC internal mutex struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/struct_rwlock.h b/lib/libc/include/powerpc64-linux-gnu/bits/struct_rwlock.h index 14a741d3b9..970f14ae29 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/struct_rwlock.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/struct_rwlock.h @@ -1,5 +1,5 @@ /* PowerPC internal rwlock struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/struct_stat.h b/lib/libc/include/powerpc64-linux-gnu/bits/struct_stat.h index 4556a09198..b457cf1ad2 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/struct_stat.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/termios-baud.h b/lib/libc/include/powerpc64-linux-gnu/bits/termios-baud.h index 20b51e0fbd..42caf36967 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/termios-baud.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/termios-baud.h @@ -1,5 +1,5 @@ /* termios baud rate selection definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_cc.h b/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_cc.h index 2156d51f74..4a274e3ea8 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_cc.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_cc.h @@ -1,5 +1,5 @@ /* termios c_cc symbolic constant definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_cflag.h b/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_cflag.h index bcf4ca1ceb..0834d008fd 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_cflag.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_cflag.h @@ -1,5 +1,5 @@ /* termios control mode definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_iflag.h b/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_iflag.h index d3153f38d1..fca2795611 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_iflag.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_iflag.h @@ -1,5 +1,5 @@ /* termios input mode definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_lflag.h b/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_lflag.h index 212ea4f773..a29e7fff31 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_lflag.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_lflag.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_oflag.h b/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_oflag.h index aad4871344..b6ee5b8240 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_oflag.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/termios-c_oflag.h @@ -1,5 +1,5 @@ /* termios output mode definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/termios-misc.h b/lib/libc/include/powerpc64-linux-gnu/bits/termios-misc.h index 3b0c67b2fc..1a887fdb7f 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/termios-misc.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/termios-misc.h @@ -1,5 +1,5 @@ /* termios baud platform specific definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/timesize.h b/lib/libc/include/powerpc64-linux-gnu/bits/timesize.h index 46ff2940e4..0f62c224b3 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/timesize.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, Linux/PowerPC. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/types/struct_msqid_ds.h b/lib/libc/include/powerpc64-linux-gnu/bits/types/struct_msqid_ds.h index 3662f1fcd0..a868b0d3f0 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/types/struct_msqid_ds.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/types/struct_msqid_ds.h @@ -1,5 +1,5 @@ /* Linux/PowerPC implementation of the SysV message struct msqid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/types/struct_semid_ds.h b/lib/libc/include/powerpc64-linux-gnu/bits/types/struct_semid_ds.h index 3976a51bb4..752ee29004 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/types/struct_semid_ds.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/types/struct_semid_ds.h @@ -1,5 +1,5 @@ /* PowerPC implementation of the semaphore struct semid_ds. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/types/struct_shmid_ds.h b/lib/libc/include/powerpc64-linux-gnu/bits/types/struct_shmid_ds.h index b30672d8b9..0512a74821 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/types/struct_shmid_ds.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/types/struct_shmid_ds.h @@ -1,5 +1,5 @@ /* Linux/PowerPC implementation of the shared memory struct shmid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/bits/typesizes.h b/lib/libc/include/powerpc64-linux-gnu/bits/typesizes.h index 2d8c19edb4..c25801fba6 100644 --- a/lib/libc/include/powerpc64-linux-gnu/bits/typesizes.h +++ b/lib/libc/include/powerpc64-linux-gnu/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. PowerPC version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/fpu_control.h b/lib/libc/include/powerpc64-linux-gnu/fpu_control.h index 4b9525d96b..1f60f59332 100644 --- a/lib/libc/include/powerpc64-linux-gnu/fpu_control.h +++ b/lib/libc/include/powerpc64-linux-gnu/fpu_control.h @@ -1,5 +1,5 @@ /* FPU control word definitions. PowerPC version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/gnu/lib-names-64-v1.h b/lib/libc/include/powerpc64-linux-gnu/gnu/lib-names-64-v1.h index 15032514a4..4b2c00bbd6 100644 --- a/lib/libc/include/powerpc64-linux-gnu/gnu/lib-names-64-v1.h +++ b/lib/libc/include/powerpc64-linux-gnu/gnu/lib-names-64-v1.h @@ -7,7 +7,6 @@ #define LD_SO "ld64.so.1" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/powerpc64-linux-gnu/ieee754.h b/lib/libc/include/powerpc64-linux-gnu/ieee754.h index 1169f4b24f..4251903568 100644 --- a/lib/libc/include/powerpc64-linux-gnu/ieee754.h +++ b/lib/libc/include/powerpc64-linux-gnu/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/sys/ptrace.h b/lib/libc/include/powerpc64-linux-gnu/sys/ptrace.h index 478282bf8d..37a713e31b 100644 --- a/lib/libc/include/powerpc64-linux-gnu/sys/ptrace.h +++ b/lib/libc/include/powerpc64-linux-gnu/sys/ptrace.h @@ -1,5 +1,5 @@ /* `ptrace' debugger support interface. Linux/PowerPC version. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -40,6 +40,7 @@ __BEGIN_DECLS # undef PTRACE_GETSIGINFO # undef PTRACE_GETSIGMASK # undef PTRACE_GET_SYSCALL_INFO +# undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG # undef PTRACE_GETVRREGS # undef PTRACE_GETVSRREGS # undef PTRACE_INTERRUPT @@ -62,6 +63,7 @@ __BEGIN_DECLS # undef PTRACE_SETREGSET # undef PTRACE_SETSIGINFO # undef PTRACE_SETSIGMASK +# undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG # undef PTRACE_SETVRREGS # undef PTRACE_SETVSRREGS # undef PTRACE_SINGLEBLOCK @@ -265,8 +267,18 @@ enum __ptrace_request #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO /* Get rseq configuration information. */ - PTRACE_GET_RSEQ_CONFIGURATION = 0x420f + PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION + + /* Set configuration for syscall user dispatch. */ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, +#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG + + /* Get configuration for syscall user dispatch. */ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 +#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG }; diff --git a/lib/libc/include/powerpc64-linux-gnu/sys/ucontext.h b/lib/libc/include/powerpc64-linux-gnu/sys/ucontext.h index e868d0bb66..a4c964da86 100644 --- a/lib/libc/include/powerpc64-linux-gnu/sys/ucontext.h +++ b/lib/libc/include/powerpc64-linux-gnu/sys/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64-linux-gnu/sys/user.h b/lib/libc/include/powerpc64-linux-gnu/sys/user.h index 5c485b637b..fde8036739 100644 --- a/lib/libc/include/powerpc64-linux-gnu/sys/user.h +++ b/lib/libc/include/powerpc64-linux-gnu/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/environments.h b/lib/libc/include/powerpc64le-linux-gnu/bits/environments.h index b5c0cf16aa..39a7b5b3c9 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/environments.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/environments.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/fcntl.h b/lib/libc/include/powerpc64le-linux-gnu/bits/fcntl.h index 9d5fb2d79a..7e4a045a4f 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/fcntl.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for Linux/PowerPC. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -33,7 +33,7 @@ # define __O_LARGEFILE 0200000 #endif -#if __WORDSIZE == 64 +#if __WORDSIZE == 64 && !defined __USE_FILE_OFFSET64 # define F_GETLK 5 # define F_SETLK 6 # define F_SETLKW 7 diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/fenv.h b/lib/libc/include/powerpc64le-linux-gnu/bits/fenv.h index e3737480fe..df090306de 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/fenv.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/floatn.h b/lib/libc/include/powerpc64le-linux-gnu/bits/floatn.h index 9a382593aa..bcbd14ee88 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/floatn.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features on powerpc. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/fp-fast.h b/lib/libc/include/powerpc64le-linux-gnu/bits/fp-fast.h index ae6bf92fa6..c0d1f9b4c3 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/fp-fast.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/fp-fast.h @@ -1,5 +1,5 @@ /* Define FP_FAST_* macros. PowerPC version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/hwcap.h b/lib/libc/include/powerpc64le-linux-gnu/bits/hwcap.h index 658ed53cb4..da1926f2a7 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/hwcap.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/hwcap.h @@ -1,5 +1,5 @@ /* Defines for bits in AT_HWCAP and AT_HWCAP2. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/ioctl-types.h b/lib/libc/include/powerpc64le-linux-gnu/bits/ioctl-types.h index 6f4ec38e1b..86e866c458 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/ioctl-types.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/ioctl-types.h @@ -1,5 +1,5 @@ /* Structure types for pre-termios terminal ioctls. Linux/powerpc version. - Copyright (C) 2014-2023 Free Software Foundation, Inc. + Copyright (C) 2014-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/ipc-perm.h b/lib/libc/include/powerpc64le-linux-gnu/bits/ipc-perm.h index 06ba41e02c..c72a0a20ca 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/ipc-perm.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/ipc-perm.h @@ -1,5 +1,5 @@ /* struct ipc_perm definition. Linux/powerpc version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/iscanonical.h b/lib/libc/include/powerpc64le-linux-gnu/bits/iscanonical.h index 42d01898fe..42e944435a 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/iscanonical.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/iscanonical.h @@ -1,5 +1,5 @@ /* Define iscanonical macro. ldbl-128ibm version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/link.h b/lib/libc/include/powerpc64le-linux-gnu/bits/link.h index 7bc884809f..c72ea30ad8 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/link.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/link.h @@ -1,5 +1,5 @@ /* Machine-specific declarations for dynamic linker interface. PowerPC version - Copyright (C) 2004-2023 Free Software Foundation, Inc. + Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/long-double.h b/lib/libc/include/powerpc64le-linux-gnu/bits/long-double.h index 36b3a3a854..577b7f8df5 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/long-double.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. ldbl-opt version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/mman.h b/lib/libc/include/powerpc64le-linux-gnu/bits/mman.h index bfd947e262..b29d3ea4d4 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/mman.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/PowerPC version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/procfs.h b/lib/libc/include/powerpc64le-linux-gnu/bits/procfs.h index 3a96bab178..81755cb37e 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/procfs.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. PowerPC version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/pthread_stack_min.h b/lib/libc/include/powerpc64le-linux-gnu/bits/pthread_stack_min.h index b579aabf71..e114466064 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/pthread_stack_min.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/pthread_stack_min.h @@ -1,5 +1,5 @@ /* Definition of PTHREAD_STACK_MIN. Linux/PPC version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/rseq.h b/lib/libc/include/powerpc64le-linux-gnu/bits/rseq.h index 5442eae04e..89b6e021c8 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/rseq.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences Linux powerpc architecture header. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/setjmp.h b/lib/libc/include/powerpc64le-linux-gnu/bits/setjmp.h index 4f4a3b3c86..7469fa4b1f 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/setjmp.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/setjmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/sigstack.h b/lib/libc/include/powerpc64le-linux-gnu/bits/sigstack.h index 5b629acd87..7a8ae559f0 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/sigstack.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/sigstack.h @@ -1,5 +1,5 @@ /* sigstack, sigaltstack definitions. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/socket-constants.h b/lib/libc/include/powerpc64le-linux-gnu/bits/socket-constants.h index 2047f7066d..f027d74d2e 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/socket-constants.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/socket-constants.h @@ -1,5 +1,5 @@ /* Socket constants which vary among Linux architectures. Version for POWER. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/struct_mutex.h b/lib/libc/include/powerpc64le-linux-gnu/bits/struct_mutex.h index 55e161158c..7019c3e0df 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/struct_mutex.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/struct_mutex.h @@ -1,5 +1,5 @@ /* PowerPC internal mutex struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/struct_rwlock.h b/lib/libc/include/powerpc64le-linux-gnu/bits/struct_rwlock.h index 14a741d3b9..970f14ae29 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/struct_rwlock.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/struct_rwlock.h @@ -1,5 +1,5 @@ /* PowerPC internal rwlock struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/struct_stat.h b/lib/libc/include/powerpc64le-linux-gnu/bits/struct_stat.h index 4556a09198..b457cf1ad2 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/struct_stat.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/termios-baud.h b/lib/libc/include/powerpc64le-linux-gnu/bits/termios-baud.h index 20b51e0fbd..42caf36967 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/termios-baud.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/termios-baud.h @@ -1,5 +1,5 @@ /* termios baud rate selection definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_cc.h b/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_cc.h index 2156d51f74..4a274e3ea8 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_cc.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_cc.h @@ -1,5 +1,5 @@ /* termios c_cc symbolic constant definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_cflag.h b/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_cflag.h index bcf4ca1ceb..0834d008fd 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_cflag.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_cflag.h @@ -1,5 +1,5 @@ /* termios control mode definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_iflag.h b/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_iflag.h index d3153f38d1..fca2795611 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_iflag.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_iflag.h @@ -1,5 +1,5 @@ /* termios input mode definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_lflag.h b/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_lflag.h index 212ea4f773..a29e7fff31 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_lflag.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_lflag.h @@ -1,5 +1,5 @@ /* termios local mode definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_oflag.h b/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_oflag.h index aad4871344..b6ee5b8240 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_oflag.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_oflag.h @@ -1,5 +1,5 @@ /* termios output mode definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/termios-misc.h b/lib/libc/include/powerpc64le-linux-gnu/bits/termios-misc.h index 3b0c67b2fc..1a887fdb7f 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/termios-misc.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/termios-misc.h @@ -1,5 +1,5 @@ /* termios baud platform specific definitions. Linux/powerpc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/timesize.h b/lib/libc/include/powerpc64le-linux-gnu/bits/timesize.h index 46ff2940e4..0f62c224b3 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/timesize.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, Linux/PowerPC. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_msqid_ds.h b/lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_msqid_ds.h index 3662f1fcd0..a868b0d3f0 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_msqid_ds.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_msqid_ds.h @@ -1,5 +1,5 @@ /* Linux/PowerPC implementation of the SysV message struct msqid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_semid_ds.h b/lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_semid_ds.h index 3976a51bb4..752ee29004 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_semid_ds.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_semid_ds.h @@ -1,5 +1,5 @@ /* PowerPC implementation of the semaphore struct semid_ds. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_shmid_ds.h b/lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_shmid_ds.h index b30672d8b9..0512a74821 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_shmid_ds.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_shmid_ds.h @@ -1,5 +1,5 @@ /* Linux/PowerPC implementation of the shared memory struct shmid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/bits/typesizes.h b/lib/libc/include/powerpc64le-linux-gnu/bits/typesizes.h index 2d8c19edb4..c25801fba6 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/bits/typesizes.h +++ b/lib/libc/include/powerpc64le-linux-gnu/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. PowerPC version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/fpu_control.h b/lib/libc/include/powerpc64le-linux-gnu/fpu_control.h index 4b9525d96b..1f60f59332 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/fpu_control.h +++ b/lib/libc/include/powerpc64le-linux-gnu/fpu_control.h @@ -1,5 +1,5 @@ /* FPU control word definitions. PowerPC version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/gnu/lib-names-64-v2.h b/lib/libc/include/powerpc64le-linux-gnu/gnu/lib-names-64-v2.h index 80de7afa72..36329b69d7 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/gnu/lib-names-64-v2.h +++ b/lib/libc/include/powerpc64le-linux-gnu/gnu/lib-names-64-v2.h @@ -7,7 +7,6 @@ #define LD_SO "ld64.so.2" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/powerpc64le-linux-gnu/ieee754.h b/lib/libc/include/powerpc64le-linux-gnu/ieee754.h index 1169f4b24f..4251903568 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/ieee754.h +++ b/lib/libc/include/powerpc64le-linux-gnu/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/sys/ptrace.h b/lib/libc/include/powerpc64le-linux-gnu/sys/ptrace.h index 478282bf8d..37a713e31b 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/sys/ptrace.h +++ b/lib/libc/include/powerpc64le-linux-gnu/sys/ptrace.h @@ -1,5 +1,5 @@ /* `ptrace' debugger support interface. Linux/PowerPC version. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -40,6 +40,7 @@ __BEGIN_DECLS # undef PTRACE_GETSIGINFO # undef PTRACE_GETSIGMASK # undef PTRACE_GET_SYSCALL_INFO +# undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG # undef PTRACE_GETVRREGS # undef PTRACE_GETVSRREGS # undef PTRACE_INTERRUPT @@ -62,6 +63,7 @@ __BEGIN_DECLS # undef PTRACE_SETREGSET # undef PTRACE_SETSIGINFO # undef PTRACE_SETSIGMASK +# undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG # undef PTRACE_SETVRREGS # undef PTRACE_SETVSRREGS # undef PTRACE_SINGLEBLOCK @@ -265,8 +267,18 @@ enum __ptrace_request #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO /* Get rseq configuration information. */ - PTRACE_GET_RSEQ_CONFIGURATION = 0x420f + PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION + + /* Set configuration for syscall user dispatch. */ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, +#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG + + /* Get configuration for syscall user dispatch. */ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 +#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG }; diff --git a/lib/libc/include/powerpc64le-linux-gnu/sys/ucontext.h b/lib/libc/include/powerpc64le-linux-gnu/sys/ucontext.h index e868d0bb66..a4c964da86 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/sys/ucontext.h +++ b/lib/libc/include/powerpc64le-linux-gnu/sys/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/powerpc64le-linux-gnu/sys/user.h b/lib/libc/include/powerpc64le-linux-gnu/sys/user.h index 5c485b637b..fde8036739 100644 --- a/lib/libc/include/powerpc64le-linux-gnu/sys/user.h +++ b/lib/libc/include/powerpc64le-linux-gnu/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/endianness.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/endianness.h new file mode 100644 index 0000000000..16a1549ca7 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/endianness.h @@ -0,0 +1,11 @@ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 + +#ifndef _BITS_ENDIAN_H +# error "Never use directly; include instead." +#endif + +/* RISC-V is little-endian. */ +#define __BYTE_ORDER __LITTLE_ENDIAN + +#endif /* bits/endianness.h */ \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/environments.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/environments.h new file mode 100644 index 0000000000..d8ab3220e9 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/environments.h @@ -0,0 +1,81 @@ +/* Copyright (C) 2020-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _UNISTD_H +# error "Never include this file directly. Use instead" +#endif + +#include + +/* This header should define the following symbols under the described + situations. A value `1' means that the model is always supported, + `-1' means it is never supported. Undefined means it cannot be + statically decided. + + _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type + _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type + + _POSIX_V7_LP64_OFF32 64bit long and pointers and 32bit off_t type + _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type + + The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, + _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, + _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were + used in previous versions of the Unix standard and are available + only for compatibility. +*/ + +#if __WORDSIZE == 64 + +/* We can never provide environments with 32-bit wide pointers. */ +# define _POSIX_V7_ILP32_OFF32 -1 +# define _POSIX_V7_ILP32_OFFBIG -1 +# define _POSIX_V6_ILP32_OFF32 -1 +# define _POSIX_V6_ILP32_OFFBIG -1 +# define _XBS5_ILP32_OFF32 -1 +# define _XBS5_ILP32_OFFBIG -1 +/* We also have no use (for now) for an environment with bigger pointers + and offsets. */ +# define _POSIX_V7_LPBIG_OFFBIG -1 +# define _POSIX_V6_LPBIG_OFFBIG -1 +# define _XBS5_LPBIG_OFFBIG -1 + +/* By default we have 64-bit wide `long int', pointers and `off_t'. */ +# define _POSIX_V7_LP64_OFF64 1 +# define _POSIX_V6_LP64_OFF64 1 +# define _XBS5_LP64_OFF64 1 + +#else /* __WORDSIZE == 32 */ + +/* RISC-V requires 64-bit off_t */ +# define _POSIX_V7_ILP32_OFF32 -1 +# define _POSIX_V6_ILP32_OFF32 -1 +# define _XBS5_ILP32_OFF32 -1 + +# define _POSIX_V7_ILP32_OFFBIG 1 +# define _POSIX_V6_ILP32_OFFBIG 1 +# define _XBS5_ILP32_OFFBIG 1 + +/* We can never provide environments with 64-bit wide pointers. */ +# define _POSIX_V7_LP64_OFF64 -1 +# define _POSIX_V7_LPBIG_OFFBIG -1 +# define _POSIX_V6_LP64_OFF64 -1 +# define _POSIX_V6_LPBIG_OFFBIG -1 +# define _XBS5_LP64_OFF64 -1 +# define _XBS5_LPBIG_OFFBIG -1 + +#endif /* __WORDSIZE == 32 */ \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/fcntl.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/fcntl.h new file mode 100644 index 0000000000..f61875db67 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/fcntl.h @@ -0,0 +1,62 @@ +/* O_*, F_*, FD_* bit values for Linux / RISC-V. + Copyright (C) 2011-2024 Free Software Foundation, Inc. + + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _FCNTL_H +# error "Never use directly; include instead." +#endif + +#include + +/* In 64-bit ISA files are always with 64bit off_t and F_*LK64 are the same as + non-64-bit versions. It will need to be revised for 128-bit. */ +#if __WORDSIZE == 64 +# define __O_LARGEFILE 0 + +# define F_GETLK64 5 /* Get record locking info. */ +# define F_SETLK64 6 /* Set record locking info (non-blocking). */ +# define F_SETLKW64 7 /* Set record locking info (blocking). */ +#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'). */ +#if __WORDSIZE == 64 || !defined __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 + +/* Include generic Linux declarations. */ +#include \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/fenv.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/fenv.h new file mode 100644 index 0000000000..9467134bb3 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/fenv.h @@ -0,0 +1,74 @@ +/* Floating point environment, RISC-V version. + Copyright (C) 1998-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _FENV_H +# error "Never use directly; include instead." +#endif + +enum + { + FE_INEXACT = +#define FE_INEXACT (0x01) + FE_INEXACT, + FE_UNDERFLOW = +#define FE_UNDERFLOW (0x02) + FE_UNDERFLOW, + FE_OVERFLOW = +#define FE_OVERFLOW (0x04) + FE_OVERFLOW, + FE_DIVBYZERO = +#define FE_DIVBYZERO (0x08) + FE_DIVBYZERO, + FE_INVALID = +#define FE_INVALID (0x10) + FE_INVALID + }; + +#define FE_ALL_EXCEPT \ + (FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) + +enum + { + FE_TONEAREST = +#define FE_TONEAREST (0x0) + FE_TONEAREST, + FE_TOWARDZERO = +#define FE_TOWARDZERO (0x1) + FE_TOWARDZERO, + FE_DOWNWARD = +#define FE_DOWNWARD (0x2) + FE_DOWNWARD, + FE_UPWARD = +#define FE_UPWARD (0x3) + FE_UPWARD + }; + + +typedef unsigned int fexcept_t; +typedef unsigned int fenv_t; + +/* If the default argument is used we use this value. */ +#define FE_DFL_ENV ((__const fenv_t *) -1) + +#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) +/* Type representing floating-point control modes. */ +typedef unsigned int femode_t; + +/* Default floating-point control modes. */ +# define FE_DFL_MODE ((const femode_t *) -1L) +#endif \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/floatn.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/floatn.h new file mode 100644 index 0000000000..20c1af5c2e --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/floatn.h @@ -0,0 +1,97 @@ +/* Macros to control TS 18661-3 glibc features on ldbl-128 platforms. + Copyright (C) 2017-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_FLOATN_H +#define _BITS_FLOATN_H + +#include +#include + +/* Defined to 1 if the current compiler invocation provides a + floating-point type with the IEEE 754 binary128 format, and this + glibc includes corresponding *f128 interfaces for it. */ +#ifndef __NO_LONG_DOUBLE_MATH +# define __HAVE_FLOAT128 1 +#else +/* glibc does not support _Float128 for platforms where long double is + normally binary128 when building with long double as binary64. + GCC's default for supported scalar modes does not support it either + in that case. */ +# define __HAVE_FLOAT128 0 +#endif + +/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct + from the default float, double and long double types in this glibc. */ +#define __HAVE_DISTINCT_FLOAT128 0 + +/* Defined to 1 if the current compiler invocation provides a + floating-point type with the right format for _Float64x, and this + glibc includes corresponding *f64x interfaces for it. */ +#define __HAVE_FLOAT64X __HAVE_FLOAT128 + +/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format + of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has + the format of _Float128, which must be different from that of long + double. */ +#define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128 + +#ifndef __ASSEMBLER__ + +/* Defined to concatenate the literal suffix to be used with _Float128 + types, if __HAVE_FLOAT128 is 1. */ +# if __HAVE_FLOAT128 +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +/* The literal suffix f128 exists only since GCC 7.0. */ +# define __f128(x) x##l +# else +# define __f128(x) x##f128 +# endif +# endif + +/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ +# if __HAVE_FLOAT128 +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +# define __CFLOAT128 _Complex long double +# else +# define __CFLOAT128 _Complex _Float128 +# endif +# endif + +/* The remaining of this file provides support for older compilers. */ +# if __HAVE_FLOAT128 + +/* The type _Float128 exists only since GCC 7.0. */ +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +typedef long double _Float128; +# endif + +/* Various built-in functions do not exist before GCC 7.0. */ +# if !__GNUC_PREREQ (7, 0) +# define __builtin_huge_valf128() (__builtin_huge_vall ()) +# define __builtin_inff128() (__builtin_infl ()) +# define __builtin_nanf128(x) (__builtin_nanl (x)) +# define __builtin_nansf128(x) (__builtin_nansl (x)) +# endif + +# endif + +#endif /* !__ASSEMBLER__. */ + +#include + +#endif /* _BITS_FLOATN_H */ \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/link.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/link.h new file mode 100644 index 0000000000..9aa86a7c51 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/link.h @@ -0,0 +1,56 @@ +/* Machine-specific declarations for dynamic linker interface. RISC-V version. + Copyright (C) 2005-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _LINK_H +# error "Never include directly; use instead." +#endif + +typedef struct La_riscv_regs +{ + unsigned long int lr_reg[8]; /* a0 - a7 */ + double lr_fpreg[8]; /* fa0 - fa7 */ + unsigned long int lr_ra; + unsigned long int lr_sp; +} La_riscv_regs; + +/* Return values for calls from PLT on RISC-V. */ +typedef struct La_riscv_retval +{ + unsigned long int lrv_a0; + unsigned long int lrv_a1; + double lrv_fa0; + double lrv_fa1; +} La_riscv_retval; + +__BEGIN_DECLS + +extern ElfW(Addr) la_riscv_gnu_pltenter (ElfW(Sym) *__sym, unsigned int __ndx, + uintptr_t *__refcook, + uintptr_t *__defcook, + La_riscv_regs *__regs, + unsigned int *__flags, + const char *__symname, + long int *__framesizep); +extern unsigned int la_riscv_gnu_pltexit (ElfW(Sym) *__sym, unsigned int __ndx, + uintptr_t *__refcook, + uintptr_t *__defcook, + const La_riscv_regs *__inregs, + La_riscv_retval *__outregs, + const char *__symname); + +__END_DECLS \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/long-double.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/long-double.h new file mode 100644 index 0000000000..a83f6c746f --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/long-double.h @@ -0,0 +1,21 @@ +/* Properties of long double type. ldbl-128 version. + Copyright (C) 2016-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* long double is distinct from double, so there is nothing to + define here. */ +#define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/procfs.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/procfs.h new file mode 100644 index 0000000000..4fab0ffd9c --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/procfs.h @@ -0,0 +1,31 @@ +/* Types for registers for sys/procfs.h. RISC-V version. + Copyright (C) 1996-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _SYS_PROCFS_H +# error "Never include directly; use instead." +#endif + +#include + +/* ELF register definitions */ +#define ELF_NGREG NGREG +#define ELF_NFPREG NFPREG + +typedef unsigned long int elf_greg_t; +typedef unsigned long int elf_gregset_t[32]; +typedef union __riscv_mc_fp_state elf_fpregset_t; \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/pthreadtypes-arch.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/pthreadtypes-arch.h new file mode 100644 index 0000000000..460d0eaf1c --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/pthreadtypes-arch.h @@ -0,0 +1,45 @@ +/* Machine-specific pthread type layouts. RISC-V version. + Copyright (C) 2011-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _BITS_PTHREADTYPES_ARCH_H +#define _BITS_PTHREADTYPES_ARCH_H 1 + +#include + +#define __SIZEOF_PTHREAD_MUTEXATTR_T 4 +#define __SIZEOF_PTHREAD_COND_T 48 +#define __SIZEOF_PTHREAD_CONDATTR_T 4 +#define __SIZEOF_PTHREAD_RWLOCKATTR_T 8 +#define __SIZEOF_PTHREAD_BARRIERATTR_T 4 + +#if __WORDSIZE == 64 +# define __SIZEOF_PTHREAD_ATTR_T 56 +# define __SIZEOF_PTHREAD_MUTEX_T 40 +# define __SIZEOF_PTHREAD_RWLOCK_T 56 +# define __SIZEOF_PTHREAD_BARRIER_T 32 +#else +# define __SIZEOF_PTHREAD_ATTR_T 32 +# define __SIZEOF_PTHREAD_MUTEX_T 32 +# define __SIZEOF_PTHREAD_RWLOCK_T 48 +# define __SIZEOF_PTHREAD_BARRIER_T 20 +#endif + +#define __LOCK_ALIGNMENT +#define __ONCE_ALIGNMENT + +#endif /* bits/pthreadtypes.h */ \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/rseq.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/rseq.h new file mode 100644 index 0000000000..5ea695ad1c --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/rseq.h @@ -0,0 +1,29 @@ +/* Restartable Sequences architecture header. Stub version. + Copyright (C) 2021-2024 Free Software Foundation, Inc. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SYS_RSEQ_H +# error "Never use directly; include instead." +#endif + +/* RSEQ_SIG is a signature required before each abort handler code. + + It is a 32-bit value that maps to actual architecture code compiled + into applications and libraries. It needs to be defined for each + architecture. When choosing this value, it needs to be taken into + account that generating invalid instructions may have ill effects on + tools like objdump, and may also have impact on the CPU speculative + execution efficiency in some cases. */ \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/setjmp.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/setjmp.h new file mode 100644 index 0000000000..7ccaa193d0 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/setjmp.h @@ -0,0 +1,39 @@ +/* Define the machine-dependent type `jmp_buf'. RISC-V version. + Copyright (C) 2011-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _RISCV_BITS_SETJMP_H +#define _RISCV_BITS_SETJMP_H + +typedef struct __jmp_buf_internal_tag + { + /* Program counter. */ + long int __pc; + /* Callee-saved registers. */ + long int __regs[12]; + /* Stack pointer. */ + long int __sp; + + /* Callee-saved floating point registers. */ +#if defined __riscv_float_abi_double + double __fpregs[12]; +#elif !defined __riscv_float_abi_soft +# error unsupported FLEN +#endif + } __jmp_buf[1]; + +#endif /* _RISCV_BITS_SETJMP_H */ \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/sigcontext.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/sigcontext.h new file mode 100644 index 0000000000..14050da42c --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/sigcontext.h @@ -0,0 +1,31 @@ +/* Machine-dependent signal context structure for Linux. RISC-V version. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _BITS_SIGCONTEXT_H +#define _BITS_SIGCONTEXT_H 1 + +#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H +# error "Never use directly; include instead." +#endif + +struct sigcontext { + /* gregs[0] holds the program counter. */ + unsigned long int gregs[32]; + unsigned long long int fpregs[66] __attribute__ ((__aligned__ (16))); +}; + +#endif \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/struct_rwlock.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/struct_rwlock.h new file mode 100644 index 0000000000..0b7afa3e00 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/struct_rwlock.h @@ -0,0 +1,68 @@ +/* RISC-V internal rwlock struct definitions. + Copyright (C) 2019-2024 Free Software Foundation, Inc. + + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _RWLOCK_INTERNAL_H +#define _RWLOCK_INTERNAL_H + +/* There is a lot of padding in this structure. While it's not strictly + necessary on RISC-V, we're going to leave it in to be on the safe side in + case it's needed in the future. Most other architectures have the padding, + so this gives us the same extensibility as everyone else has. */ +struct __pthread_rwlock_arch_t +{ + unsigned int __readers; + unsigned int __writers; + unsigned int __wrphase_futex; + unsigned int __writers_futex; + unsigned int __pad3; + unsigned int __pad4; +#if __WORDSIZE == 64 + int __cur_writer; + int __shared; + unsigned long int __pad1; + unsigned long int __pad2; + unsigned int __flags; +#else +# if __BYTE_ORDER == __BIG_ENDIAN + unsigned char __pad1; + unsigned char __pad2; + unsigned char __shared; + unsigned char __flags; +# else + unsigned char __flags; + unsigned char __shared; + unsigned char __pad1; + unsigned char __pad2; +# endif + int __cur_writer; +#endif +}; + +#if __WORDSIZE == 64 +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags +#elif __BYTE_ORDER == __BIG_ENDIAN +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 +#else +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 +#endif + +#endif \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/struct_stat.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/struct_stat.h new file mode 100644 index 0000000000..c8e2d78b57 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/struct_stat.h @@ -0,0 +1,127 @@ +/* Definition for struct stat. + Copyright (C) 2020-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#if !defined _SYS_STAT_H && !defined _FCNTL_H +# error "Never include directly; use instead." +#endif + +#ifndef _BITS_STRUCT_STAT_H +#define _BITS_STRUCT_STAT_H 1 + +#include +#include + +#if defined __USE_FILE_OFFSET64 +# define __field64(type, type64, name) type64 name +#elif __WORDSIZE == 64 || defined __INO_T_MATCHES_INO64_T +# if defined __INO_T_MATCHES_INO64_T && !defined __OFF_T_MATCHES_OFF64_T +# error "ino_t and off_t must both be the same type" +# endif +# define __field64(type, type64, name) type name +#elif __BYTE_ORDER == __LITTLE_ENDIAN +# define __field64(type, type64, name) \ + type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad +#else +# define __field64(type, type64, name) \ + int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name +#endif + +struct stat + { + __dev_t st_dev; /* Device. */ + __field64(__ino_t, __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. */ + __dev_t __pad1; + __field64(__off_t, __off64_t, st_size); /* Size of file, in bytes. */ + __blksize_t st_blksize; /* Optimal block size for I/O. */ + int __pad2; + __field64(__blkcnt_t, __blkcnt64_t, st_blocks); /* 512-byte blocks */ +#ifdef __USE_XOPEN2K8 + /* Nanosecond resolution timestamps are stored in a format + equivalent to 'struct timespec'. This is the type used + whenever possible but the Unix namespace rules do not allow the + identifier 'timespec' to appear in the header. + Therefore we have to handle the use of this header in strictly + standard-compliant sources special. */ + struct timespec st_atim; /* Time of last access. */ + struct timespec st_mtim; /* Time of last modification. */ + struct timespec st_ctim; /* Time of last status change. */ +# define st_atime st_atim.tv_sec /* Backward compatibility. */ +# define st_mtime st_mtim.tv_sec +# define st_ctime st_ctim.tv_sec +#else + __time_t st_atime; /* Time of last access. */ + unsigned long int st_atimensec; /* Nscecs of last access. */ + __time_t st_mtime; /* Time of last modification. */ + unsigned long int st_mtimensec; /* Nsecs of last modification. */ + __time_t st_ctime; /* Time of last status change. */ + unsigned long int st_ctimensec; /* Nsecs of last status change. */ +#endif + int __glibc_reserved[2]; + }; + +#undef __field64 + +#ifdef __USE_LARGEFILE64 +struct stat64 + { + __dev_t st_dev; /* Device. */ + __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. */ + __dev_t __pad1; + __off64_t st_size; /* Size of file, in bytes. */ + __blksize_t st_blksize; /* Optimal block size for I/O. */ + int __pad2; + __blkcnt64_t st_blocks; /* Nr. 512-byte blocks allocated. */ +#ifdef __USE_XOPEN2K8 + /* Nanosecond resolution timestamps are stored in a format + equivalent to 'struct timespec'. This is the type used + whenever possible but the Unix namespace rules do not allow the + identifier 'timespec' to appear in the header. + Therefore we have to handle the use of this header in strictly + standard-compliant sources special. */ + struct timespec st_atim; /* Time of last access. */ + struct timespec st_mtim; /* Time of last modification. */ + struct timespec st_ctim; /* Time of last status change. */ +#else + __time_t st_atime; /* Time of last access. */ + unsigned long int st_atimensec; /* Nscecs of last access. */ + __time_t st_mtime; /* Time of last modification. */ + unsigned long int st_mtimensec; /* Nsecs of last modification. */ + __time_t st_ctime; /* Time of last status change. */ + unsigned long int st_ctimensec; /* Nsecs of last status change. */ +#endif + int __glibc_reserved[2]; + }; +#endif + +/* Tell code we have these members. */ +#define _STATBUF_ST_BLKSIZE +#define _STATBUF_ST_RDEV +/* Nanosecond resolution time values are supported. */ +#define _STATBUF_ST_NSEC + +#endif /* _BITS_STRUCT_STAT_H */ \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/time64.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/time64.h new file mode 100644 index 0000000000..8793352fb2 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/time64.h @@ -0,0 +1,36 @@ +/* bits/time64.h -- underlying types for __time64_t. RISC-V version. + Copyright (C) 2020-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_TYPES_H +# error "Never include directly; use instead." +#endif + +#ifndef _BITS_TIME64_H +#define _BITS_TIME64_H 1 + +/* Define __TIME64_T_TYPE so that it is always a 64-bit type. */ + +#if __WORDSIZE == 64 +/* If we already have 64-bit time type then use it. */ +# define __TIME64_T_TYPE __TIME_T_TYPE +#else +/* Define a 64-bit time type alongsize the 32-bit one. */ +# define __TIME64_T_TYPE __SQUAD_TYPE +#endif + +#endif /* bits/time64.h */ \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/timesize.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/timesize.h new file mode 100644 index 0000000000..17f828ecfe --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/timesize.h @@ -0,0 +1,20 @@ +/* Bit size of the time_t type at glibc build time, general case. + Copyright (C) 2018-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* Size in bits of the 'time_t' type of the default ABI. */ +#define __TIMESIZE 64 \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/typesizes.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/typesizes.h new file mode 100644 index 0000000000..d875caa94e --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/typesizes.h @@ -0,0 +1,107 @@ +/* bits/typesizes.h -- underlying types for *_t. For the generic Linux ABI. + Copyright (C) 2011-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _BITS_TYPES_H +# error "Never include directly; use instead." +#endif + +#ifndef _BITS_TYPESIZES_H +#define _BITS_TYPESIZES_H 1 + +/* See for the meaning of these macros. This file exists so + that need not vary across different GNU platforms. */ +#if __TIMESIZE == 64 && __WORDSIZE == 32 +/* These are the "new" y2038 types defined for architectures added after + the 5.1 kernel. */ +# define __INO_T_TYPE __UQUAD_TYPE +# define __OFF_T_TYPE __SQUAD_TYPE +# define __RLIM_T_TYPE __UQUAD_TYPE +# define __BLKCNT_T_TYPE __SQUAD_TYPE +# define __FSBLKCNT_T_TYPE __UQUAD_TYPE +# define __FSFILCNT_T_TYPE __UQUAD_TYPE +# define __TIME_T_TYPE __SQUAD_TYPE +# define __SUSECONDS_T_TYPE __SQUAD_TYPE +#else +# define __INO_T_TYPE __ULONGWORD_TYPE +# define __OFF_T_TYPE __SLONGWORD_TYPE +# define __RLIM_T_TYPE __ULONGWORD_TYPE +# define __BLKCNT_T_TYPE __SLONGWORD_TYPE +# define __FSBLKCNT_T_TYPE __ULONGWORD_TYPE +# define __FSFILCNT_T_TYPE __ULONGWORD_TYPE +# define __TIME_T_TYPE __SLONGWORD_TYPE +# define __SUSECONDS_T_TYPE __SLONGWORD_TYPE +#endif + +#define __DEV_T_TYPE __UQUAD_TYPE +#define __UID_T_TYPE __U32_TYPE +#define __GID_T_TYPE __U32_TYPE +#define __INO64_T_TYPE __UQUAD_TYPE +#define __MODE_T_TYPE __U32_TYPE +#define __NLINK_T_TYPE __U32_TYPE +#define __OFF64_T_TYPE __SQUAD_TYPE +#define __PID_T_TYPE __S32_TYPE +#define __RLIM64_T_TYPE __UQUAD_TYPE +#define __BLKCNT64_T_TYPE __SQUAD_TYPE +#define __FSBLKCNT64_T_TYPE __UQUAD_TYPE +#define __FSFILCNT64_T_TYPE __UQUAD_TYPE +#define __FSWORD_T_TYPE __SWORD_TYPE +#define __ID_T_TYPE __U32_TYPE +#define __CLOCK_T_TYPE __SLONGWORD_TYPE +#define __USECONDS_T_TYPE __U32_TYPE +#define __SUSECONDS64_T_TYPE __SQUAD_TYPE +#define __DADDR_T_TYPE __S32_TYPE +#define __KEY_T_TYPE __S32_TYPE +#define __CLOCKID_T_TYPE __S32_TYPE +#define __TIMER_T_TYPE void * +#define __BLKSIZE_T_TYPE __S32_TYPE +#define __FSID_T_TYPE struct { int __val[2]; } +#define __SSIZE_T_TYPE __SWORD_TYPE +#define __SYSCALL_SLONG_TYPE __SLONGWORD_TYPE +#define __SYSCALL_ULONG_TYPE __ULONGWORD_TYPE +#define __CPU_MASK_TYPE __ULONGWORD_TYPE + +#if defined __LP64__ || (__TIMESIZE == 64 && __WORDSIZE == 32) +/* Tell the libc code that off_t and off64_t are actually the same type + for all ABI purposes, even if possibly expressed as different base types + for C type-checking purposes. */ +# define __OFF_T_MATCHES_OFF64_T 1 + +/* Same for ino_t and ino64_t. */ +# define __INO_T_MATCHES_INO64_T 1 + +/* And for __rlim_t and __rlim64_t. */ +# define __RLIM_T_MATCHES_RLIM64_T 1 + +/* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ +# define __STATFS_MATCHES_STATFS64 1 + +/* And for getitimer, setitimer and rusage */ +# define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 (__WORDSIZE == 64) +#else +# define __RLIM_T_MATCHES_RLIM64_T 0 + +# define __STATFS_MATCHES_STATFS64 0 + +# define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 +#endif + +/* Number of descriptors that can fit in an `fd_set'. */ +#define __FD_SETSIZE 1024 + + +#endif /* bits/typesizes.h */ \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/bits/wordsize.h b/lib/libc/include/riscv32-linux-gnuilp32/bits/wordsize.h new file mode 100644 index 0000000000..1c655c99e9 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/bits/wordsize.h @@ -0,0 +1,30 @@ +/* Determine the wordsize from the preprocessor defines. RISC-V version. + Copyright (C) 2002-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#if __riscv_xlen == (__SIZEOF_POINTER__ * 8) +# define __WORDSIZE __riscv_xlen +#else +# error unsupported ABI +#endif + +#define __WORDSIZE_TIME64_COMPAT32 1 + +#if __WORDSIZE == 32 +# define __WORDSIZE32_SIZE_ULONG 0 +# define __WORDSIZE32_PTRDIFF_LONG 0 +#endif \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/fpu_control.h b/lib/libc/include/riscv32-linux-gnuilp32/fpu_control.h new file mode 100644 index 0000000000..995a96eef0 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/fpu_control.h @@ -0,0 +1,74 @@ +/* FPU control word bits. RISC-V version. + Copyright (C) 1996-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _FPU_CONTROL_H +#define _FPU_CONTROL_H + +#include + +#ifndef __riscv_flen + +# define _FPU_RESERVED 0xffffffff +# define _FPU_DEFAULT 0x00000000 +typedef unsigned int fpu_control_t; +# define _FPU_GETCW(cw) (cw) = 0 +# define _FPU_SETCW(cw) do { } while (0) +extern fpu_control_t __fpu_control; + +#else /* __riscv_flen */ + +# define _FPU_RESERVED 0 +# define _FPU_DEFAULT 0 +# define _FPU_IEEE _FPU_DEFAULT + +/* Type of the control word. */ +typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__SI__))); + +/* Macros for accessing the hardware control word. */ +# define _FPU_GETCW(cw) __asm__ volatile ("frsr %0" : "=r" (cw)) +# define _FPU_SETCW(cw) __asm__ volatile ("fssr %z0" : : "rJ" (cw)) + +/* Default control word set at startup. */ +extern fpu_control_t __fpu_control; + +# define _FCLASS(x) (__extension__ ({ int __res; \ + if (sizeof (x) * 8 > __riscv_flen) __builtin_trap (); \ + if (sizeof (x) == 4) asm ("fclass.s %0, %1" : "=r" (__res) : "f" (x)); \ + else if (sizeof (x) == 8) asm ("fclass.d %0, %1" : "=r" (__res) : "f" (x)); \ + else __builtin_trap (); \ + __res; })) + +# define _FCLASS_MINF (1 << 0) +# define _FCLASS_MNORM (1 << 1) +# define _FCLASS_MSUBNORM (1 << 2) +# define _FCLASS_MZERO (1 << 3) +# define _FCLASS_PZERO (1 << 4) +# define _FCLASS_PSUBNORM (1 << 5) +# define _FCLASS_PNORM (1 << 6) +# define _FCLASS_PINF (1 << 7) +# define _FCLASS_SNAN (1 << 8) +# define _FCLASS_QNAN (1 << 9) +# define _FCLASS_ZERO (_FCLASS_MZERO | _FCLASS_PZERO) +# define _FCLASS_SUBNORM (_FCLASS_MSUBNORM | _FCLASS_PSUBNORM) +# define _FCLASS_NORM (_FCLASS_MNORM | _FCLASS_PNORM) +# define _FCLASS_INF (_FCLASS_MINF | _FCLASS_PINF) +# define _FCLASS_NAN (_FCLASS_SNAN | _FCLASS_QNAN) + +#endif /* __riscv_flen */ + +#endif /* fpu_control.h */ \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/gnu/lib-names-ilp32.h b/lib/libc/include/riscv32-linux-gnuilp32/gnu/lib-names-ilp32.h new file mode 100644 index 0000000000..f7cf1ab8a2 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/gnu/lib-names-ilp32.h @@ -0,0 +1,27 @@ +/* This file is automatically generated. */ +#ifndef __GNU_LIB_NAMES_H +# error "Never use directly; include instead." +#endif + +#define LD_LINUX_RISCV32_ILP32_SO "ld-linux-riscv32-ilp32.so.1" +#define LD_SO "ld-linux-riscv32-ilp32.so.1" +#define LIBANL_SO "libanl.so.1" +#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" +#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" +#define LIBC_SO "libc.so.6" +#define LIBDL_SO "libdl.so.2" +#define LIBGCC_S_SO "libgcc_s.so.1" +#define LIBMVEC_SO "libmvec.so.1" +#define LIBM_SO "libm.so.6" +#define LIBNSL_SO "libnsl.so.1" +#define LIBNSS_COMPAT_SO "libnss_compat.so.2" +#define LIBNSS_DB_SO "libnss_db.so.2" +#define LIBNSS_DNS_SO "libnss_dns.so.2" +#define LIBNSS_FILES_SO "libnss_files.so.2" +#define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" +#define LIBNSS_LDAP_SO "libnss_ldap.so.2" +#define LIBPTHREAD_SO "libpthread.so.0" +#define LIBRESOLV_SO "libresolv.so.2" +#define LIBRT_SO "librt.so.1" +#define LIBTHREAD_DB_SO "libthread_db.so.1" +#define LIBUTIL_SO "libutil.so.1" \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/gnu/lib-names.h b/lib/libc/include/riscv32-linux-gnuilp32/gnu/lib-names.h new file mode 100644 index 0000000000..bd22593296 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/gnu/lib-names.h @@ -0,0 +1,22 @@ +/* This file is automatically generated. + It defines macros to allow user program to find the shared + library files which come as part of GNU libc. */ +#ifndef __GNU_LIB_NAMES_H +#define __GNU_LIB_NAMES_H 1 + +#include + +#if __WORDSIZE == 32 && defined __riscv_float_abi_soft +# include +#endif +#if __WORDSIZE == 32 && defined __riscv_float_abi_double +# include +#endif +#if __WORDSIZE == 64 && defined __riscv_float_abi_soft +# include +#endif +#if __WORDSIZE == 64 && defined __riscv_float_abi_double +# include +#endif + +#endif /* gnu/lib-names.h */ \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/gnu/stubs-ilp32.h b/lib/libc/include/riscv32-linux-gnuilp32/gnu/stubs-ilp32.h new file mode 100644 index 0000000000..6ce02418e6 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/gnu/stubs-ilp32.h @@ -0,0 +1,38 @@ +/* This file is automatically generated. + It defines a symbol `__stub_FUNCTION' for each function + in the C library which is a stub, meaning it will fail + every time called, usually setting errno to ENOSYS. */ + +#ifdef _LIBC + #error Applications may not define the macro _LIBC +#endif + +#define __stub___compat_bdflush +#define __stub___compat_create_module +#define __stub___compat_get_kernel_syms +#define __stub___compat_query_module +#define __stub___compat_uselib +#define __stub_chflags +#define __stub_fchflags +#define __stub_feclearexcept +#define __stub_fedisableexcept +#define __stub_feenableexcept +#define __stub_fegetenv +#define __stub_fegetexcept +#define __stub_fegetexceptflag +#define __stub_fegetmode +#define __stub_fegetround +#define __stub_feholdexcept +#define __stub_feraiseexcept +#define __stub_fesetenv +#define __stub_fesetexcept +#define __stub_fesetexceptflag +#define __stub_fesetmode +#define __stub_fesetround +#define __stub_fetestexcept +#define __stub_feupdateenv +#define __stub_gtty +#define __stub_revoke +#define __stub_setlogin +#define __stub_sigreturn +#define __stub_stty \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/gnu/stubs.h b/lib/libc/include/riscv32-linux-gnuilp32/gnu/stubs.h new file mode 100644 index 0000000000..833e9c3625 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/gnu/stubs.h @@ -0,0 +1,18 @@ +/* This file is automatically generated. + This file selects the right generated file of `__stub_FUNCTION' macros + based on the architecture being compiled for. */ + +#include + +#if __WORDSIZE == 32 && defined __riscv_float_abi_soft +# include +#endif +#if __WORDSIZE == 32 && defined __riscv_float_abi_double +# include +#endif +#if __WORDSIZE == 64 && defined __riscv_float_abi_soft +# include +#endif +#if __WORDSIZE == 64 && defined __riscv_float_abi_double +# include +#endif \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/ieee754.h b/lib/libc/include/riscv32-linux-gnuilp32/ieee754.h new file mode 100644 index 0000000000..b1e2ec7dc6 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/ieee754.h @@ -0,0 +1,170 @@ +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _IEEE754_H +#define _IEEE754_H 1 + +#include + +#include + +__BEGIN_DECLS + +union ieee754_float + { + float f; + + /* This is the IEEE 754 single-precision format. */ + struct + { +#if __BYTE_ORDER == __BIG_ENDIAN + unsigned int negative:1; + unsigned int exponent:8; + unsigned int mantissa:23; +#endif /* Big endian. */ +#if __BYTE_ORDER == __LITTLE_ENDIAN + unsigned int mantissa:23; + unsigned int exponent:8; + unsigned int negative:1; +#endif /* Little endian. */ + } ieee; + + /* This format makes it easier to see if a NaN is a signalling NaN. */ + struct + { +#if __BYTE_ORDER == __BIG_ENDIAN + unsigned int negative:1; + unsigned int exponent:8; + unsigned int quiet_nan:1; + unsigned int mantissa:22; +#endif /* Big endian. */ +#if __BYTE_ORDER == __LITTLE_ENDIAN + unsigned int mantissa:22; + unsigned int quiet_nan:1; + unsigned int exponent:8; + unsigned int negative:1; +#endif /* Little endian. */ + } ieee_nan; + }; + +#define IEEE754_FLOAT_BIAS 0x7f /* Added to exponent. */ + + +union ieee754_double + { + double d; + + /* This is the IEEE 754 double-precision format. */ + struct + { +#if __BYTE_ORDER == __BIG_ENDIAN + unsigned int negative:1; + unsigned int exponent:11; + /* Together these comprise the mantissa. */ + unsigned int mantissa0:20; + unsigned int mantissa1:32; +#endif /* Big endian. */ +#if __BYTE_ORDER == __LITTLE_ENDIAN + /* Together these comprise the mantissa. */ + unsigned int mantissa1:32; + unsigned int mantissa0:20; + unsigned int exponent:11; + unsigned int negative:1; +#endif /* Little endian. */ + } ieee; + + /* This format makes it easier to see if a NaN is a signalling NaN. */ + struct + { +#if __BYTE_ORDER == __BIG_ENDIAN + unsigned int negative:1; + unsigned int exponent:11; + unsigned int quiet_nan:1; + /* Together these comprise the mantissa. */ + unsigned int mantissa0:19; + unsigned int mantissa1:32; +#else + /* Together these comprise the mantissa. */ + unsigned int mantissa1:32; + unsigned int mantissa0:19; + unsigned int quiet_nan:1; + unsigned int exponent:11; + unsigned int negative:1; +#endif + } ieee_nan; + }; + +#define IEEE754_DOUBLE_BIAS 0x3ff /* Added to exponent. */ + + +union ieee854_long_double + { + long double d; + + /* This is the IEEE 854 quad-precision format. */ + struct + { +#if __BYTE_ORDER == __BIG_ENDIAN + unsigned int negative:1; + unsigned int exponent:15; + /* Together these comprise the mantissa. */ + unsigned int mantissa0:16; + unsigned int mantissa1:32; + unsigned int mantissa2:32; + unsigned int mantissa3:32; +#endif /* Big endian. */ +#if __BYTE_ORDER == __LITTLE_ENDIAN + /* Together these comprise the mantissa. */ + unsigned int mantissa3:32; + unsigned int mantissa2:32; + unsigned int mantissa1:32; + unsigned int mantissa0:16; + unsigned int exponent:15; + unsigned int negative:1; +#endif /* Little endian. */ + } ieee; + + /* This format makes it easier to see if a NaN is a signalling NaN. */ + struct + { +#if __BYTE_ORDER == __BIG_ENDIAN + unsigned int negative:1; + unsigned int exponent:15; + unsigned int quiet_nan:1; + /* Together these comprise the mantissa. */ + unsigned int mantissa0:15; + unsigned int mantissa1:32; + unsigned int mantissa2:32; + unsigned int mantissa3:32; +#else + /* Together these comprise the mantissa. */ + unsigned int mantissa3:32; + unsigned int mantissa2:32; + unsigned int mantissa1:32; + unsigned int mantissa0:15; + unsigned int quiet_nan:1; + unsigned int exponent:15; + unsigned int negative:1; +#endif + } ieee_nan; + }; + +#define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ + +__END_DECLS + +#endif /* ieee754.h */ \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/sys/asm.h b/lib/libc/include/riscv32-linux-gnuilp32/sys/asm.h new file mode 100644 index 0000000000..4e702a7462 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/sys/asm.h @@ -0,0 +1,66 @@ +/* Miscellaneous macros. + Copyright (C) 2000-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _SYS_ASM_H +#define _SYS_ASM_H + +/* Macros to handle different pointer/register sizes for 32/64-bit code. */ +#if __riscv_xlen == 64 +# define PTRLOG 3 +# define SZREG 8 +# define REG_S sd +# define REG_L ld +#elif __riscv_xlen == 32 +# define PTRLOG 2 +# define SZREG 4 +# define REG_S sw +# define REG_L lw +#else +# error __riscv_xlen must equal 32 or 64 +#endif + +#if !defined __riscv_float_abi_soft +/* For ABI uniformity, reserve 8 bytes for floats, even if double-precision + floating-point is not supported in hardware. */ +# if defined __riscv_float_abi_double +# define FREG_L fld +# define FREG_S fsd +# define SZFREG 8 +# else +# error unsupported FLEN +# endif +#endif + +/* Declare leaf routine. */ +#define LEAF(symbol) \ + .globl symbol; \ + .align 2; \ + .type symbol,@function; \ +symbol: \ + cfi_startproc; + +/* Mark end of function. */ +#undef END +#define END(function) \ + cfi_endproc; \ + .size function,.-function + +/* Stack alignment. */ +#define ALMASK ~15 + +#endif /* sys/asm.h */ \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/sys/cachectl.h b/lib/libc/include/riscv32-linux-gnuilp32/sys/cachectl.h new file mode 100644 index 0000000000..3f19728832 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/sys/cachectl.h @@ -0,0 +1,32 @@ +/* RISC-V instruction cache flushing interface + Copyright (C) 2017-2024 Free Software Foundation, Inc. + + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#ifndef _SYS_CACHECTL_H +#define _SYS_CACHECTL_H 1 + +#include + +__BEGIN_DECLS + +extern int __riscv_flush_icache (void *__start, void *__end, + unsigned long int __flags); + +__END_DECLS + +#endif /* sys/cachectl.h */ \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/sys/ucontext.h b/lib/libc/include/riscv32-linux-gnuilp32/sys/ucontext.h new file mode 100644 index 0000000000..59cff4a158 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/sys/ucontext.h @@ -0,0 +1,110 @@ +/* struct ucontext definition, RISC-V version. + Copyright (C) 1997-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +/* Don't rely on this, the interface is currently messed up and may need to + be broken to be fixed. */ +#ifndef _SYS_UCONTEXT_H +#define _SYS_UCONTEXT_H 1 + +#include + +#include +#include + +typedef unsigned long int __riscv_mc_gp_state[32]; + +#ifdef __USE_MISC +# define NGREG 32 + +# define REG_PC 0 +# define REG_RA 1 +# define REG_SP 2 +# define REG_TP 4 +# define REG_S0 8 +# define REG_S1 9 +# define REG_A0 10 +# define REG_S2 18 +# define REG_NARGS 8 + +typedef unsigned long int greg_t; + +/* Container for all general registers. */ +typedef __riscv_mc_gp_state gregset_t; + +/* Container for floating-point state. */ +typedef union __riscv_mc_fp_state fpregset_t; +#endif + +struct __riscv_mc_f_ext_state + { + unsigned int __f[32]; + unsigned int __fcsr; + }; + +struct __riscv_mc_d_ext_state + { + unsigned long long int __f[32]; + unsigned int __fcsr; + }; + +struct __riscv_mc_q_ext_state + { + unsigned long long int __f[64] __attribute__ ((__aligned__ (16))); + unsigned int __fcsr; + /* Reserved for expansion of sigcontext structure. Currently zeroed + upon signal, and must be zero upon sigreturn. */ + unsigned int __glibc_reserved[3]; + }; + +union __riscv_mc_fp_state + { + struct __riscv_mc_f_ext_state __f; + struct __riscv_mc_d_ext_state __d; + struct __riscv_mc_q_ext_state __q; + }; + +typedef struct mcontext_t + { + __riscv_mc_gp_state __gregs; + union __riscv_mc_fp_state __fpregs; + } mcontext_t; + +/* Userlevel context. */ +typedef struct ucontext_t + { + unsigned long int __uc_flags; + struct ucontext_t *uc_link; + stack_t uc_stack; + sigset_t uc_sigmask; + /* There's some padding here to allow sigset_t to be expanded in the + future. Though this is unlikely, other architectures put uc_sigmask + at the end of this structure and explicitly state it can be + expanded, so we didn't want to box ourselves in here. */ + char __glibc_reserved[1024 / 8 - sizeof (sigset_t)]; + /* We can't put uc_sigmask at the end of this structure because we need + to be able to expand sigcontext in the future. For example, the + vector ISA extension will almost certainly add ISA state. We want + to ensure all user-visible ISA state can be saved and restored via a + ucontext, so we're putting this at the end in order to allow for + infinite extensibility. Since we know this will be extended and we + assume sigset_t won't be extended an extreme amount, we're + prioritizing this. */ + mcontext_t uc_mcontext; + } ucontext_t; + +#endif /* sys/ucontext.h */ \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-gnuilp32/sys/user.h b/lib/libc/include/riscv32-linux-gnuilp32/sys/user.h new file mode 100644 index 0000000000..2a125d9340 --- /dev/null +++ b/lib/libc/include/riscv32-linux-gnuilp32/sys/user.h @@ -0,0 +1,23 @@ +/* Copyright (C) 2001-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SYS_USER_H +#define _SYS_USER_H 1 + + + +#endif /* _SYS_USER_H */ \ No newline at end of file diff --git a/lib/libc/include/riscv64-linux-gnu/bits/environments.h b/lib/libc/include/riscv64-linux-gnu/bits/environments.h index f19db38823..d8ab3220e9 100644 --- a/lib/libc/include/riscv64-linux-gnu/bits/environments.h +++ b/lib/libc/include/riscv64-linux-gnu/bits/environments.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2020-2023 Free Software Foundation, Inc. +/* Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv64-linux-gnu/bits/fcntl.h b/lib/libc/include/riscv64-linux-gnu/bits/fcntl.h index 8b98b47bb0..f61875db67 100644 --- a/lib/libc/include/riscv64-linux-gnu/bits/fcntl.h +++ b/lib/libc/include/riscv64-linux-gnu/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for Linux / RISC-V. - Copyright (C) 2011-2023 Free Software Foundation, Inc. + Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/riscv64-linux-gnu/bits/fenv.h b/lib/libc/include/riscv64-linux-gnu/bits/fenv.h index 71f14f45b4..9467134bb3 100644 --- a/lib/libc/include/riscv64-linux-gnu/bits/fenv.h +++ b/lib/libc/include/riscv64-linux-gnu/bits/fenv.h @@ -1,5 +1,5 @@ /* Floating point environment, RISC-V version. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv64-linux-gnu/bits/floatn.h b/lib/libc/include/riscv64-linux-gnu/bits/floatn.h index a4ac95d55e..20c1af5c2e 100644 --- a/lib/libc/include/riscv64-linux-gnu/bits/floatn.h +++ b/lib/libc/include/riscv64-linux-gnu/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features on ldbl-128 platforms. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv64-linux-gnu/bits/link.h b/lib/libc/include/riscv64-linux-gnu/bits/link.h index 832f3c39a6..9aa86a7c51 100644 --- a/lib/libc/include/riscv64-linux-gnu/bits/link.h +++ b/lib/libc/include/riscv64-linux-gnu/bits/link.h @@ -1,5 +1,5 @@ /* Machine-specific declarations for dynamic linker interface. RISC-V version. - Copyright (C) 2005-2023 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv64-linux-gnu/bits/long-double.h b/lib/libc/include/riscv64-linux-gnu/bits/long-double.h index 3455ce2356..a83f6c746f 100644 --- a/lib/libc/include/riscv64-linux-gnu/bits/long-double.h +++ b/lib/libc/include/riscv64-linux-gnu/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. ldbl-128 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv64-linux-gnu/bits/procfs.h b/lib/libc/include/riscv64-linux-gnu/bits/procfs.h index 9f5ebb587d..4fab0ffd9c 100644 --- a/lib/libc/include/riscv64-linux-gnu/bits/procfs.h +++ b/lib/libc/include/riscv64-linux-gnu/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. RISC-V version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv64-linux-gnu/bits/pthreadtypes-arch.h b/lib/libc/include/riscv64-linux-gnu/bits/pthreadtypes-arch.h index 51358872ca..460d0eaf1c 100644 --- a/lib/libc/include/riscv64-linux-gnu/bits/pthreadtypes-arch.h +++ b/lib/libc/include/riscv64-linux-gnu/bits/pthreadtypes-arch.h @@ -1,5 +1,5 @@ /* Machine-specific pthread type layouts. RISC-V version. - Copyright (C) 2011-2023 Free Software Foundation, Inc. + Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv64-linux-gnu/bits/rseq.h b/lib/libc/include/riscv64-linux-gnu/bits/rseq.h index fe2e400300..5ea695ad1c 100644 --- a/lib/libc/include/riscv64-linux-gnu/bits/rseq.h +++ b/lib/libc/include/riscv64-linux-gnu/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences architecture header. Stub version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/riscv64-linux-gnu/bits/setjmp.h b/lib/libc/include/riscv64-linux-gnu/bits/setjmp.h index b93a53b653..7ccaa193d0 100644 --- a/lib/libc/include/riscv64-linux-gnu/bits/setjmp.h +++ b/lib/libc/include/riscv64-linux-gnu/bits/setjmp.h @@ -1,5 +1,5 @@ /* Define the machine-dependent type `jmp_buf'. RISC-V version. - Copyright (C) 2011-2023 Free Software Foundation, Inc. + Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv64-linux-gnu/bits/sigcontext.h b/lib/libc/include/riscv64-linux-gnu/bits/sigcontext.h index d36af31c28..14050da42c 100644 --- a/lib/libc/include/riscv64-linux-gnu/bits/sigcontext.h +++ b/lib/libc/include/riscv64-linux-gnu/bits/sigcontext.h @@ -1,5 +1,5 @@ /* Machine-dependent signal context structure for Linux. RISC-V version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/riscv64-linux-gnu/bits/struct_rwlock.h b/lib/libc/include/riscv64-linux-gnu/bits/struct_rwlock.h index a5644d653e..0b7afa3e00 100644 --- a/lib/libc/include/riscv64-linux-gnu/bits/struct_rwlock.h +++ b/lib/libc/include/riscv64-linux-gnu/bits/struct_rwlock.h @@ -1,5 +1,5 @@ /* RISC-V internal rwlock struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/riscv64-linux-gnu/bits/struct_stat.h b/lib/libc/include/riscv64-linux-gnu/bits/struct_stat.h index 54192765a2..c8e2d78b57 100644 --- a/lib/libc/include/riscv64-linux-gnu/bits/struct_stat.h +++ b/lib/libc/include/riscv64-linux-gnu/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv64-linux-gnu/bits/time64.h b/lib/libc/include/riscv64-linux-gnu/bits/time64.h index b79c2ea888..8793352fb2 100644 --- a/lib/libc/include/riscv64-linux-gnu/bits/time64.h +++ b/lib/libc/include/riscv64-linux-gnu/bits/time64.h @@ -1,5 +1,5 @@ /* bits/time64.h -- underlying types for __time64_t. RISC-V version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv64-linux-gnu/bits/timesize.h b/lib/libc/include/riscv64-linux-gnu/bits/timesize.h index 00217b042a..17f828ecfe 100644 --- a/lib/libc/include/riscv64-linux-gnu/bits/timesize.h +++ b/lib/libc/include/riscv64-linux-gnu/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, general case. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv64-linux-gnu/bits/typesizes.h b/lib/libc/include/riscv64-linux-gnu/bits/typesizes.h index fa5fab6be4..d875caa94e 100644 --- a/lib/libc/include/riscv64-linux-gnu/bits/typesizes.h +++ b/lib/libc/include/riscv64-linux-gnu/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. For the generic Linux ABI. - Copyright (C) 2011-2023 Free Software Foundation, Inc. + Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv64-linux-gnu/bits/wordsize.h b/lib/libc/include/riscv64-linux-gnu/bits/wordsize.h index 3a1d73e4f6..1c655c99e9 100644 --- a/lib/libc/include/riscv64-linux-gnu/bits/wordsize.h +++ b/lib/libc/include/riscv64-linux-gnu/bits/wordsize.h @@ -1,5 +1,5 @@ /* Determine the wordsize from the preprocessor defines. RISC-V version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv64-linux-gnu/fpu_control.h b/lib/libc/include/riscv64-linux-gnu/fpu_control.h index 1131c2af72..995a96eef0 100644 --- a/lib/libc/include/riscv64-linux-gnu/fpu_control.h +++ b/lib/libc/include/riscv64-linux-gnu/fpu_control.h @@ -1,5 +1,5 @@ /* FPU control word bits. RISC-V version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv64-linux-gnu/gnu/lib-names-lp64.h b/lib/libc/include/riscv64-linux-gnu/gnu/lib-names-lp64.h index e499a157d0..facadbf088 100644 --- a/lib/libc/include/riscv64-linux-gnu/gnu/lib-names-lp64.h +++ b/lib/libc/include/riscv64-linux-gnu/gnu/lib-names-lp64.h @@ -7,7 +7,6 @@ #define LD_SO "ld-linux-riscv64-lp64.so.1" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/riscv64-linux-gnu/ieee754.h b/lib/libc/include/riscv64-linux-gnu/ieee754.h index c76cf156f6..b1e2ec7dc6 100644 --- a/lib/libc/include/riscv64-linux-gnu/ieee754.h +++ b/lib/libc/include/riscv64-linux-gnu/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv64-linux-gnu/sys/asm.h b/lib/libc/include/riscv64-linux-gnu/sys/asm.h index 02fe1aeacd..4e702a7462 100644 --- a/lib/libc/include/riscv64-linux-gnu/sys/asm.h +++ b/lib/libc/include/riscv64-linux-gnu/sys/asm.h @@ -1,5 +1,5 @@ /* Miscellaneous macros. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv64-linux-gnu/sys/cachectl.h b/lib/libc/include/riscv64-linux-gnu/sys/cachectl.h index 41f5a28e64..3f19728832 100644 --- a/lib/libc/include/riscv64-linux-gnu/sys/cachectl.h +++ b/lib/libc/include/riscv64-linux-gnu/sys/cachectl.h @@ -1,5 +1,5 @@ /* RISC-V instruction cache flushing interface - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/riscv64-linux-gnu/sys/ucontext.h b/lib/libc/include/riscv64-linux-gnu/sys/ucontext.h index 133cbeb735..59cff4a158 100644 --- a/lib/libc/include/riscv64-linux-gnu/sys/ucontext.h +++ b/lib/libc/include/riscv64-linux-gnu/sys/ucontext.h @@ -1,5 +1,5 @@ /* struct ucontext definition, RISC-V version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/riscv64-linux-gnu/sys/user.h b/lib/libc/include/riscv64-linux-gnu/sys/user.h index 333684f8f2..2a125d9340 100644 --- a/lib/libc/include/riscv64-linux-gnu/sys/user.h +++ b/lib/libc/include/riscv64-linux-gnu/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2023 Free Software Foundation, Inc. +/* Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/elfclass.h b/lib/libc/include/s390x-linux-gnu/bits/elfclass.h index f6b2441c0d..f140d36e8d 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/elfclass.h +++ b/lib/libc/include/s390x-linux-gnu/bits/elfclass.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2023 Free Software Foundation, Inc. +/* Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/environments.h b/lib/libc/include/s390x-linux-gnu/bits/environments.h index b90dc601fe..5855fb8e87 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/environments.h +++ b/lib/libc/include/s390x-linux-gnu/bits/environments.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/fcntl.h b/lib/libc/include/s390x-linux-gnu/bits/fcntl.h index a280bad885..80001c59f6 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/fcntl.h +++ b/lib/libc/include/s390x-linux-gnu/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for Linux. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/fenv.h b/lib/libc/include/s390x-linux-gnu/bits/fenv.h index 8b53cce0a6..1643aa1623 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/fenv.h +++ b/lib/libc/include/s390x-linux-gnu/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2000-2023 Free Software Foundation, Inc. +/* Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/floatn.h b/lib/libc/include/s390x-linux-gnu/bits/floatn.h index a4ac95d55e..20c1af5c2e 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/floatn.h +++ b/lib/libc/include/s390x-linux-gnu/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features on ldbl-128 platforms. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/hwcap.h b/lib/libc/include/s390x-linux-gnu/bits/hwcap.h index bf93845d73..e64f2bc218 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/hwcap.h +++ b/lib/libc/include/s390x-linux-gnu/bits/hwcap.h @@ -1,5 +1,5 @@ /* Defines for bits in AT_HWCAP. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/link.h b/lib/libc/include/s390x-linux-gnu/bits/link.h index 40acb9da1e..6095a2290e 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/link.h +++ b/lib/libc/include/s390x-linux-gnu/bits/link.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/long-double.h b/lib/libc/include/s390x-linux-gnu/bits/long-double.h index 270ba4d0c3..29196107bd 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/long-double.h +++ b/lib/libc/include/s390x-linux-gnu/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. ldbl-opt version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/procfs-extra.h b/lib/libc/include/s390x-linux-gnu/bits/procfs-extra.h index d9a4bca0a1..b976c389da 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/procfs-extra.h +++ b/lib/libc/include/s390x-linux-gnu/bits/procfs-extra.h @@ -1,5 +1,5 @@ /* Extra sys/procfs.h definitions. S/390 version. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/procfs-id.h b/lib/libc/include/s390x-linux-gnu/bits/procfs-id.h index 47e3dbcf0d..46780f175e 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/procfs-id.h +++ b/lib/libc/include/s390x-linux-gnu/bits/procfs-id.h @@ -1,5 +1,5 @@ /* Types of pr_uid and pr_gid in struct elf_prpsinfo. S/390 version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/s390x-linux-gnu/bits/procfs.h b/lib/libc/include/s390x-linux-gnu/bits/procfs.h index 3c9b07ad5c..515008b97c 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/procfs.h +++ b/lib/libc/include/s390x-linux-gnu/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. S/390 version. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/rseq.h b/lib/libc/include/s390x-linux-gnu/bits/rseq.h index 4690a2a26d..63e66a14e5 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/rseq.h +++ b/lib/libc/include/s390x-linux-gnu/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences Linux s390 architecture header. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/s390x-linux-gnu/bits/setjmp.h b/lib/libc/include/s390x-linux-gnu/bits/setjmp.h index 0ba7999645..ac3a3e1dc8 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/setjmp.h +++ b/lib/libc/include/s390x-linux-gnu/bits/setjmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2000-2023 Free Software Foundation, Inc. +/* Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/sigaction.h b/lib/libc/include/s390x-linux-gnu/bits/sigaction.h index 58fac4fc38..eed8395f6d 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/sigaction.h +++ b/lib/libc/include/s390x-linux-gnu/bits/sigaction.h @@ -1,5 +1,5 @@ /* Definitions for 31 & 64 bit S/390 sigaction. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/statfs.h b/lib/libc/include/s390x-linux-gnu/bits/statfs.h index 9391e74c57..231a885d95 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/statfs.h +++ b/lib/libc/include/s390x-linux-gnu/bits/statfs.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/struct_mutex.h b/lib/libc/include/s390x-linux-gnu/bits/struct_mutex.h index e55b3ca2a1..aee33d7d76 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/struct_mutex.h +++ b/lib/libc/include/s390x-linux-gnu/bits/struct_mutex.h @@ -1,5 +1,5 @@ /* S390 internal mutex struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/struct_rwlock.h b/lib/libc/include/s390x-linux-gnu/bits/struct_rwlock.h index c085ef8abf..62c514fc87 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/struct_rwlock.h +++ b/lib/libc/include/s390x-linux-gnu/bits/struct_rwlock.h @@ -1,5 +1,5 @@ /* S390 internal rwlock struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/s390x-linux-gnu/bits/struct_stat.h b/lib/libc/include/s390x-linux-gnu/bits/struct_stat.h index 2303b1e4fe..249df06b3c 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/struct_stat.h +++ b/lib/libc/include/s390x-linux-gnu/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/timesize.h b/lib/libc/include/s390x-linux-gnu/bits/timesize.h index 11830d9563..d23c4202bb 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/timesize.h +++ b/lib/libc/include/s390x-linux-gnu/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, Linux/s390. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/typesizes.h b/lib/libc/include/s390x-linux-gnu/bits/typesizes.h index ee2e1de6f8..2a800867d6 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/typesizes.h +++ b/lib/libc/include/s390x-linux-gnu/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. Linux/s390 version. - Copyright (C) 2003-2023 Free Software Foundation, Inc. + Copyright (C) 2003-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/utmp.h b/lib/libc/include/s390x-linux-gnu/bits/utmp.h index 46bafdc573..8959eaaa5c 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/utmp.h +++ b/lib/libc/include/s390x-linux-gnu/bits/utmp.h @@ -1,5 +1,5 @@ /* The `struct utmp' type, describing entries in the utmp file. GNU version. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/bits/utmpx.h b/lib/libc/include/s390x-linux-gnu/bits/utmpx.h index 27f6bda9f1..1b0c5a0466 100644 --- a/lib/libc/include/s390x-linux-gnu/bits/utmpx.h +++ b/lib/libc/include/s390x-linux-gnu/bits/utmpx.h @@ -1,5 +1,5 @@ /* Structures and definitions for the user accounting database. GNU version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/fpu_control.h b/lib/libc/include/s390x-linux-gnu/fpu_control.h index 7e5d13fb44..405f946b4d 100644 --- a/lib/libc/include/s390x-linux-gnu/fpu_control.h +++ b/lib/libc/include/s390x-linux-gnu/fpu_control.h @@ -1,5 +1,5 @@ /* FPU control word definitions. Stub version. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/gnu/lib-names-64.h b/lib/libc/include/s390x-linux-gnu/gnu/lib-names-64.h index 1a7314db30..0df63282cc 100644 --- a/lib/libc/include/s390x-linux-gnu/gnu/lib-names-64.h +++ b/lib/libc/include/s390x-linux-gnu/gnu/lib-names-64.h @@ -7,7 +7,6 @@ #define LD_SO "ld64.so.1" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/s390x-linux-gnu/ieee754.h b/lib/libc/include/s390x-linux-gnu/ieee754.h index c76cf156f6..b1e2ec7dc6 100644 --- a/lib/libc/include/s390x-linux-gnu/ieee754.h +++ b/lib/libc/include/s390x-linux-gnu/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/sys/elf.h b/lib/libc/include/s390x-linux-gnu/sys/elf.h index a7c82ceb26..0f8c0b8124 100644 --- a/lib/libc/include/s390x-linux-gnu/sys/elf.h +++ b/lib/libc/include/s390x-linux-gnu/sys/elf.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2000-2023 Free Software Foundation, Inc. +/* Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/sys/ptrace.h b/lib/libc/include/s390x-linux-gnu/sys/ptrace.h index 6cb3161dac..a186b3f5d0 100644 --- a/lib/libc/include/s390x-linux-gnu/sys/ptrace.h +++ b/lib/libc/include/s390x-linux-gnu/sys/ptrace.h @@ -1,5 +1,5 @@ /* `ptrace' debugger support interface. Linux/S390 version. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -86,6 +86,8 @@ __BEGIN_DECLS # undef PTRACE_SYSCALL_INFO_EXIT # undef PTRACE_SYSCALL_INFO_SECCOMP # undef PTRACE_GET_RSEQ_CONFIGURATION +# undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG +# undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG #endif /* Type of the REQUEST argument to `ptrace.' */ enum __ptrace_request @@ -221,6 +223,16 @@ enum __ptrace_request PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION + /* Set configuration for syscall user dispatch. */ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, +#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG + + /* Get configuration for syscall user dispatch. */ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211, +#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG + PTRACE_PEEKUSR_AREA = 0x5000, #define PTRACE_PEEKUSR_AREA PTRACE_PEEKUSR_AREA diff --git a/lib/libc/include/s390x-linux-gnu/sys/ucontext.h b/lib/libc/include/s390x-linux-gnu/sys/ucontext.h index cc52d61bae..c0bc8519e9 100644 --- a/lib/libc/include/s390x-linux-gnu/sys/ucontext.h +++ b/lib/libc/include/s390x-linux-gnu/sys/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2000-2023 Free Software Foundation, Inc. +/* Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/s390x-linux-gnu/sys/user.h b/lib/libc/include/s390x-linux-gnu/sys/user.h index bbf1538804..e74132e77f 100644 --- a/lib/libc/include/s390x-linux-gnu/sys/user.h +++ b/lib/libc/include/s390x-linux-gnu/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2000-2023 Free Software Foundation, Inc. +/* Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/environments.h b/lib/libc/include/sparc64-linux-gnu/bits/environments.h index b5c0cf16aa..39a7b5b3c9 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/environments.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/environments.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/epoll.h b/lib/libc/include/sparc64-linux-gnu/bits/epoll.h index dd6bd1a938..4a6657d21f 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/epoll.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/epoll.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/errno.h b/lib/libc/include/sparc64-linux-gnu/bits/errno.h index c84cf393ac..c447adaef2 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/errno.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/errno.h @@ -1,5 +1,5 @@ /* Error constants. Linux/Sparc specific version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/eventfd.h b/lib/libc/include/sparc64-linux-gnu/bits/eventfd.h index 3cc3858f19..cc5da89bdd 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/eventfd.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/eventfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/fcntl.h b/lib/libc/include/sparc64-linux-gnu/bits/fcntl.h index d86a8d872b..b84f016059 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/fcntl.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for Linux/SPARC. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/fenv.h b/lib/libc/include/sparc64-linux-gnu/bits/fenv.h index c493d1fde1..5c1cce1b6f 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/fenv.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/floatn.h b/lib/libc/include/sparc64-linux-gnu/bits/floatn.h index a4ac95d55e..20c1af5c2e 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/floatn.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features on ldbl-128 platforms. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/hwcap.h b/lib/libc/include/sparc64-linux-gnu/bits/hwcap.h index 13e73be5fb..b1b38e066c 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/hwcap.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/hwcap.h @@ -1,5 +1,5 @@ /* Defines for bits in AT_HWCAP. - Copyright (C) 2011-2023 Free Software Foundation, Inc. + Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/inotify.h b/lib/libc/include/sparc64-linux-gnu/bits/inotify.h index 4f04d923cf..d88d110e93 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/inotify.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/inotify.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/ioctls.h b/lib/libc/include/sparc64-linux-gnu/bits/ioctls.h index 48fdf4a5b8..bc5b3adfa5 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/ioctls.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/ioctls.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/ipc-perm.h b/lib/libc/include/sparc64-linux-gnu/bits/ipc-perm.h index ae58cd60ad..43000f07b3 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/ipc-perm.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/ipc-perm.h @@ -1,5 +1,5 @@ /* struct ipc_perm definition. Linux/sparc version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/link.h b/lib/libc/include/sparc64-linux-gnu/bits/link.h index 22b0f6ac11..6b6060445c 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/link.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/link.h @@ -1,5 +1,5 @@ /* Machine-specific audit interfaces for dynamic linker. SPARC version. - Copyright (C) 2005-2023 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/long-double.h b/lib/libc/include/sparc64-linux-gnu/bits/long-double.h index daa402663b..2dbe771fe7 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/long-double.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. SPARC version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/mman.h b/lib/libc/include/sparc64-linux-gnu/bits/mman.h index a96a44310d..156c6ab932 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/mman.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/SPARC version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/poll.h b/lib/libc/include/sparc64-linux-gnu/bits/poll.h index e8d6521395..b24e20b7e1 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/poll.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/poll.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/procfs-extra.h b/lib/libc/include/sparc64-linux-gnu/bits/procfs-extra.h index c1320ad4da..80f97107c3 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/procfs-extra.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/procfs-extra.h @@ -1,5 +1,5 @@ /* Extra sys/procfs.h definitions. SPARC version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/procfs-id.h b/lib/libc/include/sparc64-linux-gnu/bits/procfs-id.h index 98c1729f17..ab400e205f 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/procfs-id.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/procfs-id.h @@ -1,5 +1,5 @@ /* Types of pr_uid and pr_gid in struct elf_prpsinfo. SPARC version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/sparc64-linux-gnu/bits/procfs.h b/lib/libc/include/sparc64-linux-gnu/bits/procfs.h index ee2daed639..9baa51e728 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/procfs.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. SPARC version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/pthread_stack_min.h b/lib/libc/include/sparc64-linux-gnu/bits/pthread_stack_min.h index 86a218cb44..461f684a2c 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/pthread_stack_min.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/pthread_stack_min.h @@ -1,5 +1,5 @@ /* Definition of PTHREAD_STACK_MIN. Linux/SPARC version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/resource.h b/lib/libc/include/sparc64-linux-gnu/bits/resource.h index 5e6b2d6f9c..c4983fe5c2 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/resource.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/resource.h @@ -1,5 +1,5 @@ /* Bit values & structures for resource limits. Linux/SPARC version. - Copyright (C) 1994-2023 Free Software Foundation, Inc. + Copyright (C) 1994-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/rseq.h b/lib/libc/include/sparc64-linux-gnu/bits/rseq.h index fe2e400300..5ea695ad1c 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/rseq.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences architecture header. Stub version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/sparc64-linux-gnu/bits/setjmp.h b/lib/libc/include/sparc64-linux-gnu/bits/setjmp.h index 78e03051e9..37aceb09b1 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/setjmp.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/setjmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/shmlba.h b/lib/libc/include/sparc64-linux-gnu/bits/shmlba.h index c362b87215..cfcfd4684d 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/shmlba.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/shmlba.h @@ -1,5 +1,5 @@ /* Define SHMLBA. SPARC version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/sigaction.h b/lib/libc/include/sparc64-linux-gnu/bits/sigaction.h index bcd152f2bd..44e7987948 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/sigaction.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/sigaction.h @@ -1,5 +1,5 @@ /* The proper definitions for Linux/SPARC sigaction. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/sigcontext.h b/lib/libc/include/sparc64-linux-gnu/bits/sigcontext.h index 8692cb5fb4..54228a2906 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/sigcontext.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/sigcontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2000-2023 Free Software Foundation, Inc. +/* Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/signalfd.h b/lib/libc/include/sparc64-linux-gnu/bits/signalfd.h index 94f1b15236..fcb2d7130b 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/signalfd.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/signalfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2007-2023 Free Software Foundation, Inc. +/* Copyright (C) 2007-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/signum-arch.h b/lib/libc/include/sparc64-linux-gnu/bits/signum-arch.h index 5b144ecc5f..bff7796f5e 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/signum-arch.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/signum-arch.h @@ -1,5 +1,5 @@ /* Signal number definitions. Linux/SPARC version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/sigstack.h b/lib/libc/include/sparc64-linux-gnu/bits/sigstack.h index b557f363a1..c842b50deb 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/sigstack.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/sigstack.h @@ -1,5 +1,5 @@ /* sigstack, sigaltstack definitions. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/socket-constants.h b/lib/libc/include/sparc64-linux-gnu/bits/socket-constants.h index 38f562a078..1030cb3db8 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/socket-constants.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/socket-constants.h @@ -1,5 +1,5 @@ /* Socket constants which vary among Linux architectures. Version for SPARC. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/socket_type.h b/lib/libc/include/sparc64-linux-gnu/bits/socket_type.h index b64022ca77..43a4fe131c 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/socket_type.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/socket_type.h @@ -1,5 +1,5 @@ /* Define enum __socket_type for Linux/SPARC. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/struct_rwlock.h b/lib/libc/include/sparc64-linux-gnu/bits/struct_rwlock.h index 5aa7e4ed24..806ae7e4b8 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/struct_rwlock.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/struct_rwlock.h @@ -1,5 +1,5 @@ /* SPARC internal rwlock struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/sparc64-linux-gnu/bits/struct_stat.h b/lib/libc/include/sparc64-linux-gnu/bits/struct_stat.h index cd1748c035..f73e5ebc03 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/struct_stat.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/termios-baud.h b/lib/libc/include/sparc64-linux-gnu/bits/termios-baud.h index 427769da93..84bb3195c3 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/termios-baud.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/termios-baud.h @@ -1,5 +1,5 @@ /* termios baud rate selection definitions. Linux/sparc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/termios-c_cc.h b/lib/libc/include/sparc64-linux-gnu/bits/termios-c_cc.h index 6b58c4f1bc..b0b9baa3ec 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/termios-c_cc.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/termios-c_cc.h @@ -1,5 +1,5 @@ /* termios c_cc symbolic constant definitions. Linux/sparc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/termios-c_oflag.h b/lib/libc/include/sparc64-linux-gnu/bits/termios-c_oflag.h index 90d2e063f5..e5e44aa5db 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/termios-c_oflag.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/termios-c_oflag.h @@ -1,5 +1,5 @@ /* termios output mode definitions. Linux/sparc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/termios-struct.h b/lib/libc/include/sparc64-linux-gnu/bits/termios-struct.h index a4601dfd7b..135d77055c 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/termios-struct.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/termios-struct.h @@ -1,5 +1,5 @@ /* struct termios definition. Linux/sparc version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/timerfd.h b/lib/libc/include/sparc64-linux-gnu/bits/timerfd.h index afdfd0d37c..994d685a30 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/timerfd.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/timerfd.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2008-2023 Free Software Foundation, Inc. +/* Copyright (C) 2008-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/timesize.h b/lib/libc/include/sparc64-linux-gnu/bits/timesize.h index ff62d98daa..5858cae679 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/timesize.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, Linux/sparc. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/types/struct_msqid_ds.h b/lib/libc/include/sparc64-linux-gnu/bits/types/struct_msqid_ds.h index 4b123a5d17..d020df34a2 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/types/struct_msqid_ds.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/types/struct_msqid_ds.h @@ -1,5 +1,5 @@ /* Linux/SPARC implementation of the SysV message struct msqid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/types/struct_semid_ds.h b/lib/libc/include/sparc64-linux-gnu/bits/types/struct_semid_ds.h index 9f6b20a43a..1f2616e888 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/types/struct_semid_ds.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/types/struct_semid_ds.h @@ -1,5 +1,5 @@ /* Sparc implementation of the semaphore struct semid_ds - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/types/struct_shmid_ds.h b/lib/libc/include/sparc64-linux-gnu/bits/types/struct_shmid_ds.h index b2d22e8bb1..9e8d21974f 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/types/struct_shmid_ds.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/types/struct_shmid_ds.h @@ -1,5 +1,5 @@ /* Linux/SPARC implementation of the shared memory struct shmid_ds. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/bits/typesizes.h b/lib/libc/include/sparc64-linux-gnu/bits/typesizes.h index f37126816a..d6a314ad9d 100644 --- a/lib/libc/include/sparc64-linux-gnu/bits/typesizes.h +++ b/lib/libc/include/sparc64-linux-gnu/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. Linux/SPARC version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/fpu_control.h b/lib/libc/include/sparc64-linux-gnu/fpu_control.h index 0e9238fc6a..796f0ff303 100644 --- a/lib/libc/include/sparc64-linux-gnu/fpu_control.h +++ b/lib/libc/include/sparc64-linux-gnu/fpu_control.h @@ -1,5 +1,5 @@ /* FPU control word bits. SPARC version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -61,7 +61,12 @@ typedef unsigned long int fpu_control_t; # define _FPU_GETCW(cw) __asm__ __volatile__ ("stx %%fsr,%0" : "=m" (*&cw)) # define _FPU_SETCW(cw) __asm__ __volatile__ ("ldx %0,%%fsr" : : "m" (*&cw)) #else -# define _FPU_GETCW(cw) __asm__ __volatile__ ("st %%fsr,%0" : "=m" (*&cw)) +# ifdef __leon__ + /* Prevent stfsr from being placed directly after other fp instruction. */ +# define _FPU_GETCW(cw) __asm__ __volatile__ ("nop; st %%fsr,%0" : "=m" (*&cw)) +# else +# define _FPU_GETCW(cw) __asm__ __volatile__ ("st %%fsr,%0" : "=m" (*&cw)) +# endif # define _FPU_SETCW(cw) __asm__ __volatile__ ("ld %0,%%fsr" : : "m" (*&cw)) #endif diff --git a/lib/libc/include/sparc64-linux-gnu/gnu/lib-names-64.h b/lib/libc/include/sparc64-linux-gnu/gnu/lib-names-64.h index 3fada291f8..7e53ae0eb3 100644 --- a/lib/libc/include/sparc64-linux-gnu/gnu/lib-names-64.h +++ b/lib/libc/include/sparc64-linux-gnu/gnu/lib-names-64.h @@ -7,7 +7,6 @@ #define LD_SO "ld-linux.so.2" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/sparc64-linux-gnu/ieee754.h b/lib/libc/include/sparc64-linux-gnu/ieee754.h index c76cf156f6..b1e2ec7dc6 100644 --- a/lib/libc/include/sparc64-linux-gnu/ieee754.h +++ b/lib/libc/include/sparc64-linux-gnu/ieee754.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/sys/ptrace.h b/lib/libc/include/sparc64-linux-gnu/sys/ptrace.h index 64130a617a..701f18b343 100644 --- a/lib/libc/include/sparc64-linux-gnu/sys/ptrace.h +++ b/lib/libc/include/sparc64-linux-gnu/sys/ptrace.h @@ -1,5 +1,5 @@ /* `ptrace' debugger support interface. Linux/SPARC version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -225,8 +225,18 @@ enum __ptrace_request #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO /* Get rseq configuration information. */ - PTRACE_GET_RSEQ_CONFIGURATION = 0x420f + PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION + + /* Set configuration for syscall user dispatch. */ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, +#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG + + /* Get configuration for syscall user dispatch. */ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 +#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG }; diff --git a/lib/libc/include/sparc64-linux-gnu/sys/ucontext.h b/lib/libc/include/sparc64-linux-gnu/sys/ucontext.h index f69b2b4aa7..e84bbdb721 100644 --- a/lib/libc/include/sparc64-linux-gnu/sys/ucontext.h +++ b/lib/libc/include/sparc64-linux-gnu/sys/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/sparc64-linux-gnu/sys/user.h b/lib/libc/include/sparc64-linux-gnu/sys/user.h index 036b392e6b..19e99b385f 100644 --- a/lib/libc/include/sparc64-linux-gnu/sys/user.h +++ b/lib/libc/include/sparc64-linux-gnu/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2003-2023 Free Software Foundation, Inc. +/* Copyright (C) 2003-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/dl_find_object.h b/lib/libc/include/x86-linux-gnu/bits/dl_find_object.h index b276fbc9ba..d67a396696 100644 --- a/lib/libc/include/x86-linux-gnu/bits/dl_find_object.h +++ b/lib/libc/include/x86-linux-gnu/bits/dl_find_object.h @@ -1,5 +1,5 @@ /* x86 definitions for finding objects. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/environments.h b/lib/libc/include/x86-linux-gnu/bits/environments.h index 99bf904d42..8133be498b 100644 --- a/lib/libc/include/x86-linux-gnu/bits/environments.h +++ b/lib/libc/include/x86-linux-gnu/bits/environments.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/epoll.h b/lib/libc/include/x86-linux-gnu/bits/epoll.h index 6902c3341a..5bc6bd4569 100644 --- a/lib/libc/include/x86-linux-gnu/bits/epoll.h +++ b/lib/libc/include/x86-linux-gnu/bits/epoll.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/fcntl.h b/lib/libc/include/x86-linux-gnu/bits/fcntl.h index 94abf25091..d4c2799285 100644 --- a/lib/libc/include/x86-linux-gnu/bits/fcntl.h +++ b/lib/libc/include/x86-linux-gnu/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for Linux/x86. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/fenv.h b/lib/libc/include/x86-linux-gnu/bits/fenv.h index bb5cbf1dab..f571c013dd 100644 --- a/lib/libc/include/x86-linux-gnu/bits/fenv.h +++ b/lib/libc/include/x86-linux-gnu/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/floatn.h b/lib/libc/include/x86-linux-gnu/bits/floatn.h index 827aeeced4..573bbff165 100644 --- a/lib/libc/include/x86-linux-gnu/bits/floatn.h +++ b/lib/libc/include/x86-linux-gnu/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features on x86. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/flt-eval-method.h b/lib/libc/include/x86-linux-gnu/bits/flt-eval-method.h index 2f6d1751ba..683fd2945f 100644 --- a/lib/libc/include/x86-linux-gnu/bits/flt-eval-method.h +++ b/lib/libc/include/x86-linux-gnu/bits/flt-eval-method.h @@ -1,5 +1,5 @@ /* Define __GLIBC_FLT_EVAL_METHOD. x86 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/fp-logb.h b/lib/libc/include/x86-linux-gnu/bits/fp-logb.h index ffd96b7282..d8122c89ad 100644 --- a/lib/libc/include/x86-linux-gnu/bits/fp-logb.h +++ b/lib/libc/include/x86-linux-gnu/bits/fp-logb.h @@ -1,5 +1,5 @@ /* Define __FP_LOGB0_IS_MIN and __FP_LOGBNAN_IS_MIN. x86 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/indirect-return.h b/lib/libc/include/x86-linux-gnu/bits/indirect-return.h index 911b8c4333..e0af8c60c9 100644 --- a/lib/libc/include/x86-linux-gnu/bits/indirect-return.h +++ b/lib/libc/include/x86-linux-gnu/bits/indirect-return.h @@ -1,5 +1,5 @@ /* Definition of __INDIRECT_RETURN. x86 version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/ipctypes.h b/lib/libc/include/x86-linux-gnu/bits/ipctypes.h index 7c465087b2..863c6f88c1 100644 --- a/lib/libc/include/x86-linux-gnu/bits/ipctypes.h +++ b/lib/libc/include/x86-linux-gnu/bits/ipctypes.h @@ -1,5 +1,5 @@ /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/iscanonical.h b/lib/libc/include/x86-linux-gnu/bits/iscanonical.h index d7e7ae35cb..127ab6bbdc 100644 --- a/lib/libc/include/x86-linux-gnu/bits/iscanonical.h +++ b/lib/libc/include/x86-linux-gnu/bits/iscanonical.h @@ -1,5 +1,5 @@ /* Define iscanonical macro. ldbl-96 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/link.h b/lib/libc/include/x86-linux-gnu/bits/link.h index c71bb2fc27..390cfdc1a4 100644 --- a/lib/libc/include/x86-linux-gnu/bits/link.h +++ b/lib/libc/include/x86-linux-gnu/bits/link.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2023 Free Software Foundation, Inc. +/* Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/long-double.h b/lib/libc/include/x86-linux-gnu/bits/long-double.h index 3839f69a6f..f4de255f19 100644 --- a/lib/libc/include/x86-linux-gnu/bits/long-double.h +++ b/lib/libc/include/x86-linux-gnu/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. ldbl-96 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/math-vector.h b/lib/libc/include/x86-linux-gnu/bits/math-vector.h index a147456599..28c193e0c9 100644 --- a/lib/libc/include/x86-linux-gnu/bits/math-vector.h +++ b/lib/libc/include/x86-linux-gnu/bits/math-vector.h @@ -1,5 +1,5 @@ /* Platform-specific SIMD declarations of math functions. - Copyright (C) 2014-2023 Free Software Foundation, Inc. + Copyright (C) 2014-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/mman.h b/lib/libc/include/x86-linux-gnu/bits/mman.h index 0019b3c1b1..ca06b7f1fa 100644 --- a/lib/libc/include/x86-linux-gnu/bits/mman.h +++ b/lib/libc/include/x86-linux-gnu/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/x86_64 version. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -25,6 +25,12 @@ /* Other flags. */ #define MAP_32BIT 0x40 /* Only give out 32-bit addresses. */ +#define MAP_ABOVE4G 0x80 /* Only map above 4GB. */ + +#ifdef __USE_MISC +/* Set up a restore token in the newly allocated shadow stack */ +# define SHADOW_STACK_SET_TOKEN 0x1 +#endif #include diff --git a/lib/libc/include/x86-linux-gnu/bits/procfs-id.h b/lib/libc/include/x86-linux-gnu/bits/procfs-id.h index a423506956..ea13f7d091 100644 --- a/lib/libc/include/x86-linux-gnu/bits/procfs-id.h +++ b/lib/libc/include/x86-linux-gnu/bits/procfs-id.h @@ -1,5 +1,5 @@ /* Types of pr_uid and pr_gid in struct elf_prpsinfo. x86 version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/x86-linux-gnu/bits/procfs.h b/lib/libc/include/x86-linux-gnu/bits/procfs.h index a661cedc73..6e5b4daf67 100644 --- a/lib/libc/include/x86-linux-gnu/bits/procfs.h +++ b/lib/libc/include/x86-linux-gnu/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. x86 version. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/pthreadtypes-arch.h b/lib/libc/include/x86-linux-gnu/bits/pthreadtypes-arch.h index c04483882e..c189a840d5 100644 --- a/lib/libc/include/x86-linux-gnu/bits/pthreadtypes-arch.h +++ b/lib/libc/include/x86-linux-gnu/bits/pthreadtypes-arch.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/rseq.h b/lib/libc/include/x86-linux-gnu/bits/rseq.h index 25794bb034..18a9ebf955 100644 --- a/lib/libc/include/x86-linux-gnu/bits/rseq.h +++ b/lib/libc/include/x86-linux-gnu/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences Linux x86 architecture header. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/x86-linux-gnu/bits/setjmp.h b/lib/libc/include/x86-linux-gnu/bits/setjmp.h index a0ec4d52b3..beb91cf0de 100644 --- a/lib/libc/include/x86-linux-gnu/bits/setjmp.h +++ b/lib/libc/include/x86-linux-gnu/bits/setjmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2023 Free Software Foundation, Inc. +/* Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/sigcontext.h b/lib/libc/include/x86-linux-gnu/bits/sigcontext.h index c5c56327d7..05e9697bf2 100644 --- a/lib/libc/include/x86-linux-gnu/bits/sigcontext.h +++ b/lib/libc/include/x86-linux-gnu/bits/sigcontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/struct_mutex.h b/lib/libc/include/x86-linux-gnu/bits/struct_mutex.h index 1c24f99766..f641625028 100644 --- a/lib/libc/include/x86-linux-gnu/bits/struct_mutex.h +++ b/lib/libc/include/x86-linux-gnu/bits/struct_mutex.h @@ -1,5 +1,5 @@ /* x86 internal mutex struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/struct_rwlock.h b/lib/libc/include/x86-linux-gnu/bits/struct_rwlock.h index bda5f4503e..b3e7596355 100644 --- a/lib/libc/include/x86-linux-gnu/bits/struct_rwlock.h +++ b/lib/libc/include/x86-linux-gnu/bits/struct_rwlock.h @@ -1,5 +1,5 @@ /* x86 internal rwlock struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/x86-linux-gnu/bits/struct_stat.h b/lib/libc/include/x86-linux-gnu/bits/struct_stat.h index fb7e9b0079..73de19f369 100644 --- a/lib/libc/include/x86-linux-gnu/bits/struct_stat.h +++ b/lib/libc/include/x86-linux-gnu/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/timesize.h b/lib/libc/include/x86-linux-gnu/bits/timesize.h index e93c7b59be..07c1065ce9 100644 --- a/lib/libc/include/x86-linux-gnu/bits/timesize.h +++ b/lib/libc/include/x86-linux-gnu/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, x86-64 and x32 case. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/types/struct_semid_ds.h b/lib/libc/include/x86-linux-gnu/bits/types/struct_semid_ds.h index c3fcba132f..a0dbacd6d3 100644 --- a/lib/libc/include/x86-linux-gnu/bits/types/struct_semid_ds.h +++ b/lib/libc/include/x86-linux-gnu/bits/types/struct_semid_ds.h @@ -1,5 +1,5 @@ /* x86 implementation of the semaphore struct semid_ds. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/bits/typesizes.h b/lib/libc/include/x86-linux-gnu/bits/typesizes.h index a80cf92e0d..1af50d3858 100644 --- a/lib/libc/include/x86-linux-gnu/bits/typesizes.h +++ b/lib/libc/include/x86-linux-gnu/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. Linux/x86-64 version. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/finclude/math-vector-fortran.h b/lib/libc/include/x86-linux-gnu/finclude/math-vector-fortran.h index a6b0e8eedd..4fbd7cb3de 100644 --- a/lib/libc/include/x86-linux-gnu/finclude/math-vector-fortran.h +++ b/lib/libc/include/x86-linux-gnu/finclude/math-vector-fortran.h @@ -1,5 +1,5 @@ ! Platform-specific declarations of SIMD math functions for Fortran. -*- f90 -*- -! Copyright (C) 2019-2023 Free Software Foundation, Inc. +! Copyright (C) 2019-2024 Free Software Foundation, Inc. ! This file is part of the GNU C Library. ! ! The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/fpu_control.h b/lib/libc/include/x86-linux-gnu/fpu_control.h index c07f6472dc..a3fe208d3a 100644 --- a/lib/libc/include/x86-linux-gnu/fpu_control.h +++ b/lib/libc/include/x86-linux-gnu/fpu_control.h @@ -1,5 +1,5 @@ /* FPU control word bits. x86 version. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/gnu/lib-names-32.h b/lib/libc/include/x86-linux-gnu/gnu/lib-names-32.h index 05f14745a9..77fbbc4610 100644 --- a/lib/libc/include/x86-linux-gnu/gnu/lib-names-32.h +++ b/lib/libc/include/x86-linux-gnu/gnu/lib-names-32.h @@ -7,7 +7,6 @@ #define LD_SO "ld-linux.so.2" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/x86-linux-gnu/sys/elf.h b/lib/libc/include/x86-linux-gnu/sys/elf.h index 7bdda09e46..f916bff09f 100644 --- a/lib/libc/include/x86-linux-gnu/sys/elf.h +++ b/lib/libc/include/x86-linux-gnu/sys/elf.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/sys/ptrace.h b/lib/libc/include/x86-linux-gnu/sys/ptrace.h index d97d5b9ac0..f36c5f95e8 100644 --- a/lib/libc/include/x86-linux-gnu/sys/ptrace.h +++ b/lib/libc/include/x86-linux-gnu/sys/ptrace.h @@ -1,5 +1,5 @@ /* `ptrace' debugger support interface. Linux/x86 version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -194,8 +194,18 @@ enum __ptrace_request #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO /* Get rseq configuration information. */ - PTRACE_GET_RSEQ_CONFIGURATION = 0x420f + PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION + + /* Set configuration for syscall user dispatch. */ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, +#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG + + /* Get configuration for syscall user dispatch. */ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 +#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG }; diff --git a/lib/libc/include/x86-linux-gnu/sys/ucontext.h b/lib/libc/include/x86-linux-gnu/sys/ucontext.h index 57a6bec561..1cab7650a7 100644 --- a/lib/libc/include/x86-linux-gnu/sys/ucontext.h +++ b/lib/libc/include/x86-linux-gnu/sys/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2023 Free Software Foundation, Inc. +/* Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86-linux-gnu/sys/user.h b/lib/libc/include/x86-linux-gnu/sys/user.h index ae0283c23b..73b13ac776 100644 --- a/lib/libc/include/x86-linux-gnu/sys/user.h +++ b/lib/libc/include/x86-linux-gnu/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2023 Free Software Foundation, Inc. +/* Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/dl_find_object.h b/lib/libc/include/x86_64-linux-gnu/bits/dl_find_object.h index b276fbc9ba..d67a396696 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/dl_find_object.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/dl_find_object.h @@ -1,5 +1,5 @@ /* x86 definitions for finding objects. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/environments.h b/lib/libc/include/x86_64-linux-gnu/bits/environments.h index 99bf904d42..8133be498b 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/environments.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/environments.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/epoll.h b/lib/libc/include/x86_64-linux-gnu/bits/epoll.h index 6902c3341a..5bc6bd4569 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/epoll.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/epoll.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/fcntl.h b/lib/libc/include/x86_64-linux-gnu/bits/fcntl.h index 94abf25091..d4c2799285 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/fcntl.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for Linux/x86. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/fenv.h b/lib/libc/include/x86_64-linux-gnu/bits/fenv.h index bb5cbf1dab..f571c013dd 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/fenv.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/floatn.h b/lib/libc/include/x86_64-linux-gnu/bits/floatn.h index 827aeeced4..573bbff165 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/floatn.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features on x86. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/flt-eval-method.h b/lib/libc/include/x86_64-linux-gnu/bits/flt-eval-method.h index 2f6d1751ba..683fd2945f 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/flt-eval-method.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/flt-eval-method.h @@ -1,5 +1,5 @@ /* Define __GLIBC_FLT_EVAL_METHOD. x86 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/fp-logb.h b/lib/libc/include/x86_64-linux-gnu/bits/fp-logb.h index ffd96b7282..d8122c89ad 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/fp-logb.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/fp-logb.h @@ -1,5 +1,5 @@ /* Define __FP_LOGB0_IS_MIN and __FP_LOGBNAN_IS_MIN. x86 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/indirect-return.h b/lib/libc/include/x86_64-linux-gnu/bits/indirect-return.h index 911b8c4333..e0af8c60c9 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/indirect-return.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/indirect-return.h @@ -1,5 +1,5 @@ /* Definition of __INDIRECT_RETURN. x86 version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/ipctypes.h b/lib/libc/include/x86_64-linux-gnu/bits/ipctypes.h index 7c465087b2..863c6f88c1 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/ipctypes.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/ipctypes.h @@ -1,5 +1,5 @@ /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/iscanonical.h b/lib/libc/include/x86_64-linux-gnu/bits/iscanonical.h index d7e7ae35cb..127ab6bbdc 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/iscanonical.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/iscanonical.h @@ -1,5 +1,5 @@ /* Define iscanonical macro. ldbl-96 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/link.h b/lib/libc/include/x86_64-linux-gnu/bits/link.h index c71bb2fc27..390cfdc1a4 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/link.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/link.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2023 Free Software Foundation, Inc. +/* Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/long-double.h b/lib/libc/include/x86_64-linux-gnu/bits/long-double.h index 3839f69a6f..f4de255f19 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/long-double.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. ldbl-96 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/math-vector.h b/lib/libc/include/x86_64-linux-gnu/bits/math-vector.h index a147456599..28c193e0c9 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/math-vector.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/math-vector.h @@ -1,5 +1,5 @@ /* Platform-specific SIMD declarations of math functions. - Copyright (C) 2014-2023 Free Software Foundation, Inc. + Copyright (C) 2014-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/mman.h b/lib/libc/include/x86_64-linux-gnu/bits/mman.h index 0019b3c1b1..ca06b7f1fa 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/mman.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/x86_64 version. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -25,6 +25,12 @@ /* Other flags. */ #define MAP_32BIT 0x40 /* Only give out 32-bit addresses. */ +#define MAP_ABOVE4G 0x80 /* Only map above 4GB. */ + +#ifdef __USE_MISC +/* Set up a restore token in the newly allocated shadow stack */ +# define SHADOW_STACK_SET_TOKEN 0x1 +#endif #include diff --git a/lib/libc/include/x86_64-linux-gnu/bits/procfs-id.h b/lib/libc/include/x86_64-linux-gnu/bits/procfs-id.h index a423506956..ea13f7d091 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/procfs-id.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/procfs-id.h @@ -1,5 +1,5 @@ /* Types of pr_uid and pr_gid in struct elf_prpsinfo. x86 version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/x86_64-linux-gnu/bits/procfs.h b/lib/libc/include/x86_64-linux-gnu/bits/procfs.h index a661cedc73..6e5b4daf67 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/procfs.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. x86 version. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h b/lib/libc/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h index c04483882e..c189a840d5 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/rseq.h b/lib/libc/include/x86_64-linux-gnu/bits/rseq.h index 25794bb034..18a9ebf955 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/rseq.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences Linux x86 architecture header. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/x86_64-linux-gnu/bits/setjmp.h b/lib/libc/include/x86_64-linux-gnu/bits/setjmp.h index a0ec4d52b3..beb91cf0de 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/setjmp.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/setjmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2023 Free Software Foundation, Inc. +/* Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/sigcontext.h b/lib/libc/include/x86_64-linux-gnu/bits/sigcontext.h index c5c56327d7..05e9697bf2 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/sigcontext.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/sigcontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/struct_mutex.h b/lib/libc/include/x86_64-linux-gnu/bits/struct_mutex.h index 1c24f99766..f641625028 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/struct_mutex.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/struct_mutex.h @@ -1,5 +1,5 @@ /* x86 internal mutex struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/struct_rwlock.h b/lib/libc/include/x86_64-linux-gnu/bits/struct_rwlock.h index bda5f4503e..b3e7596355 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/struct_rwlock.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/struct_rwlock.h @@ -1,5 +1,5 @@ /* x86 internal rwlock struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/x86_64-linux-gnu/bits/struct_stat.h b/lib/libc/include/x86_64-linux-gnu/bits/struct_stat.h index fb7e9b0079..73de19f369 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/struct_stat.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/timesize.h b/lib/libc/include/x86_64-linux-gnu/bits/timesize.h index e93c7b59be..07c1065ce9 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/timesize.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, x86-64 and x32 case. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/types/struct_semid_ds.h b/lib/libc/include/x86_64-linux-gnu/bits/types/struct_semid_ds.h index c3fcba132f..a0dbacd6d3 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/types/struct_semid_ds.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/types/struct_semid_ds.h @@ -1,5 +1,5 @@ /* x86 implementation of the semaphore struct semid_ds. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/bits/typesizes.h b/lib/libc/include/x86_64-linux-gnu/bits/typesizes.h index a80cf92e0d..1af50d3858 100644 --- a/lib/libc/include/x86_64-linux-gnu/bits/typesizes.h +++ b/lib/libc/include/x86_64-linux-gnu/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. Linux/x86-64 version. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/finclude/math-vector-fortran.h b/lib/libc/include/x86_64-linux-gnu/finclude/math-vector-fortran.h index a6b0e8eedd..4fbd7cb3de 100644 --- a/lib/libc/include/x86_64-linux-gnu/finclude/math-vector-fortran.h +++ b/lib/libc/include/x86_64-linux-gnu/finclude/math-vector-fortran.h @@ -1,5 +1,5 @@ ! Platform-specific declarations of SIMD math functions for Fortran. -*- f90 -*- -! Copyright (C) 2019-2023 Free Software Foundation, Inc. +! Copyright (C) 2019-2024 Free Software Foundation, Inc. ! This file is part of the GNU C Library. ! ! The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/fpu_control.h b/lib/libc/include/x86_64-linux-gnu/fpu_control.h index c07f6472dc..a3fe208d3a 100644 --- a/lib/libc/include/x86_64-linux-gnu/fpu_control.h +++ b/lib/libc/include/x86_64-linux-gnu/fpu_control.h @@ -1,5 +1,5 @@ /* FPU control word bits. x86 version. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/gnu/lib-names-64.h b/lib/libc/include/x86_64-linux-gnu/gnu/lib-names-64.h index df597abd10..26bcb6482e 100644 --- a/lib/libc/include/x86_64-linux-gnu/gnu/lib-names-64.h +++ b/lib/libc/include/x86_64-linux-gnu/gnu/lib-names-64.h @@ -7,7 +7,6 @@ #define LD_SO "ld-linux-x86-64.so.2" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/x86_64-linux-gnu/sys/elf.h b/lib/libc/include/x86_64-linux-gnu/sys/elf.h index 7bdda09e46..f916bff09f 100644 --- a/lib/libc/include/x86_64-linux-gnu/sys/elf.h +++ b/lib/libc/include/x86_64-linux-gnu/sys/elf.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/sys/ptrace.h b/lib/libc/include/x86_64-linux-gnu/sys/ptrace.h index d97d5b9ac0..f36c5f95e8 100644 --- a/lib/libc/include/x86_64-linux-gnu/sys/ptrace.h +++ b/lib/libc/include/x86_64-linux-gnu/sys/ptrace.h @@ -1,5 +1,5 @@ /* `ptrace' debugger support interface. Linux/x86 version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -194,8 +194,18 @@ enum __ptrace_request #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO /* Get rseq configuration information. */ - PTRACE_GET_RSEQ_CONFIGURATION = 0x420f + PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION + + /* Set configuration for syscall user dispatch. */ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, +#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG + + /* Get configuration for syscall user dispatch. */ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 +#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG }; diff --git a/lib/libc/include/x86_64-linux-gnu/sys/ucontext.h b/lib/libc/include/x86_64-linux-gnu/sys/ucontext.h index 57a6bec561..1cab7650a7 100644 --- a/lib/libc/include/x86_64-linux-gnu/sys/ucontext.h +++ b/lib/libc/include/x86_64-linux-gnu/sys/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2023 Free Software Foundation, Inc. +/* Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnu/sys/user.h b/lib/libc/include/x86_64-linux-gnu/sys/user.h index ae0283c23b..73b13ac776 100644 --- a/lib/libc/include/x86_64-linux-gnu/sys/user.h +++ b/lib/libc/include/x86_64-linux-gnu/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2023 Free Software Foundation, Inc. +/* Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/dl_find_object.h b/lib/libc/include/x86_64-linux-gnux32/bits/dl_find_object.h index b276fbc9ba..d67a396696 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/dl_find_object.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/dl_find_object.h @@ -1,5 +1,5 @@ /* x86 definitions for finding objects. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/environments.h b/lib/libc/include/x86_64-linux-gnux32/bits/environments.h index 99bf904d42..8133be498b 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/environments.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/environments.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/epoll.h b/lib/libc/include/x86_64-linux-gnux32/bits/epoll.h index 6902c3341a..5bc6bd4569 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/epoll.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/epoll.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/fcntl.h b/lib/libc/include/x86_64-linux-gnux32/bits/fcntl.h index 94abf25091..d4c2799285 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/fcntl.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/fcntl.h @@ -1,5 +1,5 @@ /* O_*, F_*, FD_* bit values for Linux/x86. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/fenv.h b/lib/libc/include/x86_64-linux-gnux32/bits/fenv.h index bb5cbf1dab..f571c013dd 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/fenv.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/floatn.h b/lib/libc/include/x86_64-linux-gnux32/bits/floatn.h index 827aeeced4..573bbff165 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/floatn.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/floatn.h @@ -1,5 +1,5 @@ /* Macros to control TS 18661-3 glibc features on x86. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/flt-eval-method.h b/lib/libc/include/x86_64-linux-gnux32/bits/flt-eval-method.h index 2f6d1751ba..683fd2945f 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/flt-eval-method.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/flt-eval-method.h @@ -1,5 +1,5 @@ /* Define __GLIBC_FLT_EVAL_METHOD. x86 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/fp-logb.h b/lib/libc/include/x86_64-linux-gnux32/bits/fp-logb.h index ffd96b7282..d8122c89ad 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/fp-logb.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/fp-logb.h @@ -1,5 +1,5 @@ /* Define __FP_LOGB0_IS_MIN and __FP_LOGBNAN_IS_MIN. x86 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/indirect-return.h b/lib/libc/include/x86_64-linux-gnux32/bits/indirect-return.h index 911b8c4333..e0af8c60c9 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/indirect-return.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/indirect-return.h @@ -1,5 +1,5 @@ /* Definition of __INDIRECT_RETURN. x86 version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/ipctypes.h b/lib/libc/include/x86_64-linux-gnux32/bits/ipctypes.h index 7c465087b2..863c6f88c1 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/ipctypes.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/ipctypes.h @@ -1,5 +1,5 @@ /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/iscanonical.h b/lib/libc/include/x86_64-linux-gnux32/bits/iscanonical.h index d7e7ae35cb..127ab6bbdc 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/iscanonical.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/iscanonical.h @@ -1,5 +1,5 @@ /* Define iscanonical macro. ldbl-96 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/link.h b/lib/libc/include/x86_64-linux-gnux32/bits/link.h index c71bb2fc27..390cfdc1a4 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/link.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/link.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2023 Free Software Foundation, Inc. +/* Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/long-double.h b/lib/libc/include/x86_64-linux-gnux32/bits/long-double.h index 3839f69a6f..f4de255f19 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/long-double.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. ldbl-96 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/math-vector.h b/lib/libc/include/x86_64-linux-gnux32/bits/math-vector.h index a147456599..28c193e0c9 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/math-vector.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/math-vector.h @@ -1,5 +1,5 @@ /* Platform-specific SIMD declarations of math functions. - Copyright (C) 2014-2023 Free Software Foundation, Inc. + Copyright (C) 2014-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/mman.h b/lib/libc/include/x86_64-linux-gnux32/bits/mman.h index 0019b3c1b1..ca06b7f1fa 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/mman.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/mman.h @@ -1,5 +1,5 @@ /* Definitions for POSIX memory map interface. Linux/x86_64 version. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -25,6 +25,12 @@ /* Other flags. */ #define MAP_32BIT 0x40 /* Only give out 32-bit addresses. */ +#define MAP_ABOVE4G 0x80 /* Only map above 4GB. */ + +#ifdef __USE_MISC +/* Set up a restore token in the newly allocated shadow stack */ +# define SHADOW_STACK_SET_TOKEN 0x1 +#endif #include diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/procfs-id.h b/lib/libc/include/x86_64-linux-gnux32/bits/procfs-id.h index a423506956..ea13f7d091 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/procfs-id.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/procfs-id.h @@ -1,5 +1,5 @@ /* Types of pr_uid and pr_gid in struct elf_prpsinfo. x86 version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/procfs.h b/lib/libc/include/x86_64-linux-gnux32/bits/procfs.h index a661cedc73..6e5b4daf67 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/procfs.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/procfs.h @@ -1,5 +1,5 @@ /* Types for registers for sys/procfs.h. x86 version. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/pthreadtypes-arch.h b/lib/libc/include/x86_64-linux-gnux32/bits/pthreadtypes-arch.h index c04483882e..c189a840d5 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/pthreadtypes-arch.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/pthreadtypes-arch.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/rseq.h b/lib/libc/include/x86_64-linux-gnux32/bits/rseq.h index 25794bb034..18a9ebf955 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/rseq.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/rseq.h @@ -1,5 +1,5 @@ /* Restartable Sequences Linux x86 architecture header. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/setjmp.h b/lib/libc/include/x86_64-linux-gnux32/bits/setjmp.h index a0ec4d52b3..beb91cf0de 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/setjmp.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/setjmp.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2023 Free Software Foundation, Inc. +/* Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/sigcontext.h b/lib/libc/include/x86_64-linux-gnux32/bits/sigcontext.h index c5c56327d7..05e9697bf2 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/sigcontext.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/sigcontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/struct_mutex.h b/lib/libc/include/x86_64-linux-gnux32/bits/struct_mutex.h index 1c24f99766..f641625028 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/struct_mutex.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/struct_mutex.h @@ -1,5 +1,5 @@ /* x86 internal mutex struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/struct_rwlock.h b/lib/libc/include/x86_64-linux-gnux32/bits/struct_rwlock.h index bda5f4503e..b3e7596355 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/struct_rwlock.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/struct_rwlock.h @@ -1,5 +1,5 @@ /* x86 internal rwlock struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/struct_stat.h b/lib/libc/include/x86_64-linux-gnux32/bits/struct_stat.h index fb7e9b0079..73de19f369 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/struct_stat.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/struct_stat.h @@ -1,5 +1,5 @@ /* Definition for struct stat. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/timesize.h b/lib/libc/include/x86_64-linux-gnux32/bits/timesize.h index e93c7b59be..07c1065ce9 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/timesize.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, x86-64 and x32 case. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/types/struct_semid_ds.h b/lib/libc/include/x86_64-linux-gnux32/bits/types/struct_semid_ds.h index c3fcba132f..a0dbacd6d3 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/types/struct_semid_ds.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/types/struct_semid_ds.h @@ -1,5 +1,5 @@ /* x86 implementation of the semaphore struct semid_ds. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/bits/typesizes.h b/lib/libc/include/x86_64-linux-gnux32/bits/typesizes.h index a80cf92e0d..1af50d3858 100644 --- a/lib/libc/include/x86_64-linux-gnux32/bits/typesizes.h +++ b/lib/libc/include/x86_64-linux-gnux32/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. Linux/x86-64 version. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/finclude/math-vector-fortran.h b/lib/libc/include/x86_64-linux-gnux32/finclude/math-vector-fortran.h index a6b0e8eedd..4fbd7cb3de 100644 --- a/lib/libc/include/x86_64-linux-gnux32/finclude/math-vector-fortran.h +++ b/lib/libc/include/x86_64-linux-gnux32/finclude/math-vector-fortran.h @@ -1,5 +1,5 @@ ! Platform-specific declarations of SIMD math functions for Fortran. -*- f90 -*- -! Copyright (C) 2019-2023 Free Software Foundation, Inc. +! Copyright (C) 2019-2024 Free Software Foundation, Inc. ! This file is part of the GNU C Library. ! ! The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/fpu_control.h b/lib/libc/include/x86_64-linux-gnux32/fpu_control.h index c07f6472dc..a3fe208d3a 100644 --- a/lib/libc/include/x86_64-linux-gnux32/fpu_control.h +++ b/lib/libc/include/x86_64-linux-gnux32/fpu_control.h @@ -1,5 +1,5 @@ /* FPU control word bits. x86 version. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/gnu/lib-names-x32.h b/lib/libc/include/x86_64-linux-gnux32/gnu/lib-names-x32.h index d229184257..735e8e2d39 100644 --- a/lib/libc/include/x86_64-linux-gnux32/gnu/lib-names-x32.h +++ b/lib/libc/include/x86_64-linux-gnux32/gnu/lib-names-x32.h @@ -7,7 +7,6 @@ #define LD_SO "ld-linux-x32.so.2" #define LIBANL_SO "libanl.so.1" #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" -#define LIBCRYPT_SO "libcrypt.so.1" #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" #define LIBC_SO "libc.so.6" #define LIBDL_SO "libdl.so.2" diff --git a/lib/libc/include/x86_64-linux-gnux32/sys/elf.h b/lib/libc/include/x86_64-linux-gnux32/sys/elf.h index 7bdda09e46..f916bff09f 100644 --- a/lib/libc/include/x86_64-linux-gnux32/sys/elf.h +++ b/lib/libc/include/x86_64-linux-gnux32/sys/elf.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/sys/ptrace.h b/lib/libc/include/x86_64-linux-gnux32/sys/ptrace.h index d97d5b9ac0..f36c5f95e8 100644 --- a/lib/libc/include/x86_64-linux-gnux32/sys/ptrace.h +++ b/lib/libc/include/x86_64-linux-gnux32/sys/ptrace.h @@ -1,5 +1,5 @@ /* `ptrace' debugger support interface. Linux/x86 version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -194,8 +194,18 @@ enum __ptrace_request #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO /* Get rseq configuration information. */ - PTRACE_GET_RSEQ_CONFIGURATION = 0x420f + PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION + + /* Set configuration for syscall user dispatch. */ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, +#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG + + /* Get configuration for syscall user dispatch. */ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 +#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ + PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG }; diff --git a/lib/libc/include/x86_64-linux-gnux32/sys/ucontext.h b/lib/libc/include/x86_64-linux-gnux32/sys/ucontext.h index 57a6bec561..1cab7650a7 100644 --- a/lib/libc/include/x86_64-linux-gnux32/sys/ucontext.h +++ b/lib/libc/include/x86_64-linux-gnux32/sys/ucontext.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2023 Free Software Foundation, Inc. +/* Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/include/x86_64-linux-gnux32/sys/user.h b/lib/libc/include/x86_64-linux-gnux32/sys/user.h index ae0283c23b..73b13ac776 100644 --- a/lib/libc/include/x86_64-linux-gnux32/sys/user.h +++ b/lib/libc/include/x86_64-linux-gnux32/sys/user.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2023 Free Software Foundation, Inc. +/* Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or From 16d65358e94b13c6184ff40a8e011eae469e1d15 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Wed, 5 Jun 2024 17:25:42 -0700 Subject: [PATCH 02/23] musl: add missing entry to available_libcs --- lib/std/zig/target.zig | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/std/zig/target.zig b/lib/std/zig/target.zig index c3232658aa..0fcfebba48 100644 --- a/lib/std/zig/target.zig +++ b/lib/std/zig/target.zig @@ -35,6 +35,7 @@ pub const available_libcs = [_]ArchOsAbi{ .{ .arch = .x86, .os = .linux, .abi = .gnu }, .{ .arch = .x86, .os = .linux, .abi = .musl }, .{ .arch = .x86, .os = .windows, .abi = .gnu }, + .{ .arch = .loongarch64, .os = .linux, .abi = .musl }, .{ .arch = .m68k, .os = .linux, .abi = .gnu }, .{ .arch = .m68k, .os = .linux, .abi = .musl }, .{ .arch = .mips64el, .os = .linux, .abi = .gnuabi64 }, @@ -56,6 +57,7 @@ pub const available_libcs = [_]ArchOsAbi{ .{ .arch = .powerpc, .os = .linux, .abi = .gnueabi }, .{ .arch = .powerpc, .os = .linux, .abi = .gnueabihf }, .{ .arch = .powerpc, .os = .linux, .abi = .musl }, + .{ .arch = .riscv32, .os = .linux, .abi = .musl }, .{ .arch = .riscv64, .os = .linux, .abi = .gnu, .glibc_min = .{ .major = 2, .minor = 27, .patch = 0 } }, .{ .arch = .riscv64, .os = .linux, .abi = .musl }, .{ .arch = .s390x, .os = .linux, .abi = .gnu }, From c09f5f3795bf8463dbd968d439e753ead3e8d84b Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Wed, 5 Jun 2024 17:26:04 -0700 Subject: [PATCH 03/23] glibc: add riscv32 and loongarch64 --- lib/std/zig/target.zig | 2 ++ tools/process_headers.zig | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/lib/std/zig/target.zig b/lib/std/zig/target.zig index 0fcfebba48..8ed28e1064 100644 --- a/lib/std/zig/target.zig +++ b/lib/std/zig/target.zig @@ -35,6 +35,7 @@ pub const available_libcs = [_]ArchOsAbi{ .{ .arch = .x86, .os = .linux, .abi = .gnu }, .{ .arch = .x86, .os = .linux, .abi = .musl }, .{ .arch = .x86, .os = .windows, .abi = .gnu }, + .{ .arch = .loongarch64, .os = .linux, .abi = .gnu }, .{ .arch = .loongarch64, .os = .linux, .abi = .musl }, .{ .arch = .m68k, .os = .linux, .abi = .gnu }, .{ .arch = .m68k, .os = .linux, .abi = .musl }, @@ -57,6 +58,7 @@ pub const available_libcs = [_]ArchOsAbi{ .{ .arch = .powerpc, .os = .linux, .abi = .gnueabi }, .{ .arch = .powerpc, .os = .linux, .abi = .gnueabihf }, .{ .arch = .powerpc, .os = .linux, .abi = .musl }, + .{ .arch = .riscv32, .os = .linux, .abi = .gnuilp32 }, .{ .arch = .riscv32, .os = .linux, .abi = .musl }, .{ .arch = .riscv64, .os = .linux, .abi = .gnu, .glibc_min = .{ .major = 2, .minor = 27, .patch = 0 } }, .{ .arch = .riscv64, .os = .linux, .abi = .musl }, diff --git a/tools/process_headers.zig b/tools/process_headers.zig index e81d178077..a15481afa2 100644 --- a/tools/process_headers.zig +++ b/tools/process_headers.zig @@ -159,6 +159,11 @@ const glibc_targets = [_]LibCTarget{ .arch = MultiArch{ .specific = Arch.powerpc }, .abi = MultiAbi{ .specific = Abi.gnueabi }, }, + LibCTarget{ + .name = "riscv32-linux-gnu-rv32imac-ilp32", + .arch = MultiArch{ .specific = Arch.riscv32 }, + .abi = MultiAbi{ .specific = Abi.gnuilp32 }, + }, LibCTarget{ .name = "riscv64-linux-gnu-rv64imac-lp64", .arch = MultiArch{ .specific = Arch.riscv64 }, @@ -195,6 +200,11 @@ const glibc_targets = [_]LibCTarget{ .arch = MultiArch{ .specific = Arch.m68k }, .abi = MultiAbi{ .specific = Abi.gnu }, }, + LibCTarget{ + .name = "loongarch64-linux-gnu-lp64d", + .arch = MultiArch{ .specific = .loongarch64 }, + .abi = MultiAbi{ .specific = Abi.gnu }, + }, }; const musl_targets = [_]LibCTarget{ From cbe9923c2220d7e3475c0adfe87a29142fef8e6d Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Thu, 12 Oct 2023 21:19:43 -0700 Subject: [PATCH 04/23] glibc patch: don't hardcode __GLIBC_MINOR__ Instead Zig passes it based on the target. --- lib/libc/include/generic-glibc/features.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/libc/include/generic-glibc/features.h b/lib/libc/include/generic-glibc/features.h index e02588bcd2..cd3a32da86 100644 --- a/lib/libc/include/generic-glibc/features.h +++ b/lib/libc/include/generic-glibc/features.h @@ -492,7 +492,7 @@ /* Major and minor version number of the GNU C library package. Use these macros to test for features in specific releases. */ #define __GLIBC__ 2 -#define __GLIBC_MINOR__ 39 +/* Zig patch: we pass `-D__GLIBC_MINOR__=XX` depending on the target. */ #define __GLIBC_PREREQ(maj, min) \ ((__GLIBC__ << 16) + __GLIBC_MINOR__ >= ((maj) << 16) + (min)) @@ -527,4 +527,4 @@ #include -#endif /* features.h */ \ No newline at end of file +#endif /* features.h */ From a4a88e441f989942400dac8ac9b7f7e1a8f83b22 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Fri, 28 Jan 2022 18:31:23 -0700 Subject: [PATCH 05/23] glibc patch: version-gate _DYNAMIC_STACK_SIZE_SOURCE This is a patch to glibc features.h which makes _DYNAMIC_STACK_SIZE_SOURCE undefined unless the version is >= 2.34. This feature was introduced with glibc 2.34 and without this patch, code built against these headers but then run on an older glibc will end up making a call to sysconf() that returns -1 for the value of SIGSTKSZ and MINSIGSTKSZ. --- lib/libc/include/generic-glibc/features.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/libc/include/generic-glibc/features.h b/lib/libc/include/generic-glibc/features.h index cd3a32da86..f9cd858396 100644 --- a/lib/libc/include/generic-glibc/features.h +++ b/lib/libc/include/generic-glibc/features.h @@ -222,8 +222,13 @@ # define _DEFAULT_SOURCE 1 # undef _ATFILE_SOURCE # define _ATFILE_SOURCE 1 + +/* Zig patch */ +# if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 34) || __GLIBC__ > 2 # undef _DYNAMIC_STACK_SIZE_SOURCE # define _DYNAMIC_STACK_SIZE_SOURCE 1 +# endif + #endif /* If nothing (other than _GNU_SOURCE and _DEFAULT_SOURCE) is defined, From 5af14711a86cccf5b205ed148cd79efcb03689b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Motiejus=20Jak=C5=A1tys?= Date: Tue, 28 Mar 2023 20:30:06 +0300 Subject: [PATCH 06/23] glibc patch: add backwards compatibility for some symbols - `fcntl` was renamed to `fcntl64` in glibc 2.28 (see #9485) - `res_{,n}{search,query,querydomain}` became "their own" symbols since glibc 2.34: they were prefixed with `__` before. This PR makes it possible to use `fcntl` with glibc 2.27 or older and the `res_*` functions with glibc 2.33 or older. These patches will become redundant with universal-headers and can be dropped. But we have to do with what we have now. --- lib/libc/include/generic-glibc/fcntl.h | 8 ++++++++ lib/libc/include/generic-glibc/resolv.h | 22 ++++++++++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/lib/libc/include/generic-glibc/fcntl.h b/lib/libc/include/generic-glibc/fcntl.h index 112483f91c..5f2a994c1b 100644 --- a/lib/libc/include/generic-glibc/fcntl.h +++ b/lib/libc/include/generic-glibc/fcntl.h @@ -167,6 +167,11 @@ typedef __pid_t pid_t; effective IDs, not real IDs. */ #endif + +/* fcntl was a simple symbol until glibc 2.27 inclusive. + * glibc 2.28 onwards converted it to a macro when compiled with + * USE_LARGEFILE64. */ +#if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 28) || __GLIBC__ > 2 /* Do the file control operation described by CMD on FD. The remaining arguments are interpreted depending on CMD. @@ -197,6 +202,9 @@ extern int __fcntl_time64 (int __fd, int __request, ...) __THROW; # define fcntl __fcntl_time64 # endif #endif +#else /* glibc 2.27 or lower */ +extern int fcntl (int __fd, int __cmd, ...); +#endif /* Open FILE and return a new file descriptor for it, or -1 on error. OFLAG determines the type of access used. If O_CREAT or O_TMPFILE is set diff --git a/lib/libc/include/generic-glibc/resolv.h b/lib/libc/include/generic-glibc/resolv.h index f25d325a10..b00cdc0d94 100644 --- a/lib/libc/include/generic-glibc/resolv.h +++ b/lib/libc/include/generic-glibc/resolv.h @@ -170,6 +170,28 @@ __END_DECLS #define res_init __res_init #define res_isourserver __res_isourserver +/* In glibc 2.33 and earlier res_search, res_nsearch, res_query, res_nquery, + * res_querydomain, res_nquerydomain were #define'd to __res_search, + * __res_nsearch, etc. glibc 2.34 onwards removes the macros and exposes the + * symbols directly. New glibc exposes compat symbols with underscores for + * backwards compatibility. Applications linked to glibc 2.34+ are expected + * to use the non-underscored symbols. + * + * It will be enough to bring the macros back when compiling against the older + * glibc versions. + * + * See glibc commit ea9878ec271c791880fcbbe519d70c42f8113750. + */ +#if (__GLIBC__ == 2 && __GLIBC_MINOR__ < 34) +#define res_search __res_search +#define res_nsearch __res_nsearch +#define res_query __res_query +#define res_nquery __res_nquery +#define res_querydomain __res_querydomain +#define res_nquerydomain __res_nquerydomain +#endif +/* end glibc compat hacks */ + #ifdef _LIBC # define __RESOLV_DEPRECATED # define __RESOLV_DEPRECATED_MSG(msg) From 7c4bf07060ff234da301dce759bc6678b96d8831 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Motiejus=20Jak=C5=A1tys?= Date: Thu, 4 May 2023 10:36:05 +0300 Subject: [PATCH 07/23] glibc patch: add a few dn_* functions This is necessary to build glib. --- lib/libc/include/generic-glibc/resolv.h | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/lib/libc/include/generic-glibc/resolv.h b/lib/libc/include/generic-glibc/resolv.h index b00cdc0d94..1969fb7f32 100644 --- a/lib/libc/include/generic-glibc/resolv.h +++ b/lib/libc/include/generic-glibc/resolv.h @@ -171,16 +171,20 @@ __END_DECLS #define res_isourserver __res_isourserver /* In glibc 2.33 and earlier res_search, res_nsearch, res_query, res_nquery, - * res_querydomain, res_nquerydomain were #define'd to __res_search, - * __res_nsearch, etc. glibc 2.34 onwards removes the macros and exposes the - * symbols directly. New glibc exposes compat symbols with underscores for - * backwards compatibility. Applications linked to glibc 2.34+ are expected - * to use the non-underscored symbols. + * res_querydomain, res_nquerydomain, dn_skipname, dn_comp, dn_expand were + * #define'd to __res_search, __res_nsearch, etc. glibc 2.34 onwards removes + * the macros and exposes the symbols directly. New glibc exposes compat + * symbols with underscores for backwards compatibility. Applications linked to + * glibc 2.34+ are expected to use the non-underscored symbols. * - * It will be enough to bring the macros back when compiling against the older - * glibc versions. + * It is enough to bring the macros back when compiling against the older glibc + * versions. * - * See glibc commit ea9878ec271c791880fcbbe519d70c42f8113750. + * See glibc commits: + * - ea9878ec271c791880fcbbe519d70c42f8113750 res_* + * - 391e02236b931132c0e8b5ba4c3b087c2aaa1044 dn_skipname + * - fd8a87c0c1932de591e7ad108ff6288a4b6b18c9 dn_comp + * - 640bbdf71c6f10ac26252ac67a22902e26657bd8 dn_expand */ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ < 34) #define res_search __res_search @@ -189,6 +193,9 @@ __END_DECLS #define res_nquery __res_nquery #define res_querydomain __res_querydomain #define res_nquerydomain __res_nquerydomain +#define dn_skipname __dn_skipname +#define dn_comp __dn_comp +#define dn_expand __dn_expand #endif /* end glibc compat hacks */ @@ -328,4 +335,4 @@ void res_nclose (res_state) __THROW; __END_DECLS -#endif /* !_RESOLV_H_ */ \ No newline at end of file +#endif /* !_RESOLV_H_ */ From 9f9fa2df932fafe21134fc9bbf82fec282739d70 Mon Sep 17 00:00:00 2001 From: Xavier Bouchoux Date: Mon, 16 Oct 2023 22:35:15 +0200 Subject: [PATCH 08/23] glibc patch: add backwards compatibility for strtol-family functions following suit from b40943e253c079ec3de1b149dd2ef0ccc3da38a4, add a version guard in addition to the ISOC2X check. --- lib/libc/include/generic-glibc/features.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/lib/libc/include/generic-glibc/features.h b/lib/libc/include/generic-glibc/features.h index f9cd858396..0a1ca71ea1 100644 --- a/lib/libc/include/generic-glibc/features.h +++ b/lib/libc/include/generic-glibc/features.h @@ -470,6 +470,11 @@ # define __GLIBC_USE_DEPRECATED_SCANF 0 #endif + +/* support for ISO C2X strtol was added in 2.38 + * glibc commit 64924422a99690d147a166b4de3103f3bf3eaf6c + */ +#if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 38) || __GLIBC__ > 2 /* ISO C2X added support for a 0b or 0B prefix on binary constants as inputs to strtol-family functions (base 0 or 2). This macro is used to condition redirection in headers to allow that redirection @@ -480,6 +485,9 @@ #else # define __GLIBC_USE_C2X_STRTOL 0 #endif +#else /* glibc 2.37 or lower */ +# define __GLIBC_USE_C2X_STRTOL 0 +#endif /* Get definitions of __STDC_* predefined macros, if the compiler has not preincluded this header automatically. */ From 8a82496520ef25da9203dce527571c8e0574e6a6 Mon Sep 17 00:00:00 2001 From: Pat Tullmann Date: Wed, 18 Oct 2023 21:28:09 -0700 Subject: [PATCH 09/23] glibc headers: reallocarray added to glibc in v2.26 Here's the glibc commit that adds reallocarray to glibc: https://sourceware.org/git/?p=glibc.git;a=commit;h=2e0bbbfbf95fc9e22692e93658a6fbdd2d4554da The reallocarray symbol is declared in both stdlib.h and malloc.h. Fix #17607 --- lib/libc/include/generic-glibc/malloc.h | 6 ++++++ lib/libc/include/generic-glibc/stdlib.h | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/lib/libc/include/generic-glibc/malloc.h b/lib/libc/include/generic-glibc/malloc.h index cd4f33981f..d17c0b0c06 100644 --- a/lib/libc/include/generic-glibc/malloc.h +++ b/lib/libc/include/generic-glibc/malloc.h @@ -51,6 +51,11 @@ __THROW __attribute_malloc__ __attribute_alloc_size__ ((1, 2)) __wur; extern void *realloc (void *__ptr, size_t __size) __THROW __attribute_warn_unused_result__ __attribute_alloc_size__ ((2)); +/* + * reallocarray introduced in glibc 2.26 + * https://sourceware.org/git/?p=glibc.git;a=commit;h=2e0bbbfbf95fc9e22692e93658a6fbdd2d4554da + */ +#if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 26) || __GLIBC__ > 2 /* Re-allocate the previously allocated block in PTR, making the new block large enough for NMEMB elements of SIZE bytes each. */ /* __attribute_malloc__ is not used, because if reallocarray returns @@ -59,6 +64,7 @@ __THROW __attribute_warn_unused_result__ __attribute_alloc_size__ ((2)); extern void *reallocarray (void *__ptr, size_t __nmemb, size_t __size) __THROW __attribute_warn_unused_result__ __attribute_alloc_size__ ((2, 3)) __attr_dealloc_free; +#endif /* glibc v2.26 and later */ /* Free a block allocated by `malloc', `realloc' or `calloc'. */ extern void free (void *__ptr) __THROW; diff --git a/lib/libc/include/generic-glibc/stdlib.h b/lib/libc/include/generic-glibc/stdlib.h index 5fe67ad4b2..ad86197336 100644 --- a/lib/libc/include/generic-glibc/stdlib.h +++ b/lib/libc/include/generic-glibc/stdlib.h @@ -686,6 +686,11 @@ extern void *realloc (void *__ptr, size_t __size) /* Free a block allocated by `malloc', `realloc' or `calloc'. */ extern void free (void *__ptr) __THROW; +/* + * reallocarray introduced in glibc 2.26 + * https://sourceware.org/git/?p=glibc.git;a=commit;h=2e0bbbfbf95fc9e22692e93658a6fbdd2d4554da + */ +#if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 26) || __GLIBC__ > 2 #ifdef __USE_MISC /* Re-allocate the previously allocated block in PTR, making the new block large enough for NMEMB elements of SIZE bytes each. */ @@ -701,6 +706,7 @@ extern void *reallocarray (void *__ptr, size_t __nmemb, size_t __size) extern void *reallocarray (void *__ptr, size_t __nmemb, size_t __size) __THROW __attr_dealloc (reallocarray, 1); #endif +#endif /* glibc v2.26 and later */ #ifdef __USE_MISC # include From 95a905336337a5f6eba39a31a28235885a12d48e Mon Sep 17 00:00:00 2001 From: Pat Tullmann Date: Tue, 28 Nov 2023 19:55:35 -0800 Subject: [PATCH 10/23] glibc: strlcpy and strlcat arrived in glibc 2.38 So only expose these in generic-glibc/string.h if Zig is building a v2.38 (or later) glibc stub. Announcement of 2.38 that notes strlcpy and strlcat: https://lists.gnu.org/archive/html/info-gnu/2023-07/msg00010.html --- lib/libc/include/generic-glibc/string.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/libc/include/generic-glibc/string.h b/lib/libc/include/generic-glibc/string.h index d1daa78bfc..0dc39b2e34 100644 --- a/lib/libc/include/generic-glibc/string.h +++ b/lib/libc/include/generic-glibc/string.h @@ -501,6 +501,11 @@ extern char *stpncpy (char *__restrict __dest, __THROW __nonnull ((1, 2)); #endif +/* + * strlcpy and strlcat introduced in glibc 2.38 + * https://sourceware.org/git/?p=glibc.git;a=commit;h=2e0bbbfbf95fc9e22692e93658a6fbdd2d4554da + */ +#if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 38) || __GLIBC__ > 2 #ifdef __USE_MISC /* Copy at most N - 1 characters from SRC to DEST. */ extern size_t strlcpy (char *__restrict __dest, @@ -513,6 +518,7 @@ extern size_t strlcat (char *__restrict __dest, const char *__restrict __src, size_t __n) __THROW __nonnull ((1, 2)) __attr_access ((__read_write__, 1, 3)); #endif +#endif /* glibc v2.38 and later */ #ifdef __USE_GNU /* Compare S1 and S2 as strings holding name & indices/version numbers. */ From a8db261ebb6ffb0ac2145190532cdbeefdc15cb9 Mon Sep 17 00:00:00 2001 From: "Markus F.X.J. Oberhumer" Date: Thu, 25 Jan 2024 15:29:36 +0100 Subject: [PATCH 11/23] glibc: move __GLIBC__ version defines to the top of the file --- lib/libc/include/generic-glibc/features.h | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lib/libc/include/generic-glibc/features.h b/lib/libc/include/generic-glibc/features.h index 0a1ca71ea1..c21c2e27b0 100644 --- a/lib/libc/include/generic-glibc/features.h +++ b/lib/libc/include/generic-glibc/features.h @@ -159,6 +159,14 @@ # define __KERNEL_STRICT_NAMES #endif +/* Major and minor version number of the GNU C library package. Use + these macros to test for features in specific releases. */ +#define __GLIBC__ 2 +/* Zig patch: we pass `-D__GLIBC_MINOR__=XX` depending on the target. */ + +#define __GLIBC_PREREQ(maj, min) \ + ((__GLIBC__ << 16) + __GLIBC_MINOR__ >= ((maj) << 16) + (min)) + /* Convenience macro to test the version of gcc. Use like this: #if __GNUC_PREREQ (2,8) @@ -502,14 +510,6 @@ #undef __GNU_LIBRARY__ #define __GNU_LIBRARY__ 6 -/* Major and minor version number of the GNU C library package. Use - these macros to test for features in specific releases. */ -#define __GLIBC__ 2 -/* Zig patch: we pass `-D__GLIBC_MINOR__=XX` depending on the target. */ - -#define __GLIBC_PREREQ(maj, min) \ - ((__GLIBC__ << 16) + __GLIBC_MINOR__ >= ((maj) << 16) + (min)) - /* This is here only because every header file already includes this one. */ #ifndef __ASSEMBLER__ # ifndef _SYS_CDEFS_H From 4c2e57d4066692f4e0577cc46925cf7b76222202 Mon Sep 17 00:00:00 2001 From: "Markus F.X.J. Oberhumer" Date: Thu, 25 Jan 2024 15:29:36 +0100 Subject: [PATCH 12/23] glibc: use __GLIBC_USE_DEPRECATED_SCANF for glibc versions < 2.7 --- lib/libc/include/generic-glibc/features.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/libc/include/generic-glibc/features.h b/lib/libc/include/generic-glibc/features.h index c21c2e27b0..e0b3bdf5bf 100644 --- a/lib/libc/include/generic-glibc/features.h +++ b/lib/libc/include/generic-glibc/features.h @@ -469,7 +469,10 @@ instance, with GCC, -std=gnu11 will have C99-compliant scanf with or without -D_GNU_SOURCE, but -std=c89 -D_GNU_SOURCE will have the old extension. */ -#if (defined __USE_GNU \ +#if (__GLIBC__ == 2 && __GLIBC_MINOR__ < 7) +/* support for ISOC99 was added in glibc-2.7 */ +# define __GLIBC_USE_DEPRECATED_SCANF 1 +#elif (defined __USE_GNU \ && (defined __cplusplus \ ? (__cplusplus < 201103L && !defined __GXX_EXPERIMENTAL_CXX0X__) \ : (!defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L))) From 53137050f8718c923983878904f5467446d28ba5 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Wed, 5 Jun 2024 17:43:41 -0700 Subject: [PATCH 13/23] glibc: update abilists file generated from ziglang/glibc-abi-tool commit fc5d0a7046b76795e4219f8f168e118ec29fbc53 which now contains glibc 2.39 --- lib/libc/glibc/abilists | Bin 214842 -> 217016 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/lib/libc/glibc/abilists b/lib/libc/glibc/abilists index 5e98c564ba32958fc66dbbc99a9d648ee3df4583..e7e2e6f3afb02036e6995f3eba3244d76f1d65f3 100644 GIT binary patch delta 2982 zcmZ`*ZEO@p7`~b92bL>sZE5kK?X^WIVnC!S*8r(X6bN7hO;D)Qy}NC@xOcnW?zO1V zh#wIAARHT+n23VnKS1mdhG;5Qql6fu3C18sJ^}^}D)7gIh}6BEow@CD{nK2!@4oXq z&-*;@&SzUI4}Va(trc|S+TMk5#;2b*L6H6E6pS>QRx*L&s)YvCq}7kIT4;21bTcFf z8Tz0-a-wCZ@qQ2yRlS<7XPhctHh^#JhVzNh^mDk`X_U~jX$w8CWONf{Rj-w4Wh_0b z*)@&x$);KDlcu@dtca}ck57%U>c zz5Fq}&3%DU@?dzwB5%BU3AFqA@u9l%2(T$7Wh9K}aPDm|pB#MsXmv}GSMrl7n2Nlx zV^T#!z`I;XvUyiyNwi20_gKz??AcRa+nV=(zicAY@tUT%Q4nS{6S5Xh+qq~5HrB!z zx$E$7y`PPkHp9kML`c*7?!i}&fhei^{;7%Mv*Cbk^;CSSPesp#LLmFQQ%N@OAXFYQ zGUu27B2%l$l~7e#sFZ{jhC-o@A?WghQf3gy@Yp@R&g<;PJpIp1v z9%i6?Q}gATwv>S!C|1E~;h}P{qDXqUP;|5$T&$Sx5)T3r+);is{dq*RvKFk8rnu$# zmBp8lXEuuJ!QPrSLpRk8$TZ}^v}{=!)Tda9zKotVP}<;?6Wc*Ndb4f02sE_>dgD^(!v0|(*?N8 zJ3wk$%mv5K;!gGybDs$@y@wn`h-N*L(yVuL!Ps@$}DQ zV6Vhhf;gVB<0T0#ZQ*S>&`Ezf4(ys@z7|B)GvLk%%(rasbGoiQcv(V@oA%X>4RrrS zu(FQjmltwf1iS11fh)tdUZUq1w?7}t&lhsYO*)UJkC9B zDvJHXzRp7txVVJ*Oz`y1;;@trO2QubI)?t(Y30GB(Yk#hLuc|3&9Z!84bkUj1U_*p`cmut;M`%|PcFZom ziFrqAZHHY^W;Na>kRxZMIaccd?ey#r-058jgi2m9-!U&9gkOT7ulZQ$!b1?12Yk)F z<#mwn>%j7mqw&dMc&@INdB@p`&JV8w&$-?`Ko%q(5Eu{&Z1yVfHcXUd8WtE~uav+sU&XKZq=X2zrl z?4W{f`;?zTQoHvD6Xg@V&9>SfDmu1{g0{ngB06Zsd?7EnPF#2dOW|?$77Om&Lb-6M-Cm&!n?`SEM$G`u}uEdkky1n*7d4KHaR8`lF zL@*-y($U2|MJ0QsMII?CRYmz+oGyR%UAM{NvU0odt_7<+S5b@HyUZh7m;DCPSl*0s zkWpzxUFSDFUU|Q^FI}x(5eOMI!pLR?a>Dvd>~{nc^};zDJp5UiDo<~0MV{iY$hytX zK@0oCvFg|we%O~U&uqQw5GCzsmM0IWR(a(}wjy?qWM*kOnVPOt8=)%E6~;-zRfUD} zM9=ww{q|6_X8iy5q4Lz-a+~OUj%M!eT`Hy^v+~lJPJW?x77MS^g?BoRmlaR1X7T!+ zE1f%w(!2wV}v7)3f;R4LeB6}@PbW`O)^t$NmS-b|+at{9h zsymOmMtzqsCxdby;fxe&c!ddtEblPaMr9xIrc)GK*i>q>Fc%XIZcyp9oh@f-Ebcdc wT`hb+;1J>74rbctU`fVb_CKcl7nn?u0c=zT`jg!IPmyT(fEs-s!!C^Y3hOr|82|tP From ad34de32a86306daa55bdec713bbefc4afacb5b8 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Wed, 5 Jun 2024 17:55:51 -0700 Subject: [PATCH 14/23] update glibc start files to 2.39 README file stays intact. --- lib/libc/glibc/LICENSES | 21 ++ lib/libc/glibc/bits/byteswap.h | 2 +- lib/libc/glibc/bits/floatn-common.h | 2 +- lib/libc/glibc/bits/libc-header-start.h | 2 +- lib/libc/glibc/bits/long-double.h | 2 +- lib/libc/glibc/bits/select.h | 2 +- lib/libc/glibc/bits/signum-generic.h | 2 +- lib/libc/glibc/bits/stat.h | 2 +- lib/libc/glibc/bits/stdint-intn.h | 2 +- lib/libc/glibc/bits/stdlib-bsearch.h | 2 +- lib/libc/glibc/bits/time64.h | 2 +- lib/libc/glibc/bits/timesize.h | 2 +- .../glibc/bits/types/struct_sched_param.h | 2 +- lib/libc/glibc/bits/typesizes.h | 2 +- lib/libc/glibc/bits/uintn-identity.h | 2 +- lib/libc/glibc/bits/waitflags.h | 2 +- lib/libc/glibc/bits/waitstatus.h | 2 +- lib/libc/glibc/csu/errno.c | 2 +- lib/libc/glibc/debug/stack_chk_fail_local.c | 2 +- lib/libc/glibc/elf/elf.h | 132 ++++++- lib/libc/glibc/include/libc-pointer-arith.h | 2 +- lib/libc/glibc/include/libc-symbols.h | 16 +- lib/libc/glibc/include/stap-probe.h | 2 +- lib/libc/glibc/include/stdlib.h | 10 +- lib/libc/glibc/io/bits/statx.h | 2 +- lib/libc/glibc/io/fcntl.h | 9 +- lib/libc/glibc/io/fstat-2.32.c | 55 --- lib/libc/glibc/io/fstat64-2.32.c | 52 --- lib/libc/glibc/io/fstatat-2.32.c | 52 --- lib/libc/glibc/io/fstatat64-2.32.c | 52 --- lib/libc/glibc/io/lstat-2.32.c | 55 --- lib/libc/glibc/io/lstat64-2.32.c | 52 --- lib/libc/glibc/io/mknod-2.32.c | 55 --- lib/libc/glibc/io/mknod.c | 2 +- lib/libc/glibc/io/mknodat-2.32.c | 53 --- lib/libc/glibc/io/stat-2.32.c | 54 --- lib/libc/glibc/io/stat64-2.32.c | 52 --- lib/libc/glibc/io/sys/stat.h | 4 +- lib/libc/glibc/locale/bits/types/__locale_t.h | 2 +- lib/libc/glibc/locale/bits/types/locale_t.h | 2 +- lib/libc/glibc/misc/sys/cdefs.h | 2 +- lib/libc/glibc/misc/sys/select.h | 2 +- lib/libc/glibc/posix/bits/cpu-set.h | 2 +- lib/libc/glibc/posix/bits/types.h | 4 +- lib/libc/glibc/posix/sys/types.h | 2 +- lib/libc/glibc/signal/signal.h | 2 +- lib/libc/glibc/stdlib/alloca.h | 2 +- lib/libc/glibc/stdlib/bits/stdlib-float.h | 2 +- lib/libc/glibc/stdlib/errno.h | 2 +- lib/libc/glibc/stdlib/exit.h | 2 +- lib/libc/glibc/stdlib/stdlib.h | 2 +- lib/libc/glibc/string/bits/endian.h | 2 +- lib/libc/glibc/string/endian.h | 2 +- lib/libc/glibc/sysdeps/aarch64/crti.S | 2 +- lib/libc/glibc/sysdeps/aarch64/crtn.S | 2 +- .../aarch64/nptl/bits/pthreadtypes-arch.h | 2 +- lib/libc/glibc/sysdeps/aarch64/start.S | 2 +- lib/libc/glibc/sysdeps/aarch64/sysdep.h | 2 +- lib/libc/glibc/sysdeps/alpha/crti.S | 2 +- lib/libc/glibc/sysdeps/alpha/crtn.S | 2 +- lib/libc/glibc/sysdeps/alpha/start.S | 2 +- lib/libc/glibc/sysdeps/arc/sysdep.h | 2 +- lib/libc/glibc/sysdeps/arm/arm-features.h | 2 +- lib/libc/glibc/sysdeps/arm/crti.S | 2 +- lib/libc/glibc/sysdeps/arm/crtn.S | 2 +- lib/libc/glibc/sysdeps/arm/start.S | 2 +- lib/libc/glibc/sysdeps/arm/sysdep.h | 2 +- lib/libc/glibc/sysdeps/csky/sysdep.h | 2 +- lib/libc/glibc/sysdeps/generic/dl-dtprocnum.h | 2 +- lib/libc/glibc/sysdeps/generic/dl-sysdep.h | 2 +- lib/libc/glibc/sysdeps/generic/dwarf2.h | 2 +- lib/libc/glibc/sysdeps/generic/libc-lock.h | 2 +- lib/libc/glibc/sysdeps/generic/libc-symver.h | 2 +- .../glibc/sysdeps/generic/single-thread.h | 2 +- lib/libc/glibc/sysdeps/generic/sysdep.h | 2 +- lib/libc/glibc/sysdeps/generic/tls.h | 2 +- lib/libc/glibc/sysdeps/hppa/crti.S | 2 +- lib/libc/glibc/sysdeps/hppa/crtn.S | 2 +- .../hppa/nptl/bits/pthreadtypes-arch.h | 2 +- lib/libc/glibc/sysdeps/hppa/start.S | 2 +- lib/libc/glibc/sysdeps/hppa/sysdep.h | 2 +- lib/libc/glibc/sysdeps/htl/bits/pthread.h | 2 +- .../sysdeps/htl/bits/thread-shared-types.h | 2 +- lib/libc/glibc/sysdeps/htl/libc-lockP.h | 2 +- lib/libc/glibc/sysdeps/htl/pthread.h | 2 +- lib/libc/glibc/sysdeps/i386/crti.S | 4 +- lib/libc/glibc/sysdeps/i386/crtn.S | 2 +- .../sysdeps/i386/htl/bits/pthreadtypes-arch.h | 2 +- lib/libc/glibc/sysdeps/i386/start.S | 3 +- lib/libc/glibc/sysdeps/i386/symbol-hacks.h | 2 +- lib/libc/glibc/sysdeps/i386/sysdep.h | 13 +- lib/libc/glibc/sysdeps/ia64/crti.S | 162 --------- lib/libc/glibc/sysdeps/ia64/crtn.S | 69 ---- lib/libc/glibc/sysdeps/ia64/dl-dtprocnum.h | 21 -- lib/libc/glibc/sysdeps/ia64/entry.h | 8 - lib/libc/glibc/sysdeps/ia64/start.S | 112 ------ lib/libc/glibc/sysdeps/ia64/sysdep.h | 61 ---- lib/libc/glibc/sysdeps/m68k/coldfire/sysdep.h | 2 +- lib/libc/glibc/sysdeps/m68k/crti.S | 2 +- lib/libc/glibc/sysdeps/m68k/crtn.S | 2 +- lib/libc/glibc/sysdeps/m68k/m680x0/sysdep.h | 9 +- .../m68k/nptl/bits/pthreadtypes-arch.h | 2 +- lib/libc/glibc/sysdeps/m68k/start.S | 2 +- lib/libc/glibc/sysdeps/m68k/symbol-hacks.h | 2 +- lib/libc/glibc/sysdeps/m68k/sysdep.h | 2 +- lib/libc/glibc/sysdeps/mach/libc-lock.h | 2 +- lib/libc/glibc/sysdeps/mach/sysdep.h | 9 +- lib/libc/glibc/sysdeps/microblaze/crti.S | 2 +- lib/libc/glibc/sysdeps/microblaze/crtn.S | 2 +- lib/libc/glibc/sysdeps/microblaze/start.S | 2 +- lib/libc/glibc/sysdeps/microblaze/sysdep.h | 2 +- lib/libc/glibc/sysdeps/mips/dl-dtprocnum.h | 2 +- lib/libc/glibc/sysdeps/mips/mips32/crti.S | 2 +- lib/libc/glibc/sysdeps/mips/mips32/crtn.S | 2 +- lib/libc/glibc/sysdeps/mips/mips64/n32/crti.S | 2 +- lib/libc/glibc/sysdeps/mips/mips64/n32/crtn.S | 2 +- lib/libc/glibc/sysdeps/mips/mips64/n64/crti.S | 2 +- lib/libc/glibc/sysdeps/mips/mips64/n64/crtn.S | 2 +- .../mips/nptl/bits/pthreadtypes-arch.h | 2 +- lib/libc/glibc/sysdeps/mips/start.S | 2 +- lib/libc/glibc/sysdeps/nios2/sysdep.h | 2 +- .../glibc/sysdeps/nptl/bits/pthreadtypes.h | 2 +- .../sysdeps/nptl/bits/thread-shared-types.h | 2 +- lib/libc/glibc/sysdeps/nptl/libc-lock.h | 2 +- lib/libc/glibc/sysdeps/nptl/libc-lockP.h | 2 +- lib/libc/glibc/sysdeps/nptl/pthread.h | 2 +- .../glibc/sysdeps/powerpc/powerpc32/crti.S | 2 +- .../glibc/sysdeps/powerpc/powerpc32/crtn.S | 2 +- .../glibc/sysdeps/powerpc/powerpc32/start.S | 2 +- .../sysdeps/powerpc/powerpc32/symbol-hacks.h | 2 +- .../glibc/sysdeps/powerpc/powerpc32/sysdep.h | 2 +- .../glibc/sysdeps/powerpc/powerpc64/crti.S | 2 +- .../glibc/sysdeps/powerpc/powerpc64/crtn.S | 2 +- .../sysdeps/powerpc/powerpc64/dl-dtprocnum.h | 2 +- .../glibc/sysdeps/powerpc/powerpc64/start.S | 2 +- .../glibc/sysdeps/powerpc/powerpc64/sysdep.h | 2 +- lib/libc/glibc/sysdeps/powerpc/sysdep.h | 2 +- .../riscv/nptl/bits/pthreadtypes-arch.h | 2 +- lib/libc/glibc/sysdeps/riscv/start.S | 13 +- lib/libc/glibc/sysdeps/s390/s390-32/crti.S | 2 +- lib/libc/glibc/sysdeps/s390/s390-32/crtn.S | 2 +- lib/libc/glibc/sysdeps/s390/s390-32/start.S | 2 +- .../glibc/sysdeps/s390/s390-32/symbol-hacks.h | 2 +- lib/libc/glibc/sysdeps/s390/s390-32/sysdep.h | 2 +- lib/libc/glibc/sysdeps/s390/s390-64/crti.S | 4 +- lib/libc/glibc/sysdeps/s390/s390-64/crtn.S | 4 +- lib/libc/glibc/sysdeps/s390/s390-64/start.S | 2 +- lib/libc/glibc/sysdeps/s390/s390-64/sysdep.h | 2 +- lib/libc/glibc/sysdeps/sh/crti.S | 2 +- lib/libc/glibc/sysdeps/sh/crtn.S | 2 +- lib/libc/glibc/sysdeps/sh/start.S | 2 +- lib/libc/glibc/sysdeps/sh/sysdep.h | 2 +- lib/libc/glibc/sysdeps/sparc/crti.S | 2 +- lib/libc/glibc/sysdeps/sparc/crtn.S | 2 +- lib/libc/glibc/sysdeps/sparc/dl-dtprocnum.h | 2 +- lib/libc/glibc/sysdeps/sparc/sparc32/start.S | 2 +- lib/libc/glibc/sysdeps/sparc/sparc64/start.S | 2 +- lib/libc/glibc/sysdeps/sparc/sysdep.h | 11 +- lib/libc/glibc/sysdeps/unix/arm/sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/i386/sysdep.h | 2 +- .../glibc/sysdeps/unix/mips/mips32/sysdep.h | 2 +- .../glibc/sysdeps/unix/mips/mips64/sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/mips/sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/powerpc/sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/sh/sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/sysdep.h | 2 +- .../unix/sysv/linux/aarch64/kernel-features.h | 2 +- .../sysdeps/unix/sysv/linux/aarch64/sys/elf.h | 2 +- .../sysdeps/unix/sysv/linux/aarch64/sysdep.h | 2 +- .../unix/sysv/linux/alpha/bits/typesizes.h | 2 +- .../unix/sysv/linux/alpha/kernel-features.h | 6 +- .../sysdeps/unix/sysv/linux/alpha/sysdep.h | 2 +- .../sysdeps/unix/sysv/linux/arc/sysdep.h | 2 +- .../unix/sysv/linux/arm/kernel-features.h | 2 +- .../sysdeps/unix/sysv/linux/arm/sys/elf.h | 2 +- .../sysdeps/unix/sysv/linux/arm/sysdep.h | 3 +- .../glibc/sysdeps/unix/sysv/linux/bits/stat.h | 2 +- .../sysdeps/unix/sysv/linux/bits/timex.h | 2 +- .../unix/sysv/linux/csky/kernel_stat.h | 2 +- .../sysdeps/unix/sysv/linux/csky/sysdep.h | 2 +- .../glibc/sysdeps/unix/sysv/linux/dl-sysdep.h | 2 +- .../glibc/sysdeps/unix/sysv/linux/fstat.c | 2 +- .../glibc/sysdeps/unix/sysv/linux/fstat64.c | 42 ++- .../glibc/sysdeps/unix/sysv/linux/fstatat.c | 23 +- .../glibc/sysdeps/unix/sysv/linux/fstatat64.c | 44 +-- .../unix/sysv/linux/hppa/kernel-features.h | 2 +- .../sysdeps/unix/sysv/linux/hppa/sysdep.h | 2 +- .../sysdeps/unix/sysv/linux/i386/dl-sysdep.h | 2 +- .../unix/sysv/linux/i386/kernel-features.h | 2 +- .../sysdeps/unix/sysv/linux/i386/sysdep.h | 7 +- .../sysdeps/unix/sysv/linux/ia64/dl-sysdep.h | 51 --- .../unix/sysv/linux/ia64/kernel-features.h | 37 -- .../sysdeps/unix/sysv/linux/ia64/sysdep.h | 327 ------------------ .../unix/sysv/linux/include/sys/timex.h | 2 +- .../sysdeps/unix/sysv/linux/kernel-features.h | 15 +- .../sysdeps/unix/sysv/linux/kernel_stat.h | 2 +- .../glibc/sysdeps/unix/sysv/linux/lstat.c | 2 +- .../glibc/sysdeps/unix/sysv/linux/lstat64.c | 2 +- .../unix/sysv/linux/m68k/coldfire/sysdep.h | 2 +- .../unix/sysv/linux/m68k/kernel-features.h | 2 +- .../unix/sysv/linux/m68k/m680x0/sysdep.h | 2 +- .../sysdeps/unix/sysv/linux/m68k/sysdep.h | 2 +- .../sysv/linux/microblaze/kernel-features.h | 2 +- .../unix/sysv/linux/microblaze/kernel_stat.h | 2 +- .../unix/sysv/linux/microblaze/sysdep.h | 2 +- .../unix/sysv/linux/mips/kernel-features.h | 2 +- .../unix/sysv/linux/mips/mips32/sysdep.h | 2 +- .../unix/sysv/linux/mips/mips64/kstat_cp.h | 2 +- .../unix/sysv/linux/mips/mips64/sysdep.h | 2 +- .../sysdeps/unix/sysv/linux/mips/sysdep.h | 4 +- .../glibc/sysdeps/unix/sysv/linux/mknodat.c | 3 +- .../unix/sysv/linux/nios2/kernel_stat.h | 2 +- .../sysdeps/unix/sysv/linux/nios2/sysdep.h | 2 +- .../unix/sysv/linux/powerpc/kernel-features.h | 2 +- .../linux/powerpc/powerpc32/kernel_stat.h | 2 +- .../sysv/linux/powerpc/powerpc64/sysdep.h | 2 +- .../sysdeps/unix/sysv/linux/powerpc/sysdep.h | 2 +- .../unix/sysv/linux/riscv/kernel-features.h | 2 +- .../unix/sysv/linux/s390/bits/typesizes.h | 2 +- .../unix/sysv/linux/s390/kernel-features.h | 2 +- .../unix/sysv/linux/s390/s390-32/sysdep.h | 2 +- .../unix/sysv/linux/s390/s390-64/sysdep.h | 2 +- .../sysdeps/unix/sysv/linux/s390/sys/elf.h | 2 +- .../sysdeps/unix/sysv/linux/s390/sysdep.h | 2 +- .../unix/sysv/linux/sh/kernel-features.h | 6 +- .../glibc/sysdeps/unix/sysv/linux/sh/sysdep.h | 2 +- .../sysdeps/unix/sysv/linux/single-thread.h | 2 +- .../unix/sysv/linux/sparc/bits/typesizes.h | 2 +- .../unix/sysv/linux/sparc/kernel-features.h | 6 +- .../unix/sysv/linux/sparc/sparc32/sysdep.h | 2 +- .../unix/sysv/linux/sparc/sparc64/kstat_cp.h | 2 +- .../unix/sysv/linux/sparc/sparc64/sysdep.h | 2 +- .../sysdeps/unix/sysv/linux/sparc/sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/stat.c | 2 +- .../glibc/sysdeps/unix/sysv/linux/stat64.c | 2 +- .../sysdeps/unix/sysv/linux/stat_t64_cp.c | 2 +- .../sysdeps/unix/sysv/linux/stat_t64_cp.h | 2 +- .../unix/sysv/linux/struct_stat_time64.h | 2 +- .../sysdeps/unix/sysv/linux/sys/syscall.h | 2 +- .../glibc/sysdeps/unix/sysv/linux/sys/timex.h | 2 +- .../glibc/sysdeps/unix/sysv/linux/sysdep.h | 2 +- .../unix/sysv/linux/x86/bits/typesizes.h | 2 +- .../sysdeps/unix/sysv/linux/x86/sys/elf.h | 2 +- .../unix/sysv/linux/x86_64/kernel-features.h | 2 +- .../sysdeps/unix/sysv/linux/x86_64/sysdep.h | 2 +- .../unix/sysv/linux/x86_64/x32/sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/x86_64/sysdep.h | 2 +- .../sysdeps/wordsize-32/divdi3-symbol-hacks.h | 2 +- .../sysdeps/x86/nptl/bits/pthreadtypes-arch.h | 2 +- lib/libc/glibc/sysdeps/x86/sysdep.h | 46 +-- lib/libc/glibc/sysdeps/x86_64/crti.S | 2 +- lib/libc/glibc/sysdeps/x86_64/crtn.S | 2 +- lib/libc/glibc/sysdeps/x86_64/start.S | 2 +- lib/libc/glibc/sysdeps/x86_64/sysdep.h | 46 ++- lib/libc/glibc/sysdeps/x86_64/x32/sysdep.h | 8 +- 255 files changed, 550 insertions(+), 1767 deletions(-) delete mode 100644 lib/libc/glibc/io/fstat-2.32.c delete mode 100644 lib/libc/glibc/io/fstat64-2.32.c delete mode 100644 lib/libc/glibc/io/fstatat-2.32.c delete mode 100644 lib/libc/glibc/io/fstatat64-2.32.c delete mode 100644 lib/libc/glibc/io/lstat-2.32.c delete mode 100644 lib/libc/glibc/io/lstat64-2.32.c delete mode 100644 lib/libc/glibc/io/mknod-2.32.c delete mode 100644 lib/libc/glibc/io/mknodat-2.32.c delete mode 100644 lib/libc/glibc/io/stat-2.32.c delete mode 100644 lib/libc/glibc/io/stat64-2.32.c delete mode 100644 lib/libc/glibc/sysdeps/ia64/crti.S delete mode 100644 lib/libc/glibc/sysdeps/ia64/crtn.S delete mode 100644 lib/libc/glibc/sysdeps/ia64/dl-dtprocnum.h delete mode 100644 lib/libc/glibc/sysdeps/ia64/entry.h delete mode 100644 lib/libc/glibc/sysdeps/ia64/start.S delete mode 100644 lib/libc/glibc/sysdeps/ia64/sysdep.h delete mode 100644 lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/dl-sysdep.h delete mode 100644 lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/kernel-features.h delete mode 100644 lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/sysdep.h diff --git a/lib/libc/glibc/LICENSES b/lib/libc/glibc/LICENSES index 530893b1dc..f4b24c1a41 100644 --- a/lib/libc/glibc/LICENSES +++ b/lib/libc/glibc/LICENSES @@ -389,3 +389,24 @@ Copyright 2001 by Stephen L. Moshier You should have received a copy of the GNU Lesser General Public License along with this library; if not, see . */ + +Copyright (c) 1995 IBM Corporation + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/lib/libc/glibc/bits/byteswap.h b/lib/libc/glibc/bits/byteswap.h index 456dd177e1..d15c940db2 100644 --- a/lib/libc/glibc/bits/byteswap.h +++ b/lib/libc/glibc/bits/byteswap.h @@ -1,5 +1,5 @@ /* Macros and inline functions to swap the order of bytes in integer values. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/bits/floatn-common.h b/lib/libc/glibc/bits/floatn-common.h index 23306c9209..c800cdb1b1 100644 --- a/lib/libc/glibc/bits/floatn-common.h +++ b/lib/libc/glibc/bits/floatn-common.h @@ -1,6 +1,6 @@ /* Macros to control TS 18661-3 glibc features where the same definitions are appropriate for all platforms. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/bits/libc-header-start.h b/lib/libc/glibc/bits/libc-header-start.h index 73af2af965..d841f5d8cf 100644 --- a/lib/libc/glibc/bits/libc-header-start.h +++ b/lib/libc/glibc/bits/libc-header-start.h @@ -1,5 +1,5 @@ /* Handle feature test macros at the start of a header. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/bits/long-double.h b/lib/libc/glibc/bits/long-double.h index 74edf3b089..6c9f32bc91 100644 --- a/lib/libc/glibc/bits/long-double.h +++ b/lib/libc/glibc/bits/long-double.h @@ -1,5 +1,5 @@ /* Properties of long double type. - Copyright (C) 2016-2023 Free Software Foundation, Inc. + Copyright (C) 2016-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/bits/select.h b/lib/libc/glibc/bits/select.h index 061d67ff98..2b642fea21 100644 --- a/lib/libc/glibc/bits/select.h +++ b/lib/libc/glibc/bits/select.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/bits/signum-generic.h b/lib/libc/glibc/bits/signum-generic.h index e01b4dc9cb..0978101900 100644 --- a/lib/libc/glibc/bits/signum-generic.h +++ b/lib/libc/glibc/bits/signum-generic.h @@ -1,5 +1,5 @@ /* Signal number constants. Generic template. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/bits/stat.h b/lib/libc/glibc/bits/stat.h index 8a6ca297ce..d71603db46 100644 --- a/lib/libc/glibc/bits/stat.h +++ b/lib/libc/glibc/bits/stat.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/bits/stdint-intn.h b/lib/libc/glibc/bits/stdint-intn.h index 3d943a8d9d..5bcfa6b031 100644 --- a/lib/libc/glibc/bits/stdint-intn.h +++ b/lib/libc/glibc/bits/stdint-intn.h @@ -1,5 +1,5 @@ /* Define intN_t types. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/bits/stdlib-bsearch.h b/lib/libc/glibc/bits/stdlib-bsearch.h index 4dcf90c99a..540d718952 100644 --- a/lib/libc/glibc/bits/stdlib-bsearch.h +++ b/lib/libc/glibc/bits/stdlib-bsearch.h @@ -1,5 +1,5 @@ /* Perform binary search - inline version. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/bits/time64.h b/lib/libc/glibc/bits/time64.h index 723db1ed16..6f43066ec2 100644 --- a/lib/libc/glibc/bits/time64.h +++ b/lib/libc/glibc/bits/time64.h @@ -1,5 +1,5 @@ /* bits/time64.h -- underlying types for __time64_t. Generic version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/bits/timesize.h b/lib/libc/glibc/bits/timesize.h index 700653a06f..0cd6130179 100644 --- a/lib/libc/glibc/bits/timesize.h +++ b/lib/libc/glibc/bits/timesize.h @@ -1,5 +1,5 @@ /* Bit size of the time_t type at glibc build time, general case. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/bits/types/struct_sched_param.h b/lib/libc/glibc/bits/types/struct_sched_param.h index 7b08044472..e11d0c5991 100644 --- a/lib/libc/glibc/bits/types/struct_sched_param.h +++ b/lib/libc/glibc/bits/types/struct_sched_param.h @@ -1,5 +1,5 @@ /* Sched parameter structure. Generic version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/bits/typesizes.h b/lib/libc/glibc/bits/typesizes.h index 5dd1700649..0146b3cc97 100644 --- a/lib/libc/glibc/bits/typesizes.h +++ b/lib/libc/glibc/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. Generic version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/bits/uintn-identity.h b/lib/libc/glibc/bits/uintn-identity.h index c2d523c5a7..8104070583 100644 --- a/lib/libc/glibc/bits/uintn-identity.h +++ b/lib/libc/glibc/bits/uintn-identity.h @@ -1,5 +1,5 @@ /* Inline functions to return unsigned integer values unchanged. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/bits/waitflags.h b/lib/libc/glibc/bits/waitflags.h index 291a27153f..fc58b3d92d 100644 --- a/lib/libc/glibc/bits/waitflags.h +++ b/lib/libc/glibc/bits/waitflags.h @@ -1,5 +1,5 @@ /* Definitions of flag bits for `waitpid' et al. - Copyright (C) 1992-2023 Free Software Foundation, Inc. + Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/bits/waitstatus.h b/lib/libc/glibc/bits/waitstatus.h index ec7c076b00..e62a882cf4 100644 --- a/lib/libc/glibc/bits/waitstatus.h +++ b/lib/libc/glibc/bits/waitstatus.h @@ -1,5 +1,5 @@ /* Definitions of status bits for `wait' et al. - Copyright (C) 1992-2023 Free Software Foundation, Inc. + Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/csu/errno.c b/lib/libc/glibc/csu/errno.c index 34f490614e..3bd6414b74 100644 --- a/lib/libc/glibc/csu/errno.c +++ b/lib/libc/glibc/csu/errno.c @@ -1,5 +1,5 @@ /* Definition of `errno' variable. Canonical version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/debug/stack_chk_fail_local.c b/lib/libc/glibc/debug/stack_chk_fail_local.c index 68b6908ae3..24151e9244 100644 --- a/lib/libc/glibc/debug/stack_chk_fail_local.c +++ b/lib/libc/glibc/debug/stack_chk_fail_local.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/elf/elf.h b/lib/libc/glibc/elf/elf.h index 89fc8021e9..455731663c 100644 --- a/lib/libc/glibc/elf/elf.h +++ b/lib/libc/glibc/elf/elf.h @@ -1,5 +1,5 @@ /* This file defines standard ELF types, structures, and macros. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -791,9 +791,12 @@ typedef struct Register */ #define NT_PPC_PKEY 0x110 /* Memory Protection Keys registers. */ +#define NT_PPC_DEXCR 0x111 /* PowerPC DEXCR registers. */ +#define NT_PPC_HASHKEYR 0x112 /* PowerPC HASHKEYR register. */ #define NT_386_TLS 0x200 /* i386 TLS slots (struct user_desc) */ #define NT_386_IOPERM 0x201 /* x86 io permission bitmap (1=deny) */ #define NT_X86_XSTATE 0x202 /* x86 extended state using xsave */ +#define NT_X86_SHSTK 0x204 /* x86 SHSTK state */ #define NT_S390_HIGH_GPRS 0x300 /* s390 upper register halves */ #define NT_S390_TIMER 0x301 /* s390 timer register */ #define NT_S390_TODCMP 0x302 /* s390 TOD clock comparator register */ @@ -832,6 +835,8 @@ typedef struct #define NT_MIPS_DSP 0x800 /* MIPS DSP ASE registers. */ #define NT_MIPS_FP_MODE 0x801 /* MIPS floating-point mode. */ #define NT_MIPS_MSA 0x802 /* MIPS SIMD registers. */ +#define NT_RISCV_CSR 0x900 /* RISC-V Control and Status Registers */ +#define NT_RISCV_VECTOR 0x901 /* RISC-V vector registers */ #define NT_LOONGARCH_CPUCFG 0xa00 /* LoongArch CPU config registers. */ #define NT_LOONGARCH_CSR 0xa01 /* LoongArch control and status registers. */ @@ -841,6 +846,8 @@ typedef struct SIMD Extension registers. */ #define NT_LOONGARCH_LBT 0xa04 /* LoongArch Loongson Binary Translation registers. */ +#define NT_LOONGARCH_HW_BREAK 0xa05 /* LoongArch hardware breakpoint registers */ +#define NT_LOONGARCH_HW_WATCH 0xa06 /* LoongArch hardware watchpoint registers */ /* Legal values for the note segment descriptor types for object files. */ @@ -1685,11 +1692,25 @@ typedef struct #define EF_MIPS_PIC 2 /* Contains PIC code. */ #define EF_MIPS_CPIC 4 /* Uses PIC calling sequence. */ #define EF_MIPS_XGOT 8 -#define EF_MIPS_64BIT_WHIRL 16 +#define EF_MIPS_UCODE 16 #define EF_MIPS_ABI2 32 #define EF_MIPS_ABI_ON32 64 +#define EF_MIPS_OPTIONS_FIRST 0x00000080 /* Process the .MIPS.options + section first by ld. */ +#define EF_MIPS_32BITMODE 0x00000100 /* Indicates code compiled for + a 64-bit machine in 32-bit + mode (regs are 32-bits + wide). */ #define EF_MIPS_FP64 512 /* Uses FP64 (12 callee-saved). */ #define EF_MIPS_NAN2008 1024 /* Uses IEEE 754-2008 NaN encoding. */ +#define EF_MIPS_ARCH_ASE 0x0f000000 /* Architectural Extensions + used by this file. */ +#define EF_MIPS_ARCH_ASE_MDMX 0x08000000 /* Use MDMX multimedia + extensions. */ +#define EF_MIPS_ARCH_ASE_M16 0x04000000 /* Use MIPS-16 ISA + extensions. */ +#define EF_MIPS_ARCH_ASE_MICROMIPS 0x02000000 /* Use MICROMIPS ISA + extensions. */ #define EF_MIPS_ARCH 0xf0000000 /* MIPS architecture level. */ /* Legal values for MIPS architecture level. */ @@ -1703,6 +1724,38 @@ typedef struct #define EF_MIPS_ARCH_64 0x60000000 /* MIPS64 code. */ #define EF_MIPS_ARCH_32R2 0x70000000 /* MIPS32r2 code. */ #define EF_MIPS_ARCH_64R2 0x80000000 /* MIPS64r2 code. */ +#define EF_MIPS_ARCH_32R6 0x90000000 /* MIPS32r6 code. */ +#define EF_MIPS_ARCH_64R6 0xa0000000 /* MIPS64r6 code. */ +#define EF_MIPS_ABI 0x0000F000 /* The ABI of the file. Also + see EF_MIPS_ABI2 above. */ +#define EF_MIPS_ABI_O32 0x00001000 /* The original o32 abi. */ +#define EF_MIPS_ABI_O64 0x00002000 /* O32 extended to work on + 64 bit architectures. */ +#define EF_MIPS_ABI_EABI32 0x00003000 /* EABI in 32 bit mode. */ +#define EF_MIPS_ABI_EABI64 0x00004000 /* EABI in 64 bit mode. */ +#define EF_MIPS_MACH 0x00FF0000 +#define EF_MIPS_MACH_3900 0x00810000 +#define EF_MIPS_MACH_4010 0x00820000 +#define EF_MIPS_MACH_4100 0x00830000 +#define EF_MIPS_MACH_ALLEGREX 0x00840000 +#define EF_MIPS_MACH_4650 0x00850000 +#define EF_MIPS_MACH_4120 0x00870000 +#define EF_MIPS_MACH_4111 0x00880000 +#define EF_MIPS_MACH_SB1 0x008a0000 +#define EF_MIPS_MACH_OCTEON 0x008b0000 +#define EF_MIPS_MACH_XLR 0x008c0000 +#define EF_MIPS_MACH_OCTEON2 0x008d0000 +#define EF_MIPS_MACH_OCTEON3 0x008e0000 +#define EF_MIPS_MACH_5400 0x00910000 +#define EF_MIPS_MACH_5900 0x00920000 +#define EF_MIPS_MACH_IAMR2 0x00930000 +#define EF_MIPS_MACH_5500 0x00980000 +#define EF_MIPS_MACH_9000 0x00990000 +#define EF_MIPS_MACH_LS2E 0x00A00000 +#define EF_MIPS_MACH_LS2F 0x00A10000 +#define EF_MIPS_MACH_GS464 0x00A20000 +#define EF_MIPS_MACH_GS464E 0x00A30000 +#define EF_MIPS_MACH_GS264E 0x00A40000 /* The following are unofficial names and should not be used. */ @@ -1763,6 +1816,7 @@ typedef struct #define SHT_MIPS_EH_REGION 0x70000027 #define SHT_MIPS_XLATE_OLD 0x70000028 #define SHT_MIPS_PDR_EXCEPTION 0x70000029 +#define SHT_MIPS_ABIFLAGS 0x7000002a #define SHT_MIPS_XHASH 0x7000002b /* Legal values for sh_flags field of Elf32_Shdr. */ @@ -1931,10 +1985,68 @@ typedef struct #define R_MIPS_TLS_TPREL_HI16 49 /* TP-relative offset, high 16 bits */ #define R_MIPS_TLS_TPREL_LO16 50 /* TP-relative offset, low 16 bits */ #define R_MIPS_GLOB_DAT 51 +#define R_MIPS_PC21_S2 60 +#define R_MIPS_PC26_S2 61 +#define R_MIPS_PC18_S3 62 +#define R_MIPS_PC19_S2 63 +#define R_MIPS_PCHI16 64 +#define R_MIPS_PCLO16 65 +#define R_MIPS16_26 100 +#define R_MIPS16_GPREL 101 +#define R_MIPS16_GOT16 102 +#define R_MIPS16_CALL16 103 +#define R_MIPS16_HI16 104 +#define R_MIPS16_LO16 105 +#define R_MIPS16_TLS_GD 106 +#define R_MIPS16_TLS_LDM 107 +#define R_MIPS16_TLS_DTPREL_HI16 108 +#define R_MIPS16_TLS_DTPREL_LO16 109 +#define R_MIPS16_TLS_GOTTPREL 110 +#define R_MIPS16_TLS_TPREL_HI16 111 +#define R_MIPS16_TLS_TPREL_LO16 112 +#define R_MIPS16_PC16_S1 113 #define R_MIPS_COPY 126 #define R_MIPS_JUMP_SLOT 127 +#define R_MIPS_RELATIVE 128 +#define R_MICROMIPS_26_S1 133 +#define R_MICROMIPS_HI16 134 +#define R_MICROMIPS_LO16 135 +#define R_MICROMIPS_GPREL16 136 +#define R_MICROMIPS_LITERAL 137 +#define R_MICROMIPS_GOT16 138 +#define R_MICROMIPS_PC7_S1 139 +#define R_MICROMIPS_PC10_S1 140 +#define R_MICROMIPS_PC16_S1 141 +#define R_MICROMIPS_CALL16 142 +#define R_MICROMIPS_GOT_DISP 145 +#define R_MICROMIPS_GOT_PAGE 146 +#define R_MICROMIPS_GOT_OFST 147 +#define R_MICROMIPS_GOT_HI16 148 +#define R_MICROMIPS_GOT_LO16 149 +#define R_MICROMIPS_SUB 150 +#define R_MICROMIPS_HIGHER 151 +#define R_MICROMIPS_HIGHEST 152 +#define R_MICROMIPS_CALL_HI16 153 +#define R_MICROMIPS_CALL_LO16 154 +#define R_MICROMIPS_SCN_DISP 155 +#define R_MICROMIPS_JALR 156 +#define R_MICROMIPS_HI0_LO16 157 +#define R_MICROMIPS_TLS_GD 162 +#define R_MICROMIPS_TLS_LDM 163 +#define R_MICROMIPS_TLS_DTPREL_HI16 164 +#define R_MICROMIPS_TLS_DTPREL_LO16 165 +#define R_MICROMIPS_TLS_GOTTPREL 166 +#define R_MICROMIPS_TLS_TPREL_HI16 169 +#define R_MICROMIPS_TLS_TPREL_LO16 170 +#define R_MICROMIPS_GPREL7_S2 172 +#define R_MICROMIPS_PC23_S2 173 +#define R_MIPS_PC32 248 +#define R_MIPS_EH 249 +#define R_MIPS_GNU_REL16_S2 250 +#define R_MIPS_GNU_VTINHERIT 253 +#define R_MIPS_GNU_VTENTRY 254 /* Keep this the last entry. */ -#define R_MIPS_NUM 128 +#define R_MIPS_NUM 255 /* Legal values for p_type field of Elf32_Phdr. */ @@ -3527,6 +3639,11 @@ enum /* x86-64 sh_type values. */ #define SHT_X86_64_UNWIND 0x70000001 /* Unwind information. */ +/* x86-64 d_tag values. */ +#define DT_X86_64_PLT (DT_LOPROC + 0) +#define DT_X86_64_PLTSZ (DT_LOPROC + 1) +#define DT_X86_64_PLTENT (DT_LOPROC + 3) +#define DT_X86_64_NUM 4 /* AM33 relocations. */ #define R_MN10300_NONE 0 /* No reloc. */ @@ -4205,6 +4322,15 @@ enum #define R_LARCH_TLS_GD_HI20 98 #define R_LARCH_32_PCREL 99 #define R_LARCH_RELAX 100 +#define R_LARCH_DELETE 101 +#define R_LARCH_ALIGN 102 +#define R_LARCH_PCREL20_S2 103 +#define R_LARCH_CFA 104 +#define R_LARCH_ADD6 105 +#define R_LARCH_SUB6 106 +#define R_LARCH_ADD_ULEB128 107 +#define R_LARCH_SUB_ULEB128 108 +#define R_LARCH_64_PCREL 109 /* ARC specific declarations. */ diff --git a/lib/libc/glibc/include/libc-pointer-arith.h b/lib/libc/glibc/include/libc-pointer-arith.h index aa57e598d5..2456644dd2 100644 --- a/lib/libc/glibc/include/libc-pointer-arith.h +++ b/lib/libc/glibc/include/libc-pointer-arith.h @@ -1,5 +1,5 @@ /* Helper macros for pointer arithmetic. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/include/libc-symbols.h b/lib/libc/glibc/include/libc-symbols.h index d684c96214..e21bb599b3 100644 --- a/lib/libc/glibc/include/libc-symbols.h +++ b/lib/libc/glibc/include/libc-symbols.h @@ -1,6 +1,6 @@ /* Support macros for making weak and strong aliases for symbols, and for using symbol sets and linker warnings with GNU ld. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -155,18 +155,6 @@ extern __typeof (name) aliasname __attribute__ ((weak, alias (#name))) \ __attribute_copy__ (name); -/* Zig patch. weak_hidden_alias was removed from glibc v2.36 (v2.37?), Zig - needs it for the v2.32 and earlier {f,l,}stat wrappers, so only include - in this header for 2.32 and earlier. */ -#if (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 32) || __GLIBC__ < 2 -# define weak_hidden_alias(name, aliasname) \ - _weak_hidden_alias (name, aliasname) -# define _weak_hidden_alias(name, aliasname) \ - extern __typeof (name) aliasname \ - __attribute__ ((weak, alias (#name), __visibility__ ("hidden"))) \ - __attribute_copy__ (name); -#endif - /* Declare SYMBOL as weak undefined symbol (resolved to 0 if not defined). */ # define weak_extern(symbol) _weak_extern (weak symbol) # define _weak_extern(expr) _Pragma (#expr) @@ -612,8 +600,10 @@ for linking") #endif #if IS_IN (libmvec) +# define libmvec_hidden_proto(name, attrs...) hidden_proto (name, ##attrs) # define libmvec_hidden_def(name) hidden_def (name) #else +# define libmvec_hidden_proto(name, attrs...) # define libmvec_hidden_def(name) #endif diff --git a/lib/libc/glibc/include/stap-probe.h b/lib/libc/glibc/include/stap-probe.h index 80e88fbac4..552d532d5e 100644 --- a/lib/libc/glibc/include/stap-probe.h +++ b/lib/libc/glibc/include/stap-probe.h @@ -1,5 +1,5 @@ /* Macros for defining Systemtap static probe points. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/include/stdlib.h b/lib/libc/glibc/include/stdlib.h index 7deb8193d7..580da9be15 100644 --- a/lib/libc/glibc/include/stdlib.h +++ b/lib/libc/glibc/include/stdlib.h @@ -59,6 +59,8 @@ libc_hidden_proto (__isoc23_strtoull_l) libc_hidden_proto. */ # undef strtol # define strtol __isoc23_strtol +# undef atoi +# define atoi(nptr) __isoc23_strtol(nptr, NULL, 10) # undef strtoul # define strtoul __isoc23_strtoul # undef strtoll @@ -147,8 +149,6 @@ extern int __posix_openpt (int __oflag) attribute_hidden; extern int __add_to_environ (const char *name, const char *value, const char *combines, int replace) attribute_hidden; -extern void _quicksort (void *const pbase, size_t total_elems, - size_t size, __compar_d_fn_t cmp, void *arg); extern int __on_exit (void (*__func) (int __status, void *__arg), void *__arg); @@ -157,11 +157,7 @@ libc_hidden_proto (__cxa_atexit); extern int __cxa_thread_atexit_impl (void (*func) (void *), void *arg, void *d); -extern void __call_tls_dtors (void) -#ifndef SHARED - __attribute__ ((weak)) -#endif - ; +extern void __call_tls_dtors (void); libc_hidden_proto (__call_tls_dtors) extern void __cxa_finalize (void *d); diff --git a/lib/libc/glibc/io/bits/statx.h b/lib/libc/glibc/io/bits/statx.h index 6ce85921ad..89d8dab6ee 100644 --- a/lib/libc/glibc/io/bits/statx.h +++ b/lib/libc/glibc/io/bits/statx.h @@ -1,5 +1,5 @@ /* statx-related definitions and declarations. Generic version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/io/fcntl.h b/lib/libc/glibc/io/fcntl.h index 570eaf27bd..9cee0b5900 100644 --- a/lib/libc/glibc/io/fcntl.h +++ b/lib/libc/glibc/io/fcntl.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -167,10 +167,6 @@ typedef __pid_t pid_t; effective IDs, not real IDs. */ #endif - -/* fcntl was a simple symbol until glibc 2.27 inclusive. glibc 2.28 onwards - * re-defines it to fcntl64 (via #define) if _FILE_OFFSET_BITS == 64. */ -#if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 28) || __GLIBC__ > 2 /* Do the file control operation described by CMD on FD. The remaining arguments are interpreted depending on CMD. @@ -201,9 +197,6 @@ extern int __fcntl_time64 (int __fd, int __request, ...) __THROW; # define fcntl __fcntl_time64 # endif #endif -#else /* glibc 2.27 or lower */ -extern int fcntl (int __fd, int __cmd, ...); -#endif /* Open FILE and return a new file descriptor for it, or -1 on error. OFLAG determines the type of access used. If O_CREAT or O_TMPFILE is set diff --git a/lib/libc/glibc/io/fstat-2.32.c b/lib/libc/glibc/io/fstat-2.32.c deleted file mode 100644 index 6ce077dc4a..0000000000 --- a/lib/libc/glibc/io/fstat-2.32.c +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright (C) 1996-2020 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser 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, see - . */ - -#include - -/* This definition is only used if inlining fails for this function; see - the last page of . The real work is done by the `x' - function which is passed a version number argument. We arrange in the - makefile that when not inlined this function is always statically - linked; that way a dynamically-linked executable always encodes the - version number corresponding to the data structures it uses, so the `x' - functions in the shared library can adapt without needing to recompile - all callers. */ - -#undef fstat -#undef __fstat -int -attribute_hidden -__fstat (int fd, struct stat *buf) -{ - return __fxstat (_STAT_VER, fd, buf); -} - -weak_hidden_alias (__fstat, fstat) diff --git a/lib/libc/glibc/io/fstat64-2.32.c b/lib/libc/glibc/io/fstat64-2.32.c deleted file mode 100644 index c4dd3acd60..0000000000 --- a/lib/libc/glibc/io/fstat64-2.32.c +++ /dev/null @@ -1,52 +0,0 @@ -/* Copyright (C) 1996-2020 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser 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, see - . */ - -#include - -/* This definition is only used if inlining fails for this function; see - the last page of . The real work is done by the `x' - function which is passed a version number argument. We arrange in the - makefile that when not inlined this function is always statically - linked; that way a dynamically-linked executable always encodes the - version number corresponding to the data structures it uses, so the `x' - functions in the shared library can adapt without needing to recompile - all callers. */ - -#undef fstat64 -int -attribute_hidden -fstat64 (int fd, struct stat64 *buf) -{ - return __fxstat64 (_STAT_VER, fd, buf); -} diff --git a/lib/libc/glibc/io/fstatat-2.32.c b/lib/libc/glibc/io/fstatat-2.32.c deleted file mode 100644 index edc773487a..0000000000 --- a/lib/libc/glibc/io/fstatat-2.32.c +++ /dev/null @@ -1,52 +0,0 @@ -/* Copyright (C) 2005-2020 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser 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, see - . */ - -#include - -/* This definition is only used if inlining fails for this function; see - the last page of . The real work is done by the `x' - function which is passed a version number argument. We arrange in the - makefile that when not inlined this function is always statically - linked; that way a dynamically-linked executable always encodes the - version number corresponding to the data structures it uses, so the `x' - functions in the shared library can adapt without needing to recompile - all callers. */ - -#undef fstatat -int -attribute_hidden -fstatat (int fd, const char *file, struct stat *buf, int flag) -{ - return __fxstatat (_STAT_VER, fd, file, buf, flag); -} diff --git a/lib/libc/glibc/io/fstatat64-2.32.c b/lib/libc/glibc/io/fstatat64-2.32.c deleted file mode 100644 index b57133bd90..0000000000 --- a/lib/libc/glibc/io/fstatat64-2.32.c +++ /dev/null @@ -1,52 +0,0 @@ -/* Copyright (C) 2005-2020 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser 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, see - . */ - -#include - -/* This definition is only used if inlining fails for this function; see - the last page of . The real work is done by the `x' - function which is passed a version number argument. We arrange in the - makefile that when not inlined this function is always statically - linked; that way a dynamically-linked executable always encodes the - version number corresponding to the data structures it uses, so the `x' - functions in the shared library can adapt without needing to recompile - all callers. */ - -#undef fstatat64 -int -attribute_hidden -fstatat64 (int fd, const char *file, struct stat64 *buf, int flag) -{ - return __fxstatat64 (_STAT_VER, fd, file, buf, flag); -} diff --git a/lib/libc/glibc/io/lstat-2.32.c b/lib/libc/glibc/io/lstat-2.32.c deleted file mode 100644 index 7134741106..0000000000 --- a/lib/libc/glibc/io/lstat-2.32.c +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright (C) 1996-2020 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser 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, see - . */ - -#include - -/* This definition is only used if inlining fails for this function; see - the last page of . The real work is done by the `x' - function which is passed a version number argument. We arrange in the - makefile that when not inlined this function is always statically - linked; that way a dynamically-linked executable always encodes the - version number corresponding to the data structures it uses, so the `x' - functions in the shared library can adapt without needing to recompile - all callers. */ - -#undef lstat -#undef __lstat -int -attribute_hidden -__lstat (const char *file, struct stat *buf) -{ - return __lxstat (_STAT_VER, file, buf); -} - -weak_hidden_alias (__lstat, lstat) diff --git a/lib/libc/glibc/io/lstat64-2.32.c b/lib/libc/glibc/io/lstat64-2.32.c deleted file mode 100644 index a890da71a8..0000000000 --- a/lib/libc/glibc/io/lstat64-2.32.c +++ /dev/null @@ -1,52 +0,0 @@ -/* Copyright (C) 1996-2020 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser 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, see - . */ - -#include - -/* This definition is only used if inlining fails for this function; see - the last page of . The real work is done by the `x' - function which is passed a version number argument. We arrange in the - makefile that when not inlined this function is always statically - linked; that way a dynamically-linked executable always encodes the - version number corresponding to the data structures it uses, so the `x' - functions in the shared library can adapt without needing to recompile - all callers. */ - -#undef lstat64 -int -attribute_hidden -lstat64 (const char *file, struct stat64 *buf) -{ - return __lxstat64 (_STAT_VER, file, buf); -} diff --git a/lib/libc/glibc/io/mknod-2.32.c b/lib/libc/glibc/io/mknod-2.32.c deleted file mode 100644 index ac96829230..0000000000 --- a/lib/libc/glibc/io/mknod-2.32.c +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright (C) 1995-2020 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser 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, see - . */ - - -#include -#include - -/* This definition is only used if inlining fails for this function; see - the last page of . The real work is done by the `x' - function which is passed a version number argument. We arrange in the - makefile that when not inlined this function is always statically - linked; that way a dynamically-linked executable always encodes the - version number corresponding to the data structures it uses, so the `x' - functions in the shared library can adapt without needing to recompile - all callers. */ - -int -attribute_hidden -__mknod (const char *path, mode_t mode, dev_t dev) -{ - return __xmknod (_MKNOD_VER, path, mode, &dev); -} - -weak_hidden_alias (__mknod, mknod) diff --git a/lib/libc/glibc/io/mknod.c b/lib/libc/glibc/io/mknod.c index c8b42671b0..8bfbba50f6 100644 --- a/lib/libc/glibc/io/mknod.c +++ b/lib/libc/glibc/io/mknod.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/io/mknodat-2.32.c b/lib/libc/glibc/io/mknodat-2.32.c deleted file mode 100644 index 65c9f1aa9c..0000000000 --- a/lib/libc/glibc/io/mknodat-2.32.c +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright (C) 1995-2020 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser 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, see - . */ - - -#include -#include - -/* This definition is only used if inlining fails for this function; see - the last page of . The real work is done by the `x' - function which is passed a version number argument. We arrange in the - makefile that when not inlined this function is always statically - linked; that way a dynamically-linked executable always encodes the - version number corresponding to the data structures it uses, so the `x' - functions in the shared library can adapt without needing to recompile - all callers. */ - -int -attribute_hidden -mknodat (int fd, const char *path, mode_t mode, dev_t dev) -{ - return __xmknodat (_MKNOD_VER, fd, path, mode, &dev); -} diff --git a/lib/libc/glibc/io/stat-2.32.c b/lib/libc/glibc/io/stat-2.32.c deleted file mode 100644 index 8c3cd877c8..0000000000 --- a/lib/libc/glibc/io/stat-2.32.c +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright (C) 1996-2020 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser 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, see - . */ - -#include - -/* This definition is only used if inlining fails for this function; see - the last page of . The real work is done by the `x' - function which is passed a version number argument. We arrange in the - makefile that when not inlined this function is always statically - linked; that way a dynamically-linked executable always encodes the - version number corresponding to the data structures it uses, so the `x' - functions in the shared library can adapt without needing to recompile - all callers. */ - -#undef stat -int -attribute_hidden -__stat (const char *file, struct stat *buf) -{ - return __xstat (_STAT_VER, file, buf); -} - -weak_hidden_alias (__stat, stat) diff --git a/lib/libc/glibc/io/stat64-2.32.c b/lib/libc/glibc/io/stat64-2.32.c deleted file mode 100644 index 8b6b662f3a..0000000000 --- a/lib/libc/glibc/io/stat64-2.32.c +++ /dev/null @@ -1,52 +0,0 @@ -/* Copyright (C) 1996-2020 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser 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, see - . */ - -#include - -/* This definition is only used if inlining fails for this function; see - the last page of . The real work is done by the `x' - function which is passed a version number argument. We arrange in the - makefile that when not inlined this function is always statically - linked; that way a dynamically-linked executable always encodes the - version number corresponding to the data structures it uses, so the `x' - functions in the shared library can adapt without needing to recompile - all callers. */ - -#undef stat64 -int -attribute_hidden -stat64 (const char *file, struct stat64 *buf) -{ - return __xstat64 (_STAT_VER, file, buf); -} diff --git a/lib/libc/glibc/io/sys/stat.h b/lib/libc/glibc/io/sys/stat.h index 7b9368f9ec..1fa6d6e62e 100644 --- a/lib/libc/glibc/io/sys/stat.h +++ b/lib/libc/glibc/io/sys/stat.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -251,7 +251,7 @@ extern int __REDIRECT_NTH (fstat64, (int __fd, struct stat64 *__buf), __nonnull ((2)); # else # define stat64 __stat64_time64 -# define fstat64 __fstat64_time +# define fstat64 __fstat64_time64 # endif # endif #endif diff --git a/lib/libc/glibc/locale/bits/types/__locale_t.h b/lib/libc/glibc/locale/bits/types/__locale_t.h index 6b83d380d9..52be00104d 100644 --- a/lib/libc/glibc/locale/bits/types/__locale_t.h +++ b/lib/libc/glibc/locale/bits/types/__locale_t.h @@ -1,5 +1,5 @@ /* Definition of struct __locale_struct and __locale_t. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/locale/bits/types/locale_t.h b/lib/libc/glibc/locale/bits/types/locale_t.h index 2de0f6d034..bc20639a4c 100644 --- a/lib/libc/glibc/locale/bits/types/locale_t.h +++ b/lib/libc/glibc/locale/bits/types/locale_t.h @@ -1,5 +1,5 @@ /* Definition of locale_t. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/misc/sys/cdefs.h b/lib/libc/glibc/misc/sys/cdefs.h index 90c21e2703..520231dbea 100644 --- a/lib/libc/glibc/misc/sys/cdefs.h +++ b/lib/libc/glibc/misc/sys/cdefs.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. Copyright The GNU Toolchain Authors. This file is part of the GNU C Library. diff --git a/lib/libc/glibc/misc/sys/select.h b/lib/libc/glibc/misc/sys/select.h index a715c08999..e6a0c1b8b2 100644 --- a/lib/libc/glibc/misc/sys/select.h +++ b/lib/libc/glibc/misc/sys/select.h @@ -1,5 +1,5 @@ /* `fd_set' type and related macros, and `select'/`pselect' declarations. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/posix/bits/cpu-set.h b/lib/libc/glibc/posix/bits/cpu-set.h index 16037eae30..dbcdc7800d 100644 --- a/lib/libc/glibc/posix/bits/cpu-set.h +++ b/lib/libc/glibc/posix/bits/cpu-set.h @@ -1,6 +1,6 @@ /* Definition of the cpu_set_t structure used by the POSIX 1003.1b-1993 scheduling interface. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/posix/bits/types.h b/lib/libc/glibc/posix/bits/types.h index 1f144d06f6..34e001ad68 100644 --- a/lib/libc/glibc/posix/bits/types.h +++ b/lib/libc/glibc/posix/bits/types.h @@ -1,5 +1,5 @@ /* bits/types.h -- definitions of __*_t types underlying *_t types. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -217,7 +217,7 @@ typedef int __sig_atomic_t; /* Seconds since the Epoch, visible to user code when time_t is too narrow only for consistency with the old way of widening too-narrow types. User code should never use __time64_t. */ -#if __TIMESIZE == 64 +#if __TIMESIZE == 64 && defined __LIBC # define __time64_t __time_t #elif __TIMESIZE != 64 __STD_TYPE __TIME64_T_TYPE __time64_t; diff --git a/lib/libc/glibc/posix/sys/types.h b/lib/libc/glibc/posix/sys/types.h index dbf41711dc..0f1ce36d5e 100644 --- a/lib/libc/glibc/posix/sys/types.h +++ b/lib/libc/glibc/posix/sys/types.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/signal/signal.h b/lib/libc/glibc/signal/signal.h index aff6c06045..f37499ce60 100644 --- a/lib/libc/glibc/signal/signal.h +++ b/lib/libc/glibc/signal/signal.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/stdlib/alloca.h b/lib/libc/glibc/stdlib/alloca.h index efc7116114..bead95399a 100644 --- a/lib/libc/glibc/stdlib/alloca.h +++ b/lib/libc/glibc/stdlib/alloca.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/stdlib/bits/stdlib-float.h b/lib/libc/glibc/stdlib/bits/stdlib-float.h index b16d0bb7db..ee97232716 100644 --- a/lib/libc/glibc/stdlib/bits/stdlib-float.h +++ b/lib/libc/glibc/stdlib/bits/stdlib-float.h @@ -1,5 +1,5 @@ /* Floating-point inline functions for stdlib.h. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/stdlib/errno.h b/lib/libc/glibc/stdlib/errno.h index d15d890d85..e50380f057 100644 --- a/lib/libc/glibc/stdlib/errno.h +++ b/lib/libc/glibc/stdlib/errno.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/stdlib/exit.h b/lib/libc/glibc/stdlib/exit.h index 23cfb8fd95..3dc9f4c6ba 100644 --- a/lib/libc/glibc/stdlib/exit.h +++ b/lib/libc/glibc/stdlib/exit.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/stdlib/stdlib.h b/lib/libc/glibc/stdlib/stdlib.h index 631b0cbbed..414c49d731 100644 --- a/lib/libc/glibc/stdlib/stdlib.h +++ b/lib/libc/glibc/stdlib/stdlib.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. Copyright The GNU Toolchain Authors. This file is part of the GNU C Library. diff --git a/lib/libc/glibc/string/bits/endian.h b/lib/libc/glibc/string/bits/endian.h index b659a0031c..08ca11efe9 100644 --- a/lib/libc/glibc/string/bits/endian.h +++ b/lib/libc/glibc/string/bits/endian.h @@ -1,5 +1,5 @@ /* Endian macros for string.h functions - Copyright (C) 1992-2023 Free Software Foundation, Inc. + Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/string/endian.h b/lib/libc/glibc/string/endian.h index ffc66791f4..fd20a2b198 100644 --- a/lib/libc/glibc/string/endian.h +++ b/lib/libc/glibc/string/endian.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/aarch64/crti.S b/lib/libc/glibc/sysdeps/aarch64/crti.S index c4e3b06a4d..e54cb02123 100644 --- a/lib/libc/glibc/sysdeps/aarch64/crti.S +++ b/lib/libc/glibc/sysdeps/aarch64/crti.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for AArch64. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/glibc/sysdeps/aarch64/crtn.S b/lib/libc/glibc/sysdeps/aarch64/crtn.S index b3d91ba96e..3220e453ff 100644 --- a/lib/libc/glibc/sysdeps/aarch64/crtn.S +++ b/lib/libc/glibc/sysdeps/aarch64/crtn.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for AArch64. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/glibc/sysdeps/aarch64/nptl/bits/pthreadtypes-arch.h b/lib/libc/glibc/sysdeps/aarch64/nptl/bits/pthreadtypes-arch.h index e5797b2877..5fe9577f80 100644 --- a/lib/libc/glibc/sysdeps/aarch64/nptl/bits/pthreadtypes-arch.h +++ b/lib/libc/glibc/sysdeps/aarch64/nptl/bits/pthreadtypes-arch.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/glibc/sysdeps/aarch64/start.S b/lib/libc/glibc/sysdeps/aarch64/start.S index 9ec8e388bd..5d187f3068 100644 --- a/lib/libc/glibc/sysdeps/aarch64/start.S +++ b/lib/libc/glibc/sysdeps/aarch64/start.S @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/glibc/sysdeps/aarch64/sysdep.h b/lib/libc/glibc/sysdeps/aarch64/sysdep.h index 37ee891fc4..464674e89c 100644 --- a/lib/libc/glibc/sysdeps/aarch64/sysdep.h +++ b/lib/libc/glibc/sysdeps/aarch64/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/glibc/sysdeps/alpha/crti.S b/lib/libc/glibc/sysdeps/alpha/crti.S index da0babd80b..776c847ee1 100644 --- a/lib/libc/glibc/sysdeps/alpha/crti.S +++ b/lib/libc/glibc/sysdeps/alpha/crti.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for Alpha. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/alpha/crtn.S b/lib/libc/glibc/sysdeps/alpha/crtn.S index 86ac0e47a3..a14b52f6c1 100644 --- a/lib/libc/glibc/sysdeps/alpha/crtn.S +++ b/lib/libc/glibc/sysdeps/alpha/crtn.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for Alpha. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/alpha/start.S b/lib/libc/glibc/sysdeps/alpha/start.S index 80d0ac36d3..74bf240fd6 100644 --- a/lib/libc/glibc/sysdeps/alpha/start.S +++ b/lib/libc/glibc/sysdeps/alpha/start.S @@ -1,5 +1,5 @@ /* Startup code for Alpha/ELF. - Copyright (C) 1993-2023 Free Software Foundation, Inc. + Copyright (C) 1993-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/arc/sysdep.h b/lib/libc/glibc/sysdeps/arc/sysdep.h index 4f024f6b73..234ef39ddf 100644 --- a/lib/libc/glibc/sysdeps/arc/sysdep.h +++ b/lib/libc/glibc/sysdeps/arc/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for ARC. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/arm/arm-features.h b/lib/libc/glibc/sysdeps/arm/arm-features.h index 7f241d6b9b..69e7e36b29 100644 --- a/lib/libc/glibc/sysdeps/arm/arm-features.h +++ b/lib/libc/glibc/sysdeps/arm/arm-features.h @@ -1,5 +1,5 @@ /* Macros to test for CPU features on ARM. Generic ARM version. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/arm/crti.S b/lib/libc/glibc/sysdeps/arm/crti.S index af6ba4a122..9d6bbe977d 100644 --- a/lib/libc/glibc/sysdeps/arm/crti.S +++ b/lib/libc/glibc/sysdeps/arm/crti.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for ARM. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/arm/crtn.S b/lib/libc/glibc/sysdeps/arm/crtn.S index d28b31829f..0839e8713d 100644 --- a/lib/libc/glibc/sysdeps/arm/crtn.S +++ b/lib/libc/glibc/sysdeps/arm/crtn.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for ARM. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/arm/start.S b/lib/libc/glibc/sysdeps/arm/start.S index f53f4581b5..20a6dbb9cd 100644 --- a/lib/libc/glibc/sysdeps/arm/start.S +++ b/lib/libc/glibc/sysdeps/arm/start.S @@ -1,5 +1,5 @@ /* Startup code for ARM & ELF - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/arm/sysdep.h b/lib/libc/glibc/sysdeps/arm/sysdep.h index 18cdce8fb3..8b7fee7f3b 100644 --- a/lib/libc/glibc/sysdeps/arm/sysdep.h +++ b/lib/libc/glibc/sysdeps/arm/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for ARM. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/csky/sysdep.h b/lib/libc/glibc/sysdeps/csky/sysdep.h index e681782f7f..aa8c2ad17a 100644 --- a/lib/libc/glibc/sysdeps/csky/sysdep.h +++ b/lib/libc/glibc/sysdeps/csky/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for C-SKY. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/generic/dl-dtprocnum.h b/lib/libc/glibc/sysdeps/generic/dl-dtprocnum.h index c31c82852a..7b4b51006e 100644 --- a/lib/libc/glibc/sysdeps/generic/dl-dtprocnum.h +++ b/lib/libc/glibc/sysdeps/generic/dl-dtprocnum.h @@ -1,5 +1,5 @@ /* Configuration of lookup functions. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/generic/dl-sysdep.h b/lib/libc/glibc/sysdeps/generic/dl-sysdep.h index 9563ccda39..30a696a5f0 100644 --- a/lib/libc/glibc/sysdeps/generic/dl-sysdep.h +++ b/lib/libc/glibc/sysdeps/generic/dl-sysdep.h @@ -1,5 +1,5 @@ /* System-specific settings for dynamic linker code. Generic version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/generic/dwarf2.h b/lib/libc/glibc/sysdeps/generic/dwarf2.h index 0b0ec836d9..880fab545a 100644 --- a/lib/libc/glibc/sysdeps/generic/dwarf2.h +++ b/lib/libc/glibc/sysdeps/generic/dwarf2.h @@ -1,6 +1,6 @@ /* Declarations and definitions of codes relating to the DWARF2 symbolic debugging information format. - Copyright (C) 1992-2023 Free Software Foundation, Inc. + Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/glibc/sysdeps/generic/libc-lock.h b/lib/libc/glibc/sysdeps/generic/libc-lock.h index abbf7272ca..ea62912910 100644 --- a/lib/libc/glibc/sysdeps/generic/libc-lock.h +++ b/lib/libc/glibc/sysdeps/generic/libc-lock.h @@ -1,5 +1,5 @@ /* libc-internal interface for mutex locks. Stub version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/generic/libc-symver.h b/lib/libc/glibc/sysdeps/generic/libc-symver.h index ac2b827f72..7dd4762a70 100644 --- a/lib/libc/glibc/sysdeps/generic/libc-symver.h +++ b/lib/libc/glibc/sysdeps/generic/libc-symver.h @@ -1,5 +1,5 @@ /* Symbol version management. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/generic/single-thread.h b/lib/libc/glibc/sysdeps/generic/single-thread.h index 8901ad5723..a76ff7ac19 100644 --- a/lib/libc/glibc/sysdeps/generic/single-thread.h +++ b/lib/libc/glibc/sysdeps/generic/single-thread.h @@ -1,5 +1,5 @@ /* Single thread optimization, generic version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/generic/sysdep.h b/lib/libc/glibc/sysdeps/generic/sysdep.h index e77be376f7..c47e53d3d8 100644 --- a/lib/libc/glibc/sysdeps/generic/sysdep.h +++ b/lib/libc/glibc/sysdeps/generic/sysdep.h @@ -1,5 +1,5 @@ /* Generic asm macros used on many machines. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/generic/tls.h b/lib/libc/glibc/sysdeps/generic/tls.h index bb4fe6c74c..bb363c1ec3 100644 --- a/lib/libc/glibc/sysdeps/generic/tls.h +++ b/lib/libc/glibc/sysdeps/generic/tls.h @@ -1,5 +1,5 @@ /* Definition for thread-local data handling. Generic version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/hppa/crti.S b/lib/libc/glibc/sysdeps/hppa/crti.S index eb29e9e4c4..46482224f4 100644 --- a/lib/libc/glibc/sysdeps/hppa/crti.S +++ b/lib/libc/glibc/sysdeps/hppa/crti.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for HPPA - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/hppa/crtn.S b/lib/libc/glibc/sysdeps/hppa/crtn.S index 21366369ec..bf5d8009b9 100644 --- a/lib/libc/glibc/sysdeps/hppa/crtn.S +++ b/lib/libc/glibc/sysdeps/hppa/crtn.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for HPPA - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/hppa/nptl/bits/pthreadtypes-arch.h b/lib/libc/glibc/sysdeps/hppa/nptl/bits/pthreadtypes-arch.h index 999195c5b0..9c39b8b398 100644 --- a/lib/libc/glibc/sysdeps/hppa/nptl/bits/pthreadtypes-arch.h +++ b/lib/libc/glibc/sysdeps/hppa/nptl/bits/pthreadtypes-arch.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/hppa/start.S b/lib/libc/glibc/sysdeps/hppa/start.S index cfc22ab75b..f68aeff1d1 100644 --- a/lib/libc/glibc/sysdeps/hppa/start.S +++ b/lib/libc/glibc/sysdeps/hppa/start.S @@ -1,5 +1,5 @@ /* ELF startup code for HPPA. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/hppa/sysdep.h b/lib/libc/glibc/sysdeps/hppa/sysdep.h index 0e020a3152..5a3d1f69b0 100644 --- a/lib/libc/glibc/sysdeps/hppa/sysdep.h +++ b/lib/libc/glibc/sysdeps/hppa/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for HP/PA. - Copyright (C) 1999-2023 Free Software Foundation, Inc. + Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/htl/bits/pthread.h b/lib/libc/glibc/sysdeps/htl/bits/pthread.h index 57589a191c..9ff0fc4b67 100644 --- a/lib/libc/glibc/sysdeps/htl/bits/pthread.h +++ b/lib/libc/glibc/sysdeps/htl/bits/pthread.h @@ -1,5 +1,5 @@ /* Pthread data structures. Generic version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/htl/bits/thread-shared-types.h b/lib/libc/glibc/sysdeps/htl/bits/thread-shared-types.h index 50c9bd4724..251e254374 100644 --- a/lib/libc/glibc/sysdeps/htl/bits/thread-shared-types.h +++ b/lib/libc/glibc/sysdeps/htl/bits/thread-shared-types.h @@ -1,5 +1,5 @@ /* Common threading primitives definitions for both POSIX and C11. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/htl/libc-lockP.h b/lib/libc/glibc/sysdeps/htl/libc-lockP.h index 1b98f3ccd0..fbb3e14f39 100644 --- a/lib/libc/glibc/sysdeps/htl/libc-lockP.h +++ b/lib/libc/glibc/sysdeps/htl/libc-lockP.h @@ -1,5 +1,5 @@ /* Private libc-internal interface for mutex locks. - Copyright (C) 2015-2023 Free Software Foundation, Inc. + Copyright (C) 2015-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/htl/pthread.h b/lib/libc/glibc/sysdeps/htl/pthread.h index cc9e7bf94d..fa626ebc82 100644 --- a/lib/libc/glibc/sysdeps/htl/pthread.h +++ b/lib/libc/glibc/sysdeps/htl/pthread.h @@ -1,5 +1,5 @@ /* Posix threads. Hurd version. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/i386/crti.S b/lib/libc/glibc/sysdeps/i386/crti.S index 268ae75725..f9662eeb5a 100644 --- a/lib/libc/glibc/sysdeps/i386/crti.S +++ b/lib/libc/glibc/sysdeps/i386/crti.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for x86. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -61,7 +61,6 @@ .hidden _init .type _init, @function _init: - _CET_ENDBR pushl %ebx /* Maintain 16-byte stack alignment for called functions. */ subl $8, %esp @@ -82,7 +81,6 @@ _init: .hidden _fini .type _fini, @function _fini: - _CET_ENDBR pushl %ebx subl $8, %esp LOAD_PIC_REG (bx) diff --git a/lib/libc/glibc/sysdeps/i386/crtn.S b/lib/libc/glibc/sysdeps/i386/crtn.S index dc77093e8b..46f40ab554 100644 --- a/lib/libc/glibc/sysdeps/i386/crtn.S +++ b/lib/libc/glibc/sysdeps/i386/crtn.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for x86. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/i386/htl/bits/pthreadtypes-arch.h b/lib/libc/glibc/sysdeps/i386/htl/bits/pthreadtypes-arch.h index 06dc4b09fb..163b3dfd0d 100644 --- a/lib/libc/glibc/sysdeps/i386/htl/bits/pthreadtypes-arch.h +++ b/lib/libc/glibc/sysdeps/i386/htl/bits/pthreadtypes-arch.h @@ -1,5 +1,5 @@ /* Machine-specific pthread type layouts. Hurd i386 version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/i386/start.S b/lib/libc/glibc/sysdeps/i386/start.S index 4c98fc6534..30577176f8 100644 --- a/lib/libc/glibc/sysdeps/i386/start.S +++ b/lib/libc/glibc/sysdeps/i386/start.S @@ -1,5 +1,5 @@ /* Startup code compliant to the ELF i386 ABI. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -132,7 +132,6 @@ ENTRY (_start) #if defined PIC && !defined SHARED __wrap_main: - _CET_ENDBR jmp main@PLT #endif END (_start) diff --git a/lib/libc/glibc/sysdeps/i386/symbol-hacks.h b/lib/libc/glibc/sysdeps/i386/symbol-hacks.h index 68ca51e9ab..f62465a836 100644 --- a/lib/libc/glibc/sysdeps/i386/symbol-hacks.h +++ b/lib/libc/glibc/sysdeps/i386/symbol-hacks.h @@ -1,5 +1,5 @@ /* Hacks needed for symbol manipulation. i386 version. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/i386/sysdep.h b/lib/libc/glibc/sysdeps/i386/sysdep.h index 0e366974ce..86b5fdd6ae 100644 --- a/lib/libc/glibc/sysdeps/i386/sysdep.h +++ b/lib/libc/glibc/sysdeps/i386/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for i386. - Copyright (C) 1991-2023 Free Software Foundation, Inc. + Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -18,6 +18,8 @@ #include +#define CET_ENABLED 0 + /* It is desirable that the names of PIC thunks match those used by GCC so that multiple copies are eliminated by the linker. Because GCC 4.6 and earlier use __i686 in the names, it is necessary to @@ -37,6 +39,15 @@ /* Syntactic details of assembler. */ +/* Define an entry point visible from C. */ +#define ENTRY_P2ALIGN(name, alignment) \ + .globl C_SYMBOL_NAME(name); \ + .type C_SYMBOL_NAME(name),@function; \ + .align ALIGNARG(alignment); \ + C_LABEL(name) \ + cfi_startproc; \ + CALL_MCOUNT + /* If compiled for profiling, call `mcount' at the start of each function. */ #ifdef PROF /* The mcount code relies on a normal frame pointer being on the stack diff --git a/lib/libc/glibc/sysdeps/ia64/crti.S b/lib/libc/glibc/sysdeps/ia64/crti.S deleted file mode 100644 index a8e8a2c837..0000000000 --- a/lib/libc/glibc/sysdeps/ia64/crti.S +++ /dev/null @@ -1,162 +0,0 @@ -/* Special .init and .fini section support for IA64. - Copyright (C) 2000-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser 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, see - . */ - -/* crti.S puts a function prologue at the beginning of the .init and - .fini sections and defines global symbols for those addresses, so - they can be called as functions. The symbols _init and _fini are - magic and cause the linker to emit DT_INIT and DT_FINI. */ - -#include -#include -#undef ret - -#ifndef PREINIT_FUNCTION -# define PREINIT_FUNCTION __gmon_start__ -#endif - -#ifndef PREINIT_FUNCTION_WEAK -# define PREINIT_FUNCTION_WEAK 1 -#endif - -#if PREINIT_FUNCTION_WEAK - weak_extern (PREINIT_FUNCTION) -#else - .hidden PREINIT_FUNCTION -#endif - -/* If we have working .init_array support, we want to keep the .init - section empty (apart from the mandatory prologue/epilogue. This - ensures that the default unwind conventions (return-pointer in b0, - frame state in ar.pfs, etc.) will do the Right Thing. To ensure - an empty .init section, we register gmon_initializer() via the - .init_array. - - --davidm 02/10/29 */ - -#if PREINIT_FUNCTION_WEAK -/* This blob of assembly code is one simple C function: - -static void -__attribute__ ((used)) -gmon_initializer (void) -{ - extern void weak_function __gmon_start__ (void); - - if (__gmon_start__) - (*__gmon_start__)(); -} - */ - .text - .align 64 - .proc gmon_initializer# -gmon_initializer: - .prologue 12, 32 - .mmi - .save ar.pfs, r33 - alloc r33 = ar.pfs, 0, 3, 0, 0 - addl r14 = @ltoff(@fptr(PREINIT_FUNCTION#)), gp - .save rp, r32 - mov r32 = b0 - .mmi - mov r34 = r1 - .body - ;; - ld8 r14 = [r14] - nop 0 - ;; - .mib - cmp.eq p6, p7 = 0, r14 - nop 0 - (p6) br.cond.spnt .L1 - ;; - .mib - nop 0 - nop 0 - br.call.sptk.many b0 = PREINIT_FUNCTION# - ;; - .mmi - mov r1 = r34 - nop 0 - nop 0 -.L1: - .mii - nop 0 - mov ar.pfs = r33 - nop 0 - ;; - .mib - nop 0 - mov b0 = r32 - br.ret.sptk.many b0 - .endp gmon_initializer# -# undef PREINIT_FUNCTION -# define PREINIT_FUNCTION gmon_initializer -#endif - .section .init_array, "aw" - data8 @fptr(PREINIT_FUNCTION) - - .section .init,"ax",@progbits - .global _init# - .hidden _init# - .proc _init# -_init: - .prologue - .save ar.pfs, r34 - alloc r34 = ar.pfs, 0, 3, 0, 0 - .vframe r32 - mov r32 = r12 - .save rp, r33 - mov r33 = b0 - .body - adds r12 = -16, r12 - ;; /* see gmon_initializer() above */ - .endp _init# - - .section .fini,"ax",@progbits - .global _fini# - .hidden _fini# - .proc _fini# -_fini: - .prologue - .save ar.pfs, r34 - alloc r34 = ar.pfs, 0, 3, 0, 0 - .vframe r32 - mov r32 = r12 - .save rp, r33 - mov r33 = b0 - .body - adds r12 = -16, r12 - ;; - .endp _fini# diff --git a/lib/libc/glibc/sysdeps/ia64/crtn.S b/lib/libc/glibc/sysdeps/ia64/crtn.S deleted file mode 100644 index 5c74920a45..0000000000 --- a/lib/libc/glibc/sysdeps/ia64/crtn.S +++ /dev/null @@ -1,69 +0,0 @@ -/* Special .init and .fini section support for ARM. - Copyright (C) 2000-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser 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, see - . */ - -#include -#undef ret - -/* crtn.S puts function epilogues in the .init and .fini sections - corresponding to the prologues in crti.S. */ - - .section .init,"ax",@progbits - .proc _init# -_init: - .prologue - .save ar.pfs, r34 - .vframe r32 - .save rp, r33 - .body - .regstk 0,2,0,0 - mov r12 = r32 - mov ar.pfs = r34 - mov b0 = r33 - br.ret.sptk.many b0 - .endp _init# - - .section .fini,"ax",@progbits - .proc _fini# -_fini: - .prologue - .save ar.pfs, r34 - .vframe r32 - .save rp, r33 - .body - mov r12 = r32 - mov ar.pfs = r34 - mov b0 = r33 - br.ret.sptk.many b0 - .endp _fini# diff --git a/lib/libc/glibc/sysdeps/ia64/dl-dtprocnum.h b/lib/libc/glibc/sysdeps/ia64/dl-dtprocnum.h deleted file mode 100644 index 170f0de583..0000000000 --- a/lib/libc/glibc/sysdeps/ia64/dl-dtprocnum.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Configuration of lookup functions. IA-64 version. - Copyright (C) 2000-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -/* Number of extra dynamic section entries for this architecture. By - default there are none. */ -#define DT_THISPROCNUM DT_IA_64_NUM diff --git a/lib/libc/glibc/sysdeps/ia64/entry.h b/lib/libc/glibc/sysdeps/ia64/entry.h deleted file mode 100644 index 9ae8b8615c..0000000000 --- a/lib/libc/glibc/sysdeps/ia64/entry.h +++ /dev/null @@ -1,8 +0,0 @@ -#include -#include - -extern void _start (void); - -/* The function's entry point is stored in the first word of the - function descriptor (plabel) of _start(). */ -#define ENTRY_POINT ELF_PTR_TO_FDESC (_start)->ip diff --git a/lib/libc/glibc/sysdeps/ia64/start.S b/lib/libc/glibc/sysdeps/ia64/start.S deleted file mode 100644 index e07304d3ed..0000000000 --- a/lib/libc/glibc/sysdeps/ia64/start.S +++ /dev/null @@ -1,112 +0,0 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser 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, see - . */ - -#include - -#include - -/* - * Arguments for __libc_start_main: - * out0: main - * out1: argc - * out2: argv - * out3: init - * out4: fini - * out5: rtld_fini - * out6: stack_end - */ - - .align 32 - .global _start - - .proc _start - .type _start,@function -_start: - .prologue - .save rp, r0 - .body - .prologue - { .mlx - alloc r2 = ar.pfs,0,0,7,0 - movl r3 = FPSR_DEFAULT - } - { .mlx - adds out2 = 16, sp /* get address of argc value */ - movl gp = @gprel(0f) - ;; - } -0: { .mmi - ld8 out1 = [out2], 8 /* load argc and move out2 to become argv */ - mov.m r10 = ar.bsp /* fetch rbs base address */ - mov r9 = ip - ;; - } - { .mii - mov ar.fpsr = r3 - sub gp = r9, gp /* back-compute gp value */ - adds out6 = 16, sp /* highest non-environment stack address */ - ;; - } - { - addl r11 = @ltoff(__libc_ia64_register_backing_store_base), gp - addl out0 = @ltoff(@fptr(main)), gp - mov out3 = r0 /* Used to be init. */ - ;; - } - { .mmi - ld8 r3 = [r11] /* pointer to __libc_ia64_register_backing_store_base */ - ld8 out0 = [out0] /* pointer to `main' function descriptor */ - mov out4 = r0 /* Used to be fini. */ - ;; - } - .body - { .mib - st8 [r3] = r10 - mov out5 = ret0 /* dynamic linker destructor */ - br.call.sptk.few rp = __libc_start_main - } - { .mib - break 0 /* break miserably if we ever return */ - } - .endp _start - -/* 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 - - .common __libc_ia64_register_backing_store_base, 8, 8 diff --git a/lib/libc/glibc/sysdeps/ia64/sysdep.h b/lib/libc/glibc/sysdeps/ia64/sysdep.h deleted file mode 100644 index cfd884bbf0..0000000000 --- a/lib/libc/glibc/sysdeps/ia64/sysdep.h +++ /dev/null @@ -1,61 +0,0 @@ -/* Copyright (C) 2000-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include - -#ifdef __ASSEMBLER__ - -/* Macros to help writing .prologue directives in assembly code. */ -#define ASM_UNW_PRLG_RP 0x8 -#define ASM_UNW_PRLG_PFS 0x4 -#define ASM_UNW_PRLG_PSP 0x2 -#define ASM_UNW_PRLG_PR 0x1 -#define ASM_UNW_PRLG_GRSAVE(ninputs) (32+(ninputs)) - -#define ENTRY(name) \ - .text; \ - .align 32; \ - .proc C_SYMBOL_NAME(name); \ - .global C_SYMBOL_NAME(name); \ - C_LABEL(name) \ - CALL_MCOUNT - -#define LOCAL_ENTRY(name) \ - .text; \ - .align 32; \ - .proc C_SYMBOL_NAME(name); \ - C_LABEL(name) \ - CALL_MCOUNT - -#define LEAF(name) \ - .text; \ - .align 32; \ - .proc C_SYMBOL_NAME(name); \ - .global name; \ - C_LABEL(name) - -#define LOCAL_LEAF(name) \ - .text; \ - .align 32; \ - .proc C_SYMBOL_NAME(name); \ - C_LABEL(name) - -/* Mark the end of function SYM. */ -#undef END -#define END(sym) .endp C_SYMBOL_NAME(sym) - -#endif /* ASSEMBLER */ diff --git a/lib/libc/glibc/sysdeps/m68k/coldfire/sysdep.h b/lib/libc/glibc/sysdeps/m68k/coldfire/sysdep.h index c52d10998c..0d7b21e397 100644 --- a/lib/libc/glibc/sysdeps/m68k/coldfire/sysdep.h +++ b/lib/libc/glibc/sysdeps/m68k/coldfire/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for Coldfire. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/m68k/crti.S b/lib/libc/glibc/sysdeps/m68k/crti.S index c49dfa8f9c..e52088799a 100644 --- a/lib/libc/glibc/sysdeps/m68k/crti.S +++ b/lib/libc/glibc/sysdeps/m68k/crti.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for m68k. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/m68k/crtn.S b/lib/libc/glibc/sysdeps/m68k/crtn.S index 3161cb5292..58e640e2c4 100644 --- a/lib/libc/glibc/sysdeps/m68k/crtn.S +++ b/lib/libc/glibc/sysdeps/m68k/crtn.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for m68k. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/m68k/m680x0/sysdep.h b/lib/libc/glibc/sysdeps/m68k/m680x0/sysdep.h index b31e101273..3c521ae7f4 100644 --- a/lib/libc/glibc/sysdeps/m68k/m680x0/sysdep.h +++ b/lib/libc/glibc/sysdeps/m68k/m680x0/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for m680x0. - Copyright (C) 2010-2023 Free Software Foundation, Inc. + Copyright (C) 2010-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -37,3 +37,10 @@ OP " " SRC "(" PC "), " DST #endif /* __ASSEMBLER__ */ + +# if defined __mc68020__ || defined __mc68030__ || defined __mc68040__ \ + || defined __mc68060__ +# define M68K_SCALE_AVAILABLE 1 +# else +# define M68K_SCALE_AVAILABLE 0 +# endif diff --git a/lib/libc/glibc/sysdeps/m68k/nptl/bits/pthreadtypes-arch.h b/lib/libc/glibc/sysdeps/m68k/nptl/bits/pthreadtypes-arch.h index f63fb041f3..f286b76164 100644 --- a/lib/libc/glibc/sysdeps/m68k/nptl/bits/pthreadtypes-arch.h +++ b/lib/libc/glibc/sysdeps/m68k/nptl/bits/pthreadtypes-arch.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2010-2023 Free Software Foundation, Inc. +/* Copyright (C) 2010-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/m68k/start.S b/lib/libc/glibc/sysdeps/m68k/start.S index db8e47e3d5..d1af04a045 100644 --- a/lib/libc/glibc/sysdeps/m68k/start.S +++ b/lib/libc/glibc/sysdeps/m68k/start.S @@ -1,5 +1,5 @@ /* Startup code compliant to the ELF m68k ABI. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/m68k/symbol-hacks.h b/lib/libc/glibc/sysdeps/m68k/symbol-hacks.h index 415c2e7cd2..e8a2cc6e49 100644 --- a/lib/libc/glibc/sysdeps/m68k/symbol-hacks.h +++ b/lib/libc/glibc/sysdeps/m68k/symbol-hacks.h @@ -1,5 +1,5 @@ /* Hacks needed for symbol manipulation. m68k version. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/m68k/sysdep.h b/lib/libc/glibc/sysdeps/m68k/sysdep.h index dfc8aebc3a..f0ecc8f202 100644 --- a/lib/libc/glibc/sysdeps/m68k/sysdep.h +++ b/lib/libc/glibc/sysdeps/m68k/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for m68k. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/mach/libc-lock.h b/lib/libc/glibc/sysdeps/mach/libc-lock.h index c5c2553c7b..63427f7767 100644 --- a/lib/libc/glibc/sysdeps/mach/libc-lock.h +++ b/lib/libc/glibc/sysdeps/mach/libc-lock.h @@ -1,5 +1,5 @@ /* libc-internal interface for mutex locks. Mach cthreads version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/mach/sysdep.h b/lib/libc/glibc/sysdeps/mach/sysdep.h index 35ad1e3920..3e0553d80f 100644 --- a/lib/libc/glibc/sysdeps/mach/sysdep.h +++ b/lib/libc/glibc/sysdeps/mach/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1994-2023 Free Software Foundation, Inc. +/* Copyright (C) 1994-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -56,13 +56,6 @@ /* This is not used on all machines. */ #endif -/* Set variables ARGC, ARGV, and ENVP for the arguments - left on the stack by the microkernel. */ -#ifndef SNARF_ARGS -#define SNARF_ARGS(argc, argv, envp) -#error SNARF_ARGS not defined by sysdeps/mach/MACHINE/sysdep.h -#endif - /* LOSE can be defined as the `halt' instruction or something similar which will cause the process to die in a characteristic way suggesting a bug. */ diff --git a/lib/libc/glibc/sysdeps/microblaze/crti.S b/lib/libc/glibc/sysdeps/microblaze/crti.S index 5eb0e283cc..58097a1b72 100644 --- a/lib/libc/glibc/sysdeps/microblaze/crti.S +++ b/lib/libc/glibc/sysdeps/microblaze/crti.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for MicroBlaze. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/microblaze/crtn.S b/lib/libc/glibc/sysdeps/microblaze/crtn.S index 2e152c917e..90b1aba1bd 100644 --- a/lib/libc/glibc/sysdeps/microblaze/crtn.S +++ b/lib/libc/glibc/sysdeps/microblaze/crtn.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for MicroBlaze. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/microblaze/start.S b/lib/libc/glibc/sysdeps/microblaze/start.S index c35c47376a..50489edc2a 100644 --- a/lib/libc/glibc/sysdeps/microblaze/start.S +++ b/lib/libc/glibc/sysdeps/microblaze/start.S @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/glibc/sysdeps/microblaze/sysdep.h b/lib/libc/glibc/sysdeps/microblaze/sysdep.h index 47d48fab8d..3b42ee62e0 100644 --- a/lib/libc/glibc/sysdeps/microblaze/sysdep.h +++ b/lib/libc/glibc/sysdeps/microblaze/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/glibc/sysdeps/mips/dl-dtprocnum.h b/lib/libc/glibc/sysdeps/mips/dl-dtprocnum.h index a3bf354b83..c166e8a25c 100644 --- a/lib/libc/glibc/sysdeps/mips/dl-dtprocnum.h +++ b/lib/libc/glibc/sysdeps/mips/dl-dtprocnum.h @@ -1,5 +1,5 @@ /* Configuration of lookup functions. MIPS version. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/mips/mips32/crti.S b/lib/libc/glibc/sysdeps/mips/mips32/crti.S index 155cd8fef7..df1d91cf90 100644 --- a/lib/libc/glibc/sysdeps/mips/mips32/crti.S +++ b/lib/libc/glibc/sysdeps/mips/mips32/crti.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for MIPS (o32). - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/mips/mips32/crtn.S b/lib/libc/glibc/sysdeps/mips/mips32/crtn.S index bad74636ae..89ecbd9882 100644 --- a/lib/libc/glibc/sysdeps/mips/mips32/crtn.S +++ b/lib/libc/glibc/sysdeps/mips/mips32/crtn.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for MIPS (o32). - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/mips/mips64/n32/crti.S b/lib/libc/glibc/sysdeps/mips/mips64/n32/crti.S index bd3c9ea5ef..351655d08a 100644 --- a/lib/libc/glibc/sysdeps/mips/mips64/n32/crti.S +++ b/lib/libc/glibc/sysdeps/mips/mips64/n32/crti.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for MIPS (n32). - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/mips/mips64/n32/crtn.S b/lib/libc/glibc/sysdeps/mips/mips64/n32/crtn.S index 084775ac88..633d79cfad 100644 --- a/lib/libc/glibc/sysdeps/mips/mips64/n32/crtn.S +++ b/lib/libc/glibc/sysdeps/mips/mips64/n32/crtn.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for MIPS (n32). - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/mips/mips64/n64/crti.S b/lib/libc/glibc/sysdeps/mips/mips64/n64/crti.S index b21c052aa4..9726eb326a 100644 --- a/lib/libc/glibc/sysdeps/mips/mips64/n64/crti.S +++ b/lib/libc/glibc/sysdeps/mips/mips64/n64/crti.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for MIPS (n64). - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/mips/mips64/n64/crtn.S b/lib/libc/glibc/sysdeps/mips/mips64/n64/crtn.S index 1d9c59fa9d..99ed1e3263 100644 --- a/lib/libc/glibc/sysdeps/mips/mips64/n64/crtn.S +++ b/lib/libc/glibc/sysdeps/mips/mips64/n64/crtn.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for MIPS (n64). - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/mips/nptl/bits/pthreadtypes-arch.h b/lib/libc/glibc/sysdeps/mips/nptl/bits/pthreadtypes-arch.h index 99812f5c41..5ea0c7955e 100644 --- a/lib/libc/glibc/sysdeps/mips/nptl/bits/pthreadtypes-arch.h +++ b/lib/libc/glibc/sysdeps/mips/nptl/bits/pthreadtypes-arch.h @@ -1,5 +1,5 @@ /* Machine-specific pthread type layouts. MIPS version. - Copyright (C) 2005-2023 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/mips/start.S b/lib/libc/glibc/sysdeps/mips/start.S index 35ef4403f8..0b10d0e7ce 100644 --- a/lib/libc/glibc/sysdeps/mips/start.S +++ b/lib/libc/glibc/sysdeps/mips/start.S @@ -1,5 +1,5 @@ /* Startup code compliant to the ELF Mips ABI. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/nios2/sysdep.h b/lib/libc/glibc/sysdeps/nios2/sysdep.h index 34b2a9ff70..67c62196e5 100644 --- a/lib/libc/glibc/sysdeps/nios2/sysdep.h +++ b/lib/libc/glibc/sysdeps/nios2/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for Nios II. - Copyright (C) 2015-2023 Free Software Foundation, Inc. + Copyright (C) 2015-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/nptl/bits/pthreadtypes.h b/lib/libc/glibc/sysdeps/nptl/bits/pthreadtypes.h index 65464ee88c..bace817f0b 100644 --- a/lib/libc/glibc/sysdeps/nptl/bits/pthreadtypes.h +++ b/lib/libc/glibc/sysdeps/nptl/bits/pthreadtypes.h @@ -1,5 +1,5 @@ /* Declaration of common pthread types for all architectures. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/nptl/bits/thread-shared-types.h b/lib/libc/glibc/sysdeps/nptl/bits/thread-shared-types.h index 2de6ff9caf..df54eef6f7 100644 --- a/lib/libc/glibc/sysdeps/nptl/bits/thread-shared-types.h +++ b/lib/libc/glibc/sysdeps/nptl/bits/thread-shared-types.h @@ -1,5 +1,5 @@ /* Common threading primitives definitions for both POSIX and C11. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/nptl/libc-lock.h b/lib/libc/glibc/sysdeps/nptl/libc-lock.h index 61027be74c..84aa961549 100644 --- a/lib/libc/glibc/sysdeps/nptl/libc-lock.h +++ b/lib/libc/glibc/sysdeps/nptl/libc-lock.h @@ -1,5 +1,5 @@ /* libc-internal interface for mutex locks. NPTL version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/nptl/libc-lockP.h b/lib/libc/glibc/sysdeps/nptl/libc-lockP.h index 27169bdf4c..348999ca23 100644 --- a/lib/libc/glibc/sysdeps/nptl/libc-lockP.h +++ b/lib/libc/glibc/sysdeps/nptl/libc-lockP.h @@ -1,5 +1,5 @@ /* Private libc-internal interface for mutex locks. NPTL version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/nptl/pthread.h b/lib/libc/glibc/sysdeps/nptl/pthread.h index 7f65483542..1607fdf29a 100644 --- a/lib/libc/glibc/sysdeps/nptl/pthread.h +++ b/lib/libc/glibc/sysdeps/nptl/pthread.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/powerpc/powerpc32/crti.S b/lib/libc/glibc/sysdeps/powerpc/powerpc32/crti.S index 55247c13a1..6d0e17aa65 100644 --- a/lib/libc/glibc/sysdeps/powerpc/powerpc32/crti.S +++ b/lib/libc/glibc/sysdeps/powerpc/powerpc32/crti.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for PowerPC. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/powerpc/powerpc32/crtn.S b/lib/libc/glibc/sysdeps/powerpc/powerpc32/crtn.S index 735f42958d..2a59a6cebc 100644 --- a/lib/libc/glibc/sysdeps/powerpc/powerpc32/crtn.S +++ b/lib/libc/glibc/sysdeps/powerpc/powerpc32/crtn.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for PowerPC. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/powerpc/powerpc32/start.S b/lib/libc/glibc/sysdeps/powerpc/powerpc32/start.S index 644f6f530c..9f7ee4bcfa 100644 --- a/lib/libc/glibc/sysdeps/powerpc/powerpc32/start.S +++ b/lib/libc/glibc/sysdeps/powerpc/powerpc32/start.S @@ -1,5 +1,5 @@ /* Startup code for programs linked with GNU libc. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/powerpc/powerpc32/symbol-hacks.h b/lib/libc/glibc/sysdeps/powerpc/powerpc32/symbol-hacks.h index d34699233b..b554c859b0 100644 --- a/lib/libc/glibc/sysdeps/powerpc/powerpc32/symbol-hacks.h +++ b/lib/libc/glibc/sysdeps/powerpc/powerpc32/symbol-hacks.h @@ -1,5 +1,5 @@ /* Hacks needed for symbol manipulation. powerpc version. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/powerpc/powerpc32/sysdep.h b/lib/libc/glibc/sysdeps/powerpc/powerpc32/sysdep.h index 095a726765..62de4ca2e5 100644 --- a/lib/libc/glibc/sysdeps/powerpc/powerpc32/sysdep.h +++ b/lib/libc/glibc/sysdeps/powerpc/powerpc32/sysdep.h @@ -1,5 +1,5 @@ /* Assembly macros for 32-bit PowerPC. - Copyright (C) 1999-2023 Free Software Foundation, Inc. + Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/powerpc/powerpc64/crti.S b/lib/libc/glibc/sysdeps/powerpc/powerpc64/crti.S index 948e1a026e..71bdddfb3b 100644 --- a/lib/libc/glibc/sysdeps/powerpc/powerpc64/crti.S +++ b/lib/libc/glibc/sysdeps/powerpc/powerpc64/crti.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for PowerPC64. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/powerpc/powerpc64/crtn.S b/lib/libc/glibc/sysdeps/powerpc/powerpc64/crtn.S index 11f837be43..4e91231f2c 100644 --- a/lib/libc/glibc/sysdeps/powerpc/powerpc64/crtn.S +++ b/lib/libc/glibc/sysdeps/powerpc/powerpc64/crtn.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for PowerPC64. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/powerpc/powerpc64/dl-dtprocnum.h b/lib/libc/glibc/sysdeps/powerpc/powerpc64/dl-dtprocnum.h index 427479d86c..1bca0f7197 100644 --- a/lib/libc/glibc/sysdeps/powerpc/powerpc64/dl-dtprocnum.h +++ b/lib/libc/glibc/sysdeps/powerpc/powerpc64/dl-dtprocnum.h @@ -1,5 +1,5 @@ /* Configuration of lookup functions. PowerPC64 version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/powerpc/powerpc64/start.S b/lib/libc/glibc/sysdeps/powerpc/powerpc64/start.S index f86d400f4c..564374bc5a 100644 --- a/lib/libc/glibc/sysdeps/powerpc/powerpc64/start.S +++ b/lib/libc/glibc/sysdeps/powerpc/powerpc64/start.S @@ -1,5 +1,5 @@ /* Startup code for programs linked with GNU libc. PowerPC64 version. - Copyright (C) 1998-2023 Free Software Foundation, Inc. + Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/powerpc/powerpc64/sysdep.h b/lib/libc/glibc/sysdeps/powerpc/powerpc64/sysdep.h index ce92d8b3d2..c363939e1a 100644 --- a/lib/libc/glibc/sysdeps/powerpc/powerpc64/sysdep.h +++ b/lib/libc/glibc/sysdeps/powerpc/powerpc64/sysdep.h @@ -1,5 +1,5 @@ /* Assembly macros for 64-bit PowerPC. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/powerpc/sysdep.h b/lib/libc/glibc/sysdeps/powerpc/sysdep.h index 1ac6cbfc01..1e48657b7a 100644 --- a/lib/libc/glibc/sysdeps/powerpc/sysdep.h +++ b/lib/libc/glibc/sysdeps/powerpc/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/riscv/nptl/bits/pthreadtypes-arch.h b/lib/libc/glibc/sysdeps/riscv/nptl/bits/pthreadtypes-arch.h index 1f0750e6df..d8fea559f6 100644 --- a/lib/libc/glibc/sysdeps/riscv/nptl/bits/pthreadtypes-arch.h +++ b/lib/libc/glibc/sysdeps/riscv/nptl/bits/pthreadtypes-arch.h @@ -1,5 +1,5 @@ /* Machine-specific pthread type layouts. RISC-V version. - Copyright (C) 2011-2023 Free Software Foundation, Inc. + Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/riscv/start.S b/lib/libc/glibc/sysdeps/riscv/start.S index 6dfe65273f..ede186ef23 100644 --- a/lib/libc/glibc/sysdeps/riscv/start.S +++ b/lib/libc/glibc/sysdeps/riscv/start.S @@ -1,5 +1,5 @@ /* Startup code compliant to the ELF RISC-V ABI. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -50,7 +50,13 @@ ENTRY (ENTRY_POINT) call load_gp mv a5, a0 /* rtld_fini. */ /* main may be in a shared library. */ +#if defined PIC && !defined SHARED + /* Avoid relocation in static PIE since _start is called before it + is relocated. */ + lla a0, __wrap_main +#else la a0, main +#endif REG_L a1, 0(sp) /* argc. */ addi a2, sp, SZREG /* argv. */ andi sp, sp, ALMASK /* Align stack. */ @@ -62,6 +68,11 @@ ENTRY (ENTRY_POINT) ebreak END (ENTRY_POINT) +#if defined PIC && !defined SHARED +__wrap_main: + tail main@plt +#endif + /* Dynamic links need the global pointer to be initialized prior to calling any shared library's initializers, so we use preinit_array to load it. This doesn't cut it for static links, though, since the global pointer diff --git a/lib/libc/glibc/sysdeps/s390/s390-32/crti.S b/lib/libc/glibc/sysdeps/s390/s390-32/crti.S index 429c207076..47c5cb8781 100644 --- a/lib/libc/glibc/sysdeps/s390/s390-32/crti.S +++ b/lib/libc/glibc/sysdeps/s390/s390-32/crti.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for S/390. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/s390/s390-32/crtn.S b/lib/libc/glibc/sysdeps/s390/s390-32/crtn.S index d5f29fdfed..911f35b586 100644 --- a/lib/libc/glibc/sysdeps/s390/s390-32/crtn.S +++ b/lib/libc/glibc/sysdeps/s390/s390-32/crtn.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for S/390. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/s390/s390-32/start.S b/lib/libc/glibc/sysdeps/s390/s390-32/start.S index 23166f6226..24f3d85d5c 100644 --- a/lib/libc/glibc/sysdeps/s390/s390-32/start.S +++ b/lib/libc/glibc/sysdeps/s390/s390-32/start.S @@ -1,5 +1,5 @@ /* Startup code compliant to the ELF s390 ABI. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/s390/s390-32/symbol-hacks.h b/lib/libc/glibc/sysdeps/s390/s390-32/symbol-hacks.h index cd62fcbc02..79704cc5c8 100644 --- a/lib/libc/glibc/sysdeps/s390/s390-32/symbol-hacks.h +++ b/lib/libc/glibc/sysdeps/s390/s390-32/symbol-hacks.h @@ -1,5 +1,5 @@ /* Hacks needed for symbol manipulation. s390 version. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/s390/s390-32/sysdep.h b/lib/libc/glibc/sysdeps/s390/s390-32/sysdep.h index 0ecb3bdae1..afd93bef9e 100644 --- a/lib/libc/glibc/sysdeps/s390/s390-32/sysdep.h +++ b/lib/libc/glibc/sysdeps/s390/s390-32/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for s390. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/s390/s390-64/crti.S b/lib/libc/glibc/sysdeps/s390/s390-64/crti.S index 11ab75e8d9..81ebb0454d 100644 --- a/lib/libc/glibc/sysdeps/s390/s390-64/crti.S +++ b/lib/libc/glibc/sysdeps/s390/s390-64/crti.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for 64 bit S/390. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -85,7 +85,7 @@ _init: .type _fini,@function _fini: stmg %r6,%r15,48(%r15) - lgr %r1,%r15 + lg %r1,120(%r15) aghi %r15,-160 stg %r1,0(%r15) larl %r12,_GLOBAL_OFFSET_TABLE_ diff --git a/lib/libc/glibc/sysdeps/s390/s390-64/crtn.S b/lib/libc/glibc/sysdeps/s390/s390-64/crtn.S index 0eabcb346c..9598f9e875 100644 --- a/lib/libc/glibc/sysdeps/s390/s390-64/crtn.S +++ b/lib/libc/glibc/sysdeps/s390/s390-64/crtn.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for 64 bit S/390. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -37,13 +37,11 @@ corresponding to the prologues in crti.S. */ .section .init - .align 4 lg %r4,272(%r15) lmg %r6,%r15,208(%r15) br %r4 .section .fini - .align 4 lg %r4,272(%r15) lmg %r6,%r15,208(%r15) br %r4 diff --git a/lib/libc/glibc/sysdeps/s390/s390-64/start.S b/lib/libc/glibc/sysdeps/s390/s390-64/start.S index 61720c348b..59eeb7e998 100644 --- a/lib/libc/glibc/sysdeps/s390/s390-64/start.S +++ b/lib/libc/glibc/sysdeps/s390/s390-64/start.S @@ -1,5 +1,5 @@ /* Startup code compliant to the 64 bit S/390 ELF ABI. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/s390/s390-64/sysdep.h b/lib/libc/glibc/sysdeps/s390/s390-64/sysdep.h index 232580e1e0..f8abd2f3e3 100644 --- a/lib/libc/glibc/sysdeps/s390/s390-64/sysdep.h +++ b/lib/libc/glibc/sysdeps/s390/s390-64/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for 64 bit S/390. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/sh/crti.S b/lib/libc/glibc/sysdeps/sh/crti.S index 7ff0408be1..9d6f77afa9 100644 --- a/lib/libc/glibc/sysdeps/sh/crti.S +++ b/lib/libc/glibc/sysdeps/sh/crti.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for SH. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/sh/crtn.S b/lib/libc/glibc/sysdeps/sh/crtn.S index 8ce241b4d5..55ad6f7864 100644 --- a/lib/libc/glibc/sysdeps/sh/crtn.S +++ b/lib/libc/glibc/sysdeps/sh/crtn.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for SH. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/sh/start.S b/lib/libc/glibc/sysdeps/sh/start.S index 6578eb40ae..1baebe3093 100644 --- a/lib/libc/glibc/sysdeps/sh/start.S +++ b/lib/libc/glibc/sysdeps/sh/start.S @@ -1,5 +1,5 @@ /* Startup code for SH & ELF. - Copyright (C) 1999-2023 Free Software Foundation, Inc. + Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/sh/sysdep.h b/lib/libc/glibc/sysdeps/sh/sysdep.h index 003b05fa25..0c9e5626e9 100644 --- a/lib/libc/glibc/sysdeps/sh/sysdep.h +++ b/lib/libc/glibc/sysdeps/sh/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for SH. - Copyright (C) 1999-2023 Free Software Foundation, Inc. + Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/sparc/crti.S b/lib/libc/glibc/sysdeps/sparc/crti.S index 29c45c09cb..b3e73102f4 100644 --- a/lib/libc/glibc/sysdeps/sparc/crti.S +++ b/lib/libc/glibc/sysdeps/sparc/crti.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for sparc. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/sparc/crtn.S b/lib/libc/glibc/sysdeps/sparc/crtn.S index 065569a453..ea86c50f1b 100644 --- a/lib/libc/glibc/sysdeps/sparc/crtn.S +++ b/lib/libc/glibc/sysdeps/sparc/crtn.S @@ -1,5 +1,5 @@ /* Special .init and .fini section support for sparc. - Copyright (C) 1995-2023 Free Software Foundation, Inc. + Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/sparc/dl-dtprocnum.h b/lib/libc/glibc/sysdeps/sparc/dl-dtprocnum.h index 08ca311749..c09a9e37b0 100644 --- a/lib/libc/glibc/sysdeps/sparc/dl-dtprocnum.h +++ b/lib/libc/glibc/sysdeps/sparc/dl-dtprocnum.h @@ -1,5 +1,5 @@ /* Configuration of lookup functions. SPARC version. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/sparc/sparc32/start.S b/lib/libc/glibc/sysdeps/sparc/sparc32/start.S index a82cbf33c2..e919df8042 100644 --- a/lib/libc/glibc/sysdeps/sparc/sparc32/start.S +++ b/lib/libc/glibc/sysdeps/sparc/sparc32/start.S @@ -1,5 +1,5 @@ /* Startup code for elf32-sparc - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/sparc/sparc64/start.S b/lib/libc/glibc/sysdeps/sparc/sparc64/start.S index 158c4aa08c..a1527d2318 100644 --- a/lib/libc/glibc/sysdeps/sparc/sparc64/start.S +++ b/lib/libc/glibc/sysdeps/sparc/sparc64/start.S @@ -1,5 +1,5 @@ /* Startup code for elf64-sparc - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/sparc/sysdep.h b/lib/libc/glibc/sysdeps/sparc/sysdep.h index 687e626182..44a6952bff 100644 --- a/lib/libc/glibc/sysdeps/sparc/sysdep.h +++ b/lib/libc/glibc/sysdeps/sparc/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2011-2023 Free Software Foundation, Inc. +/* Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -76,6 +76,15 @@ C_LABEL(name) \ cfi_endproc; \ .size name, . - name +#define ENTRY_NOCFI(name) \ + .align 4; \ + .global C_SYMBOL_NAME(name); \ + .type name, @function; \ +C_LABEL(name) + +#define END_NOCFI(name) \ + .size name, . - name + #undef LOC #define LOC(name) .L##name diff --git a/lib/libc/glibc/sysdeps/unix/arm/sysdep.h b/lib/libc/glibc/sysdeps/unix/arm/sysdep.h index 225f6376ac..c0ab28a91b 100644 --- a/lib/libc/glibc/sysdeps/unix/arm/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/arm/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/i386/sysdep.h b/lib/libc/glibc/sysdeps/unix/i386/sysdep.h index f1fc188e98..fde1e5cfb2 100644 --- a/lib/libc/glibc/sysdeps/unix/i386/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/i386/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/mips/mips32/sysdep.h b/lib/libc/glibc/sysdeps/unix/mips/mips32/sysdep.h index 56cfd9f62a..c515b94540 100644 --- a/lib/libc/glibc/sysdeps/unix/mips/mips32/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/mips/mips32/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/mips/mips64/sysdep.h b/lib/libc/glibc/sysdeps/unix/mips/mips64/sysdep.h index 2b2502e02b..6565b84e3a 100644 --- a/lib/libc/glibc/sysdeps/unix/mips/mips64/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/mips/mips64/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/mips/sysdep.h b/lib/libc/glibc/sysdeps/unix/mips/sysdep.h index db7efd6289..d1e0460260 100644 --- a/lib/libc/glibc/sysdeps/unix/mips/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/mips/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/powerpc/sysdep.h b/lib/libc/glibc/sysdeps/unix/powerpc/sysdep.h index 0f255d3729..947efd8f89 100644 --- a/lib/libc/glibc/sysdeps/unix/powerpc/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/powerpc/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sh/sysdep.h b/lib/libc/glibc/sysdeps/unix/sh/sysdep.h index 8e618e5643..83f641d1d6 100644 --- a/lib/libc/glibc/sysdeps/unix/sh/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sh/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. +/* Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysdep.h index 1ba4de99db..a19e84165b 100644 --- a/lib/libc/glibc/sysdeps/unix/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/kernel-features.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/kernel-features.h index 3546f6de96..d99056df4c 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/kernel-features.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/kernel-features.h @@ -1,6 +1,6 @@ /* Set flags signalling availability of kernel features based on given kernel version number. AArch64 version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/sys/elf.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/sys/elf.h index 8b9f6e866a..c2a961833d 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/sys/elf.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/sys/elf.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/sysdep.h index e94d1703ad..bbbe35723c 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005-2023 Free Software Foundation, Inc. +/* Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/bits/typesizes.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/bits/typesizes.h index 457bbfe4a8..5da4ce20f8 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/bits/typesizes.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. Linux/Alpha version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/kernel-features.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/kernel-features.h index 3151e75449..e0233ead15 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/kernel-features.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/kernel-features.h @@ -1,6 +1,6 @@ /* Set flags signalling availability of kernel features based on given kernel version number. - Copyright (C) 2010-2023 Free Software Foundation, Inc. + Copyright (C) 2010-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -50,4 +50,8 @@ /* Alpha requires old sysvipc even being a 64-bit architecture. */ #undef __ASSUME_SYSVIPC_DEFAULT_IPC_64 +/* Alpha does not provide clone3. */ +#undef __ASSUME_CLONE3 +#define __ASSUME_CLONE3 0 + #endif /* _KERNEL_FEATURES_H */ diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/sysdep.h index d33eb72a32..3c880e046d 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/arc/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/arc/sysdep.h index 7f90d64124..60d5ef8629 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/arc/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/arc/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for ARC. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/arm/kernel-features.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/arm/kernel-features.h index 5c8f76630e..f17c2f9e68 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/arm/kernel-features.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/arm/kernel-features.h @@ -1,6 +1,6 @@ /* Set flags signalling availability of kernel features based on given kernel version number. - Copyright (C) 2006-2023 Free Software Foundation, Inc. + Copyright (C) 2006-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/arm/sys/elf.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/arm/sys/elf.h index 91e421529a..82ec0fec50 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/arm/sys/elf.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/arm/sys/elf.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/arm/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/arm/sysdep.h index 2f321881c8..7110e12ec5 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/arm/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/arm/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -362,6 +362,7 @@ __local_syscall_error: \ #define HAVE_CLOCK_GETTIME_VSYSCALL "__vdso_clock_gettime" #define HAVE_CLOCK_GETTIME64_VSYSCALL "__vdso_clock_gettime64" #define HAVE_GETTIMEOFDAY_VSYSCALL "__vdso_gettimeofday" +#define HAVE_CLONE3_WRAPPER 1 #define LOAD_ARGS_0() #define ASM_ARGS_0 diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/bits/stat.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/bits/stat.h index 3f53e2a1fb..fad5f43590 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/bits/stat.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/bits/stat.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/bits/timex.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/bits/timex.h index b5601eff2a..398d8094f2 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/bits/timex.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/bits/timex.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/csky/kernel_stat.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/csky/kernel_stat.h index 11e9b3f3de..d987a25c0c 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/csky/kernel_stat.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/csky/kernel_stat.h @@ -1,5 +1,5 @@ /* Internal definitions for stat functions. Linux/csky. - Copyright (C) 2011-2023 Free Software Foundation, Inc. + Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/csky/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/csky/sysdep.h index 0c5fc2748c..e632f3e0ca 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/csky/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/csky/sysdep.h @@ -1,5 +1,5 @@ /* Assembly macros for C-SKY. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/dl-sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/dl-sysdep.h index 0b5f064eba..36c09bb537 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/dl-sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/dl-sysdep.h @@ -1,5 +1,5 @@ /* System-specific settings for dynamic linker code. Linux version. - Copyright (C) 2005-2023 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstat.c b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstat.c index 252c4f2f98..fab87e7690 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstat.c +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstat.c @@ -1,5 +1,5 @@ /* Get file status. Linux version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstat64.c b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstat64.c index 124384e57f..cc9f695df9 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstat64.c +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstat64.c @@ -1,5 +1,5 @@ /* Get file status. Linux version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software 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,20 +19,56 @@ #define __fstat __redirect___fstat #define fstat __redirect_fstat #include +#undef __fstat +#undef fstat #include -#include -#include +#include #include int __fstat64_time64 (int fd, struct __stat64_t64 *buf) { +#if !FSTATAT_USE_STATX +# if XSTAT_IS_XSTAT64 + /* The __NR_stat macro is defined for all ABIs that also define + XSTAT_IS_STAT64, so to correctly identify alpha and sparc check + __NR_newfstatat (similar to what fstatat64 does). */ +# ifdef __NR_newfstatat + /* 64-bit kABI, e.g. aarch64, ia64, powerpc64*, s390x, riscv64, and + x86_64. */ + return INLINE_SYSCALL_CALL (fstat, fd, buf); +# elif defined __NR_fstat64 +# if STAT64_IS_KERNEL_STAT64 + /* 64-bit kABI outlier, e.g. alpha */ + return INLINE_SYSCALL_CALL (fstat64, fd, buf); +# else + /* 64-bit kABI outlier, e.g. sparc64. */ + struct kernel_stat64 kst64; + int r = INLINE_SYSCALL_CALL (fstat64, fd, &kst64); + if (r == 0) + __cp_stat64_kstat64 (buf, &kst64); + return r; +# endif /* STAT64_IS_KERNEL_STAT64 */ +# endif +# else /* XSTAT_IS_XSTAT64 */ + /* 64-bit kabi outlier, e.g. mips64 and mips64-n32. */ + struct kernel_stat kst; + int r = INLINE_SYSCALL_CALL (fstat, fd, &kst); + if (r == 0) + __cp_kstat_stat64_t64 (&kst, buf); + return r; +# endif +#else /* !FSTATAT_USE_STATX */ + /* All kABIs with non-LFS support and with old 32-bit time_t support + e.g. arm, csky, i386, hppa, m68k, microblaze, nios2, sh, powerpc32, + and sparc32. */ if (fd < 0) { __set_errno (EBADF); return -1; } return __fstatat64_time64 (fd, "", buf, AT_EMPTY_PATH); +#endif } #if __TIMESIZE != 64 hidden_def (__fstat64_time64) diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat.c b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat.c index 43d528d2e5..f587f6ee02 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat.c +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat.c @@ -1,5 +1,5 @@ /* Get file status. Linux version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -16,32 +16,11 @@ License along with the GNU C Library; if not, see . */ -#include #include #include #include -#include #if !XSTAT_IS_XSTAT64 - -static inline bool -in_time_t_range (__time64_t t) -{ - time_t s = t; - return s == t; -} - -static inline struct timespec -valid_timespec64_to_timespec (const struct __timespec64 ts64) -{ - struct timespec ts; - - ts.tv_sec = (time_t) ts64.tv_sec; - ts.tv_nsec = ts64.tv_nsec; - - return ts; -} - int __fstatat (int fd, const char *file, struct stat *buf, int flag) { diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c index e774f8952a..da496177c9 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c @@ -1,5 +1,5 @@ /* Get file status. Linux version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -18,22 +18,27 @@ #define __fstatat __redirect___fstatat #define fstatat __redirect_fstatat -#include #include #include #include -#include #include #include -#include -#include #include +#include -#if (__WORDSIZE == 32 \ - && (!defined __SYSCALL_WORDSIZE || __SYSCALL_WORDSIZE == 32)) \ - || defined STAT_HAS_TIME32 \ - || (!defined __NR_newfstatat && !defined __NR_fstatat64) -# define FSTATAT_USE_STATX 1 +#if __TIMESIZE == 64 \ + && (__WORDSIZE == 32 \ + && (!defined __SYSCALL_WORDSIZE || __SYSCALL_WORDSIZE == 32)) +/* Sanity check to avoid newer 32-bit ABI to support non-LFS calls. */ +_Static_assert (sizeof (__off_t) == sizeof (__off64_t), + "__blkcnt_t and __blkcnt64_t must match"); +_Static_assert (sizeof (__ino_t) == sizeof (__ino64_t), + "__blkcnt_t and __blkcnt64_t must match"); +_Static_assert (sizeof (__blkcnt_t) == sizeof (__blkcnt64_t), + "__blkcnt_t and __blkcnt64_t must match"); +#endif + +#if FSTATAT_USE_STATX static inline int fstatat64_time64_statx (int fd, const char *file, struct __stat64_t64 *buf, @@ -48,8 +53,8 @@ fstatat64_time64_statx (int fd, const char *file, struct __stat64_t64 *buf, return r; *buf = (struct __stat64_t64) { - .st_dev = gnu_dev_makedev (tmp.stx_dev_major, tmp.stx_dev_minor), - .st_rdev = gnu_dev_makedev (tmp.stx_rdev_major, tmp.stx_rdev_minor), + .st_dev = __gnu_dev_makedev (tmp.stx_dev_major, tmp.stx_dev_minor), + .st_rdev = __gnu_dev_makedev (tmp.stx_rdev_major, tmp.stx_rdev_minor), .st_ino = tmp.stx_ino, .st_mode = tmp.stx_mode, .st_nlink = tmp.stx_nlink, @@ -68,24 +73,11 @@ fstatat64_time64_statx (int fd, const char *file, struct __stat64_t64 *buf, return r; } -#else -# define FSTATAT_USE_STATX 0 #endif /* Only statx supports 64-bit timestamps for 32-bit architectures with __ASSUME_STATX, so there is no point in building the fallback. */ #if !FSTATAT_USE_STATX || (FSTATAT_USE_STATX && !defined __ASSUME_STATX) -static inline struct __timespec64 -valid_timespec_to_timespec64 (const struct timespec ts) -{ - struct __timespec64 ts64; - - ts64.tv_sec = ts.tv_sec; - ts64.tv_nsec = ts.tv_nsec; - - return ts64; -} - static inline int fstatat64_time64_stat (int fd, const char *file, struct __stat64_t64 *buf, int flag) @@ -94,7 +86,7 @@ fstatat64_time64_stat (int fd, const char *file, struct __stat64_t64 *buf, #if XSTAT_IS_XSTAT64 # ifdef __NR_newfstatat - /* 64-bit kABI, e.g. aarch64, ia64, powerpc64*, s390x, riscv64, and + /* 64-bit kABI, e.g. aarch64, powerpc64*, s390x, riscv64, and x86_64. */ r = INTERNAL_SYSCALL_CALL (newfstatat, fd, file, buf, flag); # elif defined __NR_fstatat64 diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/hppa/kernel-features.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/hppa/kernel-features.h index e9e8dc5c6e..c4f09a20ec 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/hppa/kernel-features.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/hppa/kernel-features.h @@ -1,6 +1,6 @@ /* Set flags signalling availability of kernel features based on given kernel version number. - Copyright (C) 2006-2023 Free Software Foundation, Inc. + Copyright (C) 2006-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/hppa/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/hppa/sysdep.h index c0c4ffe00d..ee82fbd364 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/hppa/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/hppa/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for PA-RISC. - Copyright (C) 1999-2023 Free Software Foundation, Inc. + Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/i386/dl-sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/i386/dl-sysdep.h index 01db7630c4..7c33130ac9 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/i386/dl-sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/i386/dl-sysdep.h @@ -1,5 +1,5 @@ /* System-specific settings for dynamic linker code. i386 version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/i386/kernel-features.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/i386/kernel-features.h index ed7efa3097..446acfce00 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/i386/kernel-features.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/i386/kernel-features.h @@ -1,6 +1,6 @@ /* Set flags signalling availability of kernel features based on given kernel version number. i386 version. - Copyright (C) 1999-2023 Free Software Foundation, Inc. + Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/i386/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/i386/sysdep.h index 87de7d640f..25852f894e 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/i386/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/i386/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -446,9 +446,4 @@ struct libc_do_syscall_args #endif /* __ASSEMBLER__ */ -/* Each shadow stack slot takes 4 bytes. Assuming that each stack - frame takes 128 bytes, this is used to compute shadow stack size - from stack size. */ -#define STACK_SIZE_TO_SHADOW_STACK_SIZE_SHIFT 5 - #endif /* linux/i386/sysdep.h */ diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/dl-sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/dl-sysdep.h deleted file mode 100644 index 3e4d5da820..0000000000 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/dl-sysdep.h +++ /dev/null @@ -1,51 +0,0 @@ -/* System-specific settings for dynamic linker code. IA-64 version. - Copyright (C) 2003-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef _LINUX_IA64_DL_SYSDEP_H -#define _LINUX_IA64_DL_SYSDEP_H 1 - -#include_next - -/* Traditionally system calls have been made using break 0x100000. A - second method was introduced which, if possible, will use the EPC - instruction. To signal the presence and where to find the code the - kernel passes an AT_SYSINFO_EHDR pointer in the auxiliary vector to - the application. */ -#define NEED_DL_SYSINFO 1 -#define USE_DL_SYSINFO 1 - -#ifndef __ASSEMBLER__ -/* Don't declare this as a function---we want it's entry-point, not - it's function descriptor... */ -extern int _dl_sysinfo_break attribute_hidden; -# define DL_SYSINFO_DEFAULT ((uintptr_t) &_dl_sysinfo_break) -# define DL_SYSINFO_IMPLEMENTATION \ - asm (".text\n\t" \ - ".hidden _dl_sysinfo_break\n\t" \ - ".proc _dl_sysinfo_break\n\t" \ - "_dl_sysinfo_break:\n\t" \ - ".prologue\n\t" \ - ".altrp b6\n\t" \ - ".body\n\t" \ - "break 0x100000;\n\t" \ - "br.ret.sptk.many b6;\n\t" \ - ".endp _dl_sysinfo_break\n\t" \ - ".previous"); -#endif - -#endif /* dl-sysdep.h */ diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/kernel-features.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/kernel-features.h deleted file mode 100644 index 98ebfb74bf..0000000000 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/kernel-features.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Set flags signalling availability of kernel features based on given - kernel version number. - Copyright (C) 2010-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library. If not, see - . */ - -#ifndef _KERNEL_FEATURES_H -#define _KERNEL_FEATURES_H 1 - -#include_next - -#define __ASSUME_RECV_SYSCALL 1 -#define __ASSUME_SEND_SYSCALL 1 -#define __ASSUME_ACCEPT4_SYSCALL 1 - -/* Support for statx was added in 5.1. */ -#if __LINUX_KERNEL_VERSION < 0x050100 -# undef __ASSUME_STATX -#endif - -#undef __ASSUME_CLONE_DEFAULT -#define __ASSUME_CLONE2 - -#endif /* _KERNEL_FEATURES_H */ diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/sysdep.h deleted file mode 100644 index 1d556945c1..0000000000 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/sysdep.h +++ /dev/null @@ -1,327 +0,0 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef _LINUX_IA64_SYSDEP_H -#define _LINUX_IA64_SYSDEP_H 1 - -#include -#include -#include -#include -#include -#include - -/* In order to get __set_errno() definition in INLINE_SYSCALL. */ -#ifndef __ASSEMBLER__ -#include -#endif - -/* As of GAS v2.4.90.0.7, including a ".align" directive inside a - function will cause bad unwind info to be emitted (GAS doesn't know - how to account for the padding introduced by the .align directive). - Turning on this macro will work around this bug by introducing the - necessary padding explicitly. */ -#define GAS_ALIGN_BREAKS_UNWIND_INFO - -/* 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 - -#ifndef IA64_USE_NEW_STUB -# if defined USE_DL_SYSINFO && IS_IN (libc) -# define IA64_USE_NEW_STUB 1 -# else -# define IA64_USE_NEW_STUB 0 -# endif -#endif -#if IA64_USE_NEW_STUB && !USE_DL_SYSINFO -# error IA64_USE_NEW_STUB needs USE_DL_SYSINFO -#endif - -#ifdef __ASSEMBLER__ - -#undef CALL_MCOUNT -#ifdef PROF -# define CALL_MCOUNT \ - .data; \ -1: data8 0; /* XXX fixme: use .xdata8 once labels work */ \ - .previous; \ - .prologue; \ - .save ar.pfs, r40; \ - alloc out0 = ar.pfs, 8, 0, 4, 0; \ - mov out1 = gp; \ - .save rp, out2; \ - mov out2 = rp; \ - .body; \ - ;; \ - addl out3 = @ltoff(1b), gp; \ - br.call.sptk.many rp = _mcount \ - ;; -#else -# define CALL_MCOUNT /* Do nothing. */ -#endif - -/* 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 %d0 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. */ - -/* We don't want the label for the error handler to be visible in the symbol - table when we define it here. */ -#undef SYSCALL_ERROR_LABEL -#define SYSCALL_ERROR_LABEL __syscall_error - -#undef PSEUDO -#define PSEUDO(name, syscall_name, args) \ - ENTRY(name) \ - DO_CALL (SYS_ify(syscall_name)); \ - cmp.eq p6,p0=-1,r10; \ -(p6) br.cond.spnt.few __syscall_error; - -#define DO_CALL_VIA_BREAK(num) \ - mov r15=num; \ - break __IA64_BREAK_SYSCALL - -#if IA64_USE_NEW_STUB -# ifdef SHARED -# define DO_CALL(num) \ - .prologue; \ - adds r2 = SYSINFO_OFFSET, r13;; \ - ld8 r2 = [r2]; \ - .save ar.pfs, r11; \ - mov r11 = ar.pfs;; \ - .body; \ - mov r15 = num; \ - mov b7 = r2; \ - br.call.sptk.many b6 = b7;; \ - .restore sp; \ - mov ar.pfs = r11; \ - .prologue; \ - .body -# else /* !SHARED */ -# define DO_CALL(num) \ - .prologue; \ - mov r15 = num; \ - movl r2 = _dl_sysinfo;; \ - ld8 r2 = [r2]; \ - .save ar.pfs, r11; \ - mov r11 = ar.pfs;; \ - .body; \ - mov b7 = r2; \ - br.call.sptk.many b6 = b7;; \ - .restore sp; \ - mov ar.pfs = r11; \ - .prologue; \ - .body -# endif -#else -# define DO_CALL(num) DO_CALL_VIA_BREAK(num) -#endif - -#undef PSEUDO_END -#define PSEUDO_END(name) .endp C_SYMBOL_NAME(name); - -#undef PSEUDO_NOERRNO -#define PSEUDO_NOERRNO(name, syscall_name, args) \ - ENTRY(name) \ - DO_CALL (SYS_ify(syscall_name)); - -#undef PSEUDO_END_NOERRNO -#define PSEUDO_END_NOERRNO(name) .endp C_SYMBOL_NAME(name); - -#undef PSEUDO_ERRVAL -#define PSEUDO_ERRVAL(name, syscall_name, args) \ - ENTRY(name) \ - DO_CALL (SYS_ify(syscall_name)); \ - cmp.eq p6,p0=-1,r10; \ -(p6) mov r10=r8; - - -#undef PSEUDO_END_ERRVAL -#define PSEUDO_END_ERRVAL(name) .endp C_SYMBOL_NAME(name); - -#undef END -#define END(name) \ - .size C_SYMBOL_NAME(name), . - C_SYMBOL_NAME(name) ; \ - .endp C_SYMBOL_NAME(name) - -#define ret br.ret.sptk.few b0 -#define ret_NOERRNO ret -#define ret_ERRVAL ret - -#else /* not __ASSEMBLER__ */ - -#undef HAVE_INTERNAL_BRK_ADDR_SYMBOL -#define HAVE_INTERNAL_BRK_ADDR_SYMBOL 1 - -#define BREAK_INSN_1(num) "break " #num ";;\n\t" -#define BREAK_INSN(num) BREAK_INSN_1(num) - -/* On IA-64 we have stacked registers for passing arguments. The - "out" registers end up being the called function's "in" - registers. - - Also, since we have plenty of registers we have two return values - from a syscall. r10 is set to -1 on error, whilst r8 contains the - (non-negative) errno on error or the return value on success. - */ - -#if IA64_USE_NEW_STUB - -# define INTERNAL_SYSCALL_NCS(name, nr, args...) \ -({ \ - LOAD_ARGS_##nr (args) \ - register long _r8 __asm ("r8"); \ - register long _r10 __asm ("r10"); \ - register long _r15 __asm ("r15") = name; \ - register void *_b7 __asm ("b7") = ((tcbhead_t *)__thread_self)->__private;\ - LOAD_REGS_##nr \ - /* \ - * Don't specify any unwind info here. We mark ar.pfs as \ - * clobbered. This will force the compiler to save ar.pfs \ - * somewhere and emit appropriate unwind info for that save. \ - */ \ - __asm __volatile ("br.call.sptk.many b6=%0;;\n" \ - : "=b"(_b7), "=r" (_r8), "=r" (_r10), "=r" (_r15) \ - ASM_OUTARGS_##nr \ - : "0" (_b7), "3" (_r15) ASM_ARGS_##nr \ - : "memory", "ar.pfs" ASM_CLOBBERS_##nr); \ - _r10 == -1 ? -_r8 : _r8; \ -}) - -#else /* !IA64_USE_NEW_STUB */ - -# define INTERNAL_SYSCALL_NCS(name, nr, args...) \ -({ \ - LOAD_ARGS_##nr (args) \ - register long _r8 asm ("r8"); \ - register long _r10 asm ("r10"); \ - register long _r15 asm ("r15") = name; \ - LOAD_REGS_##nr \ - __asm __volatile (BREAK_INSN (__IA64_BREAK_SYSCALL) \ - : "=r" (_r8), "=r" (_r10), "=r" (_r15) \ - ASM_OUTARGS_##nr \ - : "2" (_r15) ASM_ARGS_##nr \ - : "memory" ASM_CLOBBERS_##nr); \ - _r10 == -1 ? -_r8 : _r8; \ -}) - -#endif /* !IA64_USE_NEW_STUB */ - -#define INTERNAL_SYSCALL(name, nr, args...) \ - INTERNAL_SYSCALL_NCS (__NR_##name, nr, ##args) - -#define LOAD_ARGS_0() -#define LOAD_REGS_0 -#define LOAD_ARGS_1(a1) \ - long _arg1 = (long) (a1); \ - LOAD_ARGS_0 () -#define LOAD_REGS_1 \ - register long _out0 asm ("out0") = _arg1; \ - LOAD_REGS_0 -#define LOAD_ARGS_2(a1, a2) \ - long _arg2 = (long) (a2); \ - LOAD_ARGS_1 (a1) -#define LOAD_REGS_2 \ - register long _out1 asm ("out1") = _arg2; \ - LOAD_REGS_1 -#define LOAD_ARGS_3(a1, a2, a3) \ - long _arg3 = (long) (a3); \ - LOAD_ARGS_2 (a1, a2) -#define LOAD_REGS_3 \ - register long _out2 asm ("out2") = _arg3; \ - LOAD_REGS_2 -#define LOAD_ARGS_4(a1, a2, a3, a4) \ - long _arg4 = (long) (a4); \ - LOAD_ARGS_3 (a1, a2, a3) -#define LOAD_REGS_4 \ - register long _out3 asm ("out3") = _arg4; \ - LOAD_REGS_3 -#define LOAD_ARGS_5(a1, a2, a3, a4, a5) \ - long _arg5 = (long) (a5); \ - LOAD_ARGS_4 (a1, a2, a3, a4) -#define LOAD_REGS_5 \ - register long _out4 asm ("out4") = _arg5; \ - LOAD_REGS_4 -#define LOAD_ARGS_6(a1, a2, a3, a4, a5, a6) \ - long _arg6 = (long) (a6); \ - LOAD_ARGS_5 (a1, a2, a3, a4, a5) -#define LOAD_REGS_6 \ - register long _out5 asm ("out5") = _arg6; \ - LOAD_REGS_5 - -#define ASM_OUTARGS_0 -#define ASM_OUTARGS_1 ASM_OUTARGS_0, "=r" (_out0) -#define ASM_OUTARGS_2 ASM_OUTARGS_1, "=r" (_out1) -#define ASM_OUTARGS_3 ASM_OUTARGS_2, "=r" (_out2) -#define ASM_OUTARGS_4 ASM_OUTARGS_3, "=r" (_out3) -#define ASM_OUTARGS_5 ASM_OUTARGS_4, "=r" (_out4) -#define ASM_OUTARGS_6 ASM_OUTARGS_5, "=r" (_out5) - -#if IA64_USE_NEW_STUB -#define ASM_ARGS_0 -#define ASM_ARGS_1 ASM_ARGS_0, "4" (_out0) -#define ASM_ARGS_2 ASM_ARGS_1, "5" (_out1) -#define ASM_ARGS_3 ASM_ARGS_2, "6" (_out2) -#define ASM_ARGS_4 ASM_ARGS_3, "7" (_out3) -#define ASM_ARGS_5 ASM_ARGS_4, "8" (_out4) -#define ASM_ARGS_6 ASM_ARGS_5, "9" (_out5) -#else -#define ASM_ARGS_0 -#define ASM_ARGS_1 ASM_ARGS_0, "3" (_out0) -#define ASM_ARGS_2 ASM_ARGS_1, "4" (_out1) -#define ASM_ARGS_3 ASM_ARGS_2, "5" (_out2) -#define ASM_ARGS_4 ASM_ARGS_3, "6" (_out3) -#define ASM_ARGS_5 ASM_ARGS_4, "7" (_out4) -#define ASM_ARGS_6 ASM_ARGS_5, "8" (_out5) -#endif - -#define ASM_CLOBBERS_0 ASM_CLOBBERS_1, "out0" -#define ASM_CLOBBERS_1 ASM_CLOBBERS_2, "out1" -#define ASM_CLOBBERS_2 ASM_CLOBBERS_3, "out2" -#define ASM_CLOBBERS_3 ASM_CLOBBERS_4, "out3" -#define ASM_CLOBBERS_4 ASM_CLOBBERS_5, "out4" -#define ASM_CLOBBERS_5 ASM_CLOBBERS_6, "out5" -#define ASM_CLOBBERS_6_COMMON , "out6", "out7", \ - /* Non-stacked integer registers, minus r8, r10, r15. */ \ - "r2", "r3", "r9", "r11", "r13", "r14", "r16", "r17", "r18", \ - "r19", "r20", "r21", "r22", "r23", "r24", "r25", "r26", "r27", \ - "r28", "r29", "r30", "r31", \ - /* Predicate registers. */ \ - "p6", "p7", "p8", "p9", "p10", "p11", "p12", "p13", "p14", "p15", \ - /* Non-rotating fp registers. */ \ - "f6", "f7", "f8", "f9", "f10", "f11", "f12", "f13", "f14", "f15", \ - /* Branch registers. */ \ - "b6" - -#if IA64_USE_NEW_STUB -# define ASM_CLOBBERS_6 ASM_CLOBBERS_6_COMMON -#else -# define ASM_CLOBBERS_6 ASM_CLOBBERS_6_COMMON , "b7" -#endif - -#endif /* not __ASSEMBLER__ */ - -#endif /* linux/ia64/sysdep.h */ diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/include/sys/timex.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/include/sys/timex.h index 15b856560a..c4a0af486b 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/include/sys/timex.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/include/sys/timex.h @@ -1,5 +1,5 @@ /* Internal declarations for sys/timex.h. - Copyright (C) 2014-2023 Free Software Foundation, Inc. + Copyright (C) 2014-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/kernel-features.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/kernel-features.h index 07b440f4ee..a25cf07e9f 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/kernel-features.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/kernel-features.h @@ -1,6 +1,6 @@ /* Set flags signalling availability of kernel features based on given kernel version number. - Copyright (C) 1999-2023 Free Software Foundation, Inc. + Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -46,7 +46,7 @@ #define __ASSUME_STATFS64 1 /* pselect/ppoll were introduced just after 2.6.16-rc1. On x86_64 and - SH this appeared first in 2.6.19-rc1, on ia64 in 2.6.22-rc1. */ + SH this appeared first in 2.6.19-rc1. */ #define __ASSUME_PSELECT 1 /* Support for inter-process robust mutexes was added in 2.6.17 (but @@ -146,8 +146,6 @@ unsigned long tls) The fourth variant is intended to be used as the default for newer ports, - Also IA64 uses the third variant but with __NR_clone2 instead of - __NR_clone. The macros names to define the variant used for the architecture is similar to kernel: @@ -156,7 +154,6 @@ - __ASSUME_CLONE_BACKWARDS2: for variant 2 (s390). - __ASSUME_CLONE_BACKWARDS3: for variant 3 (microblaze). - __ASSUME_CLONE_DEFAULT: for variant 4. - - __ASSUME_CLONE2: for clone2 with variant 3 (ia64). */ #define __ASSUME_CLONE_DEFAULT 1 @@ -252,4 +249,12 @@ # define __ASSUME_CLONE3 0 #endif +/* The fchmodat2 system call was introduced across all architectures + in Linux 6.6. */ +#if __LINUX_KERNEL_VERSION >= 0x060600 +# define __ASSUME_FCHMODAT2 1 +#else +# define __ASSUME_FCHMODAT2 0 +#endif + #endif /* kernel-features.h */ diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/kernel_stat.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/kernel_stat.h index c182400b6e..b6cfc4a805 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/kernel_stat.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/kernel_stat.h @@ -1,5 +1,5 @@ /* Internal definitions for stat functions. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/lstat.c b/lib/libc/glibc/sysdeps/unix/sysv/linux/lstat.c index 535bf7807a..7d87fcf65d 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/lstat.c +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/lstat.c @@ -1,5 +1,5 @@ /* Get file status. Linux version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/lstat64.c b/lib/libc/glibc/sysdeps/unix/sysv/linux/lstat64.c index debc1699e7..cd09493c3a 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/lstat64.c +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/lstat64.c @@ -1,5 +1,5 @@ /* Get file status. - Copyright (C) 1996-2023 Free Software Foundation, Inc. + Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h index 1441440dcd..4f39f252d9 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2010-2023 Free Software Foundation, Inc. +/* Copyright (C) 2010-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/kernel-features.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/kernel-features.h index d0155783b7..82a34a85b2 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/kernel-features.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/kernel-features.h @@ -1,6 +1,6 @@ /* Set flags signalling availability of kernel features based on given kernel version number. - Copyright (C) 2008-2023 Free Software Foundation, Inc. + Copyright (C) 2008-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h index d6d2c33fa1..2560e915d7 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2010-2023 Free Software Foundation, Inc. +/* Copyright (C) 2010-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/sysdep.h index 037b049958..0e43b4ae51 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. +/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/kernel-features.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/kernel-features.h index 3d6270b633..69e322eabe 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/kernel-features.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/kernel-features.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2011-2023 Free Software Foundation, Inc. +/* Copyright (C) 2011-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/kernel_stat.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/kernel_stat.h index 31c1b25a05..c0a121fa01 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/kernel_stat.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/kernel_stat.h @@ -1,5 +1,5 @@ /* Definition of `struct stat' used in the kernel - Copyright (C) 2013-2023 Free Software Foundation, Inc. + Copyright (C) 2013-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/sysdep.h index afc77b0063..9c52923824 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2000-2023 Free Software Foundation, Inc. +/* Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/kernel-features.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/kernel-features.h index d0d1c9c52f..59771775f9 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/kernel-features.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/kernel-features.h @@ -1,6 +1,6 @@ /* Set flags signalling availability of kernel features based on given kernel version number. - Copyright (C) 1999-2023 Free Software Foundation, Inc. + Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips32/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips32/sysdep.h index 1318083195..1827caf595 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips32/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips32/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2000-2023 Free Software Foundation, Inc. +/* Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips64/kstat_cp.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips64/kstat_cp.h index dbadfd3379..fac8c0c9f2 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips64/kstat_cp.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips64/kstat_cp.h @@ -1,5 +1,5 @@ /* Struct stat/stat64 to stat/stat64 conversion for Linux. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips64/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips64/sysdep.h index d7ae60f596..0a1711dad2 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips64/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips64/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2000-2023 Free Software Foundation, Inc. +/* Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/sysdep.h index ff84a91b31..74ca3d67f7 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/mips/sysdep.h @@ -1,5 +1,5 @@ /* Syscall definitions, Linux MIPS generic version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -28,3 +28,5 @@ #endif #define HAVE_GETTIMEOFDAY_VSYSCALL "__vdso_gettimeofday" #define HAVE_CLOCK_GETRES_VSYSCALL "__vdso_clock_getres" + +#define HAVE_CLONE3_WRAPPER 1 diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/mknodat.c b/lib/libc/glibc/sysdeps/unix/sysv/linux/mknodat.c index 2e6b483688..8e350e2574 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/mknodat.c +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/mknodat.c @@ -1,5 +1,5 @@ /* Create a special or ordinary file. Linux version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -16,7 +16,6 @@ License along with the GNU C Library; if not, see . */ -#include #include #include #include diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/nios2/kernel_stat.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/nios2/kernel_stat.h index 77f01e891d..d92b5fe8b7 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/nios2/kernel_stat.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/nios2/kernel_stat.h @@ -1,5 +1,5 @@ /* Internal definitions for stat functions. Linux/nios2. - Copyright (C) 2021-2023 Free Software Foundation, Inc. + Copyright (C) 2021-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/nios2/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/nios2/sysdep.h index 582e76b17f..2ea9c3b67a 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/nios2/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/nios2/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for Nios II. - Copyright (C) 2000-2023 Free Software Foundation, Inc. + Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/kernel-features.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/kernel-features.h index e092d3bd24..9ddfe82105 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/kernel-features.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/kernel-features.h @@ -1,6 +1,6 @@ /* Set flags signalling availability of kernel features based on given kernel version number. PowerPC version. - Copyright (C) 1999-2023 Free Software Foundation, Inc. + Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h index 72b452bed0..6e2a5c2c6a 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h @@ -1,5 +1,5 @@ /* Definition of `struct stat' used in the kernel. - Copyright (C) 1997-2023 Free Software Foundation, Inc. + Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h index f22dec2926..41c4e0aca6 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/sysdep.h index 96a0edc38f..a69b7db338 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/sysdep.h @@ -1,5 +1,5 @@ /* Syscall definitions, Linux PowerPC generic version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/riscv/kernel-features.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/riscv/kernel-features.h index 2ce110528b..022be5195a 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/riscv/kernel-features.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/riscv/kernel-features.h @@ -1,6 +1,6 @@ /* Set flags signalling availability of kernel features based on given kernel version number. RISC-V version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. + Copyright (C) 2018-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/bits/typesizes.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/bits/typesizes.h index dc5c116d25..7451fa6357 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/bits/typesizes.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. Linux/s390 version. - Copyright (C) 2003-2023 Free Software Foundation, Inc. + Copyright (C) 2003-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/kernel-features.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/kernel-features.h index fb87a57a15..79363f9f5f 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/kernel-features.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/kernel-features.h @@ -1,6 +1,6 @@ /* Set flags signalling availability of kernel features based on given kernel version number. S/390 version. - Copyright (C) 1999-2023 Free Software Foundation, Inc. + Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h index 26d1a7c6d8..215b44ea8a 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2000-2023 Free Software Foundation, Inc. +/* Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h index 7230e97448..885ab81a4f 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for 64 bit S/390. - Copyright (C) 2001-2023 Free Software Foundation, Inc. + Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/sys/elf.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/sys/elf.h index 33f183a9a7..f49abfafea 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/sys/elf.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/sys/elf.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2000-2023 Free Software Foundation, Inc. +/* Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/sysdep.h index b2621630f0..9b3000ca62 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/s390/sysdep.h @@ -1,5 +1,5 @@ /* Syscall definitions, Linux s390 version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/sh/kernel-features.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/sh/kernel-features.h index 953fa8dff0..320faa6809 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/sh/kernel-features.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/sh/kernel-features.h @@ -1,6 +1,6 @@ /* Set flags signalling availability of kernel features based on given kernel version number. SH version. - Copyright (C) 1999-2023 Free Software Foundation, Inc. + Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -55,4 +55,8 @@ # undef __ASSUME_STATX #endif +/* sh does not provide clone3. */ +#undef __ASSUME_CLONE3 +#define __ASSUME_CLONE3 0 + #endif diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/sh/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/sh/sysdep.h index 73df0a52ea..a394a1e2cb 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/sh/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/sh/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. +/* Copyright (C) 1992-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/single-thread.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/single-thread.h index 9bbd988938..b651860fa5 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/single-thread.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/single-thread.h @@ -1,5 +1,5 @@ /* Single thread optimization, Linux version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. + Copyright (C) 2019-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/bits/typesizes.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/bits/typesizes.h index 051318e35c..9f3842a2f4 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/bits/typesizes.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. Linux/SPARC version. - Copyright (C) 2002-2023 Free Software Foundation, Inc. + Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/kernel-features.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/kernel-features.h index 98c938c16d..f7efbaece5 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/kernel-features.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/kernel-features.h @@ -1,6 +1,6 @@ /* Set flags signalling availability of kernel features based on given kernel version number. SPARC version. - Copyright (C) 1999-2023 Free Software Foundation, Inc. + Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -87,3 +87,7 @@ (INLINE_CLONE_SYSCALL). */ #undef __ASSUME_CLONE_DEFAULT #define __ASSUME_CLONE_BACKWARDS 1 + +/* sparc does not provide clone3. */ +#undef __ASSUME_CLONE3 +#define __ASSUME_CLONE3 0 diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h index 99a4941abf..d2d68f5312 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sparc64/kstat_cp.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sparc64/kstat_cp.h index 27968b26ad..2aff560d64 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sparc64/kstat_cp.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sparc64/kstat_cp.h @@ -1,5 +1,5 @@ /* Struct kernel_stat64 to stat64. Linux/SPARC version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h index dc59334df5..96047424e9 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. +/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sysdep.h index a4b5897802..dcabb57fe2 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2000-2023 Free Software Foundation, Inc. +/* Copyright (C) 2000-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/stat.c b/lib/libc/glibc/sysdeps/unix/sysv/linux/stat.c index 4271b85a7a..21364f6e39 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/stat.c +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/stat.c @@ -1,5 +1,5 @@ /* Get file status. Linux version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/stat64.c b/lib/libc/glibc/sysdeps/unix/sysv/linux/stat64.c index 17d69c34a4..4c8e175b7a 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/stat64.c +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/stat64.c @@ -1,5 +1,5 @@ /* Get file status. Linux version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/stat_t64_cp.c b/lib/libc/glibc/sysdeps/unix/sysv/linux/stat_t64_cp.c index 0d8e5ba11a..3a07b78dc7 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/stat_t64_cp.c +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/stat_t64_cp.c @@ -1,5 +1,5 @@ /* Struct stat/stat64 to stat/stat64 conversion for Linux. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/stat_t64_cp.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/stat_t64_cp.h index 7251fffaa3..176b99558f 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/stat_t64_cp.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/stat_t64_cp.h @@ -1,5 +1,5 @@ /* Copy to/from struct stat with and without 64-bit time_t support. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/struct_stat_time64.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/struct_stat_time64.h index 72ccf6aed4..52797dedaf 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/struct_stat_time64.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/struct_stat_time64.h @@ -1,5 +1,5 @@ /* Struct stat with 64-bit time support. - Copyright (C) 2020-2023 Free Software Foundation, Inc. + Copyright (C) 2020-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/sys/syscall.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/sys/syscall.h index 2ec1b96586..259d7a77cd 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/sys/syscall.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/sys/syscall.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/sys/timex.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/sys/timex.h index 1d17e57ea0..28ce022253 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/sys/timex.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/sys/timex.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. +/* Copyright (C) 1995-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/sysdep.h index cc975e9f3e..bf260a704e 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2015-2023 Free Software Foundation, Inc. +/* Copyright (C) 2015-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/x86/bits/typesizes.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/x86/bits/typesizes.h index 6b6ec0d288..f4e2ec29f0 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/x86/bits/typesizes.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/x86/bits/typesizes.h @@ -1,5 +1,5 @@ /* bits/typesizes.h -- underlying types for *_t. Linux/x86-64 version. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/x86/sys/elf.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/x86/sys/elf.h index 88efa3b6b2..b38d423945 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/x86/sys/elf.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/x86/sys/elf.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-2023 Free Software Foundation, Inc. +/* Copyright (C) 1998-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/kernel-features.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/kernel-features.h index 68322ff476..2681e73b8b 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/kernel-features.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/kernel-features.h @@ -1,6 +1,6 @@ /* Set flags signalling availability of kernel features based on given kernel version number. x86-64 version. - Copyright (C) 1999-2023 Free Software Foundation, Inc. + Copyright (C) 1999-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/sysdep.h index c350ee157a..a2b021bd86 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2023 Free Software Foundation, Inc. +/* Copyright (C) 2001-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/x32/sysdep.h b/lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/x32/sysdep.h index 60224afb14..f3f9c527c7 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/x32/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/x32/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2012-2023 Free Software Foundation, Inc. +/* Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/unix/x86_64/sysdep.h b/lib/libc/glibc/sysdeps/unix/x86_64/sysdep.h index 1b104ed0f6..6cbb4d867b 100644 --- a/lib/libc/glibc/sysdeps/unix/x86_64/sysdep.h +++ b/lib/libc/glibc/sysdeps/unix/x86_64/sysdep.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. +/* Copyright (C) 1991-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/wordsize-32/divdi3-symbol-hacks.h b/lib/libc/glibc/sysdeps/wordsize-32/divdi3-symbol-hacks.h index 0ccd15eb72..a876464a58 100644 --- a/lib/libc/glibc/sysdeps/wordsize-32/divdi3-symbol-hacks.h +++ b/lib/libc/glibc/sysdeps/wordsize-32/divdi3-symbol-hacks.h @@ -1,5 +1,5 @@ /* Hacks needed for divdi3 symbol manipulation. - Copyright (C) 2004-2023 Free Software Foundation, Inc. + Copyright (C) 2004-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/x86/nptl/bits/pthreadtypes-arch.h b/lib/libc/glibc/sysdeps/x86/nptl/bits/pthreadtypes-arch.h index 20b3854d8a..b23ff3b028 100644 --- a/lib/libc/glibc/sysdeps/x86/nptl/bits/pthreadtypes-arch.h +++ b/lib/libc/glibc/sysdeps/x86/nptl/bits/pthreadtypes-arch.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. +/* Copyright (C) 2002-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/libc/glibc/sysdeps/x86/sysdep.h b/lib/libc/glibc/sysdeps/x86/sysdep.h index 0b3483a77a..85d0a8c943 100644 --- a/lib/libc/glibc/sysdeps/x86/sysdep.h +++ b/lib/libc/glibc/sysdeps/x86/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for x86. - Copyright (C) 2017-2023 Free Software Foundation, Inc. + Copyright (C) 2017-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -21,33 +21,6 @@ #include -/* __CET__ is defined by GCC with Control-Flow Protection values: - -enum cf_protection_level -{ - CF_NONE = 0, - CF_BRANCH = 1 << 0, - CF_RETURN = 1 << 1, - CF_FULL = CF_BRANCH | CF_RETURN, - CF_SET = 1 << 2 -}; -*/ - -/* Set if CF_BRANCH (IBT) is enabled. */ -#define X86_FEATURE_1_IBT (1U << 0) -/* Set if CF_RETURN (SHSTK) is enabled. */ -#define X86_FEATURE_1_SHSTK (1U << 1) - -#ifdef __CET__ -# define CET_ENABLED 1 -# define IBT_ENABLED (__CET__ & X86_FEATURE_1_IBT) -# define SHSTK_ENABLED (__CET__ & X86_FEATURE_1_SHSTK) -#else -# define CET_ENABLED 0 -# define IBT_ENABLED 0 -# define SHSTK_ENABLED 0 -#endif - /* Offset for fxsave/xsave area used by _dl_runtime_resolve. Also need space to preserve RCX, RDX, RSI, RDI, R8, R9 and RAX. It must be aligned to 16 bytes for fxsave and 64 bytes for xsave. */ @@ -66,27 +39,10 @@ enum cf_protection_level /* Syntactic details of assembler. */ -#ifdef _CET_ENDBR -# define _CET_NOTRACK notrack -#else -# define _CET_ENDBR -# define _CET_NOTRACK -#endif - /* ELF uses byte-counts for .align, most others use log2 of count of bytes. */ #define ALIGNARG(log2) 1< -#ifdef __ASSEMBLER__ -# define LP_SIZE 8 +#include + +/* __CET__ is defined by GCC with Control-Flow Protection values: + +enum cf_protection_level +{ + CF_NONE = 0, + CF_BRANCH = 1 << 0, + CF_RETURN = 1 << 1, + CF_FULL = CF_BRANCH | CF_RETURN, + CF_SET = 1 << 2 +}; +*/ + +/* Set if CF_BRANCH (IBT) is enabled. */ +#define X86_FEATURE_1_IBT (1U << 0) +/* Set if CF_RETURN (SHSTK) is enabled. */ +#define X86_FEATURE_1_SHSTK (1U << 1) + +#ifdef __CET__ +# define CET_ENABLED 1 +# define SHSTK_ENABLED (__CET__ & X86_FEATURE_1_SHSTK) #else -# define LP_SIZE "8" +# define CET_ENABLED 0 +# define SHSTK_ENABLED 0 #endif #ifdef __ASSEMBLER__ /* Syntactic details of assembler. */ +#ifdef _CET_ENDBR +# define _CET_NOTRACK notrack +#else +# define _CET_ENDBR +# define _CET_NOTRACK +#endif + +/* Define an entry point visible from C. */ +#define ENTRY_P2ALIGN(name, alignment) \ + .globl C_SYMBOL_NAME(name); \ + .type C_SYMBOL_NAME(name),@function; \ + .align ALIGNARG(alignment); \ + C_LABEL(name) \ + cfi_startproc; \ + _CET_ENDBR; \ + CALL_MCOUNT + /* This macro is for setting proper CFI with DW_CFA_expression describing the register as saved relative to %rsp instead of relative to the CFA. Expression is DW_OP_drop, DW_OP_breg7 (%rsp is register 7), sleb128 offset diff --git a/lib/libc/glibc/sysdeps/x86_64/x32/sysdep.h b/lib/libc/glibc/sysdeps/x86_64/x32/sysdep.h index aafe54e663..4647ea4056 100644 --- a/lib/libc/glibc/sysdeps/x86_64/x32/sysdep.h +++ b/lib/libc/glibc/sysdeps/x86_64/x32/sysdep.h @@ -1,5 +1,5 @@ /* Assembler macros for x32. - Copyright (C) 2012-2023 Free Software Foundation, Inc. + Copyright (C) 2012-2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -17,11 +17,7 @@ . */ #include -#ifdef __ASSEMBLER__ -# define LP_SIZE 4 -#else -# define LP_SIZE "4" -#endif +#include #undef LP_OP #undef ASM_ADDR From 9e76385afcc341f7366c733b28efb88f8bdd33d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Motiejus=20Jak=C5=A1tys?= Date: Tue, 28 Mar 2023 20:30:06 +0300 Subject: [PATCH 15/23] glibc patch: add backwards compatibility for some symbols - `fcntl` was renamed to `fcntl64` in glibc 2.28 (see #9485) - `res_{,n}{search,query,querydomain}` became "their own" symbols since glibc 2.34: they were prefixed with `__` before. This PR makes it possible to use `fcntl` with glibc 2.27 or older and the `res_*` functions with glibc 2.33 or older. These patches will become redundant with universal-headers and can be dropped. But we have to do with what we have now. --- lib/libc/glibc/io/fcntl.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/libc/glibc/io/fcntl.h b/lib/libc/glibc/io/fcntl.h index 9cee0b5900..c44f8b6189 100644 --- a/lib/libc/glibc/io/fcntl.h +++ b/lib/libc/glibc/io/fcntl.h @@ -167,6 +167,10 @@ typedef __pid_t pid_t; effective IDs, not real IDs. */ #endif + +/* fcntl was a simple symbol until glibc 2.27 inclusive. glibc 2.28 onwards + * re-defines it to fcntl64 (via #define) if _FILE_OFFSET_BITS == 64. */ +#if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 28) || __GLIBC__ > 2 /* Do the file control operation described by CMD on FD. The remaining arguments are interpreted depending on CMD. @@ -197,6 +201,9 @@ extern int __fcntl_time64 (int __fd, int __request, ...) __THROW; # define fcntl __fcntl_time64 # endif #endif +#else /* glibc 2.27 or lower */ +extern int fcntl (int __fd, int __cmd, ...); +#endif /* Open FILE and return a new file descriptor for it, or -1 on error. OFLAG determines the type of access used. If O_CREAT or O_TMPFILE is set From 4c068c3be1e8501ba85d4b98f6b869474fc967df Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Fri, 13 Oct 2023 18:01:50 -0700 Subject: [PATCH 16/23] glibc patch: inline x86-lp_size.h I could have just included the file from upstream glibc, but it was too silly so I just inlined it. This patch could be dropped in a future glibc update if desired. If omitted it will cause easily solvable C compilation failures building glibc nonshared. --- lib/libc/glibc/sysdeps/x86_64/sysdep.h | 6 +++++- lib/libc/glibc/sysdeps/x86_64/x32/sysdep.h | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/lib/libc/glibc/sysdeps/x86_64/sysdep.h b/lib/libc/glibc/sysdeps/x86_64/sysdep.h index db6e36b2dd..ad90e8c8cc 100644 --- a/lib/libc/glibc/sysdeps/x86_64/sysdep.h +++ b/lib/libc/glibc/sysdeps/x86_64/sysdep.h @@ -20,7 +20,11 @@ #define _X86_64_SYSDEP_H 1 #include -#include +#ifdef __ASSEMBLER__ +# define LP_SIZE 8 +#else +# define LP_SIZE "8" +#endif /* __CET__ is defined by GCC with Control-Flow Protection values: diff --git a/lib/libc/glibc/sysdeps/x86_64/x32/sysdep.h b/lib/libc/glibc/sysdeps/x86_64/x32/sysdep.h index 4647ea4056..02036edd7d 100644 --- a/lib/libc/glibc/sysdeps/x86_64/x32/sysdep.h +++ b/lib/libc/glibc/sysdeps/x86_64/x32/sysdep.h @@ -17,7 +17,11 @@ . */ #include -#include +#ifdef __ASSEMBLER__ +# define LP_SIZE 4 +#else +# define LP_SIZE "4" +#endif #undef LP_OP #undef ASM_ADDR From eead70f2d6758e928f5fe96d7d3bffa24308dbb2 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Wed, 15 Dec 2021 22:15:31 -0700 Subject: [PATCH 17/23] glibc patch: make fstatat.c and fstatat64.c compile instead of importing every header file under the sun, I copied a couple inline functions into these files to make them work. --- .../glibc/sysdeps/unix/sysv/linux/fstatat.c | 20 +++++++++++++++++++ .../glibc/sysdeps/unix/sysv/linux/fstatat64.c | 15 ++++++++++++-- 2 files changed, 33 insertions(+), 2 deletions(-) diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat.c b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat.c index f587f6ee02..d4de52cc2d 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat.c +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat.c @@ -19,8 +19,28 @@ #include #include #include +#include #if !XSTAT_IS_XSTAT64 + +static inline bool +in_time_t_range (__time64_t t) +{ + time_t s = t; + return s == t; +} + +static inline struct timespec +valid_timespec64_to_timespec (const struct __timespec64 ts64) +{ + struct timespec ts; + + ts.tv_sec = (time_t) ts64.tv_sec; + ts.tv_nsec = ts64.tv_nsec; + + return ts; +} + int __fstatat (int fd, const char *file, struct stat *buf, int flag) { diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c index da496177c9..ad0ecb7715 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c @@ -53,8 +53,8 @@ fstatat64_time64_statx (int fd, const char *file, struct __stat64_t64 *buf, return r; *buf = (struct __stat64_t64) { - .st_dev = __gnu_dev_makedev (tmp.stx_dev_major, tmp.stx_dev_minor), - .st_rdev = __gnu_dev_makedev (tmp.stx_rdev_major, tmp.stx_rdev_minor), + .st_dev = gnu_dev_makedev (tmp.stx_dev_major, tmp.stx_dev_minor), + .st_rdev = gnu_dev_makedev (tmp.stx_rdev_major, tmp.stx_rdev_minor), .st_ino = tmp.stx_ino, .st_mode = tmp.stx_mode, .st_nlink = tmp.stx_nlink, @@ -78,6 +78,17 @@ fstatat64_time64_statx (int fd, const char *file, struct __stat64_t64 *buf, /* Only statx supports 64-bit timestamps for 32-bit architectures with __ASSUME_STATX, so there is no point in building the fallback. */ #if !FSTATAT_USE_STATX || (FSTATAT_USE_STATX && !defined __ASSUME_STATX) +static inline struct __timespec64 +valid_timespec_to_timespec64 (const struct timespec ts) +{ + struct __timespec64 ts64; + + ts64.tv_sec = ts.tv_sec; + ts64.tv_nsec = ts.tv_nsec; + + return ts64; +} + static inline int fstatat64_time64_stat (int fd, const char *file, struct __stat64_t64 *buf, int flag) From 090025c4576f8c58cf8e2040086b1804925265c2 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Thu, 16 Dec 2021 00:46:06 -0700 Subject: [PATCH 18/23] glibc patch: add missing includes for inttypes.h I don't know where glibc thinks uintptr_t is coming from, but here it is. --- lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat.c | 1 + lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c | 1 + lib/libc/glibc/sysdeps/unix/sysv/linux/mknodat.c | 1 + 3 files changed, 3 insertions(+) diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat.c b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat.c index d4de52cc2d..de6aa91d26 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat.c +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat.c @@ -16,6 +16,7 @@ License along with the GNU C Library; if not, see . */ +#include #include #include #include diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c index ad0ecb7715..5a44b44b99 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c @@ -18,6 +18,7 @@ #define __fstatat __redirect___fstatat #define fstatat __redirect_fstatat +#include #include #include #include diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/mknodat.c b/lib/libc/glibc/sysdeps/unix/sysv/linux/mknodat.c index 8e350e2574..74dad63fd9 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/mknodat.c +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/mknodat.c @@ -16,6 +16,7 @@ License along with the GNU C Library; if not, see . */ +#include #include #include #include From 82ec333f277535bb08d8a3856c8ab924f098fc6d Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Fri, 13 Oct 2023 19:31:57 -0700 Subject: [PATCH 19/23] glibc patch: don't check __LIBC macro This is the only place in all of glibc that this macro is referenced. What is it doing? Only preventing fstatat.c from knowing the type definition of `__time64_t`, apparently. Fixes compilation of fstatat.c on 32-bit x86. --- lib/libc/glibc/posix/bits/types.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libc/glibc/posix/bits/types.h b/lib/libc/glibc/posix/bits/types.h index 34e001ad68..905a7e6b22 100644 --- a/lib/libc/glibc/posix/bits/types.h +++ b/lib/libc/glibc/posix/bits/types.h @@ -217,7 +217,7 @@ typedef int __sig_atomic_t; /* Seconds since the Epoch, visible to user code when time_t is too narrow only for consistency with the old way of widening too-narrow types. User code should never use __time64_t. */ -#if __TIMESIZE == 64 && defined __LIBC +#if __TIMESIZE == 64 # define __time64_t __time_t #elif __TIMESIZE != 64 __STD_TYPE __TIME64_T_TYPE __time64_t; From fd8b50ca5caffb099686a7d8de5941ec339d43ca Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Wed, 5 Jun 2024 18:07:54 -0700 Subject: [PATCH 20/23] glibc patch: remove some static asserts from fstatat These are tripping on 32-bit x86 but are intended to prevent glibc itself from being built with a bad configuration. Zig is only using this file to create libc_nonshared.a, so it's not relevant. --- lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c index 5a44b44b99..f6f7f4bbfc 100644 --- a/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c +++ b/lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c @@ -27,18 +27,6 @@ #include #include -#if __TIMESIZE == 64 \ - && (__WORDSIZE == 32 \ - && (!defined __SYSCALL_WORDSIZE || __SYSCALL_WORDSIZE == 32)) -/* Sanity check to avoid newer 32-bit ABI to support non-LFS calls. */ -_Static_assert (sizeof (__off_t) == sizeof (__off64_t), - "__blkcnt_t and __blkcnt64_t must match"); -_Static_assert (sizeof (__ino_t) == sizeof (__ino64_t), - "__blkcnt_t and __blkcnt64_t must match"); -_Static_assert (sizeof (__blkcnt_t) == sizeof (__blkcnt64_t), - "__blkcnt_t and __blkcnt64_t must match"); -#endif - #if FSTATAT_USE_STATX static inline int From 5293bdfe636a619a460ca547cc9e4dfa254d7d42 Mon Sep 17 00:00:00 2001 From: Kang Seonghoon Date: Thu, 24 Aug 2023 18:26:27 +0900 Subject: [PATCH 21/23] glibc patch: get correct files compiled into libc_nonshared.a The scope of libc_nonshared.a was greatly changed in glibc 2.33 and 2.34, but only the change from 2.34 was reflected so far. Glibc 2.33 finally switched to versioned symbols for stat functions, meaning that libc_nonshared.a no longer contains them since 2.33. Relevant files were therefore reverted to 2.32 versions and renamed accordingly. This commit also removes errno.c, which was probably added to libc_nonshared.a based on a wrong assumption that glibc/include/errno.h requires glibc/csu/errno.c. In reality errno.h should refer to __libc_errno (not to be confused with the public __errno_location), which should be imported from libc.so. The inclusion of errno.c resulted in wrong compile options as well; this commit fixes them as well. --- lib/libc/glibc/io/fstat-2.32.c | 55 ++++++++++++++++++++++++++++++ lib/libc/glibc/io/fstat64-2.32.c | 52 ++++++++++++++++++++++++++++ lib/libc/glibc/io/fstatat-2.32.c | 52 ++++++++++++++++++++++++++++ lib/libc/glibc/io/fstatat64-2.32.c | 52 ++++++++++++++++++++++++++++ lib/libc/glibc/io/lstat-2.32.c | 55 ++++++++++++++++++++++++++++++ lib/libc/glibc/io/lstat64-2.32.c | 52 ++++++++++++++++++++++++++++ lib/libc/glibc/io/mknod-2.32.c | 55 ++++++++++++++++++++++++++++++ lib/libc/glibc/io/mknodat-2.32.c | 53 ++++++++++++++++++++++++++++ lib/libc/glibc/io/stat-2.32.c | 54 +++++++++++++++++++++++++++++ lib/libc/glibc/io/stat64-2.32.c | 52 ++++++++++++++++++++++++++++ 10 files changed, 532 insertions(+) create mode 100644 lib/libc/glibc/io/fstat-2.32.c create mode 100644 lib/libc/glibc/io/fstat64-2.32.c create mode 100644 lib/libc/glibc/io/fstatat-2.32.c create mode 100644 lib/libc/glibc/io/fstatat64-2.32.c create mode 100644 lib/libc/glibc/io/lstat-2.32.c create mode 100644 lib/libc/glibc/io/lstat64-2.32.c create mode 100644 lib/libc/glibc/io/mknod-2.32.c create mode 100644 lib/libc/glibc/io/mknodat-2.32.c create mode 100644 lib/libc/glibc/io/stat-2.32.c create mode 100644 lib/libc/glibc/io/stat64-2.32.c diff --git a/lib/libc/glibc/io/fstat-2.32.c b/lib/libc/glibc/io/fstat-2.32.c new file mode 100644 index 0000000000..6ce077dc4a --- /dev/null +++ b/lib/libc/glibc/io/fstat-2.32.c @@ -0,0 +1,55 @@ +/* Copyright (C) 1996-2020 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser 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, see + . */ + +#include + +/* This definition is only used if inlining fails for this function; see + the last page of . The real work is done by the `x' + function which is passed a version number argument. We arrange in the + makefile that when not inlined this function is always statically + linked; that way a dynamically-linked executable always encodes the + version number corresponding to the data structures it uses, so the `x' + functions in the shared library can adapt without needing to recompile + all callers. */ + +#undef fstat +#undef __fstat +int +attribute_hidden +__fstat (int fd, struct stat *buf) +{ + return __fxstat (_STAT_VER, fd, buf); +} + +weak_hidden_alias (__fstat, fstat) diff --git a/lib/libc/glibc/io/fstat64-2.32.c b/lib/libc/glibc/io/fstat64-2.32.c new file mode 100644 index 0000000000..c4dd3acd60 --- /dev/null +++ b/lib/libc/glibc/io/fstat64-2.32.c @@ -0,0 +1,52 @@ +/* Copyright (C) 1996-2020 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser 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, see + . */ + +#include + +/* This definition is only used if inlining fails for this function; see + the last page of . The real work is done by the `x' + function which is passed a version number argument. We arrange in the + makefile that when not inlined this function is always statically + linked; that way a dynamically-linked executable always encodes the + version number corresponding to the data structures it uses, so the `x' + functions in the shared library can adapt without needing to recompile + all callers. */ + +#undef fstat64 +int +attribute_hidden +fstat64 (int fd, struct stat64 *buf) +{ + return __fxstat64 (_STAT_VER, fd, buf); +} diff --git a/lib/libc/glibc/io/fstatat-2.32.c b/lib/libc/glibc/io/fstatat-2.32.c new file mode 100644 index 0000000000..edc773487a --- /dev/null +++ b/lib/libc/glibc/io/fstatat-2.32.c @@ -0,0 +1,52 @@ +/* Copyright (C) 2005-2020 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser 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, see + . */ + +#include + +/* This definition is only used if inlining fails for this function; see + the last page of . The real work is done by the `x' + function which is passed a version number argument. We arrange in the + makefile that when not inlined this function is always statically + linked; that way a dynamically-linked executable always encodes the + version number corresponding to the data structures it uses, so the `x' + functions in the shared library can adapt without needing to recompile + all callers. */ + +#undef fstatat +int +attribute_hidden +fstatat (int fd, const char *file, struct stat *buf, int flag) +{ + return __fxstatat (_STAT_VER, fd, file, buf, flag); +} diff --git a/lib/libc/glibc/io/fstatat64-2.32.c b/lib/libc/glibc/io/fstatat64-2.32.c new file mode 100644 index 0000000000..b57133bd90 --- /dev/null +++ b/lib/libc/glibc/io/fstatat64-2.32.c @@ -0,0 +1,52 @@ +/* Copyright (C) 2005-2020 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser 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, see + . */ + +#include + +/* This definition is only used if inlining fails for this function; see + the last page of . The real work is done by the `x' + function which is passed a version number argument. We arrange in the + makefile that when not inlined this function is always statically + linked; that way a dynamically-linked executable always encodes the + version number corresponding to the data structures it uses, so the `x' + functions in the shared library can adapt without needing to recompile + all callers. */ + +#undef fstatat64 +int +attribute_hidden +fstatat64 (int fd, const char *file, struct stat64 *buf, int flag) +{ + return __fxstatat64 (_STAT_VER, fd, file, buf, flag); +} diff --git a/lib/libc/glibc/io/lstat-2.32.c b/lib/libc/glibc/io/lstat-2.32.c new file mode 100644 index 0000000000..7134741106 --- /dev/null +++ b/lib/libc/glibc/io/lstat-2.32.c @@ -0,0 +1,55 @@ +/* Copyright (C) 1996-2020 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser 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, see + . */ + +#include + +/* This definition is only used if inlining fails for this function; see + the last page of . The real work is done by the `x' + function which is passed a version number argument. We arrange in the + makefile that when not inlined this function is always statically + linked; that way a dynamically-linked executable always encodes the + version number corresponding to the data structures it uses, so the `x' + functions in the shared library can adapt without needing to recompile + all callers. */ + +#undef lstat +#undef __lstat +int +attribute_hidden +__lstat (const char *file, struct stat *buf) +{ + return __lxstat (_STAT_VER, file, buf); +} + +weak_hidden_alias (__lstat, lstat) diff --git a/lib/libc/glibc/io/lstat64-2.32.c b/lib/libc/glibc/io/lstat64-2.32.c new file mode 100644 index 0000000000..a890da71a8 --- /dev/null +++ b/lib/libc/glibc/io/lstat64-2.32.c @@ -0,0 +1,52 @@ +/* Copyright (C) 1996-2020 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser 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, see + . */ + +#include + +/* This definition is only used if inlining fails for this function; see + the last page of . The real work is done by the `x' + function which is passed a version number argument. We arrange in the + makefile that when not inlined this function is always statically + linked; that way a dynamically-linked executable always encodes the + version number corresponding to the data structures it uses, so the `x' + functions in the shared library can adapt without needing to recompile + all callers. */ + +#undef lstat64 +int +attribute_hidden +lstat64 (const char *file, struct stat64 *buf) +{ + return __lxstat64 (_STAT_VER, file, buf); +} diff --git a/lib/libc/glibc/io/mknod-2.32.c b/lib/libc/glibc/io/mknod-2.32.c new file mode 100644 index 0000000000..ac96829230 --- /dev/null +++ b/lib/libc/glibc/io/mknod-2.32.c @@ -0,0 +1,55 @@ +/* Copyright (C) 1995-2020 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser 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, see + . */ + + +#include +#include + +/* This definition is only used if inlining fails for this function; see + the last page of . The real work is done by the `x' + function which is passed a version number argument. We arrange in the + makefile that when not inlined this function is always statically + linked; that way a dynamically-linked executable always encodes the + version number corresponding to the data structures it uses, so the `x' + functions in the shared library can adapt without needing to recompile + all callers. */ + +int +attribute_hidden +__mknod (const char *path, mode_t mode, dev_t dev) +{ + return __xmknod (_MKNOD_VER, path, mode, &dev); +} + +weak_hidden_alias (__mknod, mknod) diff --git a/lib/libc/glibc/io/mknodat-2.32.c b/lib/libc/glibc/io/mknodat-2.32.c new file mode 100644 index 0000000000..65c9f1aa9c --- /dev/null +++ b/lib/libc/glibc/io/mknodat-2.32.c @@ -0,0 +1,53 @@ +/* Copyright (C) 1995-2020 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser 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, see + . */ + + +#include +#include + +/* This definition is only used if inlining fails for this function; see + the last page of . The real work is done by the `x' + function which is passed a version number argument. We arrange in the + makefile that when not inlined this function is always statically + linked; that way a dynamically-linked executable always encodes the + version number corresponding to the data structures it uses, so the `x' + functions in the shared library can adapt without needing to recompile + all callers. */ + +int +attribute_hidden +mknodat (int fd, const char *path, mode_t mode, dev_t dev) +{ + return __xmknodat (_MKNOD_VER, fd, path, mode, &dev); +} diff --git a/lib/libc/glibc/io/stat-2.32.c b/lib/libc/glibc/io/stat-2.32.c new file mode 100644 index 0000000000..8c3cd877c8 --- /dev/null +++ b/lib/libc/glibc/io/stat-2.32.c @@ -0,0 +1,54 @@ +/* Copyright (C) 1996-2020 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser 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, see + . */ + +#include + +/* This definition is only used if inlining fails for this function; see + the last page of . The real work is done by the `x' + function which is passed a version number argument. We arrange in the + makefile that when not inlined this function is always statically + linked; that way a dynamically-linked executable always encodes the + version number corresponding to the data structures it uses, so the `x' + functions in the shared library can adapt without needing to recompile + all callers. */ + +#undef stat +int +attribute_hidden +__stat (const char *file, struct stat *buf) +{ + return __xstat (_STAT_VER, file, buf); +} + +weak_hidden_alias (__stat, stat) diff --git a/lib/libc/glibc/io/stat64-2.32.c b/lib/libc/glibc/io/stat64-2.32.c new file mode 100644 index 0000000000..8b6b662f3a --- /dev/null +++ b/lib/libc/glibc/io/stat64-2.32.c @@ -0,0 +1,52 @@ +/* Copyright (C) 1996-2020 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser 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, see + . */ + +#include + +/* This definition is only used if inlining fails for this function; see + the last page of . The real work is done by the `x' + function which is passed a version number argument. We arrange in the + makefile that when not inlined this function is always statically + linked; that way a dynamically-linked executable always encodes the + version number corresponding to the data structures it uses, so the `x' + functions in the shared library can adapt without needing to recompile + all callers. */ + +#undef stat64 +int +attribute_hidden +stat64 (const char *file, struct stat64 *buf) +{ + return __xstat64 (_STAT_VER, file, buf); +} From d8fffee3fba4b730a1a97e3dd84d9adc3de0d586 Mon Sep 17 00:00:00 2001 From: Pat Tullmann Date: Sun, 22 Oct 2023 23:02:24 -0700 Subject: [PATCH 22/23] glibc: restore "weak_hidden_alias" macro for older glibc versions The fstat,lstat,stat,mknod stubs used to build older (before v2.33) glibc versions depend on the weak_hidden_alias macro. It was removed from the glibc libc-symbols header, so patch it back in for the older builds. --- lib/libc/glibc/include/libc-symbols.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/lib/libc/glibc/include/libc-symbols.h b/lib/libc/glibc/include/libc-symbols.h index e21bb599b3..446f52659a 100644 --- a/lib/libc/glibc/include/libc-symbols.h +++ b/lib/libc/glibc/include/libc-symbols.h @@ -155,6 +155,18 @@ extern __typeof (name) aliasname __attribute__ ((weak, alias (#name))) \ __attribute_copy__ (name); +/* Zig patch. weak_hidden_alias was removed from glibc v2.36 (v2.37?), Zig + needs it for the v2.32 and earlier {f,l,}stat wrappers, so only include + in this header for 2.32 and earlier. */ +#if (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 32) || __GLIBC__ < 2 +# define weak_hidden_alias(name, aliasname) \ + _weak_hidden_alias (name, aliasname) +# define _weak_hidden_alias(name, aliasname) \ + extern __typeof (name) aliasname \ + __attribute__ ((weak, alias (#name), __visibility__ ("hidden"))) \ + __attribute_copy__ (name); +#endif + /* Declare SYMBOL as weak undefined symbol (resolved to 0 if not defined). */ # define weak_extern(symbol) _weak_extern (weak symbol) # define _weak_extern(expr) _Pragma (#expr) From 1118ea2e341503eb1e45add3b0e833751e34d94e Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Wed, 5 Jun 2024 22:43:19 -0700 Subject: [PATCH 23/23] glibc: add min version annotation for riscv32 and loongarch64 --- lib/std/zig/target.zig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/std/zig/target.zig b/lib/std/zig/target.zig index 8ed28e1064..1f7ab95907 100644 --- a/lib/std/zig/target.zig +++ b/lib/std/zig/target.zig @@ -35,7 +35,7 @@ pub const available_libcs = [_]ArchOsAbi{ .{ .arch = .x86, .os = .linux, .abi = .gnu }, .{ .arch = .x86, .os = .linux, .abi = .musl }, .{ .arch = .x86, .os = .windows, .abi = .gnu }, - .{ .arch = .loongarch64, .os = .linux, .abi = .gnu }, + .{ .arch = .loongarch64, .os = .linux, .abi = .gnu, .glibc_min = .{ .major = 2, .minor = 36, .patch = 0 } }, .{ .arch = .loongarch64, .os = .linux, .abi = .musl }, .{ .arch = .m68k, .os = .linux, .abi = .gnu }, .{ .arch = .m68k, .os = .linux, .abi = .musl }, @@ -58,7 +58,7 @@ pub const available_libcs = [_]ArchOsAbi{ .{ .arch = .powerpc, .os = .linux, .abi = .gnueabi }, .{ .arch = .powerpc, .os = .linux, .abi = .gnueabihf }, .{ .arch = .powerpc, .os = .linux, .abi = .musl }, - .{ .arch = .riscv32, .os = .linux, .abi = .gnuilp32 }, + .{ .arch = .riscv32, .os = .linux, .abi = .gnuilp32, .glibc_min = .{ .major = 2, .minor = 27, .patch = 0 } }, .{ .arch = .riscv32, .os = .linux, .abi = .musl }, .{ .arch = .riscv64, .os = .linux, .abi = .gnu, .glibc_min = .{ .major = 2, .minor = 27, .patch = 0 } }, .{ .arch = .riscv64, .os = .linux, .abi = .musl },