CodeGeneration.CGenState.CGenMemCpyReversed C# (CSharp) Метод

CGenMemCpyReversed() публичный Метод

Fast Memory Copy using assembly. Make sure that 1) %esi = source address 2) %edi = destination address 3) %ecx = number of bytes
public CGenMemCpyReversed ( ) : void
Результат void
        public void CGenMemCpyReversed() {
            ADDL(Reg.ECX, Reg.ESI);
            ADDL(Reg.ECX, Reg.EDI);
            MOVL(Reg.ECX, Reg.EAX);

            ANDL(3, Reg.ECX); // now %ecx = 0, 1, 2, or 3
            STD();
            this.os.WriteLine("    rep movsb");

            MOVL(Reg.EAX, Reg.ECX);
            ANDL(~3, Reg.ECX);
            SHRL(2, Reg.ECX);
            this.os.WriteLine("    rep movsl");

            CLD();
        }