|
From: | Michael Walle |
Subject: | Re: [Qemu-devel] [PATCH 02/17] lm32: translation routines |
Date: | Sat, 12 Feb 2011 14:18:27 +0100 |
User-agent: | KMail/1.13.5 (Linux/2.6.32-5-686-bigmem; KDE/4.4.5; i686; ; ) |
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
[Prev in Thread] | Current Thread | [Next in Thread] |