From mboxrd@z Thu Jan 1 00:00:00 1970 From: Scott Wood Date: Wed, 9 Sep 2015 11:22:25 -0500 Subject: [U-Boot] [PATCH v5] bitops: introduce BIT() definition In-Reply-To: <55EF2261.7090502@globallogic.com> References: <1440176519-30102-2-git-send-email-hs@denx.de> <1441626234-16364-1-git-send-email-andreas.devel@googlemail.com> <55EF2261.7090502@globallogic.com> Message-ID: <1441815745.29081.4.camel@freescale.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Tue, 2015-09-08 at 21:01 +0300, ivan.khoronzhuk wrote: > Hi, Andreas > > On 07.09.15 14:43, Andreas Bie?mann wrote: > > From: Heiko Schocher > > > > introduce BIT() definition, used in at91_udc gadget > > driver. > > > > Signed-off-by: Heiko Schocher > > [remove all other occurrences of BIT(x) definition] > > Signed-off-by: Andreas Bie?mann > > --- > > Full buildman is running > > > > .... > > > > > +#define BIT(nr) (1UL << (nr)) > > Why UL? Why not simply 1 << (nr)? That would give the wrong result for nr == 31 if used as a 64-bit number, and would produce undefined behavior for nr >= 32 (though even with 1UL that would be undefined on 32-bit builds). > What if I need set ULL bit on 32-bit system? > Thanks for explanation. Yes, ULL would be better. -Scott