[LLVMdev] Problem with InsertPointGuard ABI?

Justin Bogner mail at justinbogner.com
Tue Jul 21 08:54:56 PDT 2015


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.

> 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




More information about the llvm-dev mailing list