aboutsummaryrefslogtreecommitdiff
path: root/src/main.zig
diff options
context:
space:
mode:
authorMarin Ivanov <[email protected]>2024-05-01 14:20:21 +0300
committerMarin Ivanov <[email protected]>2024-05-01 14:20:21 +0300
commit7aaeee46c3bfc0ddaf6845a88a2eef5224f9ceac (patch)
treec494a7e5e9cec4caf5e701e7a7a4c25f695f6967 /src/main.zig
parentc46f576400231e69525f73421b0bb621b16fc0cf (diff)
linker defined stack
Diffstat (limited to 'src/main.zig')
-rw-r--r--src/main.zig8
1 files changed, 2 insertions, 6 deletions
diff --git a/src/main.zig b/src/main.zig
index 11ca4bf..adef54c 100644
--- a/src/main.zig
+++ b/src/main.zig
@@ -17,19 +17,15 @@ export const multiboot align(4) linksection(".multiboot") = MultibootHeader{
.checksum = -(MAGIC + FLAGS),
};
-export var stack: [16 * 1024]u8 align(16) linksection(".bss") = undefined;
-
export fn _start() callconv(.Naked) noreturn {
asm volatile (
- \\ mov %[stk], %rsp
+ \\ mov _sstack, %rsp
\\ mov %rsp, %rbp
- :
- : [stk] "{rcx}" (@intFromPtr(&stack) + @sizeOf(@TypeOf(stack))),
);
asm volatile ("jmp kmain");
}
-export fn kmain() void {
+export fn kmain() noreturn {
debug.outb(0xe9, 'H');
debug.outb(0xe9, 'i');
debug.outb(0xe9, '!');