Re: cgraph node profile update in cgraph_rebuild_references causes a performance issue

2014-10-30 Thread Xinliang David Li
Something seems wrong: in tree_function_version: initialize_cfun (new_decl, old_decl, old_entry_block->count); >From the above we can see new_decl's entry BB's count will be the same as old_decl (no scaling). In copy_bb, new BB's profile count will also be the same as ol

cgraph node profile update in cgraph_rebuild_references causes a performance issue

2014-10-30 Thread Wei Mi
We have a program like this: A() {// hot func ... } B() { A();// very hot if (i) { A(); // very cold } } Both callsites of A will be inlined into B. In gcc func save_inline_function_body in inline_transform stage, A's first clone will be choosen and turned into a real func.