From b66113e9c1ec1f7550cf9680b9b9e4d725583f34 Mon Sep 17 00:00:00 2001 From: Martin Jambor Date: Wed, 28 Aug 2019 16:26:45 +0200 Subject: [PATCH] [PR 91468] Small fixes in ipa-cp.c and ipa-prop.c 2019-08-28 Martin Jambor 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 | 12 ++++++++++++ gcc/ipa-cp.c | 8 +++----- gcc/ipa-prop.c | 12 ++---------- 3 files changed, 17 insertions(+), 15 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9d64840844f..525cd90ed50 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,15 @@ +2019-08-28 Martin Jambor + + 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 * config/i386/i386-features.c (convert_scalars_to_vector): Do not diff --git a/gcc/ipa-cp.c b/gcc/ipa-cp.c index 0046064fea1..33d52fe5537 100644 --- a/gcc/ipa-cp.c +++ b/gcc/ipa-cp.c @@ -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 diff --git a/gcc/ipa-prop.c b/gcc/ipa-prop.c index 1a0e12e6c0c..a23aa2590a0 100644 --- a/gcc/ipa-prop.c +++ b/gcc/ipa-prop.c @@ -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; -- 2.30.2