Am Freitag 11 Februar 2011, 22:42:28 schrieb Blue Swirl:
> > +/* Convenient binary macros */
> > +#define HEX__(n) 0x##n##LU
> > +#define B8__(x) (((x&0x0000000FLU) ? 1 : 0) \
> > +                  + ((x&0x000000F0LU) ? 2 : 0) \
> > +                  + ((x&0x00000F00LU) ? 4 : 0) \
> > +                  + ((x&0x0000F000LU) ? 8 : 0) \
> > +                  + ((x&0x000F0000LU) ? 16 : 0) \
> > +                  + ((x&0x00F00000LU) ? 32 : 0) \
> > +                  + ((x&0x0F000000LU) ? 64 : 0) \
> > +                  + ((x&0xF0000000LU) ? 128 : 0))
> > +#define B8(d) ((unsigned char)B8__(HEX__(d)))
> 
> These could be handy elsewhere too.
This is copied from microblaze/cris. Should it be moved to qemu-common.h?

Replacing
  #define B8(d) ((unsigned char)B8__(HEX__(d)))
with
  #define B8(d) ((unsigned char)B8_(0x##n##LU))
to avoid poisoning the default namespace too much?

-- 
Michael

Reply via email to