On 25/11/2015 20:18, Peter Maydell wrote: > And LLVM is its own project and its developers don't always exactly > follow gcc behaviour.
True. The patch docuuments that if LLVM will not respect 2s complement for signed shifts when passed the -fwrapv option, it will not be supported for compilation of QEMU. But let;s cross that bridge when we reach it. So far, -Wshift-negative-value seems to be a misguided attempt to copy GCC's warning without understanding it. > Your latest patch at https://gcc.gnu.org/ml/gcc-patches/2015-11/msg03055.html > doesn't seem to touch the documentation of -fwrapv at all, so I > don't think it is sufficient to allow users of the compiler > to say "-fwrapv means signed behaviour for shifts". GCC *always* does signed behavior for shifts, even without -fwrapv. I'll commit tomorrow the patch that promises that for the future. GCC does not need -fwrapv at all. Paolo