On 21 May 2014 07:34, Robin Vowels <robi...@dodo.com.au> wrote:

> From: "Ed Jaffe" <edja...@phoenixsoftware.com>
> Sent: Wednesday, May 21, 2014 2:52 PM
>
>
>
>  On 5/20/2014 8:44 PM, Robin Vowels wrote:
>>
>>>
>>>  I use MVCL a lot even for very small moves where the length is not
>>>> known at assembly time. But I know my environment and its performance
>>>> requirements, and often judge the relative elegance, generality, and
>>>> programmer-readability of such an instruction to override what small
>>>> performance gain there might be to multipathing and/or loops.
>>>>
>>>
>>> Sounds like overkill.
>>> MVC with EX would be simpler.
>>>
>>
>> Not if you want padding.
>>
>
> You didn't mention padding.  Only small moves.
>
> But even when padding is required, you can move the padding byte into the
> destination area first.
>

At last resort one looks at the alternatives. The code I inherited has lots
of EX MVC (into static areas near the code even) but the area is too
crowded that I dare to free up the 4 right registers and change it.

Recently for some new code doing memory allocations, I was very pleased
with a MVCL. Rather elegant to have one instruction that copies the
prepared header into the block and wipes the payload with padding.Reading
the Principles of Operation last night, I noticed it states that some
models may be very good in doing MVCL. But probably also in MVC overlaps by
one byte, maybe even EX of those...

Rob

Reply via email to