From: "Richard Purdie" <richard.purdie@linuxfoundation.org>
To: Khem Raj <raj.khem@gmail.com>
Cc: enrico.scholz@sigma-chemnitz.de,
openembedded-core@lists.openembedded.org
Subject: Re: [OE-core] [PATCH] gcc: enable zstd compression of LTO bytecode
Date: Thu, 03 Feb 2022 22:21:21 +0000 [thread overview]
Message-ID: <febeb35d45e5847746693437c62e822cc7fc8bcf.camel@linuxfoundation.org> (raw)
In-Reply-To: <CAMKF1sr8jxeNZk2svzkLYD+4HF8ehXUg2tm86X5X_dKkTU6+Hg@mail.gmail.com>
On Thu, 2022-02-03 at 14:11 -0800, Khem Raj wrote:
>
>
> On Thu, Feb 3, 2022 at 1:59 PM Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> > On Thu, 2022-02-03 at 18:26 +0100, Enrico Scholz via lists.openembedded.org
> > wrote:
> > > gcc-10+ supports zstd compression of LTO bytecode. Install the
> > > corresponding package to enable this feature in a deterministic way.
> > >
> > > NOTE: previously built LTO object files (without this compression)
> > > must be regenerated; gcc will fail else with
> > >
> > > | lto1: internal compiler error: original not compressed with zstd
> > >
> > > in this case.
> > >
> > > NOTE: it seems to be possible that zstd support is enabled non
> > > deterministically (perhaps by host system pollution).
> > >
> > > I had the problem that the SDK gcc was built with zstd while the
> > > cross gcc was built without it. Libraries (built by cross gcc and
> > > uncompressed hence) could not be used with the SDK gcc.
> > >
> > > Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
> > > ---
> > > meta/recipes-devtools/gcc/gcc-11.2.inc | 2 +-
> > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/meta/recipes-devtools/gcc/gcc-11.2.inc b/meta/recipes-
> > devtools/gcc/gcc-11.2.inc
> > > index f07a5be507b3..62db035760aa 100644
> > > --- a/meta/recipes-devtools/gcc/gcc-11.2.inc
> > > +++ b/meta/recipes-devtools/gcc/gcc-11.2.inc
> > > @@ -11,7 +11,7 @@ BINV = "11.2.0"
> > > FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc:${FILE_DIRNAME}/gcc/backport:"
> > >
> > > DEPENDS =+ "mpfr gmp libmpc zlib flex-native"
> > > -NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native flex-
> > > native"
> > > +NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native flex-
> > > native
> > zstd-native"
> > >
> > > LICENSE = "GPL-3.0-with-GCC-exception & GPLv3"
> > >
> >
> > Should we be passing some flag to gcc explicitly to configure this
> > deterministicly?
> >
>
>
> Perhaps use —with-zstd configure switch maybe via package config but it’s
> better to enable it always
>
Agreed, I'm fine with enabling it, I'd just like to be explicit about what we're
doing.
Cheers,
Richard
next prev parent reply other threads:[~2022-02-03 22:21 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-02-03 17:26 [PATCH] gcc: enable zstd compression of LTO bytecode Enrico Scholz
2022-02-03 19:23 ` [OE-core] " Khem Raj
2022-02-03 21:40 ` Enrico Scholz
2022-02-03 21:48 ` Khem Raj
2022-02-03 21:59 ` Richard Purdie
2022-02-03 22:11 ` Khem Raj
2022-02-03 22:21 ` Richard Purdie [this message]
2022-02-04 19:00 ` Enrico Scholz
2022-02-04 21:00 ` Khem Raj
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=febeb35d45e5847746693437c62e822cc7fc8bcf.camel@linuxfoundation.org \
--to=richard.purdie@linuxfoundation.org \
--cc=enrico.scholz@sigma-chemnitz.de \
--cc=openembedded-core@lists.openembedded.org \
--cc=raj.khem@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox