Limit AA walking when inlining analysis examines parameters
authorPaolo Bonzini <bonzini@gnu.org>
Wed, 15 Jul 2015 15:58:43 +0000 (15:58 +0000)
committerMartin Jambor <jamborm@gcc.gnu.org>
Wed, 15 Jul 2015 15:58:43 +0000 (17:58 +0200)
commitff302741f10c7d6f014eb46f7632b57bdc43a4f5
tree127491dc7e4f3bf8622f11581b6fa60ff963f42b
parent7392b0906f329b552ab6de61a2248f860acfcd7a
Limit AA walking when inlining analysis examines parameters

2015-07-15  Paolo Bonzini  <bonzini@gnu.org>
    Martin Jambor  <mjambor@suse.cz>

* ipa-inline-analysis.c (unmodified_parm_or_parm_agg_item): Accept
struct func_body_info* instead of struct ipa_node_params*, expecting
fbi->info to be filled in.  Replace throughout.  Adjust call to
ipa_load_from_parm_agg.
(set_cond_stmt_execution_predicate): Accept struct func_body_info*
instead of struct ipa_node_params*.  Adjust calls to other functions
so that they pass either fbi or fbi->info.
(set_switch_stmt_execution_predicate): Likewise.
(will_be_nonconstant_predicate): Likewise.
(compute_bb_predicates): Likewise.
(estimate_function_body_sizes): Move asserts earlier.  Fill in
struct func_body_info, replace parms_info with fbi.info.  Adjust
calls to functions that now accept struct func_body_info.
* ipa-prop.c (param_aa_status, struct ipa_bb_info): Move to ipa-prop.h.
(struct func_body_info): Likewise.
(ipa_load_from_parm_agg_1): Rename to ipa_load_from_parm_agg,
remove static.  Adjust callers.
(ipa_load_from_parm_agg): Remove.
* ipa-prop.h (param_aa_status, ipa_bb_info): Move from ipa-prop.c.
(func_body_info): Likewise.
(ipa_load_from_parm_agg): Adjust prototype.

Co-Authored-By: Martin Jambor <mjambor@suse.cz>
From-SVN: r225838
gcc/ChangeLog
gcc/ipa-inline-analysis.c
gcc/ipa-prop.c
gcc/ipa-prop.h