[ros-dev] [ros-diffs] [greatlrd] 23826: Wrote RtlUshotByteSwap RtlUlongByteSwap and RtlUlonglongByteSwap to asm code. but we need a C api for header to linking it right. Put the asm version to i386

Alex Ionescu ionucu at videotron.ca
Fri Sep 1 05:12:14 CEST 2006


mrnobo1024 wrote:
> The new implementations for RtlFillMemory, RtlZeroMemory, and RtlMoveMemory
> have a bug where they don't write the last 1-3 bytes if the length isn't a
> multiple of the word size. They have an "or ecx, ecx" which needs to be "or
> ecx, edx".

Noted, thanks! Surprised it still booted!

> Also the new RtlUlonglongByteSwap is sub-optimal, it swaps eax and
> edx when they could have just been read in reverse order like the other
> version did.

Not true. BSWAP will pair on the pipe and be executed much faster.

-- 
Best regards,
Alex Ionescu
Project Lead, TinyKRNL
Kernel-Mode Software Design Engineer, ReactOS


More information about the Ros-dev mailing list