+2015-12-06  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/sh.md (rsqrtsf2): Adjust for canonical form with unspec.
+
 2015-12-06  Victoria Stepanyan  <victoria.stepanyan@amd.com>
 
        * common/config/i386/i386-common.c
 
 
 (define_insn "rsqrtsf2"
   [(set (match_operand:SF 0 "fp_arith_reg_operand" "=f")
-       (div:SF (match_operand:SF 1 "immediate_operand" "i")
-               (sqrt:SF (match_operand:SF 2 "fp_arith_reg_operand" "0"))))
+       (unspec:SF [(match_operand:SF 1 "fp_arith_reg_operand" "0")]
+                  UNSPEC_FSRRA))
    (clobber (reg:SI FPSCR_STAT_REG))
    (use (reg:SI FPSCR_MODES_REG))]
-  "TARGET_FPU_ANY && TARGET_FSRRA
-   && operands[1] == CONST1_RTX (SFmode)"
+  "TARGET_FPU_ANY && TARGET_FSRRA"
   "fsrra       %0"
   [(set_attr "type" "fsrra")
    (set_attr "fp_mode" "single")])