libk  Timeline

22 check-ins using file arch/posix/x86.lin.64.s version 58546ff139

2019-08-24
00:20
improve comments check-in: 858eba7607 user: lexi tags: trunk
2019-08-22
20:04
fix another typo check-in: 8618103a4e user: lexi tags: trunk
20:04
fix typo check-in: 957b5fa848 user: lexi tags: trunk
08:52
add tests for linear allocators, fix dumb bug in kmheapf() that caused it to return an error on success check-in: f37ee769c9 user: lexi tags: trunk
08:45
check in missing files check-in: 269baab90a user: lexi tags: trunk
08:44
add kmlini() and kmlina() functions; restructure allocation functions to work more reasonably (returning a tuple struct instead of making a user pass in a void**); update docs accordingly check-in: acb4a9944e user: lexi tags: trunk
04:31
finish moving heap allocation/free functions to the posix syscall apparatus and deprecate the direct assembly implementations of platform_mmap; update the kmem docs to match new function signatures (and remove typos) check-in: 709ffb094d user: lexi tags: trunk
02:52
removed sneaky segfault in x86-64 syscall fn where %r8 (the register that contains the pointer to the syscall arguments from the C syscall wrapper, which need to be copied into the correct registers before the kernel is invoked) gets overwritten if the syscall valency > 5, because of overlapping ccall and syscall ABI argument registers - r8 is clobbered by argument 5 and any further attempts to use it as a ptr segfault at best. also modified the report function so that it immediate cancels compilation if a sub-process reports failure. changed allocator function signatures so they can return a condition code if the kernel reports an error; updated example code so it compiles and runs without fault. check-in: e50a476efe user: lexi tags: trunk
01:37
add first iteration of knum header check-in: 5560c2725b user: lexi tags: trunk
00:03
insert explicit cast to hopefully silence compiler warnings on some systems check-in: 7c202a8b17 user: lexi tags: trunk
2019-08-21
23:35
replace `.` with `source` in shell scripts for compatibility; change `sh` shebangs to use bash instead check-in: 34059b4bf6 user: lexi tags: trunk
06:43
create dist folder for OS-specific supporting build files check-in: 49b6e9c7f6 user: lexi tags: trunk
06:00
move modules to a subdirectory in order to keep the directory tree organized and make room for OS-specific build files check-in: 14172a910a user: lexi tags: trunk
04:50
Add initial build setup for Nix check-in: a26e579866 user: glow tags: trunk
04:24
modify build system to replace extremely fragile error code generation mechanism check-in: d77ef26adf user: lexi tags: trunk
03:44
make crt behave as a C runtime launcher should; comment code thoroughly check-in: f0f16493ca user: lexi tags: trunk
03:10
add assembly output flag to build.sh check-in: 06e32bd3b4 user: lexi tags: trunk
01:58
enable debugging and add -ffreestanding to gcc cmd line to squash attempts to "optimize" functions by converting them to libc calls, e.g. turning kmzero() calls into memset() calls check-in: 49bf71fb47 user: lexi tags: trunk
01:20
rename $out build var to $to for nixos compat; refactor announce command to choose a color automatically instead of forcing it to be specified on every command line check-in: b590aba21d user: lexi tags: trunk
00:28
Switch to using command -v to check for commands instead of which check-in: fd95e5bc93 user: glow tags: trunk
00:16
switch ansi "bold off" code to "reset" for terminals that interpret "bold off" as "double underline"; remove (incorrect) test code from kiosend check-in: cef83f0167 user: lexi tags: trunk
2019-08-20
22:54
reorganize posix assembly code check-in: f85e6a07dd user: lexi tags: trunk