[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] clang -fsanitize=undefined warnings in the string visit
From: |
Peter Maydell |
Subject: |
Re: [Qemu-devel] clang -fsanitize=undefined warnings in the string visitors |
Date: |
Thu, 14 Jan 2016 12:52:51 +0000 |
On 14 January 2016 at 12:44, Paolo Bonzini <address@hidden> wrote:
> On 14/01/2016 12:15, Peter Maydell wrote:
>> Not that I saw -- ping again, Paolo. This is the only warning
>> that clang's sanitizer currently produces for me, and arithmetic
>> overflows on addition seem genuinely worth investigation...
>
> It happens when the range is 2^64 in size.
>
> Does it still matter if we've decided to use -fwrapv because of left
> shifts? Or are we still considering the possibility to use -std=gnu89
> (where left shifts give unspecified behavior rather than undefined)?
I think we agreed that we wanted signed shift behaviour if we
could get it, but this is all addition. The code looks a bit
odd to me anyway -- the Range type specifies ranges within a
64-bit address space and thus an unsigned start and end point,
but the code in string-output-visitor.c is specifically using
and feeding in signed values for the start and end.
thanks
-- PMM