[PATCH] D76802: [InstrProfiling] Use !associated metadata for counters, data and values

Xinliang David Li via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 11 09:05:59 PDT 2020


On Thu, Jun 11, 2020 at 12:37 AM Petr Hosek via Phabricator <
reviews at reviews.llvm.org> wrote:

> phosek added a comment.
>
> In D76802#2086757 <https://reviews.llvm.org/D76802#2086757>, @vitalybuka
> wrote:
>
> > In D76802#2086742 <https://reviews.llvm.org/D76802#2086742>, @phosek
> wrote:
> >
> > > In D76802#2086725 <https://reviews.llvm.org/D76802#2086725>,
> @vitalybuka wrote:
> > >
> > > > In D76802#2086650 <https://reviews.llvm.org/D76802#2086650>,
> @phosek wrote:
> > > >
> > > > > I looked into these issue:
> > > > >
> > > > > -
> http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux/builds/27806
> failure was addressed by rG69c5ff4668cd4d1bfb6b45d71e15c12e3a23ae05 <
> https://reviews.llvm.org/rG69c5ff4668cd4d1bfb6b45d71e15c12e3a23ae05>
> > > >
> > > >
> > > > 69c5ff4668cd4d1bfb6b45d71e15c12e3a23ae05 <
> https://reviews.llvm.org/rG69c5ff4668cd4d1bfb6b45d71e15c12e3a23ae05>
> still fails "check-profile" for me and fails here
> http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux/builds/27808
> > >
> > >
> > > I've updated the patch to handle the `_IO_stdin_used` symbol in the
> test. I couldn't reproduce this locally, but it's possible that this is due
> to different libc version on the bot.
> >
> >
> > I still can reproduce with the latest patch on my workstation
> >
> >   Exit Code: 1
> >
> >   Command Output (stderr):
> >   --
> >   /usr/bin/ld: __llvm_prf_data has both ordered and unordered sections
> >   /usr/bin/ld: final link failed: bad value
> >   clang-11: error: linker command failed with exit code 1 (use -v to see
> invocation)
> >
>
>
> This is the other issue I mentioned which also affects Chromium bots. The
> root cause is the lack of support for the extended semantics of
> `SHF_LINK_ORDER` that `!associated` metadata rely on in bfd.ld. I'm trying
> to figure out what's the best way forward. We could just disable all
> affected profile tests when bfd.ld is used as the linker, but that's pretty
> drastic.


This won't work well as those who use bfd.ld won't be able to use PGO
anymore.

> Another option would be to gate this feature on a backend flag; targets
> that use gold or lld as their linker could turn this on by default.
>

this might be the way to go.

David

>
>
> CHANGES SINCE LAST ACTION
>   https://reviews.llvm.org/D76802/new/
>
> https://reviews.llvm.org/D76802
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200611/6f94effa/attachment.html>


More information about the llvm-commits mailing list