From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 13978 invoked by alias); 1 Mar 2006 21:19:46 -0000 Received: (qmail 13954 invoked by uid 22791); 1 Mar 2006 21:19:45 -0000 X-Spam-Check-By: sourceware.org Received: from dsl027-180-168.sfo1.dsl.speakeasy.net (HELO sunset.davemloft.net) (216.27.180.168) by sourceware.org (qpsmtpd/0.31) with ESMTP; Wed, 01 Mar 2006 21:19:44 +0000 Received: from localhost ([127.0.0.1] ident=davem) by sunset.davemloft.net with esmtp (Exim 4.60) (envelope-from ) id 1FEYjd-0002Np-N6; Wed, 01 Mar 2006 13:19:49 -0800 Date: Wed, 01 Mar 2006 21:19:00 -0000 Message-Id: <20060301.131949.48296326.davem@davemloft.net> To: drepper@redhat.com Cc: libc-hacker@sources.redhat.com Subject: Re: [PATCH]: Sparc SUN4V Niagara optimized memset/memcpy From: "David S. Miller" In-Reply-To: <4405C2B7.4070005@redhat.com> References: <20060301.005521.123780069.davem@davemloft.net> <4405C2B7.4070005@redhat.com> Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Mailing-List: contact libc-hacker-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-hacker-owner@sourceware.org X-SW-Source: 2006-03/txt/msg00006.txt.bz2 From: Ulrich Drepper Date: Wed, 01 Mar 2006 07:50:15 -0800 > David S. Miller wrote: > > > +ENTRY(memset) > > + /* %o0=buf, %o1=pat, %o2=len */ > > + and %o1, 0xff, %o3 > > + mov %o2, %o1 > > + sllx %o3, 8, %g1 > > + or %g1, %o3, %o2 > > + sllx %o2, 16, %g1 > > + or %g1, %o2, %o2 > > + sllx %o2, 32, %g1 > > + ba,pt %XCC, 1f > > + or %g1, %o2, %o2 > > + > > +ENTRY(__bzero) > > This is confusing data. No two functions should overlap. I suggest to > make bzero a little function calling memset similar to what you did with > bcopy. That's a waste of cycles and I-cache usage, for what gain? I don't see why a function cannot have an alternate entry like this.