=?UTF-8?Q?Andr=C3=A9=20Hentschel=20?=: ntdll: Fix returning from various ARM assembler functions.

Alexandre Julliard julliard at wine.codeweavers.com
Fri May 29 05:29:48 CDT 2015


Module: wine
Branch: master
Commit: c13be7446e52f2bc8d4779a00d32f7952451be5d
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=c13be7446e52f2bc8d4779a00d32f7952451be5d

Author: André Hentschel <nerv at dawncrow.de>
Date:   Thu May 28 22:39:01 2015 +0200

ntdll: Fix returning from various ARM assembler functions.

---

 dlls/ntdll/signal_arm.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/dlls/ntdll/signal_arm.c b/dlls/ntdll/signal_arm.c
index 113139f..0c51c49 100644
--- a/dlls/ntdll/signal_arm.c
+++ b/dlls/ntdll/signal_arm.c
@@ -283,7 +283,7 @@ __ASM_STDCALL_FUNC( RtlCaptureContext, 4,
                     "str PC, [r0, #0x40]\n\t"  /* context->Pc */
                     "mrs r1, CPSR\n\t"
                     "str r1, [r0, #0x44]\n\t"  /* context->Cpsr */
-                    "mov PC, LR\n"
+                    "bx lr"
                     )
 
 
@@ -920,7 +920,7 @@ void signal_free_thread( TEB *teb )
 extern void set_tpidrurw( TEB *teb );
 __ASM_GLOBAL_FUNC( set_tpidrurw,
                    "mcr p15, 0, r0, c13, c0, 2\n\t" /* TEB -> TPIDRURW */
-                   "blx lr" )
+                   "bx lr" )
 #else
 void set_tpidrurw( TEB *teb )
 {




More information about the wine-cvs mailing list