|
Message-ID: <alpine.LNX.2.00.1409211958060.13391@monopod.intra.ispras.ru> Date: Sun, 21 Sep 2014 20:01:08 +0400 (MSK) From: Alexander Monakov <amonakov@...ras.ru> To: musl@...ts.openwall.com Subject: Re: [PATCH] fix a bug in the rand48 family of prng On Sun, 21 Sep 2014, Alexander Monakov wrote: > UB on shift shouldn't be a problem here; I think the issue is that > "lc[0] | lc[1]<<16" gets sign-extended rather than zero-extended from 32 bit > to 64 bit. (sorry, sent previous email too soon) example code: unsigned short a[3]; long long foo() { return a[0] | a[1] << 16 | a[2]+0ull<<32; } long long bar() { return a[0] | a[1]+0u << 16 | a[2]+0ull<<32; } Incidentally I think a "+0u" should suffice as a fix rather that "+0ull". Alexander
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.