From 2893f753057ad4e703efad9766713d961b652e28 Mon Sep 17 00:00:00 2001
From: Rafael Avila de Espindola <espindola@google.com>
Date: Thu, 10 Apr 2008 20:59:50 +0000
Subject: [PATCH] tree-vrp.c (extract_range_from_binary_expr): Don't handle
 TRUTH_ANDIF_EXPR or TRUTH_ORIF_EXPR.

2008-04-10  Rafael Espindola  <espindola@google.com>

	* gcc/tree-vrp.c (extract_range_from_binary_expr): Don't handle
	TRUTH_ANDIF_EXPR or TRUTH_ORIF_EXPR.
	(extract_range_from_expr): The same.

From-SVN: r134176
---
 gcc/ChangeLog  | 6 ++++++
 gcc/tree-cfg.c | 2 ++
 gcc/tree-vrp.c | 8 +-------
 3 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d2599353201c..2b2a30761e12 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2008-04-10  Rafael Espindola  <espindola@google.com>
+
+	* gcc/tree-vrp.c (extract_range_from_binary_expr): Don't handle
+	TRUTH_ANDIF_EXPR or TRUTH_ORIF_EXPR.
+	(extract_range_from_expr): The same.
+
 2008-04-10  Adam Nemet  <anemet@caviumnetworks.com>
 
 	* config/mips/mips.md (GPR2): New mode iterator.
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c
index 5cff71f70c03..fec1d64c029e 100644
--- a/gcc/tree-cfg.c
+++ b/gcc/tree-cfg.c
@@ -3854,6 +3854,8 @@ verify_gimple_expr (tree expr)
 
     case TRUTH_ANDIF_EXPR:
     case TRUTH_ORIF_EXPR:
+      gcc_unreachable ();
+
     case TRUTH_AND_EXPR:
     case TRUTH_OR_EXPR:
     case TRUTH_XOR_EXPR:
diff --git a/gcc/tree-vrp.c b/gcc/tree-vrp.c
index 273b5fdfdc07..7ea026272b85 100644
--- a/gcc/tree-vrp.c
+++ b/gcc/tree-vrp.c
@@ -1887,8 +1887,6 @@ extract_range_from_binary_expr (value_range_t *vr,
       && code != MIN_EXPR
       && code != MAX_EXPR
       && code != BIT_AND_EXPR
-      && code != TRUTH_ANDIF_EXPR
-      && code != TRUTH_ORIF_EXPR
       && code != TRUTH_AND_EXPR
       && code != TRUTH_OR_EXPR)
     {
@@ -1975,9 +1973,7 @@ extract_range_from_binary_expr (value_range_t *vr,
 
   /* For integer ranges, apply the operation to each end of the
      range and see what we end up with.  */
-  if (code == TRUTH_ANDIF_EXPR
-      || code == TRUTH_ORIF_EXPR
-      || code == TRUTH_AND_EXPR
+  if (code == TRUTH_AND_EXPR
       || code == TRUTH_OR_EXPR)
     {
       /* If one of the operands is zero, we know that the whole
@@ -2751,8 +2747,6 @@ extract_range_from_expr (value_range_t *vr, tree expr)
   else if (code == SSA_NAME)
     extract_range_from_ssa_name (vr, expr);
   else if (TREE_CODE_CLASS (code) == tcc_binary
-	   || code == TRUTH_ANDIF_EXPR
-	   || code == TRUTH_ORIF_EXPR
 	   || code == TRUTH_AND_EXPR
 	   || code == TRUTH_OR_EXPR
 	   || code == TRUTH_XOR_EXPR)
-- 
GitLab