OSDN Git Service

* config/sh/sh.c (fpscr_set_from_mem): Call get_free_reg
authorkkojima <kkojima@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 1 Jun 2007 04:58:23 +0000 (04:58 +0000)
committerkkojima <kkojima@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 1 Jun 2007 04:58:23 +0000 (04:58 +0000)
only after no_new_pseudos.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@125258 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/sh/sh.c

index e622c34..87ce2f1 100644 (file)
@@ -1,3 +1,8 @@
+2007-06-01  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/sh.c (fpscr_set_from_mem): Call get_free_reg
+       only after no_new_pseudos.
+
 2007-05-31  Eric Christopher  <echristo@apple.com>
 
        * expr.c (convert_move): Assert that we don't have a BLKmode
index b3c46ab..10d7a86 100644 (file)
@@ -8542,8 +8542,9 @@ fpscr_set_from_mem (int mode, HARD_REG_SET regs_live)
 {
   enum attr_fp_mode fp_mode = mode;
   enum attr_fp_mode norm_mode = ACTUAL_NORMAL_MODE (FP_MODE);
-  rtx addr_reg = get_free_reg (regs_live);
+  rtx addr_reg;
 
+  addr_reg = no_new_pseudos ? get_free_reg (regs_live) : NULL_RTX;
   emit_fpu_switch (addr_reg, fp_mode == norm_mode);
 }