fcoreutils 0.22.0

High-performance GNU coreutils replacement with SIMD and parallelism
Documentation
; linux.inc — Linux x86-64 syscall numbers and constants
; Shared across all fcoreutils assembly tools (canonical superset)

%ifndef LINUX_INC
%define LINUX_INC

; ── Syscall Numbers ──
%define SYS_READ            0
%define SYS_WRITE           1
%define SYS_OPEN            2
%define SYS_CLOSE           3
%define SYS_STAT            4
%define SYS_FSTAT           5
%define SYS_LSEEK           8
%define SYS_MMAP            9
%define SYS_MUNMAP         11
%define SYS_BRK            12
%define SYS_RT_SIGACTION   13
%define SYS_RT_SIGPROCMASK 14
%define SYS_IOCTL          16
%define SYS_ACCESS         21
%define SYS_PIPE           22
%define SYS_DUP2           33
%define SYS_NANOSLEEP      35
%define SYS_GETPID         39
%define SYS_SENDFILE       40
%define SYS_FORK           57
%define SYS_EXECVE         59
%define SYS_EXIT           60
%define SYS_UNAME          63
%define SYS_GETCWD         79
%define SYS_GETUID        102
%define SYS_GETGID        104
%define SYS_GETEUID       107
%define SYS_GETEGID       108
%define SYS_SYNC          162
%define SYS_OPENAT        257

; ── File Descriptors ──
%define STDIN               0
%define STDOUT              1
%define STDERR              2

; ── Open Flags ──
%define O_RDONLY            0
%define O_WRONLY            1
%define O_RDWR              2
%define O_CREAT          0x40
%define O_TRUNC         0x200
%define O_APPEND        0x400

; ── Signal Numbers ──
%define SIGPIPE            13
%define SIG_BLOCK           0
%define SIG_IGN             1

; ── Error Codes (negated) ──
%define EINTR              -4
%define ENOENT             -2
%define EACCES            -13
%define EPIPE             -32

; ── Buffer Sizes ──
%define BUF_SIZE        65536
%define ARG_BUF          4096
%define PATH_MAX         4096

; ── struct stat offsets (x86-64 Linux) ──
%define STAT_MODE          24
%define STAT_SIZE          48
%define STAT_STRUCT_SIZE  144

; ── File type masks ──
%define S_IFMT          0o170000
%define S_IFREG         0o100000

%endif