On 11/05/2012 12:03 AM, Aurelien Jarno wrote: > On Sun, Nov 04, 2012 at 09:29:35PM +0100, Stefan Weil wrote: >> Those constants are larger than 32 bits and need a suffix to avoid >> warnings from some versions of gcc. >> >> Signed-off-by: Stefan Weil <[email protected]>
>> @@ -3653,7 +3653,7 @@ target_ulong helper_extr_s_h(target_ulong ac,
>> target_ulong shift,
>> if (temp > (int64_t)0x7FFF) {
>> temp = 0x00007FFF;
>> set_DSPControl_overflow_flag(1, 23, env);
>> - } else if (temp < (int64_t)0xFFFFFFFFFFFF8000) {
>> + } else if (temp < (int64_t)0xFFFFFFFFFFFF8000LL) {
Instead of using both a suffix and a cast to int64_t, shouldn't we
instead be writing '(temp < INT64_C(0xFFFFFFFFFFFF8000))'?
>
> Blue Swirl proposed the same patch a bit earlier then you, and I have
> just applied it.
But since I've seldom seen code using the *_C() macros from <stdint.h>,
it doesn't bother me enough to pursue it any further now that the
immediate concern of compiler warnings has been silenced.
--
Eric Blake [email protected] +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
