This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH v2] Enable inlining issignalingf within glibc
- From: Joseph Myers <joseph at codesourcery dot com>
- To: "Paul A. Clarke" <pc at us dot ibm dot com>
- Cc: <libc-alpha at sourceware dot org>
- Date: Tue, 29 Oct 2019 22:18:14 +0000
- Subject: Re: [PATCH v2] Enable inlining issignalingf within glibc
- Ironport-sdr: GN4J+UGy0F8QYdoTDKotff8GfRDWKeA7HHZHI03lvGJJSzRGXyY4Ja8K+YLC603ZbFybBMI+Q1 bPI5c8pIs7jHm4QfqzKQy66GbM4GfpNuPa9Pnv0jOFu8tzOugT2IEerXuh9GczrR8K6Dx7GWMw WFLgR2kjplMrQgBlIKWcTMZ2xAHqItn24hFQOPSrhqamDf/kMA+QmrGsWCHtDa+FdNgtUpfjfJ /4ZTOxQcFiG3ExxA4MTzS9R+WJ92pWjO3i8jRNSbI2nTOErwbGBcgy/6gYjubIij6y8NQZIptP frA=
- Ironport-sdr: aKv6RzkFOAgSD7eTHHd7bhPv6DRfSXSJNpE467H4Fmay++7puYNo+kSlSGpJ259S5FCzKB9ZIN V+PP4VsF2mHVWPvaRcH/dlMUhmHifOFXAzR2ClkfAsAk1UFg22JNm9Omxhz7Yym3ch3wVwMfqW WCYPoGmic9MsDSX0VMQBWAM+t8Pz0bFXgb1OvJA0dyoMB5EcQ2ZKmOmBaj+4xh4WxX15GsQvrY kNppmptaor+7+XVNgQG089sN3T1rjGMveoh+libAojsBQnkbvTPuhf2VeA4UFz/aRvgeEuWWM0 48E=
- References: <1569851517-5682-1-git-send-email-pc@us.ibm.com>
On Mon, 30 Sep 2019, Paul A. Clarke wrote:
> From: "Paul A. Clarke" <pc@us.ibm.com>
>
> issignalingf is a very small function used in some areas where
> better performance (and smaller code) might be helpful.
>
> Create inline implementation for issignalingf.
>
> 2019-09-30 Paul A. Clarke <pc@us.ibm.com>
>
> * sysdeps/generic/math_private.h (GET_FLOAT_WORD, SET_FLOAT_WORD):
> Moved...
> * include/math.h (GET_FLOAT_WORD, SET_FLOAT_WORD): to here.
> (__issignalingf): New, copied from
> sysdeps/iee754/flt-32/s_issignalingf.c.
This is OK.
There's the question of what to do about issignalingf_inline in
sysdeps/ieee754/flt-32/math_config.h and its uses in
sysdeps/ieee754/flt-32/e_powf.c. Arguably they ought to move to just
calling issignaling. If however the slightly different code in
issignalingf_inline results in better code in the callers (which would
need to be checked, I don't know whether masking or shifting would be
better in general), that would indicate (a) changing the code in the
generic inline and (b) filing a GCC bug report to convert one into the
other as an optimization.
--
Joseph S. Myers
joseph@codesourcery.com