This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [google-4_6] fix profile mismatch in stream LIPO (issue6194059)
- From: Xinliang David Li <davidxl at google dot com>
- To: Rong Xu <xur at google dot com>
- Cc: reply at codereview dot appspotmail dot com, gcc-patches at gcc dot gnu dot org
- Date: Tue, 8 May 2012 09:55:27 -0700
- Subject: Re: [google-4_6] fix profile mismatch in stream LIPO (issue6194059)
- References: <20120508165345.A86FAC15B9@rong.mtv.corp.google.com>
Ok.
David
On Tue, May 8, 2012 at 9:53 AM, Rong Xu <xur@google.com> wrote:
> Hi,
>
> This patch is for google-4_6 branch only.
>
> It fixes a profile mismatch in streaming LIPO and recovers the performance loss
> due to this.
>
> Tested with google internal benchmarks.
>
> Thanks,
>
> 2012-05-08 ? Rong Xu ?<xur@google.com>
>
> ? ? ? ?* ipa-inline.c (fixed_arg_function_p):
> ? ? ? ?(better_inline_comdat_function_p): match lipo_gen in stream LIPO.
>
> Index: ipa-inline.c
> ===================================================================
> --- ipa-inline.c ? ? ? ?(revision 187275)
> +++ ipa-inline.c ? ? ? ?(working copy)
> @@ -658,7 +658,7 @@ fixed_arg_function_p (tree fndecl)
> ?static bool
> ?better_inline_comdat_function_p (struct cgraph_node *node)
> ?{
> - ?return (profile_arc_flag && flag_dyn_ipa
> + ?return (profile_arc_flag && (flag_dyn_ipa || flag_ripa_stream)
> ? ? ? ? ? && DECL_COMDAT (node->decl)
> ? ? ? ? ? && node->global.size <= PARAM_VALUE (PARAM_MAX_INLINE_INSNS_SINGLE)
> ? ? ? ? ? && fixed_arg_function_p (node->decl));
>
> --
> This patch is available for review at http://codereview.appspot.com/6194059