├── .github └── workflows │ ├── build-linux.yml │ └── build-windows.yml ├── .gitignore ├── arch ├── sysv_x86-64 │ ├── loader-entry.asm │ ├── loader-trampoline.asm │ └── thread-entry.asm └── x64_x86-64 │ └── chkstk.asm ├── cia.c ├── include ├── bin │ └── elf.h ├── cia-ld │ └── tcb.h ├── cia │ ├── conf.h │ ├── def.h │ ├── mem.h │ └── sync.h ├── ctype.h ├── errno.h ├── linux │ ├── asm │ │ └── prctl.h │ ├── fcntl.h │ ├── futex.h │ ├── sched.h │ ├── signal.h │ └── sys │ │ ├── mman.h │ │ └── syscall.h ├── stdatomic.h ├── stdbool.h ├── stddef.h ├── stdint.h ├── stdio.h ├── stdlib.h ├── string.h ├── threads.h ├── time.h ├── tinyrt.h └── wchar.h ├── license ├── loader ├── loader-self-reloc.c ├── loader.c ├── loader.h └── stack.c ├── os ├── linux │ ├── conf.h │ ├── crt-ctors.c │ ├── entry.c │ ├── tinyrt-threads.c │ └── tinyrt.c └── windows │ ├── cia-init.c │ ├── conf.h │ ├── crt-entry.c │ ├── tinyrt.c │ ├── tinyrt.json │ ├── utf8 │ ├── utf8.rc │ └── utf8.xml │ └── windows.c ├── readme.md ├── src ├── cia-mem │ ├── allocator.c │ ├── arena.c │ ├── pool.c │ └── util.c ├── cia-sync │ ├── futex.c │ └── mutex.c ├── stdlib-file │ ├── common.c │ ├── file.c │ └── fmt.c ├── stdlib-program │ └── program.c ├── stdlib-string │ ├── mem.c │ └── str.c └── stdlib-thread │ └── thread.c ├── tests ├── crt.c ├── empty.c ├── hello.c ├── mm_seq_cst.c ├── testing.h ├── threaded.c └── tls.c └── todo.md /.github/workflows/build-linux.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/.github/workflows/build-linux.yml -------------------------------------------------------------------------------- /.github/workflows/build-windows.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/.github/workflows/build-windows.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/.gitignore -------------------------------------------------------------------------------- /arch/sysv_x86-64/loader-entry.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/arch/sysv_x86-64/loader-entry.asm -------------------------------------------------------------------------------- /arch/sysv_x86-64/loader-trampoline.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/arch/sysv_x86-64/loader-trampoline.asm -------------------------------------------------------------------------------- /arch/sysv_x86-64/thread-entry.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/arch/sysv_x86-64/thread-entry.asm -------------------------------------------------------------------------------- /arch/x64_x86-64/chkstk.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/arch/x64_x86-64/chkstk.asm -------------------------------------------------------------------------------- /cia.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/cia.c -------------------------------------------------------------------------------- /include/bin/elf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/bin/elf.h -------------------------------------------------------------------------------- /include/cia-ld/tcb.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/cia-ld/tcb.h -------------------------------------------------------------------------------- /include/cia/conf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/cia/conf.h -------------------------------------------------------------------------------- /include/cia/def.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/cia/def.h -------------------------------------------------------------------------------- /include/cia/mem.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/cia/mem.h -------------------------------------------------------------------------------- /include/cia/sync.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/cia/sync.h -------------------------------------------------------------------------------- /include/ctype.h: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /include/errno.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/errno.h -------------------------------------------------------------------------------- /include/linux/asm/prctl.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/linux/asm/prctl.h -------------------------------------------------------------------------------- /include/linux/fcntl.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/linux/fcntl.h -------------------------------------------------------------------------------- /include/linux/futex.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/linux/futex.h -------------------------------------------------------------------------------- /include/linux/sched.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/linux/sched.h -------------------------------------------------------------------------------- /include/linux/signal.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/linux/signal.h -------------------------------------------------------------------------------- /include/linux/sys/mman.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/linux/sys/mman.h -------------------------------------------------------------------------------- /include/linux/sys/syscall.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/linux/sys/syscall.h -------------------------------------------------------------------------------- /include/stdatomic.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/stdatomic.h -------------------------------------------------------------------------------- /include/stdbool.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/stdbool.h -------------------------------------------------------------------------------- /include/stddef.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/stddef.h -------------------------------------------------------------------------------- /include/stdint.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/stdint.h -------------------------------------------------------------------------------- /include/stdio.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/stdio.h -------------------------------------------------------------------------------- /include/stdlib.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/stdlib.h -------------------------------------------------------------------------------- /include/string.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/string.h -------------------------------------------------------------------------------- /include/threads.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/threads.h -------------------------------------------------------------------------------- /include/time.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/time.h -------------------------------------------------------------------------------- /include/tinyrt.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/include/tinyrt.h -------------------------------------------------------------------------------- /include/wchar.h: -------------------------------------------------------------------------------- 1 | 2 | #pragma once 3 | 4 | typedef u32 wchar_t; 5 | -------------------------------------------------------------------------------- /license: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/license -------------------------------------------------------------------------------- /loader/loader-self-reloc.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/loader/loader-self-reloc.c -------------------------------------------------------------------------------- /loader/loader.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/loader/loader.c -------------------------------------------------------------------------------- /loader/loader.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/loader/loader.h -------------------------------------------------------------------------------- /loader/stack.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/loader/stack.c -------------------------------------------------------------------------------- /os/linux/conf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/os/linux/conf.h -------------------------------------------------------------------------------- /os/linux/crt-ctors.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/os/linux/crt-ctors.c -------------------------------------------------------------------------------- /os/linux/entry.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/os/linux/entry.c -------------------------------------------------------------------------------- /os/linux/tinyrt-threads.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/os/linux/tinyrt-threads.c -------------------------------------------------------------------------------- /os/linux/tinyrt.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/os/linux/tinyrt.c -------------------------------------------------------------------------------- /os/windows/cia-init.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/os/windows/cia-init.c -------------------------------------------------------------------------------- /os/windows/conf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/os/windows/conf.h -------------------------------------------------------------------------------- /os/windows/crt-entry.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/os/windows/crt-entry.c -------------------------------------------------------------------------------- /os/windows/tinyrt.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/os/windows/tinyrt.c -------------------------------------------------------------------------------- /os/windows/tinyrt.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/os/windows/tinyrt.json -------------------------------------------------------------------------------- /os/windows/utf8/utf8.rc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/os/windows/utf8/utf8.rc -------------------------------------------------------------------------------- /os/windows/utf8/utf8.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/os/windows/utf8/utf8.xml -------------------------------------------------------------------------------- /os/windows/windows.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/os/windows/windows.c -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/readme.md -------------------------------------------------------------------------------- /src/cia-mem/allocator.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/src/cia-mem/allocator.c -------------------------------------------------------------------------------- /src/cia-mem/arena.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/src/cia-mem/arena.c -------------------------------------------------------------------------------- /src/cia-mem/pool.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/src/cia-mem/pool.c -------------------------------------------------------------------------------- /src/cia-mem/util.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/src/cia-mem/util.c -------------------------------------------------------------------------------- /src/cia-sync/futex.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/src/cia-sync/futex.c -------------------------------------------------------------------------------- /src/cia-sync/mutex.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/src/cia-sync/mutex.c -------------------------------------------------------------------------------- /src/stdlib-file/common.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/src/stdlib-file/common.c -------------------------------------------------------------------------------- /src/stdlib-file/file.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/src/stdlib-file/file.c -------------------------------------------------------------------------------- /src/stdlib-file/fmt.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/src/stdlib-file/fmt.c -------------------------------------------------------------------------------- /src/stdlib-program/program.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/src/stdlib-program/program.c -------------------------------------------------------------------------------- /src/stdlib-string/mem.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/src/stdlib-string/mem.c -------------------------------------------------------------------------------- /src/stdlib-string/str.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/src/stdlib-string/str.c -------------------------------------------------------------------------------- /src/stdlib-thread/thread.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/src/stdlib-thread/thread.c -------------------------------------------------------------------------------- /tests/crt.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/tests/crt.c -------------------------------------------------------------------------------- /tests/empty.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/tests/empty.c -------------------------------------------------------------------------------- /tests/hello.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/tests/hello.c -------------------------------------------------------------------------------- /tests/mm_seq_cst.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/tests/mm_seq_cst.c -------------------------------------------------------------------------------- /tests/testing.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/tests/testing.h -------------------------------------------------------------------------------- /tests/threaded.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/tests/threaded.c -------------------------------------------------------------------------------- /tests/tls.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/tests/tls.c -------------------------------------------------------------------------------- /todo.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flysand7/ciabatta/HEAD/todo.md --------------------------------------------------------------------------------