This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH 5/7] always define HAVE_conditional_move


From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>

gcc/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* genconfig.c (main): Always define HAVE_conditional_move.
* *.c: Don't check if HAVE_conditional_move is defined.
---
 gcc/ChangeLog         |  4 ++++
 gcc/combine.c         |  2 +-
 gcc/expmed.c          |  4 ++--
 gcc/expr.c            |  8 ++++----
 gcc/genconfig.c       |  2 ++
 gcc/ifcvt.c           | 11 -----------
 gcc/optabs.c          |  6 +++---
 gcc/optabs.h          |  2 +-
 gcc/toplev.c          |  2 +-
 gcc/tree-ssa-phiopt.c |  4 ----
 10 files changed, 18 insertions(+), 27 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 21ff1b8..d115f6e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,9 @@
 2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
 
+	* genconfig.c (main): Always define HAVE_conditional_move.
+
+2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
+
 	* *.c: Remove comparison of ARG_FRAME_POINTER_REGNUM and
 	FRAME_POINTER_REGNUM with the preprocessor.
 
diff --git a/gcc/combine.c b/gcc/combine.c
index 812b917..45177c8 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -6816,7 +6816,7 @@ simplify_set (rtx x)
       && (GET_CODE (XEXP (src, 0)) == EQ || GET_CODE (XEXP (src, 0)) == NE)
       && XEXP (XEXP (src, 0), 1) == const0_rtx
       && GET_MODE (src) == GET_MODE (XEXP (XEXP (src, 0), 0))
-#ifdef HAVE_conditional_move
+#if HAVE_conditional_move
       && ! can_conditionally_move_p (GET_MODE (src))
 #endif
       && (num_sign_bit_copies (XEXP (XEXP (src, 0), 0),
diff --git a/gcc/expmed.c b/gcc/expmed.c
index c95299c..589a7a3 100644
--- a/gcc/expmed.c
+++ b/gcc/expmed.c
@@ -3797,7 +3797,7 @@ expand_sdiv_pow2 (machine_mode mode, rtx op0, HOST_WIDE_INT d)
       return expand_shift (RSHIFT_EXPR, mode, temp, logd, NULL_RTX, 0);
     }
 
-#ifdef HAVE_conditional_move
+#if HAVE_conditional_move
   if (BRANCH_COST (optimize_insn_for_speed_p (), false)
       >= 2)
     {
@@ -5555,7 +5555,7 @@ emit_store_flag (rtx target, enum rtx_code code, rtx op0, rtx op1,
 				    target_mode);
 	}
 
-#ifdef HAVE_conditional_move
+#if HAVE_conditional_move
       /* Try using a setcc instruction for ORDERED/UNORDERED, followed by a
 	 conditional move.  */
       tem = emit_store_flag_1 (subtarget, first_code, op0, op1, mode, 0,
diff --git a/gcc/expr.c b/gcc/expr.c
index 275c636..efbf9fb 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -2423,7 +2423,7 @@ get_def_for_expr (tree name, enum tree_code code)
   return def_stmt;
 }
 
-#ifdef HAVE_conditional_move
+#if HAVE_conditional_move
 /* Return the defining gimple statement for SSA_NAME NAME if it is an
    assigment and the class of the expresion on the RHS is CLASS.  Return
    NULL otherwise.  */
@@ -7517,7 +7517,7 @@ highest_pow2_factor_for_target (const_tree target, const_tree exp)
   return MAX (factor, talign);
 }
 
-#ifdef HAVE_conditional_move
+#if HAVE_conditional_move
 /* Convert the tree comparison code TCODE to the rtl one where the
    signedness is UNSIGNEDP.  */
 
@@ -8021,7 +8021,7 @@ expand_cond_expr_using_cmove (tree treeop0 ATTRIBUTE_UNUSED,
 			      tree treeop1 ATTRIBUTE_UNUSED,
 			      tree treeop2 ATTRIBUTE_UNUSED)
 {
-#ifdef HAVE_conditional_move
+#if HAVE_conditional_move
   rtx insn;
   rtx op00, op01, op1, op2;
   enum rtx_code comparison_code;
@@ -8892,7 +8892,7 @@ expand_expr_real_2 (sepops ops, rtx target, machine_mode tmode,
 	    if (code == MIN_EXPR)
 	      comparison_code = LT;
 	  }
-#ifdef HAVE_conditional_move
+#if HAVE_conditional_move
 	/* Use a conditional move if possible.  */
 	if (can_conditionally_move_p (mode))
 	  {
diff --git a/gcc/genconfig.c b/gcc/genconfig.c
index 2247eef..a3e5b31 100644
--- a/gcc/genconfig.c
+++ b/gcc/genconfig.c
@@ -352,6 +352,8 @@ main (int argc, char **argv)
 
   if (have_cmove_flag)
     printf ("#define HAVE_conditional_move 1\n");
+  else
+    printf ("#define HAVE_conditional_move 0\n");
 
   if (have_cond_exec_flag)
     printf ("#define HAVE_conditional_execution 1\n");
diff --git a/gcc/ifcvt.c b/gcc/ifcvt.c
index b00aaa4..37117b7 100644
--- a/gcc/ifcvt.c
+++ b/gcc/ifcvt.c
@@ -72,9 +72,6 @@
 #include "shrink-wrap.h"
 #include "ifcvt.h"
 
-#ifndef HAVE_conditional_move
-#define HAVE_conditional_move 0
-#endif
 #ifndef HAVE_incscc
 #define HAVE_incscc 0
 #endif
@@ -1505,7 +1502,6 @@ noce_emit_cmove (struct noce_if_info *if_info, rtx x, enum rtx_code code,
 	return NULL_RTX;
     }
 
-#if HAVE_conditional_move
   unsignedp = (code == LTU || code == GEU
 	       || code == LEU || code == GTU);
 
@@ -1562,13 +1558,6 @@ noce_emit_cmove (struct noce_if_info *if_info, rtx x, enum rtx_code code,
     }
   else
     return NULL_RTX;
-#else
-  /* We'll never get here, as noce_process_if_block doesn't call the
-     functions involved.  Ifdef code, however, should be discouraged
-     because it leads to typos in the code not selected.  However,
-     emit_conditional_move won't exist either.  */
-  return NULL_RTX;
-#endif
 }
 
 /* Try only simple constants and registers here.  More complex cases
diff --git a/gcc/optabs.c b/gcc/optabs.c
index 26dbe87..7a79148 100644
--- a/gcc/optabs.c
+++ b/gcc/optabs.c
@@ -929,7 +929,7 @@ expand_subword_shift (machine_mode op1_mode, optab binoptab,
 }
 
 
-#ifdef HAVE_conditional_move
+#if HAVE_conditional_move
 /* Try implementing expand_doubleword_shift using conditional moves.
    The shift is by < BITS_PER_WORD if (CMP_CODE CMP1 CMP2) is true,
    otherwise it is by >= BITS_PER_WORD.  SUBWORD_OP1 and SUPERWORD_OP1
@@ -1096,7 +1096,7 @@ expand_doubleword_shift (machine_mode op1_mode, optab binoptab,
 				     unsignedp, methods, shift_mask);
     }
 
-#ifdef HAVE_conditional_move
+#if HAVE_conditional_move
   /* Try using conditional moves to generate straight-line code.  */
   {
     rtx_insn *start = get_last_insn ();
@@ -4518,7 +4518,7 @@ emit_indirect_jump (rtx loc ATTRIBUTE_UNUSED)
 #endif
 }
 
-#ifdef HAVE_conditional_move
+#if HAVE_conditional_move
 
 /* Emit a conditional move instruction if the machine supports one for that
    condition and machine mode.
diff --git a/gcc/optabs.h b/gcc/optabs.h
index 5c30ce5..ff45eb8 100644
--- a/gcc/optabs.h
+++ b/gcc/optabs.h
@@ -364,7 +364,7 @@ extern void emit_indirect_jump (rtx);
 #error "insn-config.h must be included before optabs.h"
 #endif
 
-#ifdef HAVE_conditional_move
+#if HAVE_conditional_move
 /* Emit a conditional move operation.  */
 rtx emit_conditional_move (rtx, enum rtx_code, rtx, rtx, machine_mode,
 			   rtx, rtx, machine_mode, int);
diff --git a/gcc/toplev.c b/gcc/toplev.c
index c73368f..9be15d7 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -1576,7 +1576,7 @@ process_options (void)
     warning (0, "var-tracking-assignments changes selective scheduling");
 
   if (flag_tree_cselim == AUTODETECT_VALUE)
-#ifdef HAVE_conditional_move
+#if HAVE_conditional_move
     flag_tree_cselim = 1;
 #else
     flag_tree_cselim = 0;
diff --git a/gcc/tree-ssa-phiopt.c b/gcc/tree-ssa-phiopt.c
index 09d6f67..b8c77ab 100644
--- a/gcc/tree-ssa-phiopt.c
+++ b/gcc/tree-ssa-phiopt.c
@@ -83,10 +83,6 @@ along with GCC; see the file COPYING3.  If not see
 #include "tree-scalar-evolution.h"
 #include "tree-inline.h"
 
-#ifndef HAVE_conditional_move
-#define HAVE_conditional_move (0)
-#endif
-
 static unsigned int tree_ssa_phiopt_worker (bool, bool);
 static bool conditional_replacement (basic_block, basic_block,
 				     edge, edge, gphi *, tree, tree);
-- 
2.4.0.78.g7c6ecbf


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]