[PATCH] Fix ubsan ICE on vector shift (PR sanitizer/77823)

Jeff Law law@redhat.com
Wed Oct 5 16:48:00 GMT 2016


On 10/03/2016 11:31 AM, Jakub Jelinek wrote:
> Hi!
>
> libsanitizer isn't right now prepared to handle vector types, and we don't
> instrument vector additions/multiplications etc. for overflow etc. either,
> so this patch just turns the single case that slipped through.
>
> As I wrote in the PR, in the future we should probably change libubsan to
> handle them and start instrumenting those.
>
> Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk?
>
> 2016-10-03  Jakub Jelinek  <jakub@redhat.com>
>
> 	PR sanitizer/77823
> 	* c-ubsan.c (ubsan_instrument_shift): Return NULL_TREE if type0
> 	is not integral.
>
> 	* c-c++-common/ubsan/shift-9.c: New test.
Sorry -- when Jan B. added code to give warnings for shifts of vector 
types I thought we had nailed down the code to avoid sanitizing shifts 
of vector types (by way of Paolo's patch).

OK.

jeff



More information about the Gcc-patches mailing list