2022-03-20 15:01:14 +00:00
|
|
|
#ifndef COSMOPOLITAN_LIBC_INTRIN_DESCRIBEFLAGS_INTERNAL_H_
|
|
|
|
#define COSMOPOLITAN_LIBC_INTRIN_DESCRIBEFLAGS_INTERNAL_H_
|
2022-06-26 01:17:31 +00:00
|
|
|
#include "libc/mem/alloca.h"
|
2022-03-20 15:01:14 +00:00
|
|
|
COSMOPOLITAN_C_START_
|
|
|
|
|
|
|
|
struct thatispacked DescribeFlags {
|
|
|
|
unsigned flag;
|
|
|
|
const char *name;
|
|
|
|
};
|
|
|
|
|
2024-09-19 02:54:56 +00:00
|
|
|
const char *_DescribeFlags(char *, size_t, const struct DescribeFlags *, size_t,
|
|
|
|
const char *, unsigned) libcesque;
|
2022-04-13 05:11:00 +00:00
|
|
|
|
2024-08-25 01:10:22 +00:00
|
|
|
const char *_DescribeArchPrctlCode(char[12], int) libcesque;
|
|
|
|
const char *_DescribeCancelState(char[12], int, int *) libcesque;
|
|
|
|
const char *_DescribeClockName(char[32], int) libcesque;
|
|
|
|
const char *_DescribeControlKeyState(char[64], uint32_t) libcesque;
|
|
|
|
const char *_DescribeDirfd(char[12], int) libcesque;
|
|
|
|
const char *_DescribeDnotifyFlags(char[80], int) libcesque;
|
|
|
|
const char *_DescribeErrno(char[30], int) libcesque;
|
|
|
|
const char *_DescribeFcntlCmd(char[20], int) libcesque;
|
|
|
|
const char *_DescribeFlockType(char[12], int) libcesque;
|
|
|
|
const char *_DescribeFutexOp(char[64], int) libcesque;
|
|
|
|
const char *_DescribeHow(char[12], int) libcesque;
|
|
|
|
const char *_DescribeInOutInt64(char[23], ssize_t, int64_t *) libcesque;
|
|
|
|
const char *_DescribeItimer(char[12], int) libcesque;
|
|
|
|
const char *_DescribeMapFlags(char[64], int) libcesque;
|
|
|
|
const char *_DescribeMapping(char[8], int, int) libcesque;
|
|
|
|
const char *_DescribeMremapFlags(char[30], int) libcesque;
|
2024-09-19 02:54:56 +00:00
|
|
|
const char *_DescribeMsg(char[16], int) libcesque;
|
2024-08-25 01:10:22 +00:00
|
|
|
const char *_DescribeMsyncFlags(char[48], int) libcesque;
|
2025-01-05 05:11:53 +00:00
|
|
|
const char *_DescribeNtAllocationType(char[48], uint32_t);
|
2024-08-25 01:10:22 +00:00
|
|
|
const char *_DescribeNtConsoleInFlags(char[256], uint32_t) libcesque;
|
|
|
|
const char *_DescribeNtConsoleOutFlags(char[128], uint32_t) libcesque;
|
|
|
|
const char *_DescribeNtCreationDisposition(uint32_t) libcesque;
|
|
|
|
const char *_DescribeNtFileAccessFlags(char[512], uint32_t) libcesque;
|
|
|
|
const char *_DescribeNtFileFlagAttr(char[256], uint32_t) libcesque;
|
|
|
|
const char *_DescribeNtFileMapFlags(char[64], uint32_t) libcesque;
|
|
|
|
const char *_DescribeNtFileShareFlags(char[64], uint32_t) libcesque;
|
|
|
|
const char *_DescribeNtFiletypeFlags(char[64], uint32_t) libcesque;
|
|
|
|
const char *_DescribeNtLockFileFlags(char[64], uint32_t) libcesque;
|
|
|
|
const char *_DescribeNtMovFileInpFlags(char[256], uint32_t) libcesque;
|
|
|
|
const char *_DescribeNtPageFlags(char[64], uint32_t) libcesque;
|
|
|
|
const char *_DescribeNtPipeModeFlags(char[64], uint32_t) libcesque;
|
|
|
|
const char *_DescribeNtPipeOpenFlags(char[64], uint32_t) libcesque;
|
|
|
|
const char *_DescribeNtProcAccessFlags(char[256], uint32_t) libcesque;
|
|
|
|
const char *_DescribeNtStartFlags(char[128], uint32_t) libcesque;
|
|
|
|
const char *_DescribeNtSymlinkFlags(char[64], uint32_t) libcesque;
|
|
|
|
const char *_DescribeOpenFlags(char[128], int) libcesque;
|
|
|
|
const char *_DescribeOpenMode(char[15], int, int) libcesque;
|
|
|
|
const char *_DescribePersonalityFlags(char[128], int) libcesque;
|
|
|
|
const char *_DescribePollFlags(char[64], int) libcesque;
|
|
|
|
const char *_DescribeProtFlags(char[48], int) libcesque;
|
|
|
|
const char *_DescribePtrace(char[12], int) libcesque;
|
|
|
|
const char *_DescribePtraceEvent(char[32], int) libcesque;
|
|
|
|
const char *_DescribeRlimitName(char[20], int) libcesque;
|
|
|
|
const char *_DescribeSchedPolicy(char[48], int) libcesque;
|
|
|
|
const char *_DescribeSeccompOperation(int) libcesque;
|
|
|
|
const char *_DescribeSiCode(char[20], int, int) libcesque;
|
|
|
|
const char *_DescribeSigaltstackFlags(char[22], int) libcesque;
|
|
|
|
const char *_DescribeSleepFlags(char[16], int) libcesque;
|
|
|
|
const char *_DescribeSockLevel(char[12], int) libcesque;
|
|
|
|
const char *_DescribeSockOptname(char[32], int, int) libcesque;
|
|
|
|
const char *_DescribeSocketFamily(char[12], int) libcesque;
|
|
|
|
const char *_DescribeSocketProtocol(char[12], int) libcesque;
|
|
|
|
const char *_DescribeSocketType(char[64], int) libcesque;
|
|
|
|
const char *_DescribeStdioState(char[12], int) libcesque;
|
|
|
|
const char *_DescribeStringList(char[300], char *const[]) libcesque;
|
|
|
|
const char *_DescribeThreadCreateFlags(char[64], uint32_t) libcesque;
|
|
|
|
const char *_DescribeVirtualKeyCode(char[32], uint32_t) libcesque;
|
|
|
|
const char *_DescribeWhence(char[12], int) libcesque;
|
|
|
|
const char *_DescribeWhichPrio(char[12], int) libcesque;
|
2022-06-26 01:17:31 +00:00
|
|
|
|
2024-08-25 01:10:22 +00:00
|
|
|
#define DescribeCancelState(x, y) _DescribeCancelState(alloca(12), x, y)
|
|
|
|
#define DescribeClockName(x) _DescribeClockName(alloca(32), x)
|
|
|
|
#define DescribeControlKeyState(x) _DescribeControlKeyState(alloca(64), x)
|
|
|
|
#define DescribeDirfd(x) _DescribeDirfd(alloca(12), x)
|
|
|
|
#define DescribeDnotifyFlags(x) _DescribeDnotifyFlags(alloca(80), x)
|
|
|
|
#define DescribeErrno(x) _DescribeErrno(alloca(30), x)
|
|
|
|
#define DescribeFcntlCmd(x) _DescribeFcntlCmd(alloca(20), x)
|
|
|
|
#define DescribeFlockType(x) _DescribeFlockType(alloca(12), x)
|
|
|
|
#define DescribeFutexOp(x) _DescribeFutexOp(alloca(64), x)
|
|
|
|
#define DescribeHow(x) _DescribeHow(alloca(12), x)
|
|
|
|
#define DescribeInOutInt64(rc, x) _DescribeInOutInt64(alloca(23), rc, x)
|
|
|
|
#define DescribeItimer(x) _DescribeItimer(alloca(12), x)
|
|
|
|
#define DescribeMapFlags(x) _DescribeMapFlags(alloca(64), x)
|
|
|
|
#define DescribeMapping(x, y) _DescribeMapping(alloca(8), x, y)
|
|
|
|
#define DescribeMremapFlags(x) _DescribeMremapFlags(alloca(30), x)
|
2024-09-19 02:54:56 +00:00
|
|
|
#define DescribeMsg(x) _DescribeMsg(alloca(16), x)
|
2024-08-25 01:10:22 +00:00
|
|
|
#define DescribeMsyncFlags(x) _DescribeMsyncFlags(alloca(48), x)
|
2025-01-05 05:11:53 +00:00
|
|
|
#define DescribeNtAllocationType(x) _DescribeNtAllocationType(alloca(48), x)
|
2024-08-25 01:10:22 +00:00
|
|
|
#define DescribeNtConsoleInFlags(x) _DescribeNtConsoleInFlags(alloca(256), x)
|
|
|
|
#define DescribeNtConsoleOutFlags(x) _DescribeNtConsoleOutFlags(alloca(128), x)
|
|
|
|
#define DescribeNtFileAccessFlags(x) _DescribeNtFileAccessFlags(alloca(512), x)
|
|
|
|
#define DescribeNtFileFlagAttr(x) _DescribeNtFileFlagAttr(alloca(256), x)
|
|
|
|
#define DescribeNtFileMapFlags(x) _DescribeNtFileMapFlags(alloca(64), x)
|
|
|
|
#define DescribeNtFileShareFlags(x) _DescribeNtFileShareFlags(alloca(64), x)
|
|
|
|
#define DescribeNtFiletypeFlags(x) _DescribeNtFiletypeFlags(alloca(64), x)
|
|
|
|
#define DescribeNtLockFileFlags(x) _DescribeNtLockFileFlags(alloca(64), x)
|
|
|
|
#define DescribeNtMovFileInpFlags(x) _DescribeNtMovFileInpFlags(alloca(256), x)
|
|
|
|
#define DescribeNtPageFlags(x) _DescribeNtPageFlags(alloca(64), x)
|
|
|
|
#define DescribeNtPipeModeFlags(x) _DescribeNtPipeModeFlags(alloca(64), x)
|
|
|
|
#define DescribeNtPipeOpenFlags(x) _DescribeNtPipeOpenFlags(alloca(64), x)
|
|
|
|
#define DescribeNtProcAccessFlags(x) _DescribeNtProcAccessFlags(alloca(256), x)
|
|
|
|
#define DescribeNtStartFlags(x) _DescribeNtStartFlags(alloca(128), x)
|
|
|
|
#define DescribeNtSymlinkFlags(x) _DescribeNtSymlinkFlags(alloca(64), x)
|
|
|
|
#define DescribeOpenFlags(x) _DescribeOpenFlags(alloca(128), x)
|
|
|
|
#define DescribeOpenMode(x, y) _DescribeOpenMode(alloca(15), x, y)
|
|
|
|
#define DescribePersonalityFlags(p) _DescribePersonalityFlags(alloca(128), p)
|
|
|
|
#define DescribePollFlags(p) _DescribePollFlags(alloca(64), p)
|
|
|
|
#define DescribeProtFlags(x) _DescribeProtFlags(alloca(48), x)
|
|
|
|
#define DescribePtrace(i) _DescribePtrace(alloca(12), i)
|
|
|
|
#define DescribePtraceEvent(x) _DescribePtraceEvent(alloca(32), x)
|
|
|
|
#define DescribeRlimitName(rl) _DescribeRlimitName(alloca(20), rl)
|
|
|
|
#define DescribeSchedPolicy(x) _DescribeSchedPolicy(alloca(48), x)
|
|
|
|
#define DescribeSiCode(x, y) _DescribeSiCode(alloca(20), x, y)
|
|
|
|
#define DescribeSigaltstackFlags(x) _DescribeSigaltstackFlags(alloca(22), x)
|
|
|
|
#define DescribeSleepFlags(x) _DescribeSleepFlags(alloca(16), x)
|
|
|
|
#define DescribeSockLevel(x) _DescribeSockLevel(alloca(12), x)
|
|
|
|
#define DescribeSockOptname(x, y) _DescribeSockOptname(alloca(32), x, y)
|
|
|
|
#define DescribeSocketFamily(x) _DescribeSocketFamily(alloca(12), x)
|
|
|
|
#define DescribeSocketProtocol(x) _DescribeSocketProtocol(alloca(12), x)
|
|
|
|
#define DescribeSocketType(x) _DescribeSocketType(alloca(64), x)
|
|
|
|
#define DescribeStdioState(x) _DescribeStdioState(alloca(12), x)
|
|
|
|
#define DescribeStringList(x) _DescribeStringList(alloca(300), x)
|
|
|
|
#define DescribeThreadCreateFlags(x) _DescribeThreadCreateFlags(alloca(64), x)
|
|
|
|
#define DescribeVirtualKeyCode(x) _DescribeVirtualKeyCode(alloca(32), x)
|
|
|
|
#define DescribeWhence(x) _DescribeWhence(alloca(12), x)
|
|
|
|
#define DescribeWhichPrio(x) _DescribeWhichPrio(alloca(12), x)
|
2022-05-12 13:43:59 +00:00
|
|
|
|
2022-03-20 15:01:14 +00:00
|
|
|
COSMOPOLITAN_C_END_
|
|
|
|
#endif /* COSMOPOLITAN_LIBC_INTRIN_DESCRIBEFLAGS_INTERNAL_H_ */
|