- Make all x86assembly ML compatible
- Remove memcpy, it was duplicated from memmove, copy the label instead
- Guard some code against compilation on msvc, as these functions are intrinsics on MSVC and cannot be implemented
- Fix some x64 assembly (don't modify stack below rsp)

svn path=/branches/cmake-bringup/; revision=49421
This commit is contained in:
Timo Kreuzer 2010-11-02 00:06:33 +00:00
parent 0d7a1c46a0
commit a3623f23de
49 changed files with 912 additions and 918 deletions

View file

@ -2,28 +2,31 @@
*/
#include "tchar.h"
#include <reactos/asm.h>
.globl _tcslen
PUBLIC _tcslen
.code
_tcslen:
push %edi
mov 0x8(%esp), %edi
xor %eax, %eax
test %edi,%edi
jz _tcslen_end
push edi
mov edi, [esp + 8]
xor eax, eax
test edi, edi
jz _tcslen_end
mov $-1, %ecx
cld
mov ecx, -1
cld
repne _tscas
repne _tscas
not %ecx
dec %ecx
not ecx
dec ecx
mov %ecx, %eax
mov eax, ecx
_tcslen_end:
pop %edi
ret
pop edi
ret
END
/* EOF */