[LLVMdev] Problem with InsertPointGuard ABI?
Paweł Bylica
chfast at gmail.com
Tue Jul 21 09:19:09 PDT 2015
On Tue, Jul 21, 2015 at 5:55 PM Justin Bogner <mail at justinbogner.com> wrote:
> Paweł Bylica <chfast at gmail.com> writes:
> > I can confirm that the issue has been caused by NDEBUG flag.
> >
> > On Mon, Jul 13, 2015 at 6:29 PM Reid Kleckner <rnk at google.com> wrote:
> >
> > The layout of AssertingVH has depended on NDEBUG since 2009, which
> > predates any of our efforts to make LLVM's ABI resilient to
> mismatched
> > NDEBUG definitions between LLVM and its users.
> >
> > For now, make sure your definition of NDEBUG matches LLVM's. In the
> long
> > run, we could conceivably do something
> > with LLVM_ENABLE_ABI_BREAKING_CHECKS to allow this mismatch.
> >
> > In practice it is very hard to make NDEBUG flag match configs of your
> project
> > and LLVM project. You often need to build debug and release versions of
> your
> > project and LLVM is installed as a debian package or with homebrew.
> Moreover,
> > there is not reliable way of checking if LLVM has been built with or
> without
> > NDEBUG.
>
> FWIW, `llvm-config --assertion-mode` will tell you whether or not your
> LLVM was built with or without NDEBUG.
>
That's not true in all cases. In case CMAKE_BUILD_TYPE=Release,
LLVM_ENABLE_ASSERTIONS=Off and CMAKE_CXX_FLAGS_RELEASE="" llvm-config
reports asserts as off but NDEBUG flag is not set.
>
> > Can I do anything more about it? Contributions related to
> > LLVM_ENABLE_ABI_BREAKING_CHECKS needed?
> >
> > - Paweł
> >
> > _______________________________________________
> > LLVM Developers mailing list
> > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150721/41d12315/attachment.html>
More information about the llvm-dev
mailing list