[Bug 38470] __chkstk not implemented on ARM

wine-bugs at winehq.org wine-bugs at winehq.org
Fri Jun 12 15:40:07 CDT 2015


https://bugs.winehq.org/show_bug.cgi?id=38470

--- Comment #11 from MY123 <mmediouni at gmx.fr> ---
(In reply to André H. from comment #10)
> (In reply to MY123 from comment #9)
> > (In reply to André H. from comment #8)
> > > (In reply to MY123 from comment #7)
> > > > (In reply to André H. from comment #6)
> > > > > Fixed by the stub from a18f84c0b122a324cc050cf23a0b3d0622c7de92
> > > > 
> > > > Not fixed at all.
> > > > (I tried that stub idea before you)
> > > > cubie at Cubian:~/wine-git/build2$ ./wine
> > > > ../../Downloads/Note*6.4.5/notepad++.exe
> > > > fixme:actctx:parse_depend_manifests Could not find dependent assembly
> > > > L"Microsoft.Windows.Common-Controls" (6.0.0.0)
> > > > wine: Unhandled page fault on read access to 0x30435454 at address
> > > > 0x30435454 (thread 0037), starting debugger...
> > > > [backtrace removed]
> > > > cubie at Cubian:~/wine-git/build2$ ./wine --version
> > > > wine-1.7.44-42-gb75cd7e
> > > 
> > > Can you tell if that's really related to __chkstk?
> > > This bug is only about that function, not about Notepad++ not running...
> > 
> > It crashes very soon after the call to that function...
> > [maybe it's the r4 not setted up properly]
> > I will try to write an MSVC testcase soon.
> 
> that'd be awesome and a very good foundation for an implementation, thx!
Bug fixed with the help of the MSVC testcase.


diff --git a/dlls/ntdll/signal_arm.c b/dlls/ntdll/signal_arm.c
index 0c51c49..83715ae 100644
--- a/dlls/ntdll/signal_arm.c
+++ b/dlls/ntdll/signal_arm.c
@@ -252,7 +252,7 @@ static inline void restore_fpu( CONTEXT *context, const
ucontext_t *sigcontext )
  *
  * Should check if we can decrement SP by the value provided in r4, but we
shouldn't need that.
  */
-__ASM_GLOBAL_FUNC( __chkstk, "bx lr" )
+__ASM_GLOBAL_FUNC( __chkstk, "mov r12, #4\n mul r4,r4,r12\n bx lr" )

Notepad and my MSVC testcase are working fine now

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.


More information about the wine-bugs mailing list