[llvm] r303311 - Attempt to pacify ASan and UBSan reports in CrashRecovery tests

Vitaly Buka via llvm-commits llvm-commits at lists.llvm.org
Wed May 24 11:04:37 PDT 2017


I just noticed that the patch contained?
-static void nullDeref() { *(volatile int *)nullptr = 0; }
+static void nullDeref() { *(volatile int *)0x10 = 0; }

Why this was needed? Should I put it back?

On Wed, May 24, 2017 at 11:00 AM, Vitaly Buka <vitalybuka at google.com> wrote:

> Reverted with r303783, should work without it.
>
> On Wed, May 17, 2017 at 3:40 PM, Reid Kleckner <rnk at google.com> wrote:
>
>> Right, I discussed this with him. This should go away when that happens,
>> because LLVM's signal handler will work out of the box. For now this
>> disables ASan's signal handlers in the SupportTests binary.
>>
>> On Wed, May 17, 2017 at 3:38 PM, Kostya Serebryany <kcc at google.com>
>> wrote:
>>
>>> FTR: Vitaly is planing to change the meaning/syntax/name of
>>> allow_user_segv_handler=1
>>>
>>> On Wed, May 17, 2017 at 3:23 PM, Reid Kleckner via llvm-commits <
>>> llvm-commits at lists.llvm.org> wrote:
>>>
>>>> Author: rnk
>>>> Date: Wed May 17 17:23:20 2017
>>>> New Revision: 303311
>>>>
>>>> URL: http://llvm.org/viewvc/llvm-project?rev=303311&view=rev
>>>> Log:
>>>> Attempt to pacify ASan and UBSan reports in CrashRecovery tests
>>>>
>>>> Modified:
>>>>     llvm/trunk/unittests/Support/CrashRecoveryTest.cpp
>>>>
>>>> Modified: llvm/trunk/unittests/Support/CrashRecoveryTest.cpp
>>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/unittests/Sup
>>>> port/CrashRecoveryTest.cpp?rev=303311&r1=303310&r2=303311&view=diff
>>>> ============================================================
>>>> ==================
>>>> --- llvm/trunk/unittests/Support/CrashRecoveryTest.cpp (original)
>>>> +++ llvm/trunk/unittests/Support/CrashRecoveryTest.cpp Wed May 17
>>>> 17:23:20 2017
>>>> @@ -17,11 +17,15 @@
>>>>  #include <windows.h>
>>>>  #endif
>>>>
>>>> +extern "C" const char *__asan_default_options() {
>>>> +  return "allow_user_segv_handler=1";
>>>> +}
>>>> +
>>>>  using namespace llvm;
>>>>  using namespace llvm::sys;
>>>>
>>>>  static int GlobalInt = 0;
>>>> -static void nullDeref() { *(volatile int *)nullptr = 0; }
>>>> +static void nullDeref() { *(volatile int *)0x10 = 0; }
>>>>  static void incrementGlobal() { ++GlobalInt; }
>>>>  static void llvmTrap() { LLVM_BUILTIN_TRAP; }
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> llvm-commits mailing list
>>>> llvm-commits at lists.llvm.org
>>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>>>>
>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170524/a38cee7d/attachment.html>


More information about the llvm-commits mailing list