<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jan 29, 2016 at 3:16 PM, Hans Wennborg <span dir="ltr"><<a href="mailto:hans@chromium.org" target="_blank">hans@chromium.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Yes, that seems like a good idea. Go ahead and merge (or let me know<br>
if you'd prefer me to do it).<br></blockquote><div><br></div><div>I'd appreciate if you could do it. Thanks!</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="HOEnZb"><div class="h5"><br>
On Fri, Jan 29, 2016 at 3:14 PM, Alexey Samsonov <<a href="mailto:vonosmas@gmail.com">vonosmas@gmail.com</a>> wrote:<br>
> Hans, do you think it makes sense to merge this patch into 3.8?<br>
><br>
> On Fri, Jan 29, 2016 at 3:07 PM, Alexey Samsonov via cfe-commits<br>
> <<a href="mailto:cfe-commits@lists.llvm.org">cfe-commits@lists.llvm.org</a>> wrote:<br>
>><br>
>> Author: samsonov<br>
>> Date: Fri Jan 29 17:07:14 2016<br>
>> New Revision: 259260<br>
>><br>
>> URL: <a href="http://llvm.org/viewvc/llvm-project?rev=259260&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?rev=259260&view=rev</a><br>
>> Log:<br>
>> [UBSan] Add documentation for runtime issue suppression.<br>
>><br>
>> Modified:<br>
>>     cfe/trunk/docs/UndefinedBehaviorSanitizer.rst<br>
>><br>
>> Modified: cfe/trunk/docs/UndefinedBehaviorSanitizer.rst<br>
>> URL:<br>
>> <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/docs/UndefinedBehaviorSanitizer.rst?rev=259260&r1=259259&r2=259260&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/docs/UndefinedBehaviorSanitizer.rst?rev=259260&r1=259259&r2=259260&view=diff</a><br>
>><br>
>> ==============================================================================<br>
>> --- cfe/trunk/docs/UndefinedBehaviorSanitizer.rst (original)<br>
>> +++ cfe/trunk/docs/UndefinedBehaviorSanitizer.rst Fri Jan 29 17:07:14 2016<br>
>> @@ -168,6 +168,38 @@ UndefinedBehaviorSanitizer supports ``sr<br>
>>  :doc:`SanitizerSpecialCaseList`, that can be used to suppress error<br>
>> reports<br>
>>  in the specified source files or functions.<br>
>><br>
>> +Runtime suppressions<br>
>> +--------------------<br>
>> +<br>
>> +Sometimes you can suppress UBSan error reports for specific files,<br>
>> functions,<br>
>> +or libraries without recompiling the code. You need to pass a path to<br>
>> +suppression file in a ``UBSAN_OPTIONS`` environment variable.<br>
>> +<br>
>> +.. code-block:: bash<br>
>> +<br>
>> +    UBSAN_OPTIONS=suppressions=MyUBSan.supp<br>
>> +<br>
>> +You need to specify a :ref:`check <ubsan-checks>` you are suppressing and<br>
>> the<br>
>> +bug location. For example:<br>
>> +<br>
>> +.. code-block:: bash<br>
>> +<br>
>> +  signed-integer-overflow:file-with-known-overflow.cpp<br>
>> +  alignment:function_doing_unaligned_access<br>
>> +  vptr:shared_object_with_vptr_failures.so<br>
>> +<br>
>> +There are several limitations:<br>
>> +<br>
>> +* Sometimes your binary must have enough debug info and/or symbol table,<br>
>> so<br>
>> +  that the runtime could figure out source file or function name to match<br>
>> +  against the suppression.<br>
>> +* It is only possible to suppress recoverable checks. For the example<br>
>> above,<br>
>> +  you can additionally pass<br>
>> +  ``-fsanitize-recover=signed-integer-overflow,alignment,vptr``, although<br>
>> +  most of UBSan checks are recoverable by default.<br>
>> +* Check groups (like ``undefined``) can't be used in suppressions file,<br>
>> only<br>
>> +  fine-grained checks are supported.<br>
>> +<br>
>>  Supported Platforms<br>
>>  ===================<br>
>><br>
>><br>
>><br>
>> _______________________________________________<br>
>> cfe-commits mailing list<br>
>> <a href="mailto:cfe-commits@lists.llvm.org">cfe-commits@lists.llvm.org</a><br>
>> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits</a><br>
><br>
><br>
><br>
><br>
> --<br>
> Alexey Samsonov<br>
> <a href="mailto:vonosmas@gmail.com">vonosmas@gmail.com</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr">Alexey Samsonov<br><a href="mailto:vonosmas@gmail.com" target="_blank">vonosmas@gmail.com</a></div></div>
</div></div>