re PR target/49285 (build fails on mmix in libgcc2.c:__powisf2: ICE in emit_unop_insn)
authorHans-Peter Nilsson <hp@bitrange.com>
Mon, 6 Jun 2011 04:06:08 +0000 (04:06 +0000)
committerHans-Peter Nilsson <hp@gcc.gnu.org>
Mon, 6 Jun 2011 04:06:08 +0000 (04:06 +0000)
PR target/49285
* config/mmix/mmix.md ("truncdfsf2", "extendsfdf2"): Correct
predicate to nonimmediate_operand from memory_operand for the
operand that is to be forced to memory by the expander.  Lose
the constraints.

From-SVN: r174681

gcc/ChangeLog
gcc/config/mmix/mmix.md

index 98e1c08fec5f3803ffc88d2c6bd4ec45ca67297d..0560f55a5f843e87b6ca2b7686600c481049f713 100644 (file)
@@ -1,3 +1,11 @@
+2011-06-06  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       PR target/49285
+       * config/mmix/mmix.md ("truncdfsf2", "extendsfdf2"): Correct
+       predicate to nonimmediate_operand from memory_operand for the
+       operand that is to be forced to memory by the expander.  Lose
+       the constraints.
+
 2011-06-05  Eric Botcazou  <ebotcazou@adacore.com>
 
        * config/sparc/sparc.c (output_return): Fix thinko in the output of an
index 97ab5e1312eefa4c232c545bc5a67b90eb5da719..dbd4c0f778d9d6f2b4a157f07ccad5ee78891489 100644 (file)
@@ -625,8 +625,8 @@ DIVU %1,%1,%2\;GET %0,:rR\;NEGU %2,0,%0\;CSNN %0,$255,%2")
 ;; define_expand with the old pattern as "anonymous".
 ;; FIXME: Perhaps with SECONDARY_MEMORY_NEEDED?
 (define_expand "truncdfsf2"
-  [(set (match_operand:SF 0 "memory_operand" "")
-       (float_truncate:SF (match_operand:DF 1 "register_operand" "")))]
+  [(set (match_operand:SF 0 "nonimmediate_operand")
+       (float_truncate:SF (match_operand:DF 1 "register_operand")))]
   ""
   "
 {
@@ -660,8 +660,8 @@ DIVU %1,%1,%2\;GET %0,:rR\;NEGU %2,0,%0\;CSNN %0,$255,%2")
 
 ;; Same comment as for truncdfsf2.
 (define_expand "extendsfdf2"
-  [(set (match_operand:DF 0 "register_operand" "=r")
-       (float_extend:DF (match_operand:SF 1 "memory_operand" "m")))]
+  [(set (match_operand:DF 0 "register_operand")
+       (float_extend:DF (match_operand:SF 1 "nonimmediate_operand")))]
   ""
   "
 {