[EMAIL PROTECTED] writes: > On Tue, Jun 13, 2006 at 12:01:39PM +0100, Andrew Haley wrote: > > > > All you've got here is an inline asm version of > > > > inline void longcpy(long* _dst, long* _src, unsigned _numwords) > > { > > __builtin_memcpy (_dst, _src, _numwords * sizeof (long)); > > } > > > > which gcc will optimize if it can. > > > > These days, "rep movs" is not as advantageous as it once was, and you > > may get better performance by allowing gcc to choose how to do memory > > copies. > > Actually, I knew this, but I was using longcpy as a bellwether > of many more complex inline-asm functions in a c++ big integer > library.
OK. I'm used to seeing random bits of inline asm that might have made sense Once Upon A Time but now only serve to slow down a program! > I've just finished a trawl through the entire library, fixing a Good > Many Things which I now know (thanks to you guys) could really confuse > the optimiser. That's great. Andrew.