From: "Dr. David Alan Gilbert" <dgilb...@redhat.com>

e.g. BIT_RANGE(15, 0) gives 0xff00

Suggested by: Paolo Bonzini <pbonz...@redhat.com>
Signed-off-by: Dr. David Alan Gilbert <dgilb...@redhat.com>
---
 include/qemu/bitops.h | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/include/qemu/bitops.h b/include/qemu/bitops.h
index 755fdd1..e411688 100644
--- a/include/qemu/bitops.h
+++ b/include/qemu/bitops.h
@@ -23,6 +23,9 @@
 #define BIT_MASK(nr)            (1UL << ((nr) % BITS_PER_LONG))
 #define BIT_WORD(nr)            ((nr) / BITS_PER_LONG)
 #define BITS_TO_LONGS(nr)       DIV_ROUND_UP(nr, BITS_PER_BYTE * sizeof(long))
+/* e.g. BIT_RANGE(15, 0) -> 0xff00 */
+#define BIT_RANGE(hb, lb)     ((2ull << (hb)) - (1ull << (lb)))
+
 
 /**
  * set_bit - Set a bit in memory
-- 
2.7.4


Reply via email to