diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 24930c1b0..879cc109f 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,8 @@ +2014-10-24 Corinna Vinschen + + * gendef (sigdelayed): 64 bit only: Fix seh_pushreg statements in + prologue. + 2014-10-24 Kai Tietz Corinna Vinschen diff --git a/winsup/cygwin/gendef b/winsup/cygwin/gendef index 6dcb94eae..a1c549fc5 100755 --- a/winsup/cygwin/gendef +++ b/winsup/cygwin/gendef @@ -187,14 +187,13 @@ _sigbe: # return here after cygwin syscall .global sigdelayed .seh_proc sigdelayed sigdelayed: - .seh_pushreg %rbp pushq %r10 # used for return address injection - .seh_pushreg %rbp + .seh_pushreg %r10 pushq %rbp .seh_pushreg %rbp movq %rsp,%rbp - .seh_pushreg %rax # fake, there's no .seh_pushreg for the flags pushf + .seh_pushreg %rax # fake, there's no .seh_pushreg for the flags # stack is aligned or unaligned on entry! # make sure it is aligned from here on # We could be called from an interrupted thread which doesn't know