On Tue, Jul 29, 2014 at 3:01 PM, Bingfeng Mei <b...@broadcom.com> wrote:
> Hi,
> Please find the patches for pr61868. The problem is that even with 
> -frandom-seed gcc always uses 0 instead of specified number/string for places 
> such as lto section names. init_random_seed is never called with 
> -frandom-seed. Bootstrapped and tested on x86-64. OK for trunk?

Hmm, but -frandom-seed= is honored by opts.c calling set_random_seed?

Andi, wasn't this used to support partial linking of LTO objects?  Thus,
this shortcut was on purpose?  Otherwise passing -frandom-seed to
LTO would break that?

Bingfeng, did you test if LTO bootstrap still works after this patch?

Thanks,
Richard.

> Thanks,
> Bingfeng Mei
>
>
> ===================================================================
> --- ChangeLog   (revision 213152)
> +++ ChangeLog   (working copy)
> @@ -1,3 +1,9 @@
> +2014-07-29  Bingfeng Mei <b...@broadcom.com>
> +
> +       PR lto/61868
> +       * toplev.c (init_random_seed): Generate random seed when
> +       flag_random_seed is specified.
> +
>  2014-07-28  Jan Hubicka  <hubi...@ucw.cz>
>
>         * cgraph.c (cgraph_node::create_indirect_edge): Copy speculative data.
> Index: toplev.c
> ===================================================================
> --- toplev.c    (revision 213152)
> +++ toplev.c    (working copy)
> @@ -301,7 +301,7 @@ init_random_seed (void)
>  HOST_WIDE_INT
>  get_random_seed (bool noinit)
>  {
> -  if (!flag_random_seed && !noinit)
> +  if (!noinit)
>      init_random_seed ();
>    return random_seed;
>  }
> Index: testsuite/ChangeLog
> ===================================================================
> --- testsuite/ChangeLog (revision 213152)
> +++ testsuite/ChangeLog (working copy)
> @@ -1,3 +1,8 @@
> +2014-07-29  Bingfeng Mei  <b...@broadcom.com>
> +
> +       PR lto/61868
> +       * gcc.dg/pr61868.c: New test.
> +
>  2014-07-28  Richard Biener  <rguent...@suse.de>
>
>         PR rtl-optimization/61801
> Index: testsuite/gcc.dg/pr61868.c
> ===================================================================
> --- testsuite/gcc.dg/pr61868.c  (revision 0)
> +++ testsuite/gcc.dg/pr61868.c  (revision 0)
> @@ -0,0 +1,9 @@
> +/* { dg-do compile } */
> +/* { dg-options "-flto -frandom-seed=0x12345" }  */
> +extern int foo (int);
> +int main ()
> +{
> +  foo (100);
> +  return 0;
> +}
> +/* { dg-final { scan-assembler "\.gnu\.lto.*.12345" } } */
>

Reply via email to