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
50bbfb3c
Commit
50bbfb3c
authored
Dec 15, 2005
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ntdll: Reimplemented _chkstk and _alloca_probe directly in assembly.
parent
b48d9590
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
16 additions
and
12 deletions
+16
-12
ntdll.spec
dlls/ntdll/ntdll.spec
+2
-2
rtl.c
dlls/ntdll/rtl.c
+14
-10
No files found.
dlls/ntdll/ntdll.spec
View file @
50bbfb3c
...
...
@@ -1233,7 +1233,7 @@
@ stdcall -ret64 _alldiv(double double)
# @ stub _alldvrm
@ stdcall -ret64 _allmul(double double)
@ stdcall -i386 _alloca_probe()
@ stdcall -i386
-norelay
_alloca_probe()
@ stdcall -ret64 _allrem(double double)
# @ stub _allshl
# @ stub _allshr
...
...
@@ -1242,7 +1242,7 @@
# @ stub _aulldvrm
@ stdcall -ret64 _aullrem(double double)
# @ stub _aullshr
@ stdcall -i386 _chkstk()
@ stdcall -i386
-norelay
_chkstk()
@ stub _fltused
@ cdecl -ret64 _ftol() NTDLL__ftol
@ cdecl _i64toa(double ptr long)
...
...
dlls/ntdll/rtl.c
View file @
50bbfb3c
...
...
@@ -391,11 +391,13 @@ DWORD WINAPI RtlDeleteSecurityObject(DWORD x1) {
* Glorified "enter xxxx".
*/
#ifdef __i386__
void
WINAPI
__regs__chkstk
(
CONTEXT86
*
context
)
{
context
->
Esp
-=
context
->
Eax
;
}
DEFINE_REGS_ENTRYPOINT
(
_chkstk
,
0
,
0
);
__ASM_GLOBAL_FUNC
(
_chkstk
,
"negl %eax
\n\t
"
"addl %esp,%eax
\n\t
"
"xchgl %esp,%eax
\n\t
"
"movl 0(%eax),%eax
\n\t
"
/* copy return address from old location */
"movl %eax,0(%esp)
\n\t
"
"ret"
);
#endif
/**************************************************************************
...
...
@@ -404,11 +406,13 @@ DEFINE_REGS_ENTRYPOINT( _chkstk, 0, 0 );
* Glorified "enter xxxx".
*/
#ifdef __i386__
void
WINAPI
__regs__alloca_probe
(
CONTEXT86
*
context
)
{
context
->
Esp
-=
context
->
Eax
;
}
DEFINE_REGS_ENTRYPOINT
(
_alloca_probe
,
0
,
0
);
__ASM_GLOBAL_FUNC
(
_alloca_probe
,
"negl %eax
\n\t
"
"addl %esp,%eax
\n\t
"
"xchgl %esp,%eax
\n\t
"
"movl 0(%eax),%eax
\n\t
"
/* copy return address from old location */
"movl %eax,0(%esp)
\n\t
"
"ret"
);
#endif
...
...
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