Re: filling big array of double
- From: Henri Gourvest <x@xxxxx>
- Date: Tue, 31 May 2005 15:57:11 +0200
Aleksandr Sharahov wrote:
Hi Henri,
You can try unroll loop as below -- regards Aleksandr
procedure FillDouble(var Dest; Count: integer; Value: double); register; asm neg edx jge @ret shl edx, 3 sub eax, edx mov ecx, [ebp+8] mov ebp, [ebp+12] @loop: mov [eax+edx], ecx mov [eax+edx+4], ebp cmp edx, -8 jge @ret mov [eax+edx+8], ecx mov [eax+edx+12], ebp add edx, 16 jl @loop @ret: end;
previous one seem faster. I'm reading "Coding for Speed in Delphi" document from denis. It don't seem possible to improve much more "floating point" move operation.
Thanks
Henri .
- References:
- filling big array of double
- From: Henri Gourvest
- Re: filling big array of double
- From: Aleksandr Sharahov
- Re: filling big array of double
- From: Henri Gourvest
- Re: filling big array of double
- From: Aleksandr Sharahov
- filling big array of double
- Prev by Date: Re: Fastcode UpperCase B&V 3.0
- Next by Date: Re: Fastcode UpperCase B&V 3.0
- Previous by thread: Re: filling big array of double
- Next by thread: Re: filling big array of double
- Index(es):
Relevant Pages
|