Commit 1bc40c7e by Kenneth Zadeck

bitmap.c (bitmap_element_free, [...]): Added code to properly maintain the…

bitmap.c (bitmap_element_free, [...]): Added code to properly maintain the variants associated with the CURRENT and...

2005-12-29 Kenneth Zadeck <zadeck@naturalbridge.com>

	* bitmap.c (bitmap_element_free, bitmap_element_link,
	bitmap_elt_insert_after, bitmap_and, bitmap_and_compl,
	bitmap_and_compl, bitmap_ior, bitmap_ior_into, bitmap_xor,
	bitmap_xor_into): Added code to properly maintain the variants
	associated with the CURRENT and HEAD fields.
	(bitmap_popcount, bitmap_clear_range, bitmap_compl_and_into): New
	functions. * bitmap.h: Added defs for bitmap_popcount,
	bitmap_clear_range, and bitmap_compl_and_into.

From-SVN: r109153
parent 3dd9b65f
...@@ -102,6 +102,9 @@ extern bool bitmap_intersect_compl_p (bitmap, bitmap); ...@@ -102,6 +102,9 @@ extern bool bitmap_intersect_compl_p (bitmap, bitmap);
/* True if MAP is an empty bitmap. */ /* True if MAP is an empty bitmap. */
#define bitmap_empty_p(MAP) (!(MAP)->first) #define bitmap_empty_p(MAP) (!(MAP)->first)
/* Count the number of bits set in the bitmap. */
extern unsigned long bitmap_count_bits (bitmap);
/* Boolean operations on bitmaps. The _into variants are two operand /* Boolean operations on bitmaps. The _into variants are two operand
versions that modify the first source operand. The other variants versions that modify the first source operand. The other variants
are three operand versions that to not destroy the source bitmaps. are three operand versions that to not destroy the source bitmaps.
...@@ -110,6 +113,9 @@ extern void bitmap_and (bitmap, bitmap, bitmap); ...@@ -110,6 +113,9 @@ extern void bitmap_and (bitmap, bitmap, bitmap);
extern void bitmap_and_into (bitmap, bitmap); extern void bitmap_and_into (bitmap, bitmap);
extern void bitmap_and_compl (bitmap, bitmap, bitmap); extern void bitmap_and_compl (bitmap, bitmap, bitmap);
extern bool bitmap_and_compl_into (bitmap, bitmap); extern bool bitmap_and_compl_into (bitmap, bitmap);
#define bitmap_compl_and(DST, A, B) bitmap_and_compl (DST, B, A)
extern void bitmap_compl_and_into (bitmap, bitmap);
extern void bitmap_clear_range (bitmap, unsigned int, unsigned int);
extern bool bitmap_ior (bitmap, bitmap, bitmap); extern bool bitmap_ior (bitmap, bitmap, bitmap);
extern bool bitmap_ior_into (bitmap, bitmap); extern bool bitmap_ior_into (bitmap, bitmap);
extern void bitmap_xor (bitmap, bitmap, bitmap); extern void bitmap_xor (bitmap, bitmap, bitmap);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment