Commit Graph

152 Commits

Author SHA1 Message Date
flysand7 dc2ec9eb13 explicit atomics 2023-09-10 17:53:22 +11:00
flysand7 8c563ec1b2 make fwrite threadsafe 2023-09-10 11:30:56 +11:00
flysand7 35f10c78b7 fix joins & detaches 2023-09-06 20:37:30 +11:00
flysand7 9fa3a65736 let the child threads get a dream stack too! 2023-09-03 20:32:51 +11:00
flysand7 653342a30a loader retrieve stack bounds from /proc/self/maps 2023-08-29 18:57:34 +11:00
flysand7 7929779df6 Fix mutex 2023-08-28 01:36:46 +11:00
flysand7 35a760e54e broken mutex 2023-08-27 13:51:35 +11:00
flysand7 1f448dab10 pull out arch-specific stuff into its own folder (windows broken) 2023-08-25 20:18:28 +11:00
flysand7 82788654d8 Linux threads (not working) 2023-08-15 19:54:02 +11:00
flysand7 1beb40051e fix potentially unitialized value 2023-08-15 15:50:52 +11:00
flysand7 50fe56949f Fix SSE by aligning the stack 2023-08-05 22:35:45 +11:00
flysand7 35717f62a0 make dynamic linker perform relocs and jump into the main code 2023-08-05 21:33:19 +11:00
flysand7 48a3a48ce8 Add memory fences around self-relocating code 2023-08-04 06:24:19 +11:00
flysand7 246e9f2071 Fix optimized builds emitting SSE code 2023-08-04 06:20:32 +11:00
flysand7 845d08ee3a Hide dbg_printfs behind a define 2023-08-04 05:46:05 +11:00
flysand7 a812a18033 Custom linux headers 2023-08-04 05:36:03 +11:00
flysand7 14c36e203e pass dyn instead of dynv to loader 2023-08-04 04:17:41 +11:00
flysand7 5b2d0c0c9d self-relocation in dynamic loader 2023-08-04 00:16:15 +11:00
flysand7 bf0d06eeb4 stddef.h 2023-08-02 20:07:54 +11:00
flysand7 c293fc7813 Start on dynamic loader 2023-08-02 14:43:07 +11:00
flysand7 e041fdd474 Add export section to library.json 2023-08-01 13:05:10 +11:00
flysand7 e41df0dd4d Use linux includes whenever possible 2023-08-01 12:45:45 +11:00
flysand7 8efd9b7c7a Add data model macro setting 2023-08-01 12:20:43 +11:00
flysand7 2166660b93 Underscores on allocators 2023-08-01 11:30:32 +11:00
flysand7 b2ae7be654 Fix forgot to pass MAP_PRIVATE flag to mmap 2023-08-01 02:29:44 +11:00
flysand7 2954ad3b63 Get windows build working 2023-07-31 07:55:59 +11:00
flysand7 8c0590e517 [bugfix] Make one freelist per pool, instead of one per buffer 2023-07-31 04:47:18 +11:00
flysand7 344d9f0398 Fix files not being removed from the pool upon closing 2023-07-31 04:19:05 +11:00
flysand7 d9f530fe58 Add memory pool to cia-mem, use it for FILE 2023-07-31 04:17:57 +11:00
flysand7 9f44678472 Underscore syscall stuff 2023-07-30 19:47:59 +11:00
flysand7 9ac97f1e9d Memory manager on linux + remove C23 attributes for now 2023-07-30 18:45:14 +11:00
flysand7 8a5804b51d Fix module deps checks, make allocators use one proc 2023-07-28 22:29:12 +11:00
flysand7 76904bd19b Handle inter-module dependencies 2023-07-28 21:52:12 +11:00
flysand7 3abf5e3f7f Memory API 2023-07-28 21:49:56 +11:00
flysand7 e65506babb Remove root object parens from jsons 2023-07-28 20:53:20 +11:00
flysand7 bdce40092d try cuik? 2023-07-28 20:16:09 +11:00
flysand7 1f811d7646 Make it compile on windows 2023-07-28 19:53:06 +11:00
flysand7 5e177fae50 Quick and dirty file api 2023-07-28 00:49:53 +11:00
flysand7 dbd10db051 Underscore prefix TinyRT definitions 2023-07-28 00:04:24 +11:00
flysand7 7e6066ff85 Rewrite build script in python, use JSON5 for configuration 2023-07-27 09:17:57 +11:00
flysand7 7329ca1f92 change the naming scheme for C modules 2023-07-26 20:35:54 +11:00
flysand7 13ba60e338 Auto-generate ciabatta.c 2023-07-26 16:54:37 +11:00
flysand7 4c2ed6e7e4 prefix cia defines with underscore 2023-07-25 16:31:34 +11:00
flysand7 c8a6a65509 rename tinyrt api names 2023-07-25 16:27:13 +11:00
flysand7 1007f634fb Add program api to tinyrt 2023-07-25 16:24:19 +11:00
flysand7 8a93fa68ff Change tinyrt inclusion macros to always be defined 2023-07-25 16:09:15 +11:00
flysand7 d49add907c TinyRT abstraction layer 2023-07-24 02:33:12 +11:00
flysand7 85e0c445ae Implement __stack_chk_fail 2023-07-23 18:28:04 +11:00
flysand7 c72164fff0 Write proper plt relocations in entry assembly, fix stack checking not working correctly 2023-07-23 18:19:53 +11:00
flysand7 c8df2f9d42 Retrieve envp, call main 2023-07-23 03:28:16 +11:00