GCC Middle and Back End API Reference
|
#include <bitmap.h>
Data Fields | |
struct bitmap_element_def * | next |
struct bitmap_element_def * | prev |
unsigned int | indx |
BITMAP_WORD | bits [BITMAP_ELEMENT_WORDS] |
Bitmap set element. We use a linked list to hold only the bits that are set. This allows for use to grow the bitset dynamically without having to realloc and copy a giant bit array. The free list is implemented as a list of lists. There is one outer list connected together by prev fields. Each element of that outer is an inner list (that may consist only of the outer list element) that are connected by the next fields. The prev pointer is undefined for interior elements. This allows bitmap_elt_clear_from to be implemented in unit time rather than linear in the number of elements to be freed.
BITMAP_WORD bitmap_element_def::bits[BITMAP_ELEMENT_WORDS] |
Referenced by bitmap_and(), bitmap_and_compl(), bitmap_and_compl_into(), bitmap_and_into(), bitmap_bit_p(), bitmap_clear_bit(), bitmap_clear_range(), bitmap_compl_and_into(), bitmap_copy(), bitmap_count_bits(), bitmap_element_allocate(), bitmap_element_zerop(), bitmap_elt_copy(), bitmap_elt_ior(), bitmap_equal_p(), bitmap_first_set_bit(), bitmap_hash(), bitmap_intersect_compl_p(), bitmap_intersect_p(), bitmap_ior_and_compl(), bitmap_ior_and_into(), bitmap_last_set_bit(), bitmap_set_bit(), bitmap_set_range(), bitmap_single_bit_set_p(), bitmap_xor(), bitmap_xor_into(), and debug_bitmap_file().
unsigned int bitmap_element_def::indx |
Referenced by bitmap_and(), bitmap_and_compl(), bitmap_and_compl_into(), bitmap_and_into(), bitmap_clear_range(), bitmap_compl_and_into(), bitmap_copy(), bitmap_element_free(), bitmap_element_link(), bitmap_elt_clear_from(), bitmap_elt_copy(), bitmap_elt_insert_after(), bitmap_elt_ior(), bitmap_equal_p(), bitmap_find_bit(), bitmap_first_set_bit(), bitmap_hash(), bitmap_intersect_compl_p(), bitmap_intersect_p(), bitmap_ior(), bitmap_ior_and_compl(), bitmap_ior_and_into(), bitmap_ior_into(), bitmap_last_set_bit(), bitmap_set_bit(), bitmap_set_range(), bitmap_xor(), bitmap_xor_into(), and debug_bitmap_file().
struct bitmap_element_def* bitmap_element_def::next |
Referenced by bitmap_and(), bitmap_and_compl(), bitmap_and_compl_into(), bitmap_and_into(), bitmap_clear_range(), bitmap_compl_and_into(), bitmap_copy(), bitmap_count_bits(), bitmap_element_allocate(), bitmap_element_free(), bitmap_element_link(), bitmap_elt_clear_from(), bitmap_elt_insert_after(), bitmap_equal_p(), bitmap_find_bit(), bitmap_hash(), bitmap_intersect_compl_p(), bitmap_intersect_p(), bitmap_ior(), bitmap_ior_and_compl(), bitmap_ior_and_into(), bitmap_ior_into(), bitmap_last_set_bit(), bitmap_set_range(), bitmap_single_bit_set_p(), bitmap_xor(), bitmap_xor_into(), and debug_bitmap_file().
struct bitmap_element_def* bitmap_element_def::prev |