ntdll: Store eflags in x86_64 syscall frame.
Signed-off-by: Jacek Caban <jacek@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
6d2f08cfcb
commit
9bdd02de0c
|
@ -1947,7 +1947,7 @@ NTSTATUS WINAPI NtGetContextThread( HANDLE handle, CONTEXT *context )
|
|||
context->Rsp = (ULONG64)&frame->ret_addr;
|
||||
context->Rbp = frame->rbp;
|
||||
context->Rip = frame->thunk_addr;
|
||||
context->EFlags = 0x202;
|
||||
context->EFlags = frame->eflags;
|
||||
__asm__( "movw %%cs,%0" : "=g" (context->SegCs) );
|
||||
__asm__( "movw %%ss,%0" : "=g" (context->SegSs) );
|
||||
context->ContextFlags |= CONTEXT_CONTROL;
|
||||
|
|
|
@ -1508,7 +1508,9 @@ void output_syscalls( DLLSPEC *spec )
|
|||
output_cfi( ".cfi_rel_offset %%rbp,0" );
|
||||
output( "\tmovq %%rsp,%%rbp\n" );
|
||||
output_cfi( ".cfi_def_cfa_register %%rbp" );
|
||||
output( "\tleaq -0x2a8(%%rbp),%%rsp\n" );
|
||||
output( "\tleaq -0x10(%%rbp),%%rsp\n" );
|
||||
output( "\tpushfq\n" );
|
||||
output( "\tsubq $0x280,%%rsp\n" );
|
||||
output( "\tandq $~63,%%rsp\n" );
|
||||
output( "\tmovq %%rbx,-0x90(%%rbp)\n" );
|
||||
output_cfi( ".cfi_rel_offset %%rbx,-144" );
|
||||
|
|
Loading…
Reference in New Issue