aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Jambor <mjambor@suse.cz>2019-08-28 16:26:45 +0200
committerMartin Jambor <jamborm@gcc.gnu.org>2019-08-28 16:26:45 +0200
commitb66113e9c1ec1f7550cf9680b9b9e4d725583f34 (patch)
tree0754358836ae7592c464f87688c2b2faf768aab0
parenta09b09ccee0208c68d5a6bb57fda94f55db4aded (diff)
downloadgcc-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/ChangeLog12
-rw-r--r--gcc/ipa-cp.c8
-rw-r--r--gcc/ipa-prop.c12
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;