On Thu, Mar 13, 2003 at 10:09:03AM -0800, Ranjan Parthasarathy wrote: > From the gcc sources, the compiler generates the lwl,lwr etc. in the block > move code in gcc/config/mips/mips.c ( output_block_move ). > > There is an option -mmemcpy which tells gcc to use a memcpy compiled in > with the sources for this block move instead of gcc genetrating code. The > problem however with this is that arch/mips/lib/memcpy.S is optimized > using lwl,lwr,swl,swr. If this can be modified so that lwl,lwr,swl,swr > is used if enabled as a kernel option, it might work very well. Replace those unaligned copies with a word-wise or even bytewise copying. Not good for performance but ... Ralf