Martin Storsjö : msvcrt: Hook up __C_specific_handler and __jump_unwind for arm.

Alexandre Julliard julliard at winehq.org
Mon May 16 15:37:57 CDT 2022


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

Author: Martin Storsjö <martin at martin.st>
Date:   Sun May 15 14:49:46 2022 +0300

msvcrt: Hook up __C_specific_handler and __jump_unwind for arm.

This was set up for arm in ntdll and ucrtbase in
3ef9a04f9181fb7d28832c60b5439337460005b6, but msvcrt was missed.

Also hook them up similarly in msvcr110, msvcr120 and msvcr120_app.

Signed-off-by: Martin Storsjö <martin at martin.st>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/msvcr110/msvcr110.spec         | 4 ++--
 dlls/msvcr120/msvcr120.spec         | 4 ++--
 dlls/msvcr120_app/msvcr120_app.spec | 4 ++--
 dlls/msvcrt/msvcrt.spec             | 3 ++-
 4 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec
index 64b634b582e..7bdae76cf68 100644
--- a/dlls/msvcr110/msvcr110.spec
+++ b/dlls/msvcr110/msvcr110.spec
@@ -872,7 +872,7 @@
 @ cdecl __AdjustPointer(ptr ptr)
 @ stub __BuildCatchObject
 @ stub __BuildCatchObjectHelper
-@ stdcall -arch=x86_64 __C_specific_handler(ptr long ptr ptr) ntdll.__C_specific_handler
+@ stdcall -arch=x86_64,arm __C_specific_handler(ptr long ptr ptr) ntdll.__C_specific_handler
 @ cdecl -arch=i386,x86_64,arm,arm64 __CppXcptFilter(long ptr)
 @ cdecl -arch=i386,x86_64,arm,arm64 __CxxDetectRethrow(ptr)
 @ cdecl -arch=i386,x86_64,arm,arm64 __CxxExceptionFilter(ptr ptr long ptr)
@@ -948,7 +948,7 @@
 @ cdecl __iscsymf(long)
 @ stub __iswcsym
 @ stub __iswcsymf
-@ stub -arch=arm __jump_unwind
+@ stdcall -arch=arm __jump_unwind(ptr ptr) ntdll.__jump_unwind
 # extern __lconv
 @ cdecl __lconv_init()
 @ cdecl -arch=i386 -norelay __libm_sse2_acos()
diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec
index 68855b90096..4cafd8ba247 100644
--- a/dlls/msvcr120/msvcr120.spec
+++ b/dlls/msvcr120/msvcr120.spec
@@ -856,7 +856,7 @@
 @ cdecl __AdjustPointer(ptr ptr)
 @ stub __BuildCatchObject
 @ stub __BuildCatchObjectHelper
-@ stdcall -arch=x86_64 __C_specific_handler(ptr long ptr ptr) ntdll.__C_specific_handler
+@ stdcall -arch=x86_64,arm __C_specific_handler(ptr long ptr ptr) ntdll.__C_specific_handler
 @ cdecl -arch=i386,x86_64,arm,arm64 __CppXcptFilter(long ptr)
 @ cdecl -arch=i386,x86_64,arm,arm64 __CxxDetectRethrow(ptr)
 @ cdecl -arch=i386,x86_64,arm,arm64 __CxxExceptionFilter(ptr ptr long ptr)
@@ -938,7 +938,7 @@
 @ cdecl __iscsymf(long)
 @ stub __iswcsym
 @ stub __iswcsymf
-@ stub -arch=arm __jump_unwind
+@ stdcall -arch=arm __jump_unwind(ptr ptr) ntdll.__jump_unwind
 # extern __lconv
 @ cdecl __lconv_init()
 @ cdecl -arch=i386 -norelay __libm_sse2_acos()
diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec
index eabb304dd6d..d964de1fb36 100644
--- a/dlls/msvcr120_app/msvcr120_app.spec
+++ b/dlls/msvcr120_app/msvcr120_app.spec
@@ -850,7 +850,7 @@
 @ cdecl __AdjustPointer(ptr ptr) msvcr120.__AdjustPointer
 @ stub __BuildCatchObject
 @ stub __BuildCatchObjectHelper
-@ stdcall -arch=x86_64 __C_specific_handler(ptr long ptr ptr) msvcr120.__C_specific_handler
+@ stdcall -arch=x86_64,arm __C_specific_handler(ptr long ptr ptr) msvcr120.__C_specific_handler
 @ cdecl -arch=i386,x86_64,arm,arm64 __CppXcptFilter(long ptr) msvcr120.__CppXcptFilter
 @ cdecl -arch=i386,x86_64,arm,arm64 __CxxDetectRethrow(ptr) msvcr120.__CxxDetectRethrow
 @ cdecl -arch=i386,x86_64,arm,arm64 __CxxExceptionFilter(ptr ptr long ptr) msvcr120.__CxxExceptionFilter
@@ -914,7 +914,7 @@
 @ cdecl __iscsymf(long) msvcr120.__iscsymf
 @ stub __iswcsym
 @ stub __iswcsymf
-@ stub -arch=arm __jump_unwind
+@ stdcall -arch=arm __jump_unwind(ptr ptr) msvcr120.__jump_unwind
 # extern __lconv
 @ cdecl __lconv_init() msvcr120.__lconv_init
 @ cdecl -arch=i386 -norelay __libm_sse2_acos() msvcr120.__libm_sse2_acos
diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec
index de7cf0116d8..3aab3600e1d 100644
--- a/dlls/msvcrt/msvcrt.spec
+++ b/dlls/msvcrt/msvcrt.spec
@@ -172,7 +172,7 @@
 @ extern _HUGE MSVCRT__HUGE
 @ cdecl _Strftime(ptr long str ptr ptr)
 @ cdecl _XcptFilter(long ptr)
-@ stdcall -arch=x86_64,arm64 __C_specific_handler(ptr long ptr ptr) ntdll.__C_specific_handler
+@ stdcall -arch=x86_64,arm,arm64 __C_specific_handler(ptr long ptr ptr) ntdll.__C_specific_handler
 @ cdecl -arch=i386,x86_64,arm,arm64 __CppXcptFilter(long ptr)
 # stub __CxxCallUnwindDelDtor
 # stub __CxxCallUnwindDtor
@@ -218,6 +218,7 @@
 @ cdecl __isascii(long)
 @ cdecl __iscsym(long)
 @ cdecl __iscsymf(long)
+@ stdcall -arch=arm __jump_unwind(ptr ptr) ntdll.__jump_unwind
 @ extern __lc_codepage MSVCRT___lc_codepage
 @ stub __lc_collate
 @ extern __lc_collate_cp MSVCRT___lc_collate_cp




More information about the wine-cvs mailing list