mirror of
https://github.com/genodelabs/genode.git
synced 2025-02-02 09:18:18 +00:00
08541b68f7
platform_execute() is used to initially switch the stack of a routine/task. While Thread_base::alloc_secondary_stack() properly aligns the returned stack pointer the x86_64 assembler implementation did not comply to stack frame management specified in the ABI. The used (and most simple) stack-alignment check may pass a float to a varargs function on x86, which requires the compiler to properly save some XMM registers on stack.