[PATCH] D27659: [sanitizer] intercept bstring functions

Nico Weber via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 15 11:46:48 PST 2016


thakis added a comment.

In https://reviews.llvm.org/D27659#623405, @kubabrecka wrote:

> In https://reviews.llvm.org/D27659#623368, @ygribov wrote:
>
> > > There's nothing wrong with this patch, but it's a binary-compatibility issue
> >
> > What is the issue with ABI?
>
>
> A system library requires that `bzero` doesn't touch some specific register.  This is true for the current system implementation of `bzero`, but not when using the interceptor.


We think this change breaks lots of tests on our mac/asan bots (https://bugs.chromium.org/p/chromium/issues/detail?id=674435). So +1 to adding a setting for opting out of this. I'd argue that it should be off by default on Darwin until system libraries no longer make this assumption too, else asanified binaries on darwin will be broken by default.

(This currently blocks us from updating clang in chromium.)


https://reviews.llvm.org/D27659





More information about the llvm-commits mailing list