1 /* 高半核入口点 - 0xC0000000 */
5 #include <sys/failsafe.h>
8 .global __kinit_stack_end
20 movq $__kinit_stack_top, %rsp
21 andq $stack_alignment, %rsp
23 movq $__kinit_stack_end, %rax
24 movl $STACK_SANITY, (%rax)
25 movl $STACK_SANITY, 4(%rax)
26 movl $STACK_SANITY, 8(%rax)
27 movl $STACK_SANITY, 12(%rax)
29 andq $stack_alignment, %rsp
32 # replace the temporary gdt
40 # do a far jump to switch cs
47 # initialize segment registers
48 # we will not touch them again in x86_64
54 # perform arch-specific initialization before diving into kernel
68 movq $bhctx_buffer, %rdi # mb_parser.c