Re: Ping*2: [PATCH v5] Missed function specialization + partial devirtualization

2019-11-18 Thread Martin Liška
On 11/16/19 10:59 AM, luoxhu wrote: Sorry that I don't quite understand your meanning here. I didn't grep the word "cgraph_edge_summary" in source code, do you mean add new structure Hello. He wanted to write call_summary class and so you need something similar to ipa-sra.c:431. It's a data s

Re: Ping*2: [PATCH v5] Missed function specialization + partial devirtualization

2019-11-16 Thread luoxhu
Hi Thanks, On 2019/11/14 17:04, Jan Hubicka wrote: >> PR ipa/69678 >> * cgraph.c (symbol_table::create_edge): Init speculative_id. >> (cgraph_edge::make_speculative): Add param for setting speculative_id. >> (cgraph_edge::speculative_call_info): Find reference by >> specul

Re: Ping*2: [PATCH v5] Missed function specialization + partial devirtualization

2019-11-14 Thread Jan Hubicka
> PR ipa/69678 > * cgraph.c (symbol_table::create_edge): Init speculative_id. > (cgraph_edge::make_speculative): Add param for setting speculative_id. > (cgraph_edge::speculative_call_info): Find reference by > speculative_id for multiple indirect targets. > (cgr

Ping*2: [PATCH v5] Missed function specialization + partial devirtualization

2019-11-13 Thread luoxhu
Rebase to trunk including void gimple_ic_transform. This patch aims to fix PR69678 caused by PGO indirect call profiling performance issues. The bug that profiling data is never working was fixed by Martin's pull back of topN patches, performance got GEOMEAN ~1% improvement(+24% for 511.povray_r

Ping: [PATCH v5] Missed function specialization + partial devirtualization

2019-11-05 Thread luoxhu
On 2019/10/22 22:07, Martin Liška wrote: On 9/27/19 9:13 AM, luoxhu wrote: Thanks for your time of so many round of reviews. You're welcome. One last request would be please to make gimple_ic_transform a void function. See attached patch. I'll remind the patch today to Honza. Thanks, Marti

Re: [PATCH v5] Missed function specialization + partial devirtualization

2019-10-22 Thread Martin Liška
On 9/27/19 9:13 AM, luoxhu wrote: > Thanks for your time of so many round of reviews. You're welcome. One last request would be please to make gimple_ic_transform a void function. See attached patch. I'll remind the patch today to Honza. Thanks, Martin diff --git a/gcc/value-prof.c b/gcc/value-p

Ping: [PATCH v5] Missed function specialization + partial devirtualization

2019-10-15 Thread luoxhu
Ping: Attachment: v5-0001-Missed-function-specialization-partial-devirtuali.patch: https://gcc.gnu.org/ml/gcc-patches/2019-09/txtuTT17jV7n5.txt Thanks, Xiong Hu On 2019/9/27 15:13, luoxhu wrote: Hi Martin, Thanks for your time of so many round of reviews. It really helped me a lot. Updated

Re: [PATCH v5] Missed function specialization + partial devirtualization

2019-09-27 Thread luoxhu
th LTO)\n", +  gimple_call_fn (stmt), (int) val); +    } +  continue; +    } + +  if (!check_ic_target (stmt, direct_call))   {     if (dump_enabled_p ()) -    dump_printf_loc (MSG_MISSED_OPTIMIZATION, stmt, - "Indirect call -> direct call