On 24 November 2016 at 15:23, Jan Hubicka <hubi...@ucw.cz> wrote: >> >If DECL_ARGUMENTS is not available at WPA stage then I see no other >> >way than to put the types on the jump functions. >> > >> OK. I will record the type in jump function and send a revised patch. > > It would be good to check how much of difference this makes to memory use > of WPA for larger program (i.e. Firefox). I guess it doesn't need to be too > bad given that most of those types are streamed for other reasons anyway. > The type lookup always seemed like a kludge, so indeed saving types to > jump functions makes sense to me. Similarly should the types also be saved in jump-function for ipa-bits propagation ?
Thanks, Prathamesh > > Thanks, > Honza >> >> Thanks, >> Kugan >> >> >>If just preferring DECL_ARGUMENTS is enough, then changing >> >>ipa_get_callee_param_type to use that if is is available, as Richi >> >>suggested, would indeed be preferable. But if even falling back on it >> >>can cause errors, then I am not sure if it helps. >> >> >> >>In any event, thanks for diligently dealing with the fallout, >> >> >> >>Martin >> >> >> >> >> >>> >> >>>Bootstrapped and regression tested on x86_64-linux-gnu with no new >> >>>regressions. Is this OK for trunk? >> >>> >> >>>Thanks, >> >>>Kugan >> >>> >> >>>gcc/testsuite/ChangeLog: >> >>> >> >>>2016-11-18 Kugan Vivekanandarajah <kug...@linaro.org> >> >>> >> >>> PR IPA/78365 >> >>> * gcc.dg/torture/pr78365.c: New test. >> >>> >> >>>gcc/ChangeLog: >> >>> >> >>>2016-11-18 Kugan Vivekanandarajah <kug...@linaro.org> >> >>> >> >>> PR IPA/78365 >> >>> * ipa-cp.c (propagate_constants_accross_call): get param type from >> >>> callees >> >>> DECL_ARGUMENTS if available. >> >>> * ipa-prop.c (ipa_compute_jump_functions_for_edge): Likewise. >> >>> (ipcp_update_vr): Remove now redundant conversion of precision for >> >>> VR. >> >>> * ipa-prop.h: Make ipa_get_callee_param_type local again.