[U-Boot] [PATCH v5] bitops: introduce BIT() definition
Scott Wood
scottwood at freescale.com
Wed Sep 9 18:22:25 CEST 2015
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 <hs at denx.de>
> >
> > introduce BIT() definition, used in at91_udc gadget
> > driver.
> >
> > Signed-off-by: Heiko Schocher <hs at denx.de>
> > [remove all other occurrences of BIT(x) definition]
> > Signed-off-by: Andreas Bießmann <andreas.devel at googlemail.com>
> > ---
> > 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
More information about the U-Boot
mailing list