> On 24 October 2017 at 16:26, Jan Hubicka <hubi...@ucw.cz> wrote: > >> 2017-10-13 Prathamesh Kulkarni <prathamesh.kulka...@linaro.org> > >> > >> * cgraph.h (set_malloc_flag): Declare. > >> * cgraph.c (set_malloc_flag_1): New function. > >> (set_malloc_flag): Likewise. > >> * ipa-fnsummary.h (ipa_call_summary): Add new field is_return_callee. > >> * ipa-fnsummary.c (ipa_call_summary::reset): Set is_return_callee to > >> false. > >> (read_ipa_call_summary): Add support for reading is_return_callee. > >> (write_ipa_call_summary): Stream is_return_callee. > >> * ipa-inline.c (ipa_inline): Remove call to ipa_free_fn_summary. > >> * ipa-pure-const.c: Add headers ssa.h, alloc-pool.h, > >> symbol-summary.h, > >> ipa-prop.h, ipa-fnsummary.h. > >> (pure_const_names): Change to static. > >> (malloc_state_e): Define. > >> (malloc_state_names): Define. > >> (funct_state_d): Add field malloc_state. > >> (varying_state): Set malloc_state to STATE_MALLOC_BOTTOM. > >> (check_retval_uses): New function. > >> (malloc_candidate_p): Likewise. > >> (analyze_function): Add support for malloc attribute. > >> (pure_const_write_summary): Stream malloc_state. > >> (pure_const_read_summary): Add support for reading malloc_state. > >> (dump_malloc_lattice): New function. > >> (propagate_malloc): New function. > >> (ipa_pure_const::execute): Call propagate_malloc and > >> ipa_free_fn_summary. > >> (pass_local_pure_const::execute): Add support for malloc attribute. > >> * ssa-iterators.h (RETURN_FROM_IMM_USE_STMT): New macro. > >> > >> testsuite/ > >> * gcc.dg/ipa/propmalloc-1.c: New test-case. > >> * gcc.dg/ipa/propmalloc-2.c: Likewise. > >> * gcc.dg/ipa/propmalloc-3.c: Likewise. > > > > OK. > > Perhaps we could also add -Wsuggest-sttribute=malloc and mention it in > > changes.html? > Done in this version. > In warn_function_malloc(), I passed false for known_finite param to > suggest_attribute(). > Does that look OK ? > Validation in progress. OK to commit if passes ?
OK, thanks! Honza