Dear Alessandro Rubini, In message <f6eaf0a025bdc32019286a66bf10cc2184f00995.1255000877.git.rubini@ unipv.it> you wrote: ... > void * memset(void * s,int c,size_t count) > { > char *xs = (char *) s; > - > + unsigned long *sl = (unsigned long *) s; > + unsigned long cl = 0; > + int i;
Same changes as suggested for the memcpy() patch go here: > + /* do it one word at a time (32 bits or 64 bits) if possible */ > + if ( ((count | (int)s) & (sizeof(long) - 1)) == 0) { > + count /= sizeof(long); delete this; > + for (i=0; i<sizeof(long); ++i) { > + cl <<= 8; > + cl |= c & 0xff; > + } > + while (count--) > + *sl++ = cl; and make this while (count) { *sl++ = cl; count -= sizeof(long); } > + return s; delete this, too. > + } > + /* else, fill 8 bits at a time */ Delete the comment, too. > while (count--) > *xs++ = c; Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de "One lawyer can steal more than a hundred men with guns." - The Godfather _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot