Commit 4a534152 by Uros Bizjak Committed by Uros Bizjak

re PR target/35083 (ICE: in extract_insn, at recog.c:1990)

	PR target/35083
	* config/i386/i386.md (floatunsisf2): Enable for TARGET_SSE_MATH only.
	Call ix86_expand_convert_uns_sisf_sse for TARGET_SSE2.

testsuite/ChangeLog:

	PR target/35083
	* gcc.target/i386/pr35083.c: New test.

From-SVN: r132114
parent 3969f765
2008-02-05 Uros Bizjak <ubizjak@gmail.com>
PR target/35083
* config/i386/i386.md (floatunsisf2): Enable for TARGET_SSE_MATH only.
Call ix86_expand_convert_uns_sisf_sse for TARGET_SSE2.
2008-02-04 Diego Novillo <dnovillo@google.com> 2008-02-04 Diego Novillo <dnovillo@google.com>
http://gcc.gnu.org/ml/gcc-patches/2008-02/msg00110.html http://gcc.gnu.org/ml/gcc-patches/2008-02/msg00110.html
......
...@@ -5306,9 +5306,9 @@ ...@@ -5306,9 +5306,9 @@
(define_expand "floatunssisf2" (define_expand "floatunssisf2"
[(use (match_operand:SF 0 "register_operand" "")) [(use (match_operand:SF 0 "register_operand" ""))
(use (match_operand:SI 1 "nonimmediate_operand" ""))] (use (match_operand:SI 1 "nonimmediate_operand" ""))]
"!TARGET_64BIT" "!TARGET_64BIT && TARGET_SSE_MATH"
{ {
if (TARGET_SSE_MATH && TARGET_SSE2) if (TARGET_SSE2)
ix86_expand_convert_uns_sisf_sse (operands[0], operands[1]); ix86_expand_convert_uns_sisf_sse (operands[0], operands[1]);
else else
x86_emit_floatuns (operands); x86_emit_floatuns (operands);
......
2008-02-05 Uros Bizjak <ubizjak@gmail.com>
PR target/35083
* gcc.target/i386/pr35083.c: New test.
2008-02-05 Paul Thomas <pault@gcc.gnu.org> 2008-02-05 Paul Thomas <pault@gcc.gnu.org>
PR fortran/32315 PR fortran/32315
/* { dg-options "-O2 -mno-80387" } */
/* { dg-do compile } */
/* { dg-require-effective-target ilp32 } */
float test (unsigned int x)
{
return (float) x;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment