Hi, when analyzing PR 70646, I found out that --param ipa-max-agg-items=0 does not prevent creation of aggregate jump functions because it is checked only after the first such jump function is created. The following patch fixes that by checking the parameter before starting the whole analysis.
Bootstrapped and lto-bootstrapped on x86_64-linux. OK for trunk? OK for all active release branches? Thanks, Martin 2016-04-18 Martin Jambor <mjam...@suse.cz> PR ipa/70646 * ipa-prop.c (determine_locally_known_aggregate_parts): Bail out early if parameter PARAM_IPA_MAX_AGG_ITEMS is zero. --- gcc/ipa-prop.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gcc/ipa-prop.c b/gcc/ipa-prop.c index 65482ba..f02ec47 100644 --- a/gcc/ipa-prop.c +++ b/gcc/ipa-prop.c @@ -1414,6 +1414,9 @@ determine_locally_known_aggregate_parts (gcall *call, tree arg, bool check_ref, by_ref; ao_ref r; + if (PARAM_VALUE (PARAM_IPA_MAX_AGG_ITEMS) == 0) + return; + /* The function operates in three stages. First, we prepare check_ref, r, arg_base and arg_offset based on what is actually passed as an actual argument. */ -- 2.8.2