[PR 91468] Small fixes in ipa-cp.c and ipa-prop.c
authorMartin Jambor <mjambor@suse.cz>
Wed, 28 Aug 2019 14:26:45 +0000 (16:26 +0200)
committerMartin Jambor <jamborm@gcc.gnu.org>
Wed, 28 Aug 2019 14:26:45 +0000 (16:26 +0200)
2019-08-28  Martin Jambor  <mjambor@suse.cz>

PR ipa/91468
* ipa-cp.c (merge_agg_lats_step): Removed redundant test, made a
checking assert a normal assert to test it really is redundant.
* ipa-prop.c (compute_complex_assign_jump_func): Removed
redundant test.
(update_jump_functions_after_inlining): Removed combining unary
arithmetic operations with an ancestor jump function.
(ipcp_modif_dom_walker::before_dom_children): Fix wrong use of rhs
instead of t.

From-SVN: r274992

gcc/ChangeLog
gcc/ipa-cp.c
gcc/ipa-prop.c

index 9d64840..525cd90 100644 (file)
@@ -1,3 +1,15 @@
+2019-08-28  Martin Jambor  <mjambor@suse.cz>
+
+       PR ipa/91468
+       * ipa-cp.c (merge_agg_lats_step): Removed redundant test, made a
+       checking assert a normal assert to test it really is redundant.
+       * ipa-prop.c (compute_complex_assign_jump_func): Removed
+       redundant test.
+       (update_jump_functions_after_inlining): Removed combining unary
+       arithmetic operations with an ancestor jump function.
+       (ipcp_modif_dom_walker::before_dom_children): Fix wrong use of rhs
+       instead of t.
+
 2019-08-28  Richard Biener  <rguenther@suse.de>
 
        * config/i386/i386-features.c (convert_scalars_to_vector): Do not
index 0046064..33d52fe 100644 (file)
@@ -2026,15 +2026,13 @@ merge_agg_lats_step (class ipcp_param_lattices *dest_plats,
 
   if (**aglat && (**aglat)->offset == offset)
     {
-      if ((**aglat)->size != val_size
-         || ((**aglat)->next
-             && (**aglat)->next->offset < offset + val_size))
+      if ((**aglat)->size != val_size)
        {
          set_agg_lats_to_bottom (dest_plats);
          return false;
        }
-      gcc_checking_assert (!(**aglat)->next
-                          || (**aglat)->next->offset >= offset + val_size);
+      gcc_assert (!(**aglat)->next
+                 || (**aglat)->next->offset >= offset + val_size);
       return true;
     }
   else
index 1a0e12e..a23aa25 100644 (file)
@@ -1243,9 +1243,7 @@ compute_complex_assign_jump_func (struct ipa_func_body_info *fbi,
            break;
          }
        case GIMPLE_UNARY_RHS:
-         if (is_gimple_assign (stmt)
-             && gimple_assign_rhs_class (stmt) == GIMPLE_UNARY_RHS
-             && ! CONVERT_EXPR_CODE_P (gimple_assign_rhs_code (stmt)))
+         if (!CONVERT_EXPR_CODE_P (gimple_assign_rhs_code (stmt)))
            ipa_set_jf_unary_pass_through (jfunc, index,
                                           gimple_assign_rhs_code (stmt));
        default:;
@@ -2725,12 +2723,6 @@ update_jump_functions_after_inlining (struct cgraph_edge *cs,
              dst->value.ancestor.agg_preserved &=
                src->value.pass_through.agg_preserved;
            }
-         else if (src->type == IPA_JF_PASS_THROUGH
-                  && TREE_CODE_CLASS (src->value.pass_through.operation) == tcc_unary)
-           {
-             dst->value.ancestor.formal_id = src->value.pass_through.formal_id;
-             dst->value.ancestor.agg_preserved = false;
-           }
          else if (src->type == IPA_JF_ANCESTOR)
            {
              dst->value.ancestor.formal_id = src->value.ancestor.formal_id;
@@ -4933,7 +4925,7 @@ ipcp_modif_dom_walker::before_dom_children (basic_block bb)
        {
          /* V_C_E can do things like convert an array of integers to one
             bigger integer and similar things we do not handle below.  */
-         if (TREE_CODE (rhs) == VIEW_CONVERT_EXPR)
+         if (TREE_CODE (t) == VIEW_CONVERT_EXPR)
            {
              vce = true;
              break;