mirror of
https://github.com/reactos/reactos.git
synced 2025-08-06 20:53:02 +00:00
Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys.
This commit is contained in:
parent
b94e2d8ca0
commit
c2c66aff7d
24198 changed files with 0 additions and 37285 deletions
49
sdk/lib/runtmchk/i386/_RTC_CheckEsp.S
Normal file
49
sdk/lib/runtmchk/i386/_RTC_CheckEsp.S
Normal file
|
@ -0,0 +1,49 @@
|
|||
/*
|
||||
* PROJECT: MSVC runtime check support library
|
||||
* LICENSE: BSD - See COPYING.ARM in the top level directory
|
||||
* PURPOSE: Provides support functions for MSVC runtime checks
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
#include <asm.inc>
|
||||
.code
|
||||
|
||||
EXTERN __RTC_Failure:PROC
|
||||
|
||||
/*
|
||||
|
||||
This function is invoked like this:
|
||||
|
||||
mov esi, esp
|
||||
// Do the actual function call
|
||||
cmp esp, esi
|
||||
call __RTC_CheckEsp
|
||||
|
||||
http://stackoverflow.com/questions/3914750/hows-rtc-checkesp-implemented
|
||||
*/
|
||||
PUBLIC __RTC_CheckEsp
|
||||
__RTC_CheckEsp:
|
||||
|
||||
/* We check if the zero flag is set, and if it is, everything is fine
|
||||
and we return to the caller */
|
||||
je __RTC_CheckEsp_return
|
||||
|
||||
push ebp
|
||||
mov ebp, esp
|
||||
pusha
|
||||
|
||||
// void _RTC_Failure(void* retaddr, int errnum);
|
||||
push 0 // errnum
|
||||
push dword ptr [esp + 4] // retaddr
|
||||
call __RTC_Failure
|
||||
add esp, 8
|
||||
|
||||
popa
|
||||
pop ebp
|
||||
|
||||
__RTC_CheckEsp_return:
|
||||
ret
|
||||
|
||||
END
|
||||
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue