mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-06-30 16:28:30 +00:00
Fix bugs and make improvements
- Get clone() working on FreeBSD - Increase some Python build quotas - Add more atomic builtins to chibicc - Fix ASAN poisoning of alloca() memory - Make MODE= mandatory link path tinier - Improve the examples folder a little bit - Start working on some more resource limits - Make the linenoise auto-complete UI as good as GNU readline - Update compile.com, avoiding AVX codegen on non-AVX systems - Make sure empty path to syscalls like opendir raises ENOENT - Correctly polyfill ENOENT vs. ENOTDIR on the New Technology - Port bestline's paredit features to //third_party/linenoise - Remove workarounds for RHEL 5.0 bugs that were fixed in 5.1
This commit is contained in:
parent
c3fb624647
commit
ae638c0850
181 changed files with 2994 additions and 1367 deletions
2
libc/sysv/calls/__sys_sigprocmask.s
Normal file
2
libc/sysv/calls/__sys_sigprocmask.s
Normal file
|
@ -0,0 +1,2 @@
|
|||
.include "o/libc/sysv/macros.internal.inc"
|
||||
.scall __sys_sigprocmask,0x125030154214900e,globl,hidden
|
|
@ -1,2 +0,0 @@
|
|||
.include "o/libc/sysv/macros.internal.inc"
|
||||
.scall clone,0xfffffffffffff038,globl
|
2
libc/sysv/calls/sys_clone.s
Normal file
2
libc/sysv/calls/sys_clone.s
Normal file
|
@ -0,0 +1,2 @@
|
|||
.include "o/libc/sysv/macros.internal.inc"
|
||||
.scall sys_clone,0x11fffffffffff038,globl,hidden
|
|
@ -1,2 +0,0 @@
|
|||
.include "o/libc/sysv/macros.internal.inc"
|
||||
.scall sys_sigprocmask,0x125030154214900e,globl,hidden
|
|
@ -171,9 +171,9 @@ syscon sig SIGINFO 0 29 29 29 29 0 # bsd consensus
|
|||
syscon sig SIGRTMAX 64 0 126 0 63 0
|
||||
syscon sig SIGRTMIN 32 0 65 0 33 0
|
||||
syscon sig SIGEMT 0 7 7 7 7 0 # not implemented in most community editions of system five; consider doing this using SIGUSR1 or SIGUSR2 instead
|
||||
syscon sig SIGPWR 30 30 30 30 32 30 # not implemented in most community editions of system five; consider doing this using SIGUSR1 or SIGUSR2 instead
|
||||
syscon compat SIGPOLL 29 23 23 23 23 29 # same as SIGIO
|
||||
syscon compat SIGIOT 6 6 6 6 6 6 # PDP-11 feature; same as SIGABRT
|
||||
syscon compat SIGPWR 30 30 30 30 32 30 # not implemented in most community editions of system five; consider doing this using SIGUSR1 or SIGUSR2 instead
|
||||
|
||||
# open() flags
|
||||
#
|
||||
|
@ -512,7 +512,7 @@ syscon rlimit RLIMIT_RSS 5 5 5 5 5 127 # max physical memory size
|
|||
syscon rlimit RLIMIT_NPROC 6 7 7 7 7 127 # max number of processes; see fork()→EAGAIN; bsd consensus
|
||||
syscon rlimit RLIMIT_NOFILE 7 8 8 8 8 127 # max number of open files; see accept()→EMFILE/ENFILE; bsd consensus
|
||||
syscon rlimit RLIMIT_MEMLOCK 8 6 6 6 6 127 # max locked-in-memory address space; bsd consensus
|
||||
syscon rlimit RLIMIT_AS 9 5 10 2 10 9 # max virtual memory size in bytes; this one actually works; fudged as RLIMIT_DATA on OpenBSD
|
||||
syscon rlimit RLIMIT_AS 9 5 10 2 10 0 # max virtual memory size in bytes; this one actually works; fudged as RLIMIT_DATA on OpenBSD
|
||||
syscon rlimit RLIMIT_LOCKS 10 127 127 127 127 127 # max flock() / fcntl() locks; bsd consensus
|
||||
syscon rlimit RLIMIT_SIGPENDING 11 127 127 127 127 127 # max sigqueue() can enqueue; bsd consensus
|
||||
syscon rlimit RLIMIT_MSGQUEUE 12 127 127 127 127 127 # meh posix message queues; bsd consensus
|
||||
|
@ -527,10 +527,10 @@ syscon compat RLIMIT_VMEM 9 5 10 127 10 127 # same as RLIMIT_AS
|
|||
# resource limit special values
|
||||
#
|
||||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||||
syscon rlim RLIM_NLIMITS 16 9 15 9 12 0 # no clue why we need it
|
||||
syscon rlim RLIM_INFINITY 0xffffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0
|
||||
syscon rlim RLIM_SAVED_CUR 0xffffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0
|
||||
syscon rlim RLIM_SAVED_MAX 0xffffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0
|
||||
syscon rlim RLIM_NLIMITS 16 9 15 9 12 1
|
||||
syscon rlim RLIM_INFINITY 0xffffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0xffffffffffffffff
|
||||
syscon rlim RLIM_SAVED_CUR 0xffffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0xffffffffffffffff
|
||||
syscon rlim RLIM_SAVED_MAX 0xffffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0xffffffffffffffff
|
||||
|
||||
# sigaction() codes
|
||||
#
|
||||
|
@ -2577,7 +2577,6 @@ syscon nr __NR_thr_create 0xfff 0xfff 0x01ae 0xfff 0xfff 0xfff
|
|||
syscon nr __NR_thr_exit 0xfff 0xfff 0x01af 0xfff 0xfff 0xfff
|
||||
syscon nr __NR_thr_kill 0xfff 0xfff 0x01b1 0xfff 0xfff 0xfff
|
||||
syscon nr __NR_thr_kill2 0xfff 0xfff 0x01e1 0xfff 0xfff 0xfff
|
||||
syscon nr __NR_thr_new 0xfff 0xfff 0x01c7 0xfff 0xfff 0xfff
|
||||
syscon nr __NR_thr_self 0xfff 0xfff 0x01b0 0xfff 0xfff 0xfff
|
||||
syscon nr __NR_thr_set_name 0xfff 0xfff 0x01d0 0xfff 0xfff 0xfff
|
||||
syscon nr __NR_thr_suspend 0xfff 0xfff 0x01ba 0xfff 0xfff 0xfff
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
#include "libc/sysv/consts/syscon.internal.h"
|
||||
.syscon rlimit,RLIMIT_AS,9,5,10,2,10,9
|
||||
.syscon rlimit,RLIMIT_AS,9,5,10,2,10,0
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
#include "libc/sysv/consts/syscon.internal.h"
|
||||
.syscon rlim,RLIM_INFINITY,0xffffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0
|
||||
.syscon rlim,RLIM_INFINITY,0xffffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0xffffffffffffffff
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
#include "libc/sysv/consts/syscon.internal.h"
|
||||
.syscon rlim,RLIM_NLIMITS,16,9,15,9,12,0
|
||||
.syscon rlim,RLIM_NLIMITS,16,9,15,9,12,1
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
#include "libc/sysv/consts/syscon.internal.h"
|
||||
.syscon rlim,RLIM_SAVED_CUR,0xffffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0
|
||||
.syscon rlim,RLIM_SAVED_CUR,0xffffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0xffffffffffffffff
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
#include "libc/sysv/consts/syscon.internal.h"
|
||||
.syscon rlim,RLIM_SAVED_MAX,0xffffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0
|
||||
.syscon rlim,RLIM_SAVED_MAX,0xffffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0x7fffffffffffffff,0xffffffffffffffff
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
#include "libc/sysv/consts/syscon.internal.h"
|
||||
.syscon compat,SIGPWR,30,30,30,30,32,30
|
||||
.syscon sig,SIGPWR,30,30,30,30,32,30
|
||||
|
|
|
@ -1,2 +0,0 @@
|
|||
#include "libc/sysv/consts/syscon.internal.h"
|
||||
.syscon nr,__NR_thr_new,0xfff,0xfff,0x01c7,0xfff,0xfff,0xfff
|
|
@ -697,7 +697,6 @@ extern const long __NR_thr_create;
|
|||
extern const long __NR_thr_exit;
|
||||
extern const long __NR_thr_kill;
|
||||
extern const long __NR_thr_kill2;
|
||||
extern const long __NR_thr_new;
|
||||
extern const long __NR_thr_self;
|
||||
extern const long __NR_thr_set_name;
|
||||
extern const long __NR_thr_suspend;
|
||||
|
@ -1467,7 +1466,6 @@ COSMOPOLITAN_C_END_
|
|||
#define __NR_thr_exit SYMBOLIC(__NR_thr_exit)
|
||||
#define __NR_thr_kill SYMBOLIC(__NR_thr_kill)
|
||||
#define __NR_thr_kill2 SYMBOLIC(__NR_thr_kill2)
|
||||
#define __NR_thr_new SYMBOLIC(__NR_thr_new)
|
||||
#define __NR_thr_self SYMBOLIC(__NR_thr_self)
|
||||
#define __NR_thr_set_name SYMBOLIC(__NR_thr_set_name)
|
||||
#define __NR_thr_suspend SYMBOLIC(__NR_thr_suspend)
|
||||
|
|
|
@ -47,9 +47,9 @@ scall sys_lseek 0x0c70c71de20c7008 globl hidden # netbsd+openbsd:evilpad
|
|||
scall __sys_mmap 0x0c50c51dd20c5009 globl hidden # netbsd+openbsd:pad
|
||||
scall sys_msync 0x115100041204101a globl hidden
|
||||
scall sys_mprotect 0x04a04a04a204a00a globl hidden
|
||||
scall __sys_munmap 0x049049049204090b globl hidden
|
||||
scall __sys_munmap 0x049049049204900b globl hidden
|
||||
scall sys_sigaction 0x15402e1a0202e00d globl hidden # rt_sigaction on Lunix; it's complicated on NetBSD
|
||||
scall sys_sigprocmask 0x125030154214900e globl hidden # a.k.a. rt_sigprocmask, openbsd:byvalue, a.k.a. pthread_sigmask
|
||||
scall __sys_sigprocmask 0x125030154214900e globl hidden # a.k.a. rt_sigprocmask, openbsd:byvalue, a.k.a. pthread_sigmask
|
||||
scall sys_ioctl 0x0360360362036010 globl hidden
|
||||
scall sys_pread 0x0ad0ad1db2099011 globl hidden # a.k.a. pread64; netbsd+openbsd:pad
|
||||
scall sys_pwrite 0x0ae0ae1dc209a012 globl hidden # a.k.a. pwrite64; netbsd+openbsd:pad
|
||||
|
@ -98,7 +98,7 @@ scall __sys_execve 0x03b03b03b203b03b globl hidden
|
|||
scall __sys_wait4 0x1c100b007200703d globl hidden
|
||||
scall sys_kill 0x02507a025202503e globl hidden # kill(pid, sig, 1) b/c xnu
|
||||
scall sys_killpg 0xffffff092fffffff globl hidden
|
||||
scall clone 0xfffffffffffff038 globl
|
||||
scall sys_clone 0x11fffffffffff038 globl hidden
|
||||
scall tkill 0xfffffffffffff0c8 globl
|
||||
scall futex 0xfff053fffffff0ca globl
|
||||
scall set_robust_list 0xfffffffffffff111 globl
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue