<div dir="ltr">FYI I just hit this, but found that adding -DLLVM_OPTIMIZED_TABLEGEN=ON when I configured llvm fixed/hid the issue. Not sure why, but I found this flag when examining how one of the expensive-checks bots was configured.<div><br></div><div>Teresa</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jun 3, 2019 at 3:15 PM Alexander Richardson via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto"><div>This looks like <a href="https://bugs.llvm.org/show_bug.cgi?id=37652" rel="noreferrer" target="_blank">https://bugs.llvm.org/show_bug.cgi?id=37652</a> to me. I added a workaround (<a href="https://github.com/CTSRD-CHERI/llvm-project/commit/a7e68c6baf9967cfb288ca6c53c43b29581d27d8" target="_blank">https://github.com/CTSRD-CHERI/llvm-project/commit/a7e68c6baf9967cfb288ca6c53c43b29581d27d8</a>) to our fork but never got around to submitting a review.<div dir="auto"><br></div><div dir="auto">If adding a copy of the libc++ implementation as llvm::shuffle seems like a valid approach I'll upload the patch to phabricator.</div><div dir="auto"><br></div><div dir="auto">Alex</div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, 3 Jun 2019, 10:36 Nicolai Hähnle-Montoro via llvm-dev, <<a href="mailto:llvm-dev@lists.llvm.org" rel="noreferrer" target="_blank">llvm-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I briefly dug into this and I can reproduce it, the issue appears to<br>
be the implementation of std::shuffle (which is called by llvm::sort<br>
with expensive checks).<br>
<br>
Sounds like you should file a bug against libstdc++.<br>
<br>
Cheers,<br>
Nicolai<br>
<br>
<br>
On Thu, May 30, 2019 at 10:39 AM Lau, Luke via llvm-dev<br>
<<a href="mailto:llvm-dev@lists.llvm.org" rel="noreferrer noreferrer" target="_blank">llvm-dev@lists.llvm.org</a>> wrote:<br>
><br>
> Hello,<br>
> I'm trying to run checks with EXPENSIVE_CHECKS enabled, but it crashes when<br>
> generating some intrinsics file with TableGen.<br>
><br>
> > cd /home/luke/Source/llvm-project/build && /home/luke/Source/llvm-<br>
> > project/build/bin/llvm-tblgen -gen-intrinsic-impl -I /home/luke/Source/llvm-<br>
> > project/llvm/include/llvm/IR -I /home/luke/Source/llvm-project/llvm/include<br>
> > /home/luke/Source/llvm-project/llvm/include/llvm/IR/Intrinsics.td -o<br>
> > include/llvm/IR/IntrinsicImpl.inc -d include/llvm/IR/IntrinsicImpl.inc.d<br>
> > /usr/bin/../lib/gcc/x86_64-linux-<br>
> > gnu/8/../../../../include/c++/8/debug/safe_container.h:83:<br>
> > Error: attempt to self move assign.<br>
> ><br>
> > Objects involved in the operation:<br>
> >     sequence "this" @ 0x0x7fe3b3070468 {<br>
> >     }<br>
> ><br>
><br>
> The command I've been using to configure it is<br>
><br>
> > cmake ../llvm -G Ninja \<br>
> >       -DCMAKE_BUILD_TYPE=Debug \<br>
> >       -DLLVM_ENABLE_LLD=On \<br>
> >       -DLLVM_ENABLE_EXPENSIVE_CHECKS=On<br>
> ><br>
><br>
> Removing the -DLLVM_ENABLE_EXPENSIVE_CHECKS=On allows it to build. Is there<br>
> something wrong with the version on libstdc++ on my system? (Debian testing)<br>
> This was happening on revision 5857bf5d1e5a5ffe5ae51a38514ee55495c0cc69<br>
> --------------------------------------------------------------<br>
> Intel Research and Development Ireland Limited<br>
> Registered in Ireland<br>
> Registered Office: Collinstown Industrial Park, Leixlip, County Kildare<br>
> Registered Number: 308263<br>
><br>
><br>
> This e-mail and any attachments may contain confidential material for the sole<br>
> use of the intended recipient(s). Any review or distribution by others is<br>
> strictly prohibited. If you are not the intended recipient, please contact the<br>
> sender and delete all copies.<br>
> _______________________________________________<br>
> LLVM Developers mailing list<br>
> <a href="mailto:llvm-dev@lists.llvm.org" rel="noreferrer noreferrer" target="_blank">llvm-dev@lists.llvm.org</a><br>
> <a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer noreferrer noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
<br>
<br>
<br>
-- <br>
Lerne, wie die Welt wirklich ist,<br>
aber vergiss niemals, wie sie sein sollte.<br>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org" rel="noreferrer noreferrer" target="_blank">llvm-dev@lists.llvm.org</a><br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer noreferrer noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
</blockquote></div>
</div></div>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a><br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail-m_-4402934452232194294gmail_signature"><div dir="ltr"><div><span style="font-family:Times;font-size:medium"><table cellspacing="0" cellpadding="0"><tbody><tr style="color:rgb(85,85,85);font-family:sans-serif;font-size:small"><td nowrap style="border-top:2px solid rgb(213,15,37)">Teresa Johnson |</td><td nowrap style="border-top:2px solid rgb(51,105,232)"> Software Engineer |</td><td nowrap style="border-top:2px solid rgb(0,153,57)"> <a href="mailto:tejohnson@google.com" target="_blank">tejohnson@google.com</a> |</td><td nowrap style="border-top:2px solid rgb(238,178,17)"><br></td></tr></tbody></table></span></div></div></div>