diff --git a/arch/x86/cpu/start.S b/arch/x86/cpu/start.S index 71cab22e2a95008a4b72ad0b95dfbe79f13a066d..338bab19e471fdd3f4ab088aa999afeb2e10145e 100644 --- a/arch/x86/cpu/start.S +++ b/arch/x86/cpu/start.S @@ -97,6 +97,13 @@ car_init_ret: /* Reserve space for global descriptor table */ subl $X86_GDT_SIZE, %esp +#if defined(CONFIG_SYS_MALLOC_F_LEN) + subl $CONFIG_SYS_MALLOC_F_LEN, %esp + movl %eax, %edx + addl $GD_MALLOC_BASE, %edx + movl %esp, (%edx) +#endif + /* Align temporary global descriptor table to 16-byte boundary */ andl $0xfffffff0, %esp