diff options
author | Martin Jambor <mjambor@suse.cz> | 2016-05-18 15:04:23 +0200 |
---|---|---|
committer | Martin Jambor <jamborm@gcc.gnu.org> | 2016-05-18 15:04:23 +0200 |
commit | 848a392af3fffc1d66fc359861e02f8f5edf0ab6 (patch) | |
tree | 15e7033e538678addcbb4347ed7dd8352c88b060 /gcc/tree-dfa.c | |
parent | 1f2ab7765b1dcc9a6f8426accc7ee038fe366f95 (diff) | |
download | gcc-848a392af3fffc1d66fc359861e02f8f5edf0ab6.zip gcc-848a392af3fffc1d66fc359861e02f8f5edf0ab6.tar.gz gcc-848a392af3fffc1d66fc359861e02f8f5edf0ab6.tar.bz2 |
[PR 70646] Store size to inlining predicate conditions
2016-05-18 Martin Jambor <mjambor@suse.cz>
PR ipa/70646
* ipa-inline.h (condition): New field size.
* ipa-inline-analysis.c (add_condition): New parameter SIZE, use it
for comaprison and store it into the new condition.
(evaluate_conditions_for_known_args): Use condition size to check
access sizes for all but CHANGED conditions.
(unmodified_parm_1): New parameter size_p, store access size into it.
(unmodified_parm): Likewise.
(unmodified_parm_or_parm_agg_item): Likewise.
(eliminated_by_inlining_prob): Pass NULL to unmodified_parm as size_p.
(set_cond_stmt_execution_predicate): Extract access sizes and store
them to conditions.
(set_switch_stmt_execution_predicate): Likewise.
(will_be_nonconstant_expr_predicate): Likewise.
(will_be_nonconstant_predicate): Likewise.
(inline_read_section): Stream condition size.
(inline_write_summary): Likewise.
testsuite/
* gcc.dg/ipa/pr70646.c: New test.
From-SVN: r236389
Diffstat (limited to 'gcc/tree-dfa.c')
0 files changed, 0 insertions, 0 deletions