Patchwork [google-4_6] fix broken -S in streaming LIPO (issue6115052)

login
register
mail settings
Submitter Rong Xu
Date April 25, 2012, 8:08 p.m.
Message ID <20120425200809.DF038C1998@rong.mtv.corp.google.com>
Download mbox | patch
Permalink /patch/155091/
State New
Headers show

Comments

Rong Xu - April 25, 2012, 8:08 p.m.
Hi,

This patch is for google-4_6 branch only.
It fixes the broken -S in streaming LIPO mode.

Tested with bootstrap.

Thanks,

2012-04-25   Rong Xu  <xur@google.com>

	* gcc/gcc.c (ripa_lto_spec): Support -S.
        (cc1_options): Ditto.


--
This patch is available for review at http://codereview.appspot.com/6115052
Xinliang David Li - April 25, 2012, 8:42 p.m.
ok.

David

On Wed, Apr 25, 2012 at 1:08 PM, Rong Xu <xur@google.com> wrote:
> Hi,
>
> This patch is for google-4_6 branch only.
> It fixes the broken -S in streaming LIPO mode.
>
> Tested with bootstrap.
>
> Thanks,
>
> 2012-04-25   Rong Xu  <xur@google.com>
>
>        * gcc/gcc.c (ripa_lto_spec): Support -S.
>        (cc1_options): Ditto.
>
> Index: gcc/gcc.c
> ===================================================================
> --- gcc/gcc.c   (revision 186783)
> +++ gcc/gcc.c   (working copy)
> @@ -746,7 +746,8 @@
>
>  /* specs to call lto1 for streaming lipo.  */
>  static const char *ripa_lto_spec =
> -"lto1 -flto -flto-partition=none %(cc1_options)";
> +"lto1 -flto -flto-partition=none %(cc1_options) "
> +"%{S:%W{o*}%{!o*:-o %b.s}}";
>
>  /* options to call asm in streaming lipo.  */
>  static const char *ripa_asm_options =
> @@ -820,7 +821,7 @@
>  %{-target-help:--target-help}\
>  %{-version:--version}\
>  %{-help=*:--help=%*}\
> - %{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}}\
> + %{!fsyntax-only:%{S:%{!fripa=streaming|!fprofile-use*:%W{o*}%{!o*:-o %b.s}}}}\
>  %{fsyntax-only:-o %j} %{-param*}\
>  %{fmudflap|fmudflapth:-fno-builtin -fno-merge-constants}\
>  %{coverage:-fprofile-arcs -ftest-coverage -fno-early-inlining}";
>
> --
> This patch is available for review at http://codereview.appspot.com/6115052

Patch

Index: gcc/gcc.c
===================================================================
--- gcc/gcc.c	(revision 186783)
+++ gcc/gcc.c	(working copy)
@@ -746,7 +746,8 @@ 
 
 /* specs to call lto1 for streaming lipo.  */
 static const char *ripa_lto_spec =
-"lto1 -flto -flto-partition=none %(cc1_options)";
+"lto1 -flto -flto-partition=none %(cc1_options) "
+"%{S:%W{o*}%{!o*:-o %b.s}}";
 
 /* options to call asm in streaming lipo.  */
 static const char *ripa_asm_options =
@@ -820,7 +821,7 @@ 
  %{-target-help:--target-help}\
  %{-version:--version}\
  %{-help=*:--help=%*}\
- %{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}}\
+ %{!fsyntax-only:%{S:%{!fripa=streaming|!fprofile-use*:%W{o*}%{!o*:-o %b.s}}}}\
  %{fsyntax-only:-o %j} %{-param*}\
  %{fmudflap|fmudflapth:-fno-builtin -fno-merge-constants}\
  %{coverage:-fprofile-arcs -ftest-coverage -fno-early-inlining}";