This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


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] adjust sprintf range for AIX QNaN output (PR 86571)


On 08/04/2018 04:25 PM, David Edelsohn wrote:
On Sat, Aug 4, 2018, 18:19 Martin Sebor <msebor@gmail.com
<mailto:msebor@gmail.com>> wrote:

    On 08/02/2018 01:46 PM, Martin Sebor wrote:
    > The recently added test gcc.dg/torture/builtin-sprintf.c
    > to verify that the sprintf result computed by GCC matches
    > libc's for Infinity and NaN has been failing on AIX which
    > formats NaN as either QNaN or SNaN, contrary to C/POSIX
    > requirements.  The attached tweak adjusts the result
    > computed by GCC to include the AIX format.  If there are
    > no objections I'll commit the tweak later this week and
    > backport it to GCC 8 the next.

    I have committed this change as r263312.

    In the longer term, I think it might be best to introduce an OS
    target hook to describe sprintf implementation-defined details
    like the format of infinite values (i.e., inf or infinity, nan
    or qnan/snan), and perhaps also %p format and anything else that
    might be relevant.


Another option would be to calculate the length of NAN string at gcc
build time. Set the optimization constant  to the value returned by
sprintf (os libc function, not compiler inlined value) while building gcc.

That sounds even better, thanks.  I've opened bug 86857 to look
into it.

Martin


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