* optabs.c (expand_float): Fix REG_EQUAL for UNSIGNED_FLOAT libcall.
authorBob Wilson <bob.wilson@acm.org>
Fri, 25 Apr 2008 18:20:02 +0000 (18:20 +0000)
committerBob Wilson <bwilson@gcc.gnu.org>
Fri, 25 Apr 2008 18:20:02 +0000 (18:20 +0000)
From-SVN: r134673

gcc/ChangeLog
gcc/optabs.c

index 60c2a930882b925480e63ff7f254a8c6859fcb97..b6824f5ee6319d0e5f69e6c9fb71bd05569829a3 100644 (file)
@@ -1,3 +1,7 @@
+2008-04-25  Bob Wilson  <bob.wilson@acm.org>
+       
+       * optabs.c (expand_float): Fix REG_EQUAL for UNSIGNED_FLOAT libcall.
+       
 2008-04-25  H.J. Lu  <hongjiu.lu@intel.com>
 
        * config/i386/sse.md (mov<mode>): Replace SSEMODEI with
index 11df818fb891fe58b11270060a4ff5a148660672..8978a975a41cb312f262e6af14373b4543d9e0a9 100644 (file)
@@ -5270,7 +5270,8 @@ expand_float (rtx to, rtx from, int unsignedp)
       end_sequence ();
 
       emit_libcall_block (insns, target, value,
-                         gen_rtx_FLOAT (GET_MODE (to), from));
+                         gen_rtx_fmt_e (unsignedp ? UNSIGNED_FLOAT : FLOAT,
+                                        GET_MODE (to), from));
     }
 
  done: