Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!bloom-beacon!apple!bionet!agate!pasteur!ucbvax!hplabs!hpda!hpcupt1!hpisod1!renglish From: renglish@hpisod1.HP.COM (Robert English) Newsgroups: comp.lang.c Subject: Re: Hand optimized copying Message-ID: <10130002@hpisod1.HP.COM> Date: 17 Oct 88 17:02:25 GMT References: <34421@XAIT.Xerox.COM> Organization: Hewlett Packard, Cupertino Lines: 17 / g-rh@XAIT.Xerox.COM (Richard Harter) / 2:38 pm Oct 7, 1988 / > #define copy(dest,src,nb) {register char *a, *b; register int i;\ > a = dest; b = src;\ > for (i = (nb %7)+1; --i;) *a++ = *b++;\ > for (i = (nb>>3)+1; --i>0;) {\ > *a++ = *b++; *a++ = *b++; *a++ = *b++; *a++ = *b++;\ > *a++ = *b++; *a++ = *b++; *a++ = *b++; *a++ = *b++;\ > }} Methinks that line 3 should read: for (i = (nb & 07) + 1; --i;)... ( or " % 8" ) --bob--