i386.c (ix86_preferred_reload_class): Use IS_STACK_MODE, INTEGER_CLASS_P, FLOAT_CLASS...
authorUros Bizjak <uros@gcc.gnu.org>
Tue, 24 May 2016 15:42:17 +0000 (17:42 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Tue, 24 May 2016 15:42:17 +0000 (17:42 +0200)
* config/i386/i386.c (ix86_preferred_reload_class): Use
IS_STACK_MODE, INTEGER_CLASS_P, FLOAT_CLASS_P and Q_CLASS_P macros.

From-SVN: r236645

gcc/ChangeLog
gcc/config/i386/i386.c

index 45313abff88b3049ffdbe25a2f97ad39b2627bf7..0ca7e794ef78e9471d2b036f8de563775e63ad60 100644 (file)
 2016-05-24  Kugan Vivekanandarajah  <kuganv@linaro.org>
 
        PR middle-end/71252
-       * tree-ssa-reassoc.c (rewrite_expr_tree_parallel): Add stmt_to_insert after
-       build_and_add_sum creates new use stmt.
+       * tree-ssa-reassoc.c (rewrite_expr_tree_parallel): Add stmt_to_insert
+       after build_and_add_sum creates new use stmt.
 
 2016-05-24  Richard Sandiford  <richard.sandiford@arm.com>
 
        (add_to_ops_vec): Add stmt_to_insert.
        (add_repeat_to_ops_vec): Init stmt_to_insert.
        (insert_stmt_before_use): New.
-       (transform_add_to_multiply): Remove mult_stmt insertion and add it to ops vector.
+       (transform_add_to_multiply): Remove mult_stmt insertion and add it
+       to ops vector.
        (get_ops): Init stmt_to_insert.
        (maybe_optimize_range_tests): Likewise.
        (rewrite_expr_tree): Insert stmt_to_insert before use stmt.
        TARGET_MIX_SSE_I387.  Rewrite using X87_FLOAT_MODE_P and
        SSE_FLOAT_MODE_P macros.
        * config/i386/i386.c (ix86_preferred_reload_class): Use
-       IS_STACK_MODE, INTEGER_CLASS_P and FLOAT_CLASS_P macros.  Cleanup
-       regclass processing for CONST_DOUBLE_P.
+       IS_STACK_MODE, INTEGER_CLASS_P, FLOAT_CLASS_P and Q_CLASS_P macros.
+       Cleanup regclass processing for CONST_DOUBLE_P.
        (ix86_preferred_output_reload_class): Use IS_STACK_MODE macro.
        (ix86_rtx_costs): Remove redundant TARGET_80387 check
        with IS_STACK_MODE macro.
 2016-05-22  Kugan Vivekanandarajah  <kuganv@linaro.org>
 
        PR middle-end/40921
-        * tree-ssa-reassoc.c (try_special_add_to_ops): New.
-        (linearize_expr_tree): Call try_special_add_to_ops.
-        (reassociate_bb): Convert MULT_EXPR by (-1) to NEGATE_EXPR.
+       * tree-ssa-reassoc.c (try_special_add_to_ops): New.
+       (linearize_expr_tree): Call try_special_add_to_ops.
+       (reassociate_bb): Convert MULT_EXPR by (-1) to NEGATE_EXPR.
 
 2016-05-21  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
 
index c474bb5c37e3c464fe2fe870d93e34d420f91741..51364f3f50fc907782416112d02a90720cfd47e3 100644 (file)
@@ -43334,17 +43334,18 @@ ix86_preferred_reload_class (rtx x, reg_class_t regclass)
      (plus soft-fp const_int).  Which can only be computed into general
      regs.  */
   if (GET_CODE (x) == PLUS)
-    return reg_class_subset_p (regclass, GENERAL_REGS) ? regclass : NO_REGS;
+    return INTEGER_CLASS_P (regclass) ? regclass : NO_REGS;
 
   /* QImode constants are easy to load, but non-constant QImode data
      must go into Q_REGS.  */
   if (GET_MODE (x) == QImode && !CONSTANT_P (x))
     {
-      if (reg_class_subset_p (regclass, Q_REGS))
+      if (Q_CLASS_P (regclass))
        return regclass;
-      if (reg_class_subset_p (Q_REGS, regclass))
+      else if (reg_class_subset_p (Q_REGS, regclass))
        return Q_REGS;
-      return NO_REGS;
+      else
+       return NO_REGS;
     }
 
   return regclass;