From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/14994 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Szabolcs Nagy Newsgroups: gmane.linux.lib.musl.general Subject: Re: An addition to the math subtree Date: Wed, 11 Dec 2019 10:48:00 +0100 Message-ID: <20191211094800.GJ23985@port70.net> References: Reply-To: musl@lists.openwall.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="97921"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: Mutt/1.10.1 (2018-07-13) Cc: musl@lists.openwall.com To: Stefan Kanthak Original-X-From: musl-return-15010-gllmg-musl=m.gmane.org@lists.openwall.com Wed Dec 11 10:48:15 2019 Return-path: Envelope-to: gllmg-musl@m.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by blaine.gmane.org with smtp (Exim 4.89) (envelope-from ) id 1ieybP-000PMK-35 for gllmg-musl@m.gmane.org; Wed, 11 Dec 2019 10:48:15 +0100 Original-Received: (qmail 24325 invoked by uid 550); 11 Dec 2019 09:48:12 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Original-Received: (qmail 24295 invoked from network); 11 Dec 2019 09:48:12 -0000 Mail-Followup-To: Stefan Kanthak , musl@lists.openwall.com Content-Disposition: inline In-Reply-To: Xref: news.gmane.org gmane.linux.lib.musl.general:14994 Archived-At: * Stefan Kanthak [2019-12-10 17:58:40 +0100]: > Optimised implementations of copysign() for i386 note that in most user code gcc would inline copysign calls instead of calling into libc. when it is a call into libc then it wont be fast no matter what because of the call overhead (spilling registers). so libc copysign is not performance critical (except currently musl code itself calls it but that can be fixed) i386 asm is also not very interesting (it introduces maintenance burden and not many users care about it) > > JFTR: I'm NOT subscribed to your mailing list, so CC: me in replies! > > --- -/dev/null > +++ +/src/math/i386/copysign.S > @@ -0,0 +1,26 @@ > +.global copysignf > +.type copysignf,@function > +copysignf: > + shlb $1,4+3(%esp) > + shlb $1,8+3(%esp) > + rcrb $1,4+3(%esp) > + flds 4(%esp) > + ret > + > +.global copysignl > +.type copysignl,@function > +copysignl: > + shlb $1,4+9(%esp) > + shlb $1,16+9(%esp) > + rcrb $1,4+9(%esp) > + fldt 4(%esp) > + ret > + > +.global copysign > +.type copysign,@function > +copysign: > + shlb $1,4+7(%esp) > + shlb $1,12+7(%esp) > + rcrb $1,4+7(%esp) > + fldl 4(%esp) > + ret