r277054 svn:log changed - in /trunk/gcc: Change...
fxue@gcc.gnu.org
fxue@gcc.gnu.org
Wed Oct 16 07:41:00 GMT 2019
Author: fxue
Revision: 277054
Modified property: svn:log
Modified: svn:log at Wed Oct 16 07:41:24 2019
------------------------------------------------------------------------------
--- svn:log (original)
+++ svn:log Wed Oct 16 07:41:24 2019
@@ -1,1 +1,36 @@
-generalized IPA predicate on parameter
+Generalized IPA predicate on parameter reference
+
+2019-10-16 Feng Xue <fxue@os.amperecomputing.com>
+
+ PR ipa/91088
+ * doc/invoke.texi (ipa-max-param-expr-ops): Document new option.
+ * params.def (PARAM_IPA_MAX_PARAM_EXPR_OPS): New.
+ * ipa-predicat.h (struct expr_eval_op): New struct.
+ (expr_eval_ops): New typedef.
+ (struct condition): Add type and param_ops fields, remove size field.
+ (add_condition): Replace size parameter with type parameter, add
+ param_ops parameter.
+ * ipa-predicat.c (expr_eval_ops_equal_p): New function.
+ (predicate::add_clause): Add comparisons on type and param_ops.
+ (dump_condition): Add debug dump for param_ops.
+ (remap_after_inlining): Adjust call arguments to add_condition.
+ (add_condition): Replace size parameter with type parameter, add
+ param_ops parameter. Unshare constant value used in conditions.
+ * ipa-fnsummary.c (evaluate_conditions_for_known_args): Fold
+ parameter expressions using param_ops.
+ (decompose_param_expr): New function.
+ (set_cond_stmt_execution_predicate): Use call to decompose_param_expr
+ to replace call to unmodified_parm_or_parm_agg_item.
+ (set_switch_stmt_execution_predicate): Likewise.
+ (will_be_nonconstant_expr_predicate): Likewise. Replace usage of size
+ with type.
+ (inline_read_section): Read param_ops from summary stream.
+ (ipa_fn_summary_write): Write param_ops to summary stream.
+
+2019-10-16 Feng Xue <fxue@os.amperecomputing.com>
+
+ PR ipa/91088
+ * gcc.dg/ipa/pr91088.c: New test.
+ * gcc.dg/ipa/pr91089.c: Add sub-test for range analysis.
+ * g++.dg/tree-ssa/ivopts-3.C: Force a function to be noinline.
+
More information about the Gcc-cvs
mailing list