[PATCH] Enable -fsanitize-recover for KASan

Dmitry Vyukov dvyukov@google.com
Fri Sep 5 08:23:00 GMT 2014


On Fri, Sep 5, 2014 at 12:12 PM, Yury Gribov <y.gribov@samsung.com> wrote:
> On 09/05/2014 11:32 AM, Dmitry Vyukov wrote:
>>
>> Can we do it w/o doubling number of runtime entry points?
>
>
> I didn't find a good way to achieve this. See, normal asan reporting
> functions
> have a noreturn attribute (defined in sanitizer.def) which can't be changed
> depending on cmdline flag.


I have not looked at the code in detail. But it looks weird to me that
in a general-purpose programming language we can't alter an attribute
of an in-memory object. I would expect that the attribute is just a
field in a struct describing the functionm and the field can be freely
set/reset. Is not it the case?



>> Looks like a wrong way to pass global options to runtime.
>> If we need
>> to pass several other options, number of entry points will sky rocket.
>
>
> We only need new definitions if functions look significantly different for
> compiler
> (noreturn, etc.).
>
>> I vaguely remember there are some globals that compiler uses to
>> communicate configuration (version, shadow base) to runtime.
>
>
> This would make the recovery setting global then.
> It may be desirable to have per-object (or even per-function) options (or
> maybe not).


This makes sense.
Leaving for others to chime in.



More information about the Gcc-patches mailing list