]> git.ipfire.org Git - thirdparty/gcc.git/commit
re PR target/39228 (387 optimised __builtin_isinf() gives incorrect result)
authorUros Bizjak <ubizjak@gmail.com>
Thu, 19 Feb 2009 12:44:40 +0000 (13:44 +0100)
committerUros Bizjak <uros@gcc.gnu.org>
Thu, 19 Feb 2009 12:44:40 +0000 (13:44 +0100)
commit778492dcab72f6296abf139ae793dd222b476a94
tree94a983b7e987de2f29f27a1fa150726bb92ce348
parentdb55f701463736f19e0dec249f062271ccbb3551
re PR target/39228 (387 optimised __builtin_isinf() gives incorrect result)

PR target/39228
* config/i386/i386.md (isinfxf2): Split from isinf<mode>2.
(UNSPEC_FXAM_MEM): New unspec.
(fxam<mode>2_i387_with_temp): New insn and split pattern.
(isinf<mode>2): Use MODEF mode iterator.  Force operand[1] through
memory using fxam<mode>2_i387_with_temp to remove excess precision.

testsuite/ChangeLog:

PR target/39228
* gcc.c-torture/execute/pr39228.c: New test.

From-SVN: r144295
gcc/ChangeLog
gcc/config/i386/i386.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/execute/pr39228.c [new file with mode: 0644]