[PATCH] D27375: Let ubsan search UBSAN_SYMBOLIZER_PATH for llvm-symbolizer

Peter Collingbourne via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 2 19:33:24 PST 2016


I think the difference here is that unlike the other sanitizers that
support *_SYMBOLIZER_PATH UBSan can be used with other sanitizers. If we
have UBSAN_SYMBOLIZER_PATH we'll basically be in a confusing situation
where UBSan does different things depending on whether it is used
standalone or with another sanitizer.

That said I don't feel that strongly about it, so don't let me block you.

Peter

On Fri, Dec 2, 2016 at 7:00 PM, Nico Weber <thakis at chromium.org> wrote:

> On the other hand, options are set via ASAN_OPTIONS, UBSAN_OPTIONS, etc,
> not via some SANITIZER_OPTIONS var that all the sanitizers understand.
> Currently, things are fairly consistent (and after this change, even more
> so). Declaring the existing ASAN_SYMBOLIZER_PATH etc as deprecated,
> introducing a new LLVM_SANITIZER_PATH thing (does gcc's asan use the
> runtime in compiler-rt, or do they have their own runtime?), and adding
> deprecation output introduces quite a bit of turmoil that'll take a release
> or two (6-12 months) to settle down, and the state we get to isn't that
> much better than where we are right now.
>
> On Fri, Dec 2, 2016 at 7:45 PM, Evgeniy Stepanov via Phabricator <
> reviews at reviews.llvm.org> wrote:
>
>> eugenis added a comment.
>>
>> In https://reviews.llvm.org/D27375#612431, @pcc wrote:
>>
>> > In https://reviews.llvm.org/D27375#612426, @eugenis wrote:
>> >
>> > > I can imagine a separate environment variable being more convenient
>> in some cases. I don't think we should deprecate it. Also, printing stuff
>> can break user programs, so it should not be done by default, and doing it
>> only with verbosity=1 is almost useless, no one will see it.
>> >
>> >
>> > Maybe only do it if isatty(stdout)?
>>
>>
>> This could work.
>>
>> >
>> >
>> >> I'd add LLVM_SYMBOLIZER_PATH, maybe add UBSAN_SYMBOLIZER_PATH (just
>> for consistency), and change the docs to point to LLVM_SYMBOLIZER_PATH and
>> external_symbolizer_path.
>> >
>> > Regarding UBSAN_SYMBOLIZER_PATH why add something for consistency with
>> a deprecated env var?
>>
>> That's also true.
>>
>>
>> https://reviews.llvm.org/D27375
>>
>>
>>
>>
>


-- 
-- 
Peter
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20161202/198c4ad2/attachment.html>


More information about the llvm-commits mailing list