re PR target/61423 (Incorrect conversion from unsigned int to floating point)
authorUros Bizjak <uros@gcc.gnu.org>
Fri, 6 Jun 2014 17:45:10 +0000 (19:45 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Fri, 6 Jun 2014 17:45:10 +0000 (19:45 +0200)
commit7b11cab795af9c578a20c0909f3f6edbb31c0879
tree03870c66a2fb6dfd37fdb3bed1a073af54cb275f
parent5a770e0137b2dbfcf87978b6ec949114449ad1a9
re PR target/61423 (Incorrect conversion from unsigned int to floating point)

PR target/61423
* config/i386/i386.md (*floatunssi<mode>2_i387_with_xmm): New
define_insn_and_split pattern, merged from *floatunssi<mode>2_1
and corresponding splitters.  Zero extend general register
or memory input operand to XMM temporary.  Enable for
TARGET_SSE2 and TARGET_INTER_UNIT_MOVES_TO_VEC only.
(floatunssi<mode>2): Update expander predicate.

testsuite/ChangeLog:

PR target/61423
* gcc.target/i386/pr61423.c: New test.

From-SVN: r211321
gcc/ChangeLog
gcc/config/i386/i386.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr61423.c [new file with mode: 0644]