Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
a1955bfb
Commit
a1955bfb
authored
Dec 19, 2020
by
Martin Storsjo
Committed by
Alexandre Julliard
Dec 21, 2020
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ntdll: Implement a no-op __chkstk for arm64.
Signed-off-by:
Martin Storsjo
<
martin@martin.st
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
dac1e16d
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
18 additions
and
16 deletions
+18
-16
kernel32.spec
dlls/kernel32/kernel32.spec
+1
-1
kernelbase.spec
dlls/kernelbase/kernelbase.spec
+1
-1
ntdll.spec
dlls/ntdll/ntdll.spec
+1
-1
signal_arm64.c
dlls/ntdll/signal_arm64.c
+8
-0
ntoskrnl.c
dlls/ntoskrnl.exe/ntoskrnl.c
+6
-12
ntoskrnl.exe.spec
dlls/ntoskrnl.exe/ntoskrnl.exe.spec
+1
-1
No files found.
dlls/kernel32/kernel32.spec
View file @
a1955bfb
...
...
@@ -1647,7 +1647,7 @@
@ stdcall WriteTapemark(ptr long long long)
@ stdcall -import ZombifyActCtx(ptr)
@ stdcall -arch=x86_64 -private __C_specific_handler(ptr long ptr ptr) ntdll.__C_specific_handler
@ cdecl -arch=arm,x86_64 -norelay __chkstk() ntdll.__chkstk
@ cdecl -arch=arm,
arm64,
x86_64 -norelay __chkstk() ntdll.__chkstk
@ stub _DebugOut
@ stub _DebugPrintf
@ stdcall _hread(long ptr long)
...
...
dlls/kernelbase/kernelbase.spec
View file @
a1955bfb
...
...
@@ -1742,7 +1742,7 @@
# @ stub _GetMUIStringFromCache
# @ stub _OpenMuiStringCache
@ stdcall -arch=x86_64 -private __C_specific_handler(ptr long ptr ptr) ntdll.__C_specific_handler
@ cdecl -arch=arm,x86_64 -norelay __chkstk() ntdll.__chkstk
@ cdecl -arch=arm,
arm64,
x86_64 -norelay __chkstk() ntdll.__chkstk
# @ stub __dllonexit3
@ stub __misaligned_access
# @ stub __wgetmainargs
...
...
dlls/ntdll/ntdll.spec
View file @
a1955bfb
...
...
@@ -1445,7 +1445,7 @@
@ cdecl -private -arch=i386 _CIsin()
@ cdecl -private -arch=i386 _CIsqrt()
@ stdcall -arch=x86_64,arm64 __C_specific_handler(ptr long ptr ptr)
@ cdecl -arch=arm,x86_64 -norelay __chkstk()
@ cdecl -arch=arm,
arm64,
x86_64 -norelay __chkstk()
@ cdecl __isascii(long)
@ cdecl __iscsym(long)
@ cdecl __iscsymf(long)
...
...
dlls/ntdll/signal_arm64.c
View file @
a1955bfb
...
...
@@ -100,6 +100,14 @@ static inline BOOL is_valid_frame( ULONG_PTR frame )
}
/**************************************************************************
* __chkstk (NTDLL.@)
*
* Supposed to touch all the stack pages, but we shouldn't need that.
*/
__ASM_GLOBAL_FUNC
(
__chkstk
,
"ret"
)
/***********************************************************************
* RtlCaptureContext (NTDLL.@)
*/
...
...
dlls/ntoskrnl.exe/ntoskrnl.c
View file @
a1955bfb
...
...
@@ -3831,18 +3831,13 @@ PKEVENT WINAPI IoCreateNotificationEvent(UNICODE_STRING *name, HANDLE *handle)
}
#ifdef __x86_64__
/**************************************************************************
* __chkstk (NTOSKRNL.@)
*
* Supposed to touch all the stack pages, but we shouldn't need that.
*/
#ifdef __x86_64__
/* Supposed to touch all the stack pages, but we shouldn't need that. */
__ASM_GLOBAL_FUNC
(
__chkstk
,
"ret"
);
#elif defined(__i386__)
/**************************************************************************
* _chkstk (NTOSKRNL.@)
*/
__ASM_GLOBAL_FUNC
(
_chkstk
,
"negl %eax
\n\t
"
"addl %esp,%eax
\n\t
"
...
...
@@ -3851,13 +3846,12 @@ __ASM_GLOBAL_FUNC( _chkstk,
"movl %eax,0(%esp)
\n\t
"
"ret"
)
#elif defined(__arm__)
/**************************************************************************
* __chkstk (NTDLL.@)
*
* Incoming r4 contains words to allocate, converting to bytes then return
*/
/* Incoming r4 contains words to allocate, converting to bytes then return */
__ASM_GLOBAL_FUNC
(
__chkstk
,
"lsl r4, r4, #2
\n\t
"
"bx lr"
)
#elif defined(__aarch64__)
/* Supposed to touch all the stack pages, but we shouldn't need that. */
__ASM_GLOBAL_FUNC
(
__chkstk
,
"ret"
);
#endif
/*********************************************************************
...
...
dlls/ntoskrnl.exe/ntoskrnl.exe.spec
View file @
a1955bfb
...
...
@@ -1522,7 +1522,7 @@
@ stdcall ZwWriteFile(long long ptr ptr ptr ptr long ptr ptr) NtWriteFile
@ stdcall -private ZwYieldExecution() NtYieldExecution
@ stdcall -arch=x86_64 __C_specific_handler(ptr long ptr ptr)
@ cdecl -arch=arm,x86_64 -norelay __chkstk()
@ cdecl -arch=arm,
arm64,
x86_64 -norelay __chkstk()
@ cdecl -private -arch=i386 _CIcos()
@ cdecl -private -arch=i386 _CIsin()
@ cdecl -private -arch=i386 _CIsqrt()
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment