cosmopolitan/examples
Justine Tunney 69f4152f38 Always initialize thread local storage
We had previously not enabled TLS in MODE=tiny in order to keep the
smallest example programs (e.g. life.com) just 16kb in size. But it
was error prone doing that, so now we just always enable it because
this change uses hacks to ensure it won't increase life.com's size.

This change also fixes a bug on NetBSD, where signal handlers would
break thread local storage if SA_SIGINFO was being used. This looks
like it might be a bug in NetBSD, but it's got a simple workaround.
2022-07-19 00:21:46 -07:00
..
package Make build hermetic without shell scripts 2022-05-25 13:55:57 -07:00
pyapp Fix V=0 make mode 2022-06-21 01:32:31 -07:00
pylife Bump support up to FreeBSD 13 and NetBSD 9.2 2022-06-11 10:36:17 -07:00
auto-launch-gdb-on-crash.c Restart CI for New Technology and UBSAN hunting 2022-03-21 04:32:57 -07:00
auto-memory-safety-crash.c Make exciting improvements 2022-03-18 03:02:00 -07:00
auto-memory-safety-crash2.c Make exciting improvements 2022-03-18 03:02:00 -07:00
auto-memory-safety-crash3.c Make exciting improvements 2022-03-18 03:02:00 -07:00
breakpoint.c Make improvements 2022-04-29 00:42:47 -07:00
certapp.c Improve ZIP filesystem and change its prefix 2021-08-22 01:11:53 -07:00
check.c Make improvements 2022-05-12 06:45:36 -07:00
compress.c Add malloc logging tool 2022-05-26 23:19:22 -07:00
cosh.c Reduce makefile dependencies by 10% 2022-06-08 20:01:28 -07:00
cplusplus-stl.cc Import C++ Standard Template Library 2022-03-22 06:41:54 -07:00
cplusplus.cc Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
crashreport.c Support thread local storage 2022-05-16 13:20:08 -07:00
crashreport2.c Fix bugs and make improvements 2022-04-20 10:05:34 -07:00
ctrlc.c Improve signals and memory protection 2022-04-12 22:11:00 -07:00
curl.c Restart CI for New Technology and UBSAN hunting 2022-03-21 04:32:57 -07:00
datauri.c Make improvements 2022-04-29 00:42:47 -07:00
date.c Add smoke test for timezone loading (#114) 2021-03-08 11:46:04 -08:00
decompress.c Add malloc logging tool 2022-05-26 23:19:22 -07:00
defer-statements.c Make mappings unlimited on NT 2021-09-04 13:20:47 -07:00
examples.mk Add antirez picol (tiny Tcl clone) (#340) 2022-06-29 08:52:22 -07:00
exec.c Reduce makefile dependencies by 10% 2022-06-08 20:01:28 -07:00
exit.c Make improvements 2022-05-12 06:45:36 -07:00
fastdiv.c Add SNI support to redbean and improve SSL perf 2021-07-23 13:56:13 -07:00
fastmod.c Fix some example code 2021-08-10 13:38:27 -07:00
forkexec.c Make improvements 2022-03-16 13:40:10 -07:00
forkexecwait.c Make improvements 2022-03-16 13:40:10 -07:00
forkrand.c Improve synchronization 2022-04-15 15:31:55 -07:00
generalized-automatic-datastructure-printing.c Initial import 2020-06-15 07:18:57 -07:00
getcpucount.c Do code cleanup use duff device linenoise i/o 2022-04-22 18:56:52 -07:00
getrandom.c Make improvements 2022-04-07 00:15:35 -07:00
greenbean.c Make _Thread_local more seamlessly working 2022-07-10 08:27:50 -07:00
gui.c Make examples folder somewhat more focused 2021-03-05 06:09:12 -08:00
hangman.c Fix bugs and make improvements 2022-04-20 10:05:34 -07:00
hello.c Improve alloca() memory safety 2022-04-01 22:44:43 -07:00
hello2.c Trim down executable sizes 2021-02-11 08:37:18 -08:00
hello3.c Improve performance of printf functions 2021-04-24 13:58:50 -07:00
hello4.c Improve system calls 2022-07-08 06:42:03 -07:00
hellolua.c Improve ZIP filesystem and change its prefix 2021-08-22 01:11:53 -07:00
hellolua.lua Add Hello World example for LUA C API (#97) 2021-03-08 14:15:59 -08:00
hertz.c Fix bugs and make improvements 2021-05-01 05:11:35 -07:00
hostname.c Fix XNU / FreeBSD / OpenBSD / RHEL5 / NT bugs 2021-01-25 18:31:17 -08:00
img.c Make improvements 2022-04-29 00:42:47 -07:00
ispell.c Make improvements 2022-04-29 00:42:47 -07:00
kilo.c Fix a couple typos (#361) 2022-03-29 22:54:09 -07:00
life.c Always initialize thread local storage 2022-07-19 00:21:46 -07:00
linenoise.c Fix bugs with recent change 2022-04-16 10:40:23 -07:00
loadavg.c Fix some win32 definitions 2022-03-22 19:54:36 -07:00
ls.c Reduce makefile dependencies by 10% 2022-06-08 20:01:28 -07:00
lstime.c Add smoke test for timezone loading (#114) 2021-03-08 11:46:04 -08:00
mkhello.c Support Linux binfmt_misc and APE loading on Apple 2022-05-21 09:28:25 -07:00
nc.c Fix comment for nc example (#323) 2021-11-15 06:48:46 -08:00
nesemu1.cc Fix basename() and dirname() 2022-04-06 00:13:44 -07:00
nomodifyself.c Make improvements 2022-05-24 10:58:48 -07:00
panels.c Make improvements 2022-04-29 00:42:47 -07:00
picol.c Add antirez picol (tiny Tcl clone) (#340) 2022-06-29 08:52:22 -07:00
printargs.c Make improvements 2022-04-24 10:06:05 -07:00
printprimes.c Do code cleanup use duff device linenoise i/o 2022-04-22 18:56:52 -07:00
rlimit.c Make some quick fixes and cleanup 2022-06-26 02:58:36 -07:00
rusage.c Reduce makefile dependencies by 10% 2022-06-08 20:01:28 -07:00
seq.c Make improvements 2022-04-29 00:42:47 -07:00
setitimer.c Make signal handling work well across platforms 2022-03-25 07:28:57 -07:00
sleep.c Work towards improving signals and processes 2021-01-27 19:34:02 -08:00
stackoverflow.c Improve memory safety 2021-10-13 17:27:13 -07:00
stat.c Make numerous improvements 2021-09-28 01:52:34 -07:00
stringbuffer.c Add SNI support to redbean and improve SSL perf 2021-07-23 13:56:13 -07:00
sysinfo.c Limit pledge.com default virtual mem to total ram 2022-07-15 06:53:01 -07:00
system.c Fix XNU / FreeBSD / OpenBSD / RHEL5 / NT bugs 2021-01-25 18:31:17 -08:00
time.c Make improvements 2022-04-28 09:57:07 -07:00
ttyaudio.c Update experiment with tty audio 2022-07-15 23:07:32 -07:00
ttyinfo.c Make improvements 2022-03-16 13:40:10 -07:00
ucontext-sigfpe-recovery.c Fix bugs and make improvements 2022-04-20 10:05:34 -07:00
uname.c Restart CI for New Technology and UBSAN hunting 2022-03-21 04:32:57 -07:00
unbourne.c Reduce makefile dependencies by 10% 2022-06-08 20:01:28 -07:00
walk.c Reduce makefile dependencies by 10% 2022-06-08 20:01:28 -07:00
x86split.c Improve signals and memory protection 2022-04-12 22:11:00 -07:00