Fast Move

Version: 3.03 : 06-MAR-2006

How to use: Include this unit in any uses clause - Thats It!

What it Does:

This unit replaces all calls to system.move with calls to a faster move procedure (Up to 3 times faster). The code will automatically detect and use MMX, SSE, SSE2 or SSE3 where available.

Version Change
------- ------
2.00 - Updated all Moves to use Move_JOH_XXX_6 (better code alignment).
2.10 - VirtualProtect modified to use PAGE_EXECUTE_READWRITE to prevent error under WinXP SP2 with AMD64 running DEP. 2.20 - Added Check for "Already Patched" to prevent error when using. Packages in both DLL's and EXE.
2.30 - PrefetchLimit initialization moved outside of ReplaceMove.
3.00 - Updated all Moves to use latest Move_JOH_XXX_10 procedures and added SSE2 and SSE3 optimized moves. Extra VirtualProtect removed. PatchSystemMove Directive added. Local Move Procedure added for direct calling of fastest Move.
3.01 - {$D-} Added to prevent stepping into the Move BASM Code Badly Names PrefetchLimit renamed CacheLimit
3.02 - Incorrect DB equivalents of lddqu instruction corrected
3.03 - Compiler Directives for D2006 Added Contact Email address corrected

FastMove Download (