reactos/dll/win32/oleaut32/msvc.S
David Quintana 1bc1185f8a Sync with trunk r64222.
svn path=/branches/shell-experiments/; revision=64225
2014-09-22 12:51:09 +00:00

45 lines
617 B
ArmAsm

#include <asm.inc>
#ifdef _M_AMD64
.code64
PUBLIC call_method
call_method:
int 2ch
ret
#else
.code32
PUBLIC _call_method
_call_method:
push ebp
mov ebp, esp
push esi
push edi
mov edx, dword ptr ds:[ebp + 12]
mov edi, esp
shl edx, 2
jz cm1
sub edi, edx
and edi, HEX(0FFFFFFF0)
mov esp, edi
mov ecx, dword ptr ds:[ebp + 12]
mov esi, dword ptr ds:[ebp + 16]
cld
rep movsd
cm1:
call dword ptr ds:[ebp + 8]
sub edi, esp
mov ecx,[ebp + 20]
mov [ecx], edi
lea esp, [ebp - 8]
pop edi
pop esi
pop ebp
ret
#endif
END