mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-24 18:23:41 +08:00
Align stack to 16 bytes when calling __setcontext
Don't use pop to restore %rdi so that stack is aligned to 16 bytes when calling __setcontext. [BZ #18661] * sysdeps/unix/sysv/linux/x86_64/__start_context.S (__start_context): Don't use pop to restore %rdi so that stack is aligned to 16 bytes when calling __setcontext.
This commit is contained in:
parent
3b8d2eb7f8
commit
8e1f346462
@ -1,3 +1,10 @@
|
||||
2015-08-05 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
[BZ #18661]
|
||||
* sysdeps/unix/sysv/linux/x86_64/__start_context.S
|
||||
(__start_context): Don't use pop to restore %rdi so that stack
|
||||
is aligned to 16 bytes when calling __setcontext.
|
||||
|
||||
2015-08-05 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* sysdeps/x86_64/multiarch/memcpy-sse2-unaligned.S: Compile
|
||||
|
@ -31,8 +31,8 @@ ENTRY(__start_context)
|
||||
on the stack pointer for the next context. */
|
||||
movq %rbx, %rsp
|
||||
|
||||
popq %rdi /* This is the next context. */
|
||||
cfi_adjust_cfa_offset(-8)
|
||||
/* Don't use pop here so that stack is aligned to 16 bytes. */
|
||||
movq (%rsp), %rdi /* This is the next context. */
|
||||
testq %rdi, %rdi
|
||||
je 2f /* If it is zero exit. */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user