Date: Sun, 24 Jun 2001 00:59:45 +0300 From: Peter Pentchev <roam@orbitel.bg> To: Matt Dillon <dillon@earth.backplane.com> Cc: Mikhail Teterin <mi@aldan.algebra.com>, jlemon@FreeBSD.ORG, cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG Subject: Re: Inline optimized bzero (was Re: cvs commit: src/sys/netinet tcp_subr.c) Message-ID: <20010624005945.E564@ringworld.oblivion.bg> In-Reply-To: <200106232156.f5NLuu574208@earth.backplane.com>; from dillon@earth.backplane.com on Sat, Jun 23, 2001 at 02:56:56PM -0700 References: <200106231912.f5NJCUE01011@aldan.algebra.com> <200106232102.f5NL2fY73920@earth.backplane.com> <20010624003559.D564@ringworld.oblivion.bg> <200106232156.f5NLuu574208@earth.backplane.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Jun 23, 2001 at 02:56:56PM -0700, Matt Dillon wrote: > > : > :Hi, > : > :Just a minor remark: this should either go in machine-dependent code, > :and really work on a size of the MD int type, or it should be called > :bzero32() or something, and work with int32_t. > : > :Other than that, yes, this looks like it would be a Good Thing(tm). > > It's machine independant... even if sizeof(int) changes. Or it should > be. Oops.. not quite. The 'bytes -= 4' should be > 'bytes -= sizeof(int)'. I'll fix that now. There... NOW it's > machine independant! > > The issue here is that in order to call bzerol() you have to know that > the pointer and size you are passing is at least integer-aligned > (whatever that size winds up being on the architecture). Since nearly > all structures in the system have an 'int', 'long', or pointer > declaration, they will be so-aligned and thus be compatible with > bzerol(). That was my point - but that's really for the programmer to decide. I guess there would be a big fat flashing warning 'do not use this unless you are not sure that your structure is int-aligned on all arches', and people would only call bzerol() if they are sure of that. > Calling bzerol() bzero32() makes no such guarentee, because > 'int' could very well be 64 bits and then bzero32() wouldn't be > sufficiently optimal. Yes, I see your point now. G'luck, Peter -- Thit sentence is not self-referential because "thit" is not a word. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010624005945.E564>