[llvm-dev] TableGen crash when building LLVM with EXPENSIVE_CHECKS enabled

Nicolai Hähnle-Montoro via llvm-dev
Mon, 03 Jun 2019 09:36:10 -0000

I briefly dug into this and I can reproduce it, the issue appears to
be the implementation of std::shuffle (which is called by llvm::sort
with expensive checks).

Sounds like you should file a bug against libstdc++.

Cheers,
Nicolai


On Thu, May 30, 2019 at 10:39 AM Lau, Luke via llvm-dev
<llvm-dev at lists.llvm.org> wrote:
>
> Hello,
> I'm trying to run checks with EXPENSIVE_CHECKS enabled, but it crashes
when
> generating some intrinsics file with TableGen.
>
> > cd /home/luke/Source/llvm-project/build &&
/home/luke/Source/llvm-
> > project/build/bin/llvm-tblgen -gen-intrinsic-impl -I
/home/luke/Source/llvm-
> > project/llvm/include/llvm/IR -I
/home/luke/Source/llvm-project/llvm/include
> > /home/luke/Source/llvm-project/llvm/include/llvm/IR/Intrinsics.td -o
> > include/llvm/IR/IntrinsicImpl.inc -d
include/llvm/IR/IntrinsicImpl.inc.d
> > /usr/bin/../lib/gcc/x86_64-linux-
> > gnu/8/../../../../include/c++/8/debug/safe_container.h:83:
> > Error: attempt to self move assign.
> >
> > Objects involved in the operation:
> >     sequence "this" @ 0x0x7fe3b3070468 {
> >     }
> >
>
> The command I've been using to configure it is
>
> > cmake ../llvm -G Ninja \
> >       -DCMAKE_BUILD_TYPE=Debug \
> >       -DLLVM_ENABLE_LLD=On \
> >       -DLLVM_ENABLE_EXPENSIVE_CHECKS=On
> >
>
> Removing the -DLLVM_ENABLE_EXPENSIVE_CHECKS=On allows it to build. Is there
> something wrong with the version on libstdc++ on my system? (Debian
testing)
> This was happening on revision 5857bf5d1e5a5ffe5ae51a38514ee55495c0cc69
> --------------------------------------------------------------
> Intel Research and Development Ireland Limited
> Registered in Ireland
> Registered Office: Collinstown Industrial Park, Leixlip, County Kildare
> Registered Number: 308263
>
>
> This e-mail and any attachments may contain confidential material for the
sole
> use of the intended recipient(s). Any review or distribution by others is
> strictly prohibited. If you are not the intended recipient, please contact
the
> sender and delete all copies.
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev



--
Lerne, wie die Welt wirklich ist,
aber vergiss niemals, wie sie sein sollte.