public inbox for gcc-regression@sourceware.org
help / color / mirror / Atom feed
From: "Frédéric Konrad" <konrad@adacore.com>
To: Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org>
Cc: gcc-regression@gcc.gnu.org, Olivier Hainque <hainque@adacore.com>
Subject: Re: [TCWG CI] Regression caused by gcc: VxWorks config fixes for shared objects
Date: Tue, 21 Dec 2021 15:52:11 +0100	[thread overview]
Message-ID: <CAMK3v4XnyA+CTGtuPsnwnyK1FQ-94Ek8aeR4rSQjxDkD0Fs2sw@mail.gmail.com> (raw)
In-Reply-To: <17E8F365-0D49-44A0-B680-C289161E6DDB@linaro.org>

Hi Maxim,

No problem, thanks for the heads up.

Best Regards,
Fred

On Tue, Dec 21, 2021 at 3:22 PM Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org>
wrote:

> Hi Frederic,
>
> This was sent out due to a bug in our CI.  Sorry for the noise.
>
> Regards,
>
> --
> Maxim Kuvyrkov
> https://www.linaro.org
>
> > On 19 Dec 2021, at 15:45, ci_notify@linaro.org wrote:
> >
> > [TCWG CI] Regression caused by gcc: VxWorks config fixes for shared
> objects:
> > commit 0515c95d5fe0a865f688f3ab89572b917e8f0185
> > Author: Frederic Konrad <konrad@adacore.com>
> >
> >    VxWorks config fixes for shared objects
> >
> > Results regressed to
> > # reset_artifacts:
> > -10
> > # build_abe binutils:
> > -9
> > # build_abe stage1 -- --set
> gcc_override_configure=--disable-libsanitizer --set
> gcc_override_configure=--disable-multilib --set
> gcc_override_configure=--with-cpu=cortex-m4 --set
> gcc_override_configure=--with-mode=thumb --set
> gcc_override_configure=--with-float=hard:
> > -8
> > # build_abe newlib:
> > -6
> > # build_abe stage2 -- --set
> gcc_override_configure=--disable-libsanitizer --set
> gcc_override_configure=--disable-multilib --set
> gcc_override_configure=--with-cpu=cortex-m4 --set
> gcc_override_configure=--with-mode=thumb --set
> gcc_override_configure=--with-float=hard:
> > -5
> > # benchmark -- -Os_LTO_mthumb
> artifacts/build-0515c95d5fe0a865f688f3ab89572b917e8f0185/results_id:
> > 1
> >
> > from
> > # reset_artifacts:
> > -10
> > # build_abe binutils:
> > -9
> > # build_abe stage1 -- --set
> gcc_override_configure=--disable-libsanitizer --set
> gcc_override_configure=--disable-multilib --set
> gcc_override_configure=--with-cpu=cortex-m4 --set
> gcc_override_configure=--with-mode=thumb --set
> gcc_override_configure=--with-float=hard:
> > -8
> > # build_abe newlib:
> > -6
> > # build_abe stage2 -- --set
> gcc_override_configure=--disable-libsanitizer --set
> gcc_override_configure=--disable-multilib --set
> gcc_override_configure=--with-cpu=cortex-m4 --set
> gcc_override_configure=--with-mode=thumb --set
> gcc_override_configure=--with-float=hard:
> > -5
> > # benchmark -- -Os_LTO_mthumb artifacts/build-baseline/results_id:
> > 1
> >
> > THIS IS THE END OF INTERESTING STUFF.  BELOW ARE LINKS TO BUILDS,
> REPRODUCTION INSTRUCTIONS, AND THE RAW COMMIT.
> >
> > This commit has regressed these CI configurations:
> > - tcwg_bmk_gnu_eabi_stm32/gnu_eabi-master-arm_eabi-coremark-Os_LTO
> >
> > First_bad build:
> https://ci.linaro.org/job/tcwg_bmk_ci_gnu_eabi-bisect-tcwg_bmk_stm32-gnu_eabi-master-arm_eabi-coremark-Os_LTO/15/artifact/artifacts/build-0515c95d5fe0a865f688f3ab89572b917e8f0185/
> > Last_good build:
> https://ci.linaro.org/job/tcwg_bmk_ci_gnu_eabi-bisect-tcwg_bmk_stm32-gnu_eabi-master-arm_eabi-coremark-Os_LTO/15/artifact/artifacts/build-0ecb48d753005405f84876ed3032c4cda789e072/
> > Baseline build:
> https://ci.linaro.org/job/tcwg_bmk_ci_gnu_eabi-bisect-tcwg_bmk_stm32-gnu_eabi-master-arm_eabi-coremark-Os_LTO/15/artifact/artifacts/build-baseline/
> > Even more details:
> https://ci.linaro.org/job/tcwg_bmk_ci_gnu_eabi-bisect-tcwg_bmk_stm32-gnu_eabi-master-arm_eabi-coremark-Os_LTO/15/artifact/artifacts/
> >
> > Reproduce builds:
> > <cut>
> > mkdir investigate-gcc-0515c95d5fe0a865f688f3ab89572b917e8f0185
> > cd investigate-gcc-0515c95d5fe0a865f688f3ab89572b917e8f0185
> >
> > # Fetch scripts
> > git clone https://git.linaro.org/toolchain/jenkins-scripts
> >
> > # Fetch manifests and test.sh script
> > mkdir -p artifacts/manifests
> > curl -o artifacts/manifests/build-baseline.sh
> https://ci.linaro.org/job/tcwg_bmk_ci_gnu_eabi-bisect-tcwg_bmk_stm32-gnu_eabi-master-arm_eabi-coremark-Os_LTO/15/artifact/artifacts/manifests/build-baseline.sh
> --fail
> > curl -o artifacts/manifests/build-parameters.sh
> https://ci.linaro.org/job/tcwg_bmk_ci_gnu_eabi-bisect-tcwg_bmk_stm32-gnu_eabi-master-arm_eabi-coremark-Os_LTO/15/artifact/artifacts/manifests/build-parameters.sh
> --fail
> > curl -o artifacts/test.sh
> https://ci.linaro.org/job/tcwg_bmk_ci_gnu_eabi-bisect-tcwg_bmk_stm32-gnu_eabi-master-arm_eabi-coremark-Os_LTO/15/artifact/artifacts/test.sh
> --fail
> > chmod +x artifacts/test.sh
> >
> > # Reproduce the baseline build (build all pre-requisites)
> > ./jenkins-scripts/tcwg_bmk-build.sh @@
> artifacts/manifests/build-baseline.sh
> >
> > # Save baseline build state (which is then restored in artifacts/test.sh)
> > mkdir -p ./bisect
> > rsync -a --del --delete-excluded --exclude /bisect/ --exclude
> /artifacts/ --exclude /gcc/ ./ ./bisect/baseline/
> >
> > cd gcc
> >
> > # Reproduce first_bad build
> > git checkout --detach 0515c95d5fe0a865f688f3ab89572b917e8f0185
> > ../artifacts/test.sh
> >
> > # Reproduce last_good build
> > git checkout --detach 0ecb48d753005405f84876ed3032c4cda789e072
> > ../artifacts/test.sh
> >
> > cd ..
> > </cut>
> >
> > Full commit (up to 1000 lines):
> > <cut>
> > commit 0515c95d5fe0a865f688f3ab89572b917e8f0185
> > Author: Frederic Konrad <konrad@adacore.com>
> > Date:   Fri Nov 6 19:42:27 2020 +0100
> >
> >    VxWorks config fixes for shared objects
> >
> >    This strengthens the VxWorks configuration files for the support
> >    of shared objects, which encompasses a VxWorks specific "non-static"
> >    mode for RTPs (in addition to -static and -shared).
> >
> >    2020-11-06  Fred Konrad  <konrad@adacore.com>
> >                Olivier Hainque  <hainque@adacore.com>
> >
> >    gcc/
> >            * config/vx-common.h: Define REAL_LIBGCC_SPEC since the
> >            '-non-static' option is not standard.
> >            * config/vxworks.h (VXWORKS_LIBGCC_SPEC): Implement the
> LIBGCC_SPEC
> >            since REAL_LIBGCC_SPEC is used now.
> >            (STARTFILE_PREFIX_SPEC): Use the PIC VSB when building shared
> libraries
> >            or non-static binaries.
> > ---
> > gcc/config/vx-common.h |  7 +++++--
> > gcc/config/vxworks.h   | 19 ++++++++++++++++++-
> > 2 files changed, 23 insertions(+), 3 deletions(-)
> >
> > diff --git a/gcc/config/vx-common.h b/gcc/config/vx-common.h
> > index a436bf14074..efa5d5f6a60 100644
> > --- a/gcc/config/vx-common.h
> > +++ b/gcc/config/vx-common.h
> > @@ -23,8 +23,11 @@ along with GCC; see the file COPYING3.  If not see
> > /* Most of these will probably be overridden by subsequent headers.  We
> >    undefine them here just in case, and define VXWORKS_ versions of each,
> >    to be used in port-specific vxworks.h.  */
> > -#undef LIBGCC_SPEC
> > -#define LIBGCC_SPEC VXWORKS_LIBGCC_SPEC
> > +
> > +/* REAL_LIBGCC_SPEC needs to be used since the non-static option is not
> > +   handled in gcc.c.  */
> > +#undef REAL_LIBGCC_SPEC
> > +#define REAL_LIBGCC_SPEC VXWORKS_LIBGCC_SPEC
> > #undef STARTFILE_SPEC
> > #undef ENDFILE_SPEC
> >
> > diff --git a/gcc/config/vxworks.h b/gcc/config/vxworks.h
> > index f76141ffdca..96076e3c272 100644
> > --- a/gcc/config/vxworks.h
> > +++ b/gcc/config/vxworks.h
> > @@ -143,11 +143,21 @@ along with GCC; see the file COPYING3.  If not see
> >    tlsLib, responsible for TLS support by the OS.  */
> >
> > #if TARGET_VXWORKS7
> > +
> > +/* For static links, /usr/lib/common has everything. For dynamic links,
> > +   /usr/lib/common/PIC has the static libs and objects that might be
> needed
> > +   in the closure (e.g. crt0.o), while the shared version of standard
> deps
> > +   (e.g. libc.so) are still in /usr/lib/common.  */
> > #undef  STARTFILE_PREFIX_SPEC
> > -#define STARTFILE_PREFIX_SPEC "/usr/lib/common"
> > +#define STARTFILE_PREFIX_SPEC \
> > +  "%{shared|non-static:/usr/lib/common/PIC} /usr/lib/common"
> > +
> > #define TLS_SYM "-u __tls__"
> > +
> > #else
> > +
> > #define TLS_SYM ""
> > +
> > #endif
> >
> > #undef VXWORKS_LIB_SPEC
> > @@ -177,7 +187,14 @@ along with GCC; see the file COPYING3.  If not see
> >                 %{non-static:--force-dynamic --export-dynamic}}}"
> >
> > #undef VXWORKS_LIBGCC_SPEC
> > +#if defined(ENABLE_SHARED_LIBGCC)
> > +#define VXWORKS_LIBGCC_SPEC
>  \
> > +"%{!mrtp:-lgcc -lgcc_eh}
> \
> > + %{mrtp:%{!static-libgcc:%{shared|non-static:-lgcc_s;:-lgcc -lgcc_eh}}
> \
> > +         %{static-libgcc:-lgcc -lgcc_eh}}"
> > +#else
> > #define VXWORKS_LIBGCC_SPEC "-lgcc"
> > +#endif
> >
> > /* Setup the crtstuff begin/end we might need for dwarf EH
> registration.  */
> >
> > </cut>
>
>


      reply	other threads:[~2021-12-21 14:52 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-19 12:45 ci_notify
2021-12-21 14:21 ` Maxim Kuvyrkov
2021-12-21 14:52   ` Frédéric Konrad [this message]

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=CAMK3v4XnyA+CTGtuPsnwnyK1FQ-94Ek8aeR4rSQjxDkD0Fs2sw@mail.gmail.com \
    --to=konrad@adacore.com \
    --cc=gcc-regression@gcc.gnu.org \
    --cc=hainque@adacore.com \
    --cc=maxim.kuvyrkov@linaro.org \
    /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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).