Re: [PATCH] Do not sanitize left shifts for -fwrapv (PR68418)

2015-12-09 Thread Paolo Bonzini
On 04/12/2015 23:48, Jeff Law wrote: >> >> Why would pointer types be shifted at all (at the ubsan level, >> which is basically the AST)? > BTW, if you argument is that we can never get into this code with a > shift of a pointer object, I'd like to see some kind of analysis to back > up that asse

Re: [PATCH] Do not sanitize left shifts for -fwrapv (PR68418)

2015-12-04 Thread Jeff Law
On 12/04/2015 01:48 PM, Paolo Bonzini wrote: gcc: PR sanitizer/68418 * c-family/c-ubsan.c (ubsan_instrument_shift): Disable sanitization of left shifts for wrapping signed types as well. gcc/testsuite: PR sanitizer/68418 * gcc.dg/ubsan/c99-wrapv-shift-1.

Re: [PATCH] Do not sanitize left shifts for -fwrapv (PR68418)

2015-12-04 Thread Jeff Law
On 12/04/2015 01:48 PM, Paolo Bonzini wrote: gcc: PR sanitizer/68418 * c-family/c-ubsan.c (ubsan_instrument_shift): Disable sanitization of left shifts for wrapping signed types as well. gcc/testsuite: PR sanitizer/68418 * gcc.dg/ubsan/c99-wrapv-shift-1.

Re: [PATCH] Do not sanitize left shifts for -fwrapv (PR68418)

2015-12-04 Thread Paolo Bonzini
> >> gcc: > >>PR sanitizer/68418 > >>* c-family/c-ubsan.c (ubsan_instrument_shift): Disable > >>sanitization of left shifts for wrapping signed types as well. > >> > >> gcc/testsuite: > >>PR sanitizer/68418 > >>* gcc.dg/ubsan/c99-wrapv-shift-1.c, > >>gcc.dg/ubsan/c99-wrapv-

Re: [PATCH] Do not sanitize left shifts for -fwrapv (PR68418)

2015-12-04 Thread Jeff Law
On 12/04/2015 10:51 AM, Paolo Bonzini wrote: On 25/11/2015 14:55, Paolo Bonzini wrote: Left shifts into the sign bit is a kind of overflow, and the standard chooses to treat left shifts of negative values the same way. However, the -fwrapv option modifies the language to one where integers ar

Re: [PATCH] Do not sanitize left shifts for -fwrapv (PR68418)

2015-12-04 Thread Paolo Bonzini
On 25/11/2015 14:55, Paolo Bonzini wrote: > Left shifts into the sign bit is a kind of overflow, and the > standard chooses to treat left shifts of negative values the > same way. > > However, the -fwrapv option modifies the language to one where > integers are defined as two's complement---whic