This is the mail archive of the libc-hacker@sourceware.org mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH]: Sparc SUN4V Niagara optimized memset/memcpy


From: Ulrich Drepper <drepper@redhat.com>
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.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]