[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