This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]