Hello Michael,

in general, Michael is right - optimize the stuff the is USED OFTEN

optimizing rarely used stuff is a waste of time; there are usually
better ways to spend this time.

>> > The optimization is the one that tries to align EDI to an
>> > eight-byte boundary before the main REP MOVSD.

Allow me to have a different 'opinion'. As far as I understand+remember
Intel optimization guides (whatever CPU that was for), alignment of ESI
is more important.

   memcpy(xxx0,yyy0,cnt) : great anyway

   memcpy(xxx3,yyy3,cnt) : alignment of edi is equivalent to esi

   memcpy(xxx0,yyy3,cnt) :
or memcpy(xxx0,yyy3,cnt) :

   As far as I remember, alignment of the source ESI is better, so
   input runs at full speed (aligned), and output alignment is taken
   care of by some special 'delayed memory write buffers' for modern CPU's



as a side effect of this discussion, I checked if Drive Snapshot does
only nice aligned memory transfers. As it happens, I recently introduced
a new feature - which of course does NOT :((
I'll correcting this - so this discussion had at least this positive
side effect ;)

Tom






-------------------------------------------------------
This SF.Net email is sponsored by: NEC IT Guy Games.
Get your fingers limbered up and give it your best shot. 4 great events, 4
opportunities to win big! Highest score wins.NEC IT Guy Games. Play to
win an NEC 61 plasma display. Visit http://www.necitguy.com/?r=20
_______________________________________________
Freedos-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to