diff options
author | Martin Jambor <mjambor@suse.cz> | 2019-08-28 16:26:45 +0200 |
---|---|---|
committer | Martin Jambor <jamborm@gcc.gnu.org> | 2019-08-28 16:26:45 +0200 |
commit | b66113e9c1ec1f7550cf9680b9b9e4d725583f34 (patch) | |
tree | 0754358836ae7592c464f87688c2b2faf768aab0 | |
parent | a09b09ccee0208c68d5a6bb57fda94f55db4aded (diff) | |
download | gcc-b66113e9c1ec1f7550cf9680b9b9e4d725583f34.zip gcc-b66113e9c1ec1f7550cf9680b9b9e4d725583f34.tar.gz gcc-b66113e9c1ec1f7550cf9680b9b9e4d725583f34.tar.bz2 |
[PR 91468] Small fixes in ipa-cp.c and ipa-prop.c
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
-rw-r--r-- | gcc/ChangeLog | 12 | ||||
-rw-r--r-- | gcc/ipa-cp.c | 8 | ||||
-rw-r--r-- | gcc/ipa-prop.c | 12 |
3 files changed, 17 insertions, 15 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9d64840..525cd90 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -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 diff --git a/gcc/ipa-cp.c b/gcc/ipa-cp.c index 0046064..33d52fe 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 1a0e12e..a23aa25 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; |