This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [wwwdocs] changes.html - document -fsanitize-address-use-after-scope
On Thu, Jan 26, 2017 at 02:59:50PM +0100, Martin Liška wrote:
> On 01/26/2017 02:19 PM, Jakub Jelinek wrote:
> > On Thu, Jan 26, 2017 at 02:04:00PM +0100, Martin Liška wrote:
> >> + The option is enabled with <code>-fsanitize=address</code> and disabled
> >
> > s/enabled/& by default/
> > s/disabled/& by default/
> >
> >> + with <code>-fsanitize=kernel-address</code>.
> >> + Compared to the LLVM compiler, where the option already exists,
> >> + the implementation in the GCC compiler has couple of improvements and advantages:
> >> + <ul>
> >> + <li>A complex usage of gotos and case labels are properly handled and should not
> >> + report any false positive or false negatives.
> >> + </li>
> >> + <li>Shadow memory poisoning (and unpoisoning) is optimized out in common situations
> >> + where the call is not needed.
> >> + </li>
> >> + <li>C++ temporaries are sanitized.</li>
> >> + <li>Sanitization can handle invalid memory stores that are optimized out
> >> + by the LLVM compiler when using an optimization level.</li>
> >
> > Have you verified it is true on the LLVM side (i.e. that they mishandle
> > gotos or case labels, that they don't optimize away memory
> > poisoning/unpoisoning in cases where gcc does, that they don't sanitize C++
> > temporaries and that for optimized out invalid memory stores they don't
> > sanitize them?
> >
> > Jakub
> >
>
> Yes:
Perfect. Can you please just do the above mentioned 2 changes and commit
then?
Jakub