https://gcc.gnu.org/g:77c925464e50dfdf224be3c27e5b72de21a92e86

commit r15-4999-g77c925464e50dfdf224be3c27e5b72de21a92e86
Author: Alexandre Oliva <ol...@adacore.com>
Date:   Thu Nov 7 02:47:19 2024 -0300

    drop redundant ifcombine_ifandif parm
    
    In preparation to changes that may modify both inner and outer
    conditions in ifcombine, drop the redundant parameter result_inv, that
    is always identical to inner_inv.
    
    
    for  gcc/ChangeLog
    
            * tree-ssa-ifcombine.cc (ifcombine_ifandif): Drop redundant
            result_inv parm.  Adjust all callers.

Diff:
---
 gcc/tree-ssa-ifcombine.cc | 18 +++++++-----------
 1 file changed, 7 insertions(+), 11 deletions(-)

diff --git a/gcc/tree-ssa-ifcombine.cc b/gcc/tree-ssa-ifcombine.cc
index 57b7e4b62f29..7fc46a913768 100644
--- a/gcc/tree-ssa-ifcombine.cc
+++ b/gcc/tree-ssa-ifcombine.cc
@@ -402,14 +402,14 @@ update_profile_after_ifcombine (basic_block inner_cond_bb,
 
 /* If-convert on a and pattern with a common else block.  The inner
    if is specified by its INNER_COND_BB, the outer by OUTER_COND_BB.
-   inner_inv, outer_inv and result_inv indicate whether the conditions
-   are inverted.
+   inner_inv, outer_inv indicate whether the conditions are inverted.
    Returns true if the edges to the common else basic-block were merged.  */
 
 static bool
 ifcombine_ifandif (basic_block inner_cond_bb, bool inner_inv,
-                  basic_block outer_cond_bb, bool outer_inv, bool result_inv)
+                  basic_block outer_cond_bb, bool outer_inv)
 {
+  bool result_inv = inner_inv;
   gimple_stmt_iterator gsi;
   tree name1, name2, bit1, bit2, bits1, bits2;
 
@@ -694,8 +694,7 @@ tree_ssa_ifcombine_bb_1 (basic_block inner_cond_bb, 
basic_block outer_cond_bb,
           <else_bb>
             ...
        */
-      return ifcombine_ifandif (inner_cond_bb, false, outer_cond_bb, false,
-                               false);
+      return ifcombine_ifandif (inner_cond_bb, false, outer_cond_bb, false);
     }
 
   /* And a version where the outer condition is negated.  */
@@ -712,8 +711,7 @@ tree_ssa_ifcombine_bb_1 (basic_block inner_cond_bb, 
basic_block outer_cond_bb,
           <else_bb>
             ...
        */
-      return ifcombine_ifandif (inner_cond_bb, false, outer_cond_bb, true,
-                               false);
+      return ifcombine_ifandif (inner_cond_bb, false, outer_cond_bb, true);
     }
 
   /* The || form is characterized by a common then_bb with the
@@ -732,8 +730,7 @@ tree_ssa_ifcombine_bb_1 (basic_block inner_cond_bb, 
basic_block outer_cond_bb,
           <then_bb>
             ...
        */
-      return ifcombine_ifandif (inner_cond_bb, true, outer_cond_bb, true,
-                               true);
+      return ifcombine_ifandif (inner_cond_bb, true, outer_cond_bb, true);
     }
 
   /* And a version where the outer condition is negated.  */
@@ -749,8 +746,7 @@ tree_ssa_ifcombine_bb_1 (basic_block inner_cond_bb, 
basic_block outer_cond_bb,
           <then_bb>
             ...
        */
-      return ifcombine_ifandif (inner_cond_bb, true, outer_cond_bb, false,
-                               true);
+      return ifcombine_ifandif (inner_cond_bb, true, outer_cond_bb, false);
     }
 
   return false;

Reply via email to