/usr/share/cagefs-skeleton/usr/include/bits
/* Macros and inline functions to swap the order of bytes in integer values. Copyright (C) 1997-2021 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License 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 <https://www.gnu.org/licenses/>. */ #if !defined _BYTESWAP_H && !defined _NETINET_IN_H && !defined _ENDIAN_H # error "Never use <bits/byteswap.h> directly; include <byteswap.h> instead." #endif #ifndef _BITS_BYTESWAP_H #define _BITS_BYTESWAP_H 1 #include <features.h> #include <bits/types.h> /* Swap bytes in 16-bit value. */ #define __bswap_constant_16(x) \ ((__uint16_t) ((((x) >> 8) & 0xff) | (((x) & 0xff) << 8))) static __inline __uint16_t __bswap_16 (__uint16_t __bsx) { #if __GNUC_PREREQ (4, 8) return __builtin_bswap16 (__bsx); #else return __bswap_constant_16 (__bsx); #endif } /* Swap bytes in 32-bit value. */ #define __bswap_constant_32(x) \ ((((x) & 0xff000000u) >> 24) | (((x) & 0x00ff0000u) >> 8) \ | (((x) & 0x0000ff00u) << 8) | (((x) & 0x000000ffu) << 24)) static __inline __uint32_t __bswap_32 (__uint32_t __bsx) { #if __GNUC_PREREQ (4, 3) return __builtin_bswap32 (__bsx); #else return __bswap_constant_32 (__bsx); #endif } /* Swap bytes in 64-bit value. */ #define __bswap_constant_64(x) \ ((((x) & 0xff00000000000000ull) >> 56) \ | (((x) & 0x00ff000000000000ull) >> 40) \ | (((x) & 0x0000ff0000000000ull) >> 24) \ | (((x) & 0x000000ff00000000ull) >> 8) \ | (((x) & 0x00000000ff000000ull) << 8) \ | (((x) & 0x0000000000ff0000ull) << 24) \ | (((x) & 0x000000000000ff00ull) << 40) \ | (((x) & 0x00000000000000ffull) << 56)) __extension__ static __inline __uint64_t __bswap_64 (__uint64_t __bsx) { #if __GNUC_PREREQ (4, 3) return __builtin_bswap64 (__bsx); #else return __bswap_constant_64 (__bsx); #endif } #endif /* _BITS_BYTESWAP_H */
.
Edit
..
Edit
a.out.h
Edit
argp-ldbl.h
Edit
byteswap.h
Edit
cmathcalls.h
Edit
confname.h
Edit
cpu-set.h
Edit
dirent.h
Edit
dirent_ext.h
Edit
dlfcn.h
Edit
elfclass.h
Edit
endian.h
Edit
endianness.h
Edit
environments.h
Edit
epoll.h
Edit
err-ldbl.h
Edit
errno.h
Edit
error-ldbl.h
Edit
error.h
Edit
eventfd.h
Edit
fcntl-linux.h
Edit
fcntl.h
Edit
fcntl2.h
Edit
fenv.h
Edit
floatn-common.h
Edit
floatn.h
Edit
flt-eval-method.h
Edit
fp-fast.h
Edit
fp-logb.h
Edit
getopt_core.h
Edit
getopt_ext.h
Edit
getopt_posix.h
Edit
hwcap.h
Edit
in.h
Edit
indirect-return.h
Edit
inet-fortified-decl.h
Edit
inet-fortified.h
Edit
initspin.h
Edit
inotify.h
Edit
ioctl-types.h
Edit
ioctls.h
Edit
ipc-perm.h
Edit
ipc.h
Edit
ipctypes.h
Edit
iscanonical.h
Edit
libc-header-start.h
Edit
libm-simd-decl-stubs.h
Edit
link.h
Edit
link_lavcurrent.h
Edit
local_lim.h
Edit
locale.h
Edit
long-double.h
Edit
math-vector.h
Edit
mathcalls-helper-functions.h
Edit
mathcalls-narrow.h
Edit
mathcalls.h
Edit
mathdef.h
Edit
mman-linux.h
Edit
mman-map-flags-generic.h
Edit
mman-shared.h
Edit
mman.h
Edit
monetary-ldbl.h
Edit
mqueue.h
Edit
mqueue2.h
Edit
msq.h
Edit
netdb.h
Edit
param.h
Edit
platform
Edit
poll.h
Edit
poll2.h
Edit
posix1_lim.h
Edit
posix2_lim.h
Edit
posix_opt.h
Edit
printf-ldbl.h
Edit
procfs-extra.h
Edit
procfs-id.h
Edit
procfs-prregset.h
Edit
procfs.h
Edit
pthread_stack_min-dynamic.h
Edit
pthread_stack_min.h
Edit
pthreadtypes-arch.h
Edit
pthreadtypes.h
Edit
ptrace-shared.h
Edit
resource.h
Edit
rseq.h
Edit
sched.h
Edit
select.h
Edit
select2.h
Edit
sem.h
Edit
semaphore.h
Edit
setjmp.h
Edit
setjmp2.h
Edit
shm.h
Edit
shmlba.h
Edit
sigaction.h
Edit
sigcontext.h
Edit
sigevent-consts.h
Edit
siginfo-arch.h
Edit
siginfo-consts-arch.h
Edit
siginfo-consts.h
Edit
signal_ext.h
Edit
signalfd.h
Edit
signum-arch.h
Edit
signum-generic.h
Edit
sigstack.h
Edit
sigstksz.h
Edit
sigthread.h
Edit
sockaddr.h
Edit
socket-constants.h
Edit
socket.h
Edit
socket2.h
Edit
socket_type.h
Edit
ss_flags.h
Edit
stab.def
Edit
stat.h
Edit
statfs.h
Edit
statvfs.h
Edit
statx-generic.h
Edit
statx.h
Edit
stdint-intn.h
Edit
stdint-uintn.h
Edit
stdio-ldbl.h
Edit
stdio.h
Edit
stdio2-decl.h
Edit
stdio2.h
Edit
stdio_lim.h
Edit
stdlib-bsearch.h
Edit
stdlib-float.h
Edit
stdlib-ldbl.h
Edit
stdlib.h
Edit
string_fortified.h
Edit
strings_fortified.h
Edit
struct_mutex.h
Edit
struct_rwlock.h
Edit
struct_stat.h
Edit
struct_stat_time64_helper.h
Edit
syscall.h
Edit
syslog-ldbl.h
Edit
syslog-path.h
Edit
syslog.h
Edit
sysmacros.h
Edit
termios-baud.h
Edit
termios-c_cc.h
Edit
termios-c_cflag.h
Edit
termios-c_iflag.h
Edit
termios-c_lflag.h
Edit
termios-c_oflag.h
Edit
termios-misc.h
Edit
termios-struct.h
Edit
termios-tcflow.h
Edit
termios.h
Edit
thread-shared-types.h
Edit
time.h
Edit
time64.h
Edit
timerfd.h
Edit
timesize.h
Edit
timex.h
Edit
types
Edit
types.h
Edit
typesizes.h
Edit
uintn-identity.h
Edit
uio-ext.h
Edit
uio_lim.h
Edit
unistd.h
Edit
unistd_ext.h
Edit
utmp.h
Edit
utmpx.h
Edit
utsname.h
Edit
waitflags.h
Edit
waitstatus.h
Edit
wchar-ldbl.h
Edit
wchar.h
Edit
wchar2-decl.h
Edit
wchar2.h
Edit
wctype-wchar.h
Edit
wordsize.h
Edit
xopen_lim.h
Edit